您好,欢迎来到聚文网。
登录
免费注册
网站首页
|
搜索
热搜:
磁力片
|
漫画
|
购物车
0
我的订单
商品分类
首页
幼儿
文学
社科
教辅
生活
销量榜
代码结构
字数: 450000.0
装帧: 简装
出版社: 电子工业出版社
作者: 魏家明 著
出版日期: 2016-08-01
商品条码: 9787121296031
版次: 1
开本: 其他
页数: 280
出版年份: 2016
定价:
¥49
销售价:
登录后查看价格
¥{{selectedSku?.salePrice}}
库存:
{{selectedSku?.stock}}
库存充足
{{item.title}}:
{{its.name}}
加入购物车
立即购买
加入书单
收藏
精选
¥5.83
世界图书名著昆虫记绿野仙踪木偶奇遇记儿童书籍彩图注音版
¥5.39
正版世界名著文学小说名家名译中学生课外阅读书籍图书批发 70册
¥8.58
简笔画10000例加厚版2-6岁幼儿童涂色本涂鸦本绘画本填色书正版
¥5.83
世界文学名著全49册中小学生青少年课外书籍文学小说批发正版
¥4.95
全优冲刺100分测试卷一二三四五六年级上下册语文数学英语模拟卷
¥8.69
父与子彩图注音完整版小学生图书批发儿童课外阅读书籍正版1册
¥24.2
好玩的洞洞拉拉书0-3岁宝宝早教益智游戏书机关立体翻翻书4册
¥7.15
幼儿认字识字大王3000字幼儿园中班大班学前班宝宝早教启蒙书
¥11.55
用思维导图读懂儿童心理学培养情绪管理与性格培养故事指导书
¥19.8
少年读漫画鬼谷子全6册在漫画中学国学小学生课外阅读书籍正版
¥64
科学真好玩
¥12.7
一年级下4册·读读童谣和儿歌
¥38.4
原生态新生代(传统木版年画的当代传承国际研讨会论文集)
¥11.14
法国经典中篇小说
¥11.32
上海的狐步舞--穆时英(中国现代文学馆馆藏初版本经典)
¥21.56
猫的摇篮(精)
¥30.72
幼儿园特色课程实施方案/幼儿园生命成长启蒙教育课程丛书
¥24.94
旧时风物(精)
¥12.04
三希堂三帖/墨林珍赏
¥6.88
寒山子庞居士诗帖/墨林珍赏
¥6.88
苕溪帖/墨林珍赏
¥6.88
楷书王维诗卷/墨林珍赏
¥9.46
兰亭序/墨林珍赏
¥7.74
祭侄文稿/墨林珍赏
¥7.74
蜀素帖/墨林珍赏
¥12.04
真草千字文/墨林珍赏
¥114.4
进宴仪轨(精)/中国古代舞乐域外图书
¥24.94
舞蹈音乐的基础理论与应用
内容简介
本书对如何优化代码结构做了深入的探讨,分为五个部分:编程问题与原则、编程格式与风格、如何让代码更容易读、如何做代码重构和C语言的一些要素。本书对这些部分做了重点探讨:代码中存在的各种问题,编程时要遵循的原则,编程时要注重格式、注释和名字,如何让表达式和控制流简单易读,如何消除代码中的重复冗余,如何切分代码和少写代码等。另外,本书还探讨了C语言设计中的一些要素和常见问题。
作者简介
魏家明,资深软件开发工程师、硬件工程师,著有《Verilog编程艺术》一书。具有多年的Verilog设计经验,参与了多个芯片的设计工作,重点在前端设计(设计、验证、综合、和STA等)。
目录
第一部分 编程问题与原则 第1章 美的设计 2 1.1 美学观点 2 1.2 代码可读 2 1.3 适用范围 3 第2章 代码质量 4 2.1 外在特性 4 2.2 内在特性 4 2.3 一个故事 5 2.4 提升质量 5 第3章 代码问题 7 3.1 最混乱的 7 3.2 命名混乱 8 3.3 名实不副 8 3.4 格式混乱 9 3.5 注释混乱 9 3.6 重复冗余 9 3.7 臃肿庞大 9 3.8 晦涩难懂 10 3.9 过度耦合 10 3.10 滥用变量 10 3.11 嵌套太深 10 3.12 代码混杂 10 3.13 不确定性 11 3.14 太多警告 11 3.15 鸡同鸭讲 11 3.16 过度设计 11 3.17 基础不好 11 3.18 陈旧腐败 12 3.19 停滞不前 12 3.20 不可扩充 12 3.21 最后总结 12 第4章 人员问题 13 4.1 思维定势 13 4.2 思维顽固 14 4.3 小中见大 14 4.4 懒虫心理 14 4.5 粗枝大叶 15 4.6 巧合编程 15 4.7 应付差事 15 4.8 固步自封 15 4.9 疲惫不堪 15 4.10 环境混乱 16 4.11 管理失职 16 4.12 个人性格 16 第5章 编程原则 17 5.1 高内聚低耦合 17 5.2 设计模式 18 5.3 编码风格 19 5.4 干干净净 19 第6章 编程之道 21 6.1 注重质量 21 6.2 遵守规则 22 6.3 简洁编程 22 6.4 整洁编程 23 6.5 快乐编程 24 6.6 团队协作 25 6.7 测试驱动 25 6.8 考虑全局 25 6.9 代码切分 26 6.10 代码重构 26 6.11 深入学习 27 6.12 寻求诗意 27 6.13 程序员节 28 第二部分 编程格式与风格 第7章 使用Emacs 30 7.1 Emacs介绍 30 7.2 Emacs安装 31 7.3 常用快捷键 31 7.4 笔者的“.emacs” 32 7.5 cua-mode 33 7.6 shell buffer 34 第8章 快速排序 35 8.1 算法简介 35 8.2 C/C++语言 35 8.3 Java 36 8.4 Perl 36 8.5 Verilog 37 第9章 格式优美 39 9.1 合理安排 39 9.2 横向缩进 40 9.3 纵向对齐 43 9.4 顺序书写 44 9.5 分组成块 45 9.6 添加空白 46 9.7 书写语句 47 9.8 书写表达式 47 9.9 Verilog部分 48 9.10 保持一致 49 9.11 代码例子 50 第10章 注释合理 52 10.1 无用的注释 52 10.2 有用的注释 58 10.3 如何写注释 62 第11章 名字定义 65 11.1 命名方法 65 11.2 命名 67 11.3 命名规则 73 11.4 名字使用 77 11.5 SPEC定义 77 第三部分 让代码更容易读 第12章 消除警告 84 12.1 不可忽视 84 12.2 警告类型 86 12.3 打开警告 87 第13章 精心用变量 89 13.1 修改变量的名字 89 13.2 进行变量初始化 90 13.3 减少变量的个数 91 13.4 缩小变量作用域 92 13.5 减少变量的操作 95 第14章 表达式易读 96 14.1 糟糕的表达式 96 14.2 使用中间变量 96 14.3 使用等价逻辑 98 14.4 简化判断逻辑 98 14.5 使用宏定义 99 14.6 使用查找表 99 14.7 注意操作符 101 14.8 简洁的写法 102 第15章 控制流易读 104 15.1 组织直线型代码 104 15.2 判断中的表达式 105 15.3 判断中的注意事项 105 15.4 判断中的参数顺序 106 15.5 判断中的赋值语句 106 15.6 if语句的逻辑顺序 107 15.7 使用“?:” 108 15.8 使用switch 108 15.9 使用return 109 15.10 选择for/while 109 15.11 少用do/while 110 15.12 少用goto 112 15.13 语句对比 113 15.14 减少嵌套 114 15.15 减少代码 117 第16章 设计好函数 119 16.1 不好的函数 119 16.2 好的函数 119 16.3 小的函数 120 16.4 递归调用 121 第四部分 如何做代码重构 第17章 代码重构 124 17.1 为什么重构 124 17.2 重构的好处 124 17.3 重构的难题 125 17.4 实际的例子 125 第18章 消除重复 128 18.1 代码重复的产生 128 18.2 代码重复的后果 128 18.3 代码重复的解决 129 18.4 消除重复的例子 129 第19章 代码切分 133 19.1 抽取独立的代码 133 19.2 设计通用的代码 135 19.3 简化已有的接口 137 19.4 一次只做一件事 138 19.5 让函数功能单一 142 19.6 删除无用的代码 144 第20章 少写代码 145 20.1 合适就刚刚好 145 20.2 保持代码简洁 145 20.3 使用循环解决 146 20.4 熟悉语言特性 147 20.5 熟悉库函数 147 20.6 熟悉系统工具 149 第21章 简化代码 150 21.1 重新设计代码 150 21.2 寻找更好算法 152 第22章 代码生成 155 22.1 配置Linux的内核 155 22.2 生成寄存器的代码 156 22.3 生成Benes的代码 157 第23章 代码测试 161 23.1 测试中问题 161 23.2 测试的原则 162 23.3 设计要更好 162 23.4 提高可读性 162 23.5 测试智能化 164 23.6 定位Bug 167 第五部分 C语言一些要素 第24章 关键字 170 第25章 类型 172 25.1 内部数据类型 172 25.2 新增数据类型 173 25.3 enum 173 25.4 struct 174 25.5 union 175 25.6 typedef 175 25.7 复杂的数据类型 177 25.8 Endian问题 177 第26章 变量 179 26.1 声明和定义 179 26.2 变量分类 179 26.3 const变量 183 26.4 volatile变量 185 26.5 混合声明 187 第27章 常量 188 27.1 常量类型 188 27.2 常量定义 189 27.3 常量区分 189 27.4 其他问题 189 第28章 操作 190 28.1 操作符表格 190 28.2 操作符解释 192 28.3 强制进行类型转换 199 28.4 运算时的类型转换 199 28.5 赋值时的类型转换 203 第29章 数组 206 29.1 数组的说明 206 29.2 初始化 206 29.3 字符串 207 29.4 复合常量赋值 208 29.5 函数中的变长数组 208 29.6 结构中的灵活数组 209 29.7 数组作为函数参数 209 29.8 数组和指针 210 第30章 指针 212 30.1 指针的说明 212 30.2 ?嗦的指针 213 30.3 void * 214 30.4 restrict 215 30.5 多级指针 216 30.6 数组指针和指针数组 217 30.7 函数指针和指针函数 219 30.8 malloc 222 30.9 alloca 223 30.10 指针使用中的问题 223 第31章 语句 225 31.1 if 225 31.2 switch 225 31.3 for和while 226 31.4 do {...} while 226 31.5 break 227 31.6 return 228 31.7 goto 228 31.8 exit() 229 31.9 复合语句 229 30.10 空语句 229 第32章 函数 231 32.1 void 231 32.2 static 231 32.3 inline 231 32.4 函数原型 232 32.5 参数可变 233 32.6 其他讨论 234 第33章 库函数 235 33.1 使用getopt() 235 33.2 使用qsort() 236 33.3 文件模式问题 236 33.4 返回值的问题 238 33.5 控制字符问题 238 33.6 缓冲区问题 239 33.7 可重入问题 240 第34章 预处理 242 34.1 文件包含 242 34.2 宏定义 244 34.3 条件编译 248 34.4 其他命令 249 34.5 预处理输出 249 第35章 错误处理 250 35.1 错误检查和处理 250 35.2 封装函数 250 35.3 使用断言 251 第36章 内存映像 254 36.1 程序编译后的section 254 36.2 程序运行时的内存空间 255 36.3 简单的malloc.c 255 第37章 汇编语言 258 37.1 如非必要 258 37.2 熟悉ABI 259 37.3 汇编例子 259 第38章 GCC特色 261 38.1 MinGW 261 38.2 执行过程 262 38.3 内嵌汇编 262 38.4 __attribute__ 264 参考文献 266
×
Close
添加到书单
加载中...
点此新建书单
×
Close
新建书单
标题:
简介:
蜀ICP备2024047804号
Copyright 版权所有 © jvwen.com 聚文网