代码之髓txt,chm,pdf,epub,mobi下载 作者:[日] 西尾泰和 出版社: 人民邮电出版社 副标题: 编程语言核心概念 原作名: コーディングを支える技術 ~成り立ちから学ぶプログラミング作法 译者:曾一鸣 出版年: 2014-8 页数: 236 定价: 45.00元 装帧: 平装 丛书: 图灵程序设计丛书 ISBN: 9787115361530 内容简介 · · · · · ·《代码之髓:编程语言核心概念》作者从编程语言设计的角度出发,围绕语言中共通或特有的核心概念,通过语言演变过程中的纵向比较和在多门语言中的横向比较,清晰地呈现了程序设计语言中函数、类型、作用域、类、继承等核心知识。本书旨在帮助读者更好地理解各种概念是因何而起,并在此基础上更好地判断为何使用、何时使用及怎样使用。同时,在阅读本书后,读者对今后不断出现的新概念的理解能力也将得到提升。 《代码之髓:编程语言核心概念》力求简明、通俗,注重可读性,可作为大学计算机科学和软件工程等专业程序设计语言概论教材、计算机等级考试的参考资料,也可作为软件开发人员的学习参考书。 作者简介 · · · · · ·西尾 泰和(Nishio Hirokazu) 24岁取得理学博士学位。2007年起在Cybozu实验室从事提高知识生产力的软件开发工作。曾担任“2011年全日本安全与程序设计实战集训”程序设计语言组组长。特别关注编程语言的多样性及发展。著作有《Jython语言程序设计》《程序员应该了解的程序设计基础知识》《WEB+DB PRESS》(第60期特辑)等。 曾一鸣 2010年上海交通大学电子工程系研究生毕业,现就职于某国际独立软件开发商,从事软件售后支持工作。对面向对象程序设计、脚本语言及其在语音、图像等信号处理中的应用有着浓厚的兴趣。 目录 · · · · · ·第1章如何深入高效地学习语言 1 1.1 在比较中学习 2 语言不同,规则不同 2 c语言和ruby语言中的真假值 3 java语言中的真假值 3 · · · · · ·() 第1章 如何深入高效地学习语言 1 1.1 在比较中学习 2 语言不同,规则不同 2 c语言和ruby语言中的真假值 3 java语言中的真假值 3 1.2 在历史中学习 4 理解语言设计者的意图 4 应该学哪种语言,我们无从所知 4 学习适用于各种语言的知识 5 1.3 小结 6 第2章 程序设计语言诞生史 7 2.1 程序设计语言诞生的历史 8 连接电缆 8 程序内置 9 fortran语言问世 10 2.2 程序设计语言产生的原因 11 懒惰:程序员的三大美德之一 11 语言们各有各的便捷 12 2.3 小结 13 第3章 语法的诞生 15 3.1 什么是语法 16 运算符的优先顺序 16 语法是语言设计者制定的规则 17 3.2 栈机器和forth语言 17 计算的流程 18 如何表达计算顺序 18 现在仍然使用的栈机器 19 3.3 语法树和lisp语言 20 计算流 20 如何表达计算顺序 20 现在仍然使用的语法树 21 专栏 要确认理解是否正确,首先得表达出来 23 3.4 中缀表示法 24 语法分析器 24 规则的竞争 25 专栏 当你不知道该学习什么时 25 3.5 小结 26 第4章 程序的流程控制 27 4.1 结构化程序设计的诞生 28 4.2 if语句诞生以前 28 为什么会有if语句 28 为什么会有if...else语句 30 4.3 while语句——让反复执行的if语句更简洁 33 使用while语句的表达方式 33 不使用while语句的表达方式 34 4.4 for语句——让数值渐增的while语句更简洁 35 使用for语句的表达方式 35 不使用for语句的表达方式 35 foreach——根据处理的对象来控制循环操作 36 4.5 小结 37 第5章 函数 39 5.1 函数的作用 40 便于理解——如同一个组织 40 便于再利用——如同零部件 41 程序中再利用的特征 41 5.2 返回命令 42 函数的诞生 43 记录跳转目的地的专用内存 44 专栏 函数命名 45 栈 45 5.3 递归调用 47 嵌套结构体的高效处理 48 嵌套结构体的处理方法 48 5.4 小结 52 第6章 错误处理 53 6.1 程序也会出错 54 6.2 如何传达错误 55 通过返回值传达出错信息 55 出错则跳转 58 6.3 将可能出错的代码括起来的语句结构 61 john goodenough 的观点 61 引入clu语言 62 引入c++语言 62 引入windows nt 3.1 63 6.4 出口只要一个 64 为什么引入finally 64 成对操作的无遗漏执行 64 6.5 何时抛出异常 68 函数调用时参数不足的情况 68 数组越界的情况 69 出错后就要立刻抛出异常 70 6.6 异常传递 71 异常传递的问题 71 java语言的检查型异常 71 检查型异常没有得到普及的原因 73 专栏 具体的知识和抽象的知识 73 专栏 学习讲求细嚼慢咽 74 6.7 小结 74 专栏 从需要的地方开始阅读 75 第7章 名字和作用域 77 7.1 为什么要取名 78 怎样取名 79 名字冲突 80 如何避免冲突 80 7.2 作用域的演变 81 动态作用域 82 静态作用域 84 7.3 静态作用域是完美的吗 88 专栏 其他语言中的作用域 88 嵌套函数的问题 89 外部作用域的再绑定问题 91 7.4 小结 93 第8章 类型 95 8.1 什么是类型 96 8.2 数值的on和off的表达方式 97 数位的发明 97 七段数码管显示器 98 算盘 99 8.3 一个数位上需要几盏灯泡 100 从十进制到二进制 100 八进制与十六进制 102 8.4 如何表达实数 103 定点数——小数点位置确定 103 浮点数——数值本身包含小数部分何处开始的信息 104 8.5 为什么会出现类型 107 没有类型带来的麻烦 107 早期的fortran语言中的类型 108 告诉处理器变量的类型 108 隐性类型转换 109 8.6 类型的各种展开 111 用户定义型和面向对象 112 作为功能的类型 112 总称型、泛型和模板 113 动态类型 116 类型推断 118 8.7 小结 122 专栏 先掌握概要再阅读细节 122 第9章 容器和字符串 125 9.1 容器种类多样 126 9.2 为什么存在不同种类的容器 127 数组与链表 127 链表的长处与短处 130 专栏 大o表示法——简洁地表达计算时间和数据量之间的关系 131 语言的差异 132 9.3 字典、散列、关联数组 132 散列表 133 树 134 元素的读取时间 136 没有万能的容器 138 9.4 什么是字符 139 字符集和字符的编码方式 139 计算机诞生以前的编码 140 edsac的字符编码 142 ascii时代和ebcdic时代 142 日语的编码 144 shift_jis编码对程序的破坏 145 魔术注释符 147 unicode带来了统一 148 9.5 什么是字符串 150 带有长度信息的pascal语言字符串和不带这一信息的c语言字符串 150 1个字符为16比特的java语言字符串 153 python 3中引入的设计变更 153 ruby 1.9的挑战 154 9.6 小结 155 第10章 并行处理 157 10.1 什么是并行处理 158 10.2 细分后再执行 158 10.3 交替的两种方法 159 协作式多任务模式——在合适的节点交替 159 抢占式多任务模式——一定时间后进行交替 160 10.4 如何避免竞态条件 160 竞态条件成立的三个条件 161 没有共享——进程和actor模型 162 不修改——const、val、immutable 164 不介入 164 10.5 锁的问题及对策 166 锁的问题 166 借助事务内存来解决 167 事务内存的历史 168 事务内存成功吗 169 10.6 小结 170 第11章 对象与类 171 11.1 什么是面向对象 172 内涵因语言而异的面向对象 172 对象是现实世界的模型 174 什么是类 175 11.2 归集变量与函数建立模型的方法 175 11.3 方法1:模块、包 176 什么是模块、包 176 用perl语言的包设计对象 177 光有模块不够用 178 分开保存数据 179 向参数传递不同的散列 179 把初始化处理也放入包中 180 把散列和包绑定在一起 181 11.4 方法2:把函数也放入散列中 183 first class 183 把函数放入散列中 184 创建多个计数器 185 把共享的属性放入原型中 186 这就是面向对象吗 189 11.5 方法3:闭包 190 什么是闭包 190 为什么叫做闭包 191 11.6 方法4:类 191 霍尔设想的类 192 c++语言中的类 192 功能说明的作用 193 类的三大作用 193 11.7 小结 194 第12章 继承与代码再利用 195 12.1 什么是继承 196 继承的不同实现策略 197 继承是把双刃剑 199 里氏置换原则 199 12.2 多重继承 201 一种事物在多个分类中 201 多重继承对于实现方式再利用非常便利 202 12.3 多重继承的问题——还是有冲突 203 解决方法1:禁止多重继承 205 解决方法2:按顺序进行搜索 207 解决方法3:混入式处理 211 解决方法4:trait 213 12.4 小结 216 专栏 从头开始逐章手抄 217 · · · · · · () |
以前买过
颠覆了本人固有浅薄的世界观、价值观
细细品吧~
脑洞之大,角度只独特让我震撼