返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:
本店所有商品

  • [正版]套装5册程序是怎样跑起来的 第3版/网络是怎样连接的/计算机是怎样跑起来的/Linux是怎样工作的/面向对象是
  • 正版图书!品质保证!默认发最新版本!收藏店铺可享优先发货!
    • 作者: 矢泽久雄著 | 无编
    • 出版社: 人民邮电出版社
    • 出版时间:1
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    友一个文化制品专营店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品参数
    • 作者: 矢泽久雄著| 无编
    • 出版社:人民邮电出版社
    • 出版时间:1
    • 页数:无
    • 装帧:套装
    • ISBN:9785678789079
    • 版权提供:人民邮电出版社

            铺公告

      为保障消费者合理购买需求及公平交易机会,避免因非生活消费目的的购买货囤积商品,抬价转售等违法行为发生,店铺有权对异常订单不发货且不进行赔付。异常订单:包括但不限于相同用户ID批量下单,同一用户(指不同用户ID,存在相同/临近/虚构收货地址,或相同联系号码,收件人,同账户付款人等情形的)批量下单(一次性大于5本),以及其他非消费目的的交易订单。

    温馨提示:请务必当着快递员面开箱验货,如发现破损,请立即拍照拒收,如验货有问题请及时联系在线客服处理,(如开箱验货时发现破损,所产生运费由我司承担,一经签收即为货物完好,如果您未开箱验货,一切损失就需要由买家承担,所以请买家一定要仔细验货)。

      关于退货运费:对于下单后且物流已发货货品在途的状态下,原则上均不接受退货申请,如顾客原因退货需要承担来回运费,如因产品质量问题(非破损问题)可在签收后,联系在线客服。

     

     

    内容介绍

    9787115392275 计算机是怎样跑起来的 59.80 9787115441249 网络是怎样连接的 69.80 9787115541239 面向对象是怎样工作的 第2版 69.00 9787115581617 Linux是怎样工作的 69.80 9787115595133 程序是怎样跑起来的(第3版) 59.80 《计算机是怎样跑起来的》 《计算机是怎样跑起来的》倡导在计算机迅速发展、技术不断革新的今 天,回归到计算机的基础知识上。通过探究计算机的本质,提升工程师对计算机的兴趣,在面对复杂的**新技术时,能够迅速掌握其要点并灵活运用。 《计算机是怎样跑起来的》以图配文,以计算机的三大原则为开端、相继介绍了计算机的结构、手工汇编、程序流程、算法、数据结构、面向对象编程、数据库、TCP/IP 网络、数据加密、XML、计算机系统开发以及SE 的相关知识。本书适合计算机爱好者和相关从业人员阅读。 《计算机是怎样跑起来的》图文并茂,通俗易懂,非常适合计算机爱好者和相关从业人员阅读。 《网络是怎样连接的》 《网络是怎样连接的》以探索之旅的形式,从在浏览器中输入网址开始,一路追踪了到显示出网页的内容为止的整个过程,以图配文,讲解了网络的全貌,并重点介绍了实际的网络设备和软件是如何工作的。目的是帮助读者理解网络的本质意义,理解实际的设备和软件,进而熟练运用网络技术。同时,专设了“网络术语其实很简单”专栏,以对话的形式介绍了一些网络术语的词源,颇为生动有趣。 《面向对象是怎样工作的 第2版》 本书以图配文的形式,直观易懂地详细介绍了面向对象的全貌及其中包含的各项技术,包括面向对象编程、框架、设计模式、UML、建模、面向对象设计和敏捷开发等。对于各项技术是如何使用的(How),书中只进行*小限度的说明,而重点介绍这些技术究竟是什么样的(What)以及为什么需要这些技术(Why)。另外,书中设有“编程往事”专栏,介绍了作者年轻时的一些经历;还设有“对象的另一面”专栏,以与正文不同的视角讲解面向对象这一概念普及的背景和原因,通俗有趣。 《Linux是怎样工作的》 本书结合大量实验程序和图表,通俗易懂地介绍了Linux操作系统的运行原理和硬件的基础知识,涉及进程管理、进程调度器、内存管理、存储层次、文件系统和外部存储器等。实验程序使用C语言和Python编写,读者可*自动手运行程序,来确认系统的行为。另外,以图解的方式介绍各知识点,简明且直观,能够帮助读者加深理解。读者只需对Linux基本命令有所了解,即可轻松阅读。 本书适合应用程序开发人员、系统设计师、运维管理人员和技术支持人员等人士阅读。 《程序是怎样跑起来的(第3版)》 本书从计算机的内部结构开始讲起,以图配文的形式详细讲解了二进制、内存、数据压缩、源文件和可执行文件、操作系统和应用程序的关系、汇编语言、硬件控制方法等内容,目的是让读者了解从用户双击程序图标到程序开始运行之间到底发生了什么。书中还专设了“如果是你,你会怎样讲呢?”专栏,以小学生、老奶奶等为对象讲解程序的运行原理,颇为有趣。 第3版升级了书中用到的软件产品和开发工具,并在正文和注释中补充了大量内容,让初学者更容易理解。对于旧版中颇受好评的硬件相关章节,更新了C语言的样例代码。书末附录关于C语言的章节也升级**标准。 第12章新增了Python机器学*的内容,让初学者能够轻松体验人工智能的乐趣。附录也增加了对Python语言的介绍。 本书图文并茂,通俗易懂,非常适合计算机爱好者及相关从业人员阅读。
    目录

    《计算机是怎样跑起来的》

    目录

    第 1章 计算机的三大原则 1
     1.1 计算机的三个根本性基础 3
     1.2 输入、运算、输出是硬件的基础 4
     1.3 软件是指令和数据的集合 6
     1.4 对计算机来说什么*是数字 8
     1.5 只要理解了三大原则,即使遇到难懂的**新技术,也能轻松应对 9
     1.6 为了贴近人类,计算机在不断地进化 10
     1.7 稍微预*一下第 2章 13
    第 2章 试着制造一台计算机吧 15
     2.1 制作微型计算机所*需的元件 17
     2.2 电路图的读法 21
     2.3 连接电源、数据和地址总线 23
     2.4 连接I/O 26
     2.5 连接时钟信号 27
     2.6 连接用于区分读写对象是内存还是I/O的引脚 28
     2.7 连接剩余的控制引脚 29
     2.8 连接外部设备,通过DMA输入程序 34
     2.9 连接用于输入输出的外部设备 35
     2.10 输入测试程序并进行调试 36
    第3章 体验一次手工汇编 39
     3.1 从程序员的角度看硬件 41
     3.2 机器语言和汇编语言 44
     3.3 Z80 CPU的寄存器结构 49
     3.4 追踪程序的运行过程 52
     3.5 尝试手工汇编 54
     3.6 尝试估算程序的执行时间 57
    第4章 程序像河水一样流动着 59
     4.1 程序的流程分为三种 61
     4.2 用流程图表示程序的流程 65
     4.3 表示循环程序块的“帽子”和“短裤” 68
     4.4 结构化程序设计 72
     4.5 画流程图来思考算法 75
     4.6 特殊的程序流程——中断处理 77
     4.7 特殊的程序流程——事件驱动 78
    COLUMN 来自企业培训现场 电阻颜色代码的谐音助记口诀 82
    第5章 与算法成为好朋友的七个要点 85
     5.1 算法是程序设计的“熟语” 87
     5.2 要点1:算法中解决问题的步骤是明确且有限的 88
     5.3 要点2:计算机不靠直觉而是机械地解决问题 89
     5.4 要点3:了解并应用典型算法 91
     5.5 要点4:利用计算机的处理速度 92
     5.6 要点5:使用编程技巧提升程序执行速度 95
     5.7 要点6:找出数字间的规律 99
    5.8 要点7:先在纸上考虑算法 101
    第6章 与数据结构成为好朋友的七个要点 103
     6.1 要点1:了解内存和变量的关系 105
     6.2 要点2:了解作为数据结构基础的数组 108
     6.3 要点3:了解数组的应用——作为典型算法的数据结构 109
     6.4 要点4:了解并掌握典型数据结构的类型和概念 111
     6.5 要点5:了解栈和队列的实现方法 114
     6.6 要点6:了解结构体的组成 118
     6.7 要点7:了解链表和二叉树的实现方法 120
    第7章 成为会使用面向对象编程的程序员吧 125
     7.1 面向对象编程 127
     7.2 对OOP的多种理解方法 128
     7.3 观点1:面向对象编程通过把组件拼装到一起构建程序 130
     7.4 观点2:面向对象编程能够提升程序的开发效率和可维护性 132
     7.5 观点3:面向对象编程是适用于大型程序的开发方法 134
     7.6 观点4:面向对象编程*是在为现实世界建模 134
     7.7 观点5:面向对象编程可以借助UML设计程序 135
     7.8 观点6:面向对象编程通过在对象间传递消息驱动程序 137
     7.9 观点7:在面向对象编程中使用继承、封装和多态 140
     7.10 类和对象的区别 141
     7.11 类有三种使用方法 143
     7.12 在Java和.NET中有关OOP的知识不能少 145
    第8章 一用*会的数据库 147
     8.1 数据库是数据的基地 149
     8.2 数据文件、DBMS和数据库应用程序 151
     8.3 设计数据库 154
     8.4 通过拆表和整理数据实现规范化 157
     8.5 用主键和外键在表间建立关系 159
     8.6 索引能够提升数据的检索速度 162
     8.7 设计用户界面 164
     8.8 向DBMS发送CRUD操作的SQL语句 165
     8.9 使用数据对象向DBMS发送SQL语句 167
     8.10 事务控制也可以交给DBMS处理 170
    COLUMN 来自企业培训现场 培训新人编程时推荐使用什么编程语言? 172
    第9章 通过七个简单的实验理解TCP/IP网络 175
     9.1 实验环境 177
     9.2 实验1:查看网卡的MAC地址 179
     9.3 实验2:查看计算机的IP地址 182
     9.4 实验3:了解DHCP服务器的作用 184
     9.5 实验4:路由器是数据传输过程中的指路人 186
     9.6 实验5:查看路由器的路由过程 188
     9.7 实验6:DNS服务器可以把主机名解析成IP地址 190
     9.8 实验7:查看IP地址和MAC地址的对应关系 192
     9.9 TCP的作用及TCP/IP网络的层级模型 193
    第 10章 试着加密数据吧 197
     10.1 先来明确一下什么是加密 199
     10.2 错开字符编码的加密方式 201
     10.3 密钥越长,解密越困难 205
     10.4 适用于互联网的公开密钥加密技术 208
     10.5 数字签名可以证明数据的发送者是谁 211
    第 11章 XML是什么 215
     11.1 XML是标记语言 217
     11.2 XML是可扩展的语言 219
     11.3 XML是元语言 220
     11.4 XML可以为信息赋予意义 224
     11.5 XML是通用的数据交换格式 227
     11.6 可以为XML标签设定命名空间 230
     11.7 可以严格地定义 XML的文档结构 232
     11.8 用于解析XML的组件 233
     11.9 XML可用于各种各样的领域 235
    第 12章 SE负责监管计算机系统的构建 239
     12.1 SE是自始到终参与系统开发过程的工程师 241
     12.2 SE未*担任过程序员 243
     12.3 系统开发过程的规范 243
     12.4 各个阶段的工作内容及文档 245
     12.5 所谓设计,*是拆解 247
     12.6 面向对象法简化了系统维护工作 249
     12.7 技术能力和沟通能力 250
     12.8 IT不等于引进计算机 252
     12.9 计算机系统的成功与失败 253
     12.10 大幅提升设备利用率的多机备份 255
    《网络是怎样连接的》
    第 1章 浏览器生成消息 1
    ——探索浏览器内部
    1.1 生成HTTP请求消息 5
    1.1.1 探索之旅从输入网址开始 5
    1.1.2 浏览器先要解析URL 7
    1.1.3 省略文件名的情况 9
    1.1.4 HTTP的基本思路 10
    1.1.5 生成HTTP请求消息 14
    1.1.6 发送请求后会收到响应 20
    1.2 向DNS服务器查询Web服务器的IP地址 24
    1.2.1 IP地址的基本知识 24
    1.2.2 域名和IP地址并用的理由 28
    1.2.3 Socket库提供查询IP地址的功能 30
    1.2.4 通过解析器向DNS服务器发出查询 31
    1.2.5 解析器的内部原理 32
    1.3 *DNS服务器的大接力 35
    1.3.1 DNS服务器的基本工作 35
    1.3.2 域名的层次结构 38
    1.3.3 寻找相应的DNS服务器并获取IP地址 40
    1.3.4 通过缓存加快DNS服务器的响应 44
    1.4 委托协议栈发送消息 45
    1.4.1 数据收发操作概览 45
    1.4.2 创建套接字阶段 48
    1.4.3 连接阶段:把管道接上去 50
    1.4.4 通信阶段:传递消息 52
    1.4.5 断开阶段:收发数据结束 53

    怪杰Resolver 55

    第 2章 用电信号传输TCP/IP数据 57
    ——探索协议栈和网卡
    2.1 创建套接字 61
    2.1.1 协议栈的内部结构 61
    2.1.2 套接字的实体*是通信控制信息 63
    2.1.3 调用socket时的操作 66
    2.2 连接服务器 68
    2.2.1 连接是什么意思 68
    2.2.2 负责保存控制信息的头部 70
    2.2.3 连接操作的实际过程 73
    2.3 收发数据 75
    2.3.1 将HTTP请求消息交给协议栈 75
    2.3.2 对较大的数据进行拆分 78
    2.3.3 使用ACK号确认网络包已收到 79
    2.3.4 根据网络包平均往返时间调整ACK号等待时间 83
    2.3.5 使用窗口有效管理ACK号 84
    2.3.6 ACK与窗口的合并 87
    2.3.7 接收HTTP响应消息 89
    2.4 从服务器断开并删除套接字 90
    2.4.1 数据发送完毕后断开连接 90
    2.4.2 删除套接字 92
    2.4.3 数据收发操作小结 93
    2.5 IP与以太网的包收发操作 95
    2.5.1 包的基本知识 95
    2.5.2 包收发操作概览 99
    2.5.3 生成包含接收方IP地址的IP头部 102
    2.5.4 生成以太网用的MAC头部 106
    2.5.5 通过ARP查询目标路由器的MAC地址 108
    2.5.6 以太网的基本知识 111
    2.5.7 将IP包转换成电或光信号发送出去 114
    2.5.8 给网络包再加3个控制数据 116
    2.5.9 向集线器发送网络包 120
    2.5.10 接收返回包 123
    2.5.11 将服务器的响应包从IP传递给TCP 125
    2.6 UDP协议的收发操作 128
    2.6.1 不需要重发的数据用UDP发送更* 128
    2.6.2 控制用的短数据 129
    2.6.3 音频和视频数据 130

    插进Socket里的是灯泡还是程序 132

    第3章 从网线到网络设备 135
    ——探索集线器、交换机和路由器
    3.1 信号在网线和集线器中传输 139
    3.1.1 每个包*是独立传输的 139
    3.1.2 防止网线中的信号衰减很重要 140
    3.1.3 “双绞”是为了抑制噪声 141
    3.1.4 集线器将信号发往所有线路 146
    3.2 交换机的包转发操作 149
    3.2.1 交换机根据地址表进行转发 149
    3.2.2 MAC地址表的维护 153
    3.2.3 特殊操作 154
    3.2.4 全双工模式可以同时进行发送和接收 155
    3.2.5 自动协商:确定**优的传输速率 156
    3.2.6 交换机可同时执行多个转发操作 159
    3.3 路由器的包转发操作 159
    3.3.1 路由器的基本知识 159
    3.3.2 路由表中的信息 162
    3.3.3 路由器的包接收操作 166
    3.3.4 查询路由表确定输出端口 166
    3.3.5 找不到匹配路由时选择默认路由 168
    3.3.6 包的有效期 169
    3.3.7 通过分片功能拆分大网络包 170
    3.3.8 路由器的发送操作和计算机相同 172
    3.3.9 路由器与交换机的关系 173
    3.4 路由器的附加功能 176
    3.4.1 通过地址转换有效利用IP地址 176
    3.4.2 地址转换的基本原理 178
    3.4.3 改写端口号的原因 180
    3.4.4 从互联网访问公司内网 181
    3.4.5 路由器的*滤功能 182

    集线器和路由器,换个名字身价翻倍? 184

    第4章 通过接入网进入互联网内部 187
    ——探索接入网和网络运营商
    4.1 ADSL接入网的结构和工作方式 191
    4.1.1 互联网的基本结构和家庭、公司网络是相同的 191
    4.1.2 连接用户与互联网的接入网 192
    4.1.3 ADSL Modem将包拆分成信元 193
    4.1.4 ADSL将信元“调制”成信号 197
    4.1.5 ADSL通过使用多个波来提高速率 200
    4.1.6 分离器的作用 201
    4.1.7 从用户到电话局 203
    4.1.8 噪声的干扰 204
    4.1.9 通过DSLAM到达BAS 205
    4.2 光纤接入网(FTTH) 206
    4.2.1 光纤的基本知识 206
    4.2.2 单模与多模 208
    4.2.3 通过光纤分路来降低成本 213
    4.3 接入网中使用的PPP和隧道 217
    4.3.1 用户认证和配置下发 217
    4.3.2 在以太网上传输PPP消息 219
    4.3.3 通过隧道将网络包发送给运营商 223
    4.3.4 接入网的整体工作过程 225
    4.3.5 不分配IP地址的无编号端口 228
    4.3.6 互联网接入路由器将私有地址转换成公有地址 228
    4.3.7 除PPPoE之外的其他方式 230
    4.4 网络运营商的内部 233
    4.4.1 POP和NOC 233
    4.4.2 室外通信线路的连接 236
    4.5 跨越运营商的网络包 238
    4.5.1 运营商之间的连接 238
    4.5.2 运营商之间的路由信息交换 239
    4.5.3 与公司网络中自动更新路由表机制的区别 241
    4.5.4 IX的*要性 242
    4.5.5 运营商如何通过IX互相连接 243

    名字叫服务器,其实是路由器 246

    第5章 服务器端的局域网中有什么玄机 249
    5.1 Web服务器的部署地点 253
    5.1.1 在公司里部署Web服务器 253
    5.1.2 将Web服务器部署在数据中心 255
    5.2 防火墙的结构和原理 256
    5.2.1 主流的*滤方式 256
    5.2.2 如何设置*滤的规则 256
    5.2.3 通过端口号限定应用程序 260
    5.2.4 通过控制位判断连接方向 260
    5.2.5 从公司内网访问公开区域的规则 262
    5.2.6 从外部无法访问公司内网 262
    5.2.7 通过防火墙 263
    5.2.8 防火墙无法抵御的攻击 264
    5.3 通过将请求平均分配给多台服务器来平衡负载 265
    5.3.1 性能不足时需要负载均衡 265
    5.3.2 使用负载均衡器分配访问 266
    5.4 使用缓存服务器分担负载 270
    5.4.1 如何使用缓存服务器 270
    5.4.2 缓存服务器通过更新时间管理内容 271
    5.4.3 **原始的代理——正向代理 276
    5.4.4 正向代理的改良版——反向代理 278
    5.4.5 透明代理 279
    5.5 内容分发服务 280
    5.5.1 利用内容分发服务分担负载 280
    5.5.2 如何找到**近的缓存服务器 282
    5.5.3 通过重定向服务器分配访问目标 285
    5.5.4 缓存的更新方法会影响性能 287

    当通信线路变成局域网 291
    第6章 请求到达Web服务器,响应返回浏览器 293
    ——短短几秒的“漫长旅程”迎来终点
    6.1 服务器概览 297
    6.1.1 客户端与服务器的区别 297
    6.1.2 服务器程序的结构 297
    6.1.3 服务器端的套接字和端口号 299
    6.2 服务器的接收操作 305
    6.2.1 网卡将接收到的信号转换成数字信息 305
    6.2.2 IP模块的接收操作 308
    6.2.3 TCP模块如何处理连接包 309
    6.2.4 TCP模块如何处理数据包 311
    6.2.5 TCP模块的断开操作 312
    6.3 Web服务器程序解释请求消息并作出响应 313
    6.3.1 将请求的URI转换为实际的文件名 313
    6.3.2 运行CGI程序 316
    6.3.3 Web服务器的访问控制 319
    6.3.4 返回响应消息 323
    6.4 浏览器接收响应消息并显示内容 323
    6.4.1 通过响应的数据类型判断其中的内容 323
    6.4.2 浏览器显示网页内容!访问完成! 326

    Gateway是通往异世界的入口 328
    附录 330
    后记 334
    致谢 334
    作者简介 335

    《面向对象是怎样工作的 第2版》
    第 1章 面向对象:让软件开发变轻松的技术 1
    1.1 面向对象是软件开发的综合技术 3
    1.2 以对象为中心编写软件的开发方法 4
    1.3 从编程语言演化为综合技术 4
    1.4 在混乱的状态下去理解,*会觉得很难 5
    1.5 混乱之一:术语洪流 6
    1.6 混乱之二:比喻滥用 7
    1.7 混乱之三:“一切*是对象”综合征 8
    1.8 三种混乱增大了理解的难度 9
    1.9 因为不理解,所以才感觉神秘 10
    1.10 *这三种混乱,*能看到面向对象的真面目 10
    1.11 本书的构成 11
    第 2章 似是而非:面向对象与现实世界 13
    2.1 如果只理解概念,*容易混乱 15
    2.2 对照现实世界介绍面向对象 15
    2.3 类指类型,实例指具体的物 16
    2.4 多态让消息的发送方法通用 18
    2.5 继承对共同点和不同点进行系统的分类和整理 20
    2.6 面向对象和现实世界是似是而非的 22
    2.7 现实世界的人和物不是由类创建的 23
    2.8 现实世界的人和物并不只是根据消息来行动 24
    2.9 明确定义为编程结构 25
    2.10 软件并不会直接表示现实世界 25
    2.11 与现实世界的相似扩大了可能性 26
    专栏 对象的另一面
    成为潮词的面向对象 27
    第3章 理解OOP:编程语言的历史 29
    3.1 OOP的出现具有*然性 31
    3.2 *初使用机器语言编写程序 31
    3.3 编程语言的第 一步是汇编语言 32
    3.4 *语言的发明使程序更加接近人类 33
    3.5 重视易懂性的结构化编程 34
    3.6 提高子程序的独立性,强化可维护性 35
    3.7 实现无GOTO编程的结构化语言 38
    3.8 进化方向演变为重视可维护性和可重用性 39
    3.9 没有解决全局变量问题和可重用性差的问题 41
    专栏 编程往事
    COBOL编译器的鸡和蛋的问题 45
    第4章 面向对象编程技术:去除冗余、进行整理 47
    4.1 OOP具有结构化语言所没有的三种结构 49
    4.2 OOP的结构会根据编程语言的不同而略有差异 51
    4.3 三大要素之一:类具有的三种功能 51
    4.4 类的功能之一:汇总 52
    4.5 类的功能之二:隐藏 55
    4.6 类的功能之三:创建很多个 58
    4.7 实例变量是限定访问范围的全局变量 61
    4.8 三大要素之二:实现调用端公用化的多态 63
    4.9 三大要素之三:去除类的重复定义的继承 67
    4.10 对三大要素的总结 70
    4.11 通过嵌入类型使程序员的工作变轻松 71
    4.12 将类作为类型使用 72
    4.13 编程语言“退化”了吗 74
    4.14 更先进的OOP结构 74
    4.15 进化的OOP结构之一:包 75
    4.16 进化的OOP结构之二:异常 76
    4.17 进化的OOP结构之三:垃圾回收 78
    4.18 对OOP进化的总结 80
    4.19 决心决定OOP的生死 81
    第5章 理解内存结构:程序员的基本素养 83

    5.1 理解OOP程序的运行机制 85
    5.2 两种运行方式:编译器与解释器 85
    5.3 解释、运行中间代码的虚拟机 88
    5.4 CPU同时运行多个线程 89
    5.5 使用静态区、堆区和栈区进行管理 91
    5.6 OOP的特征在于内存的用法 94
    5.7 每个类只加载一个类信息 95
    5.8 每次创建实例*会使用堆区 96
    5.9 在变量中存储实例的指针 97
    5.10 复制存储实例的变量时要多加注意 99
    5.11 多态让不同的类看起来一样 103
    5.12 根据继承的信息类型的不同,内存配置也不同 105
    5.13 孤立的实例由垃圾回收处理 107
    专栏 编程往事
    OOP中dump看起来很费劲? 113
    第6章 重用:OOP带来的软件重用和思想重用 115

    6.1 OOP的*结构能够促进重用 117
    6.2 类库是OOP的软件构件群 119
    6.3 标准类库是语言规范的一部分 120
    6.4 将Object类作为祖先类的继承结构 121
    6.5 框架存在各种含义 122
    6.6 框架是应用程序的半成品 123
    6.7 世界上可重用的软件构件群 124
    6.8 独立性较高的构件:组件 125
    6.9 设计模式是*的设计思想集 125
    6.10 设计模式是类库探险的路标 128
    6.11 扩展到各个领域的思想的重用 129
    6.12 通过类库和模式发现的重用的好处 130
    第7章 化为通用的归纳整理法的面向对象 133

    7.1 软件不会直接表示现实世界 135
    7.2 应用于集合论和职责分配 137
    7.3 在*工程中化为通用的归纳整理法 139
    7.4 两种含义引起混乱 140
    7.5 分为OOP的扩展和归纳整理法进行思考 141
    7.6 为何化为了通用的归纳整理法 142
    专栏 对象的另一面
    语言在先,还是概念在先 143
    第8章 UML:查看无形软件的工具 145

    8.1 UML是表示软件功能和结构的图形的绘制方法 147
    8.2 UML有13种图形 148
    8.3 UML的使用方法大致分为三种 150
    8.4 UML的使用方法之一:表示程序结构和动作 151
    8.5 类图表示OOP程序的结构 151
    8.6 使用时序图和通信图表示动作 154
    8.7 UML的使用方法之二:表示归纳整理法的成果 156
    8.8 使用类图表示根据集合论进行整理的结果 157
    8.9 表示职责分配的时序图和通信图 160
    8.10 UML的使用方法之三:表示非面向对象 163
    8.11 使用用例图表示交给计算机的工作 163
    8.12 使用活动图表示工作流程 164
    8.13 使用状态机图表示状态的变化 165
    8.14 弥补自然语言和计算机语言缺点的“语言” 166
    第9章 建模:填补现实世界和软件之间的沟壑 171

    9.1 现实世界和软件之间存在沟壑 173
    9.2 计算机擅长固定工作和记忆工作 174
    9.3 通过业务分析、需求定义和设计来填补沟壑 175
    9.4 建模是顺利推进这3个阶段的工作的技术 176
    9.5 应用程序不同,建模的内容也不一样 177
    9.6 业务应用程序记录现实中的事情 178
    9.7 对图书馆的借阅业务进行建模 179
    9.8 使用用例图来表示图书馆业务 181
    9.9 用概念模型表示图书馆系统的信息 183
    9.10 业务应用程序中只有数据是无缝的 184
    9.11 嵌入式软件替换现实世界的工作 186
    9.12 嵌入式软件中设备的研究开发很重要 187
    9.13 使用状态机图来表示全自动工作的情形 189
    9.14 嵌入式软件一直执行单调的工作 190
    9.15 建模蕴含着软件开发的乐趣 191
    第 10章 面向对象设计:拟人化和职责分配 195

    10.1 设计的目标范围很广 197
    10.2 相比运行效率,现在更重视可维护性和可重用性 198
    10.3 设计目标之一:去除重复 199
    10.4 设计目标之二:提高构件的独立性 200
    10.5 提高构件独立性的诀窍 202
    10.6 设计目标之三:避免依赖关系发生循环 203
    10.7 面向对象设计的“感觉”是拟人化和职责分配 205
    10.8 进行了职责分配的软件创建的奇妙世界 206
    第 11章 衍生:敏捷开发和TDD 211

    11.1 仅靠技术和技术窍门,软件开发并不会成功 213
    11.2 系统地汇总了作业步骤和成果的开发流程 214
    11.3 限制修改的瀑布式开发流程 214
    11.4 瀑布式开发流程的极限 215
    11.5 灵活响应变化的迭代式开发流程 216
    11.6 RUP按时间分解和管理开发 217
    11.7 打破诸多限制的XP 219
    11.8 快速编写*软件的敏捷宣言 221
    11.9 支持敏捷开发的实践 222
    11.10 先编写测试代码,一边运行一边开发的测试驱动开发 222
    11.11 在程序完成后改善运行代码的重构 224
    11.12 经常进行系统整合的持续集成 225
    11.13 敏捷开发和TDD源于面向对象 226
    11.14 不存在*的开发流程 227
    专栏 编程往事
    过去不被允许的XP 231
    第 12章 熟练掌握面向对象 233

    12.1 面向对象这一强大概念是原动力 235
    12.2 时代追上了面向对象 236
    12.3 面向对象的热潮不会结束 237
    12.4 将面向对象作为工具熟练掌握 238
    12.5 享受需要动脑的软件开发 239
    第 13章 函数式语言是怎样工作的 241

    13.1 面向对象的“下一代”开发技术 243
    13.2 函数式语言的7个特征 244
    13.3 特征1:使用函数编写程序 244
    13.4 特征2:所有表达式*返回值 246
    13.5 特征3:将函数作为值进行处理 250
    13.6 特征4:可以灵活组合函数和参数 252
    13.7 特征5:没有副作用 256
    13.8 特征6:使用分类和递归来编写循环处理 261
    13.9 特征7:编译器自动进行类型推断 266
    13.10 对7个特征的总结 270
    13.11 函数式语言的分类 271
    13.12 函数式语言的优势 271
    13.13 函数式语言的课题 272
    13.14 函数式语言和面向对象的关系 273
    13.15 函数式语言会普及吗 275
    后记 279
    致谢 280

    《Linux是怎样工作的》
    第 1章 计算机系统的概要 1

    第 2章 用户模式实现的功能 11
    2.1 系统调用 12
    2.2 系统调用的包装函数 22
    2.3 C标准库 24
    2.4 OS提供的程序 26

    第3章 进程管理 27
    3.1 创建进程 28
    3.2 fork()函数 28
    3.3 execve()函数 31
    3.4 结束进程 38

    第4章 进程调度器 41
    4.1 关于实验程序的设计 43
    4.2 实验程序的实现 44
    4.3 实验 48
    4.4 思考 53
    4.5 上下文切换 54
    4.6 进程的状态 55
    4.7 状态转换 57
    4.8 空闲状态 59
    4.9 各种各样的状态转换 61
    4.10 吞吐量与延迟 63
    4.11 现实中的系统 69
    4.12 存在多个逻辑 CPU时的调度 70
    4.13 实验方法 71
    4.14 实验结果 72
    4.15 吞吐量与延迟 76
    4.16 思考 77
    4.17 运行时间和执行时间 78
    4.18 进程睡眠 84
    4.19 现实中的进程 85
    4.20 变更优先级 87

    第5章 内存管理 95
    5.1 内存相关的统计信息 96
    5.2 内存不足 98
    5.3 简单的内存分配 101
    5.4 虚拟内存 106
    5.5 页表 108
    5.6 实验 110
    5.7 为进程分配内存 111
    5.8 实验 116
    5.9 利用上层进行内存分配 118
    5.10 解决问题 121
    5.11 虚拟内存的应用 126
    5.12 文件映射 127
    5.13 请求分页 131
    5.14 写时复制 145
    5.15 Swap 151
    5.16 多级页表 159
    5.17 标准大页 163

    第6章 存储层次 167
    6.1 高速缓存 168
    6.2 高速缓存不足时 173
    6.3 多级缓存 175
    6.4 关于高速缓存的实验 176
    6.5 访问局部性 180
    6.6 总结 181
    6.7 转译后备缓冲区 181
    6.8 页面缓存 181
    6.9 同步写入 186
    6.10 缓冲区缓存 187
    6.11 读取文件的实验 187
    6.12 写入文件的实验 194
    6.13 调优参数 196
    6.14 总结 198
    6.15 *线程 199

    第7章 文件系统 203
    7.1 Linux的文件系统 207
    7.2 数据与元数据 210
    7.3 容量限制 211
    7.4 文件系统不一致 212
    7.5 日志 214
    7.6 写时复制 218
    7.7 防止不了的情况 221
    7.8 文件系统不一致的对策 221
    7.9 文件的种类 223
    7.10 字符设备 224
    7.11 块设备 225
    7.12 各种各样的文件系统 228
    7.13 基于内存的文件系统 228
    7.14 网络文件系统 230
    7.15 虚拟文件系统 231
    7.16 Btrfs 233

    第8章 外部存储器 241
    8.1 HDD的数据读写机制 242
    8.2 HDD的性能特性 244
    8.3 HDD的实验 246
    8.4 实验程序 247
    8.5 顺序访问 251
    8.6 随机访问 253
    8.7 通用块层 254
    8.8 I/O调度器 255
    8.9 预读 256
    8.10 实验 258
    8.11 SSD 267
    8.12 总结 279
    后记 280


    《程序是怎样跑起来的(第3版)》
    目录
    第 1章 对程序员来说,CPU到底是什么  1
    1.1 看一看 CPU的内部构造  3
    1.2 CPU是寄存器的集合体  6
    1.3 决定程序流程的程序计数器  9
    1.4 条件分支和循环的原理  10
    1.5 函数调用的原理  13
    1.6 用基址和变址实现数组  16
    1.7 CPU的处理其实很简单  17
    第 2章 用二进制来理解数据  19
    2.1 计算机用二进制处理信息的原因  21
    2.2 二进制到底是什么  23
    2.3 移位运算与乘除运算的关系  25
    2.4 便于计算机处理的“2的补码”  27
    2.5 逻辑右移与算术右移的区别  31
    2.6 掌握逻辑运算的窍门  34
    如果是你,你会怎样讲呢? 给小学新生讲解 CPU和二进制  38
    第3章 计算机在计算小数时会出错的原因  31
    3.1 将0.1累加100次的结果不是10  33
    3.2 如何用二进制表示小数  35
    3.3 计算机计算出错的原因  36
    3.4 什么是浮点数  38
    3.5 规格化表示法与移码表示法  50
    3.6 用程序来实际确认一下吧  53
    3.7 如何避免计算机计算出错  56
    第4章 让内存化方为圆  61
    4.1 内存的物理结构十分简单  63
    4.2 内存的逻辑结构像一幢大楼  67
    4.3 指针其实很简单  69
    4.4 用好内存先从数组开始  71
    4.5 栈与队列,以及环形缓冲区  73
    4.6 在链表中添加和删除元素很容易  78
    4.7 用二叉查找树*地查找数据  82
    第5章 内存与磁盘的密切联系  85
    5.1 程序加载到内存后才能运行  87
    5.2 提高磁盘访问速度的磁盘缓存  88
    5.3 将磁盘当成内存使用的虚拟内存  89
    5.4 将内存当成磁盘使用的固态硬盘  92
    5.5 节约内存的编程技巧  93
    5.6 了解一下磁盘的物理结构  98
    第6章 自己动手压缩数据  103
    6.1 文件是以字节为单位记录的  105
    6.2 游程编码的原理  106
    6.3 游程编码的缺点  107
    6.4 从莫尔斯码中发现哈夫曼算法的基础  108
    6.5 使用树来构建哈夫曼编码  111
    6.6 通过哈夫曼算法大幅提高压缩效率  114
    6.7 无损压缩与有损压缩  115
    如果是你,你会怎样讲呢? 给喜欢打游戏的初中生讲解内存和磁盘  119
    第7章 程序在怎样的环境下运行  121
    7.1 运行环境 =操作系统+硬件  123
    7.2 Windows*了CPU之外的硬件差异  125
    7.3 每种操作系统的API*是不同的  128
    7.4 使用源代码进行安装  129
    7.5 在任何地方*能提供相同运行环境的 Java虚拟机  130
    7.6 云计算平台提供的虚拟运行环境  132
    7.7 BIOS与引导装入程序  134
    第8章 从源文件到可执行文件  137
    8.1 计算机只能执行本机代码  140
    8.2 看一看本机代码的内容  142
    8.3 编译器负责翻译源代码  144
    8.4 仅靠编译无法得到可执行文件  146
    8.5 启动代码与库文件  147
    8.6 DLL文件与导入库  149
    8.7 运行可执行文件需要什么  152
    8.8 加载时生成的栈和堆  153
    8.9 进阶问答  155
    第9章 操作系统与应用程序的关系  159
    9.1 从历史发展看操作系统的功能  161
    9.2 关注操作系统的存在  164
    9.3 系统调用与*编程语言的可移植性  166
    9.4 操作系统和*编程语言对硬件进行了抽象化  168
    9.5 Windows操作系统的特点  170
    如果是你,你会怎样讲呢? 给喜欢智能手机的高中女生讲解操作系统的功能  177
    第 10章 通过汇编语言认识程序的真面目  179
    10.1 汇编语言和本机代码是一一对应的  181
    10.2 用C编译器输出汇编语言源代码  183
    10.3 伪指令与注释  186
    10.4 汇编语言的语法是“操作码 操作数”  187
    10.5 *常用的movl指令  189
    10.6 将数据存入栈中  191
    10.7 函数调用的工作原理  192
    10.8 被调用函数的工作原理  194
    10.9 全局变量和局部变量的工作原理  195
    10.10 循环的工作原理  199
    10.11 条件分支的工作原理  203
    10.12 体验汇编语言的意义  207
    第 11章 访问硬件的方法  209
    11.1 应用程序是否与硬件有关  211
    11.2 负责硬件输入输出的in指令和out指令  213
    11.3 外部设备的中断请求  216
    11.4 通过中断实现实时处理  220
    11.5 能够快速传输大量数据的DMA  220
    11.6 显示字符和图像的原理  222
    如果是你,你会怎样讲呢? 给邻居老奶奶讲解显示器与电视机的区别  224
    第 12章 如何让计算机“学*”  227
    12.1 什么是机器学*  229
    12.2 支持向量机  231
    12.3 Python交互模式的使用方法  234
    12.4 准备学*数据  236
    12.5 查看手写数字数据的内容  237
    12.6 通过机器学*识别手写数字  239
    12.7 尝试交叉验证  242
    如果是你,你会怎样讲呢? 给常去的酒馆的老板讲解机器学*的类别  244
    附录1 *手尝试C语言  247
    C语言的特点  247
    变量与函数  248
    数据类型  249
    输入、运算、输出  250
    创建和使用函数  252
    局部变量与全局变量  254
    数组与循环  255
    其他语法  257
    附录2 *手尝试Python  261
    Python的特点  261
    一切皆对象  263
    数据类型  265
    输入、运算、输出  266
    创建和使用函数  266
    局部变量与全局变量  268
    数组与循环  269
    其他语法  271
    后记  273
    致谢  273

    作者介绍

    《计算机是怎样跑起来的》 矢泽久雄(作者) YAZAWA股份有限公司董事长兼总经理。GrapeCity信息技术集团顾问。电脑作家之友会会长。 曾在某大型电子公司从事过电脑生产,在Software House做过程序员,现主要从事软件开发工作。工作之余笔耕不辍,从电路到编程语言均有涉及。代表作有《程序是怎样跑起来的》《使用C语言学*程序设计的基础》《征服C++类和继承》等。自称软件艺人。 胡屹(译者) 多年从事Web开发工作。热爱编程,关注设计模式,致力于提升软件开发的质量。曾获得SCJP和PHP ZCE证书。 《网络是怎样连接的》 户根勤(作者) 早先从事软件开发,后进入网络行业。曾供职于日本网络设备厂商(外资企业)和国内网络集成商,从事产品开发和技术咨询等工作。在工作之余还进行演讲、写作等活动。1998年离开公司,开始以演讲、写作以及运营论坛为主业。 周自恒(译者) 知名技术图书译者、全栈程序员、自然科学爱好者。初中时曾获得信息学奥赛天津赛区一等奖,曾任某管理咨询公司战略技术总监。 译有《图解CIO工作指南(第4版)》《大数据的冲击》《代码的未来》《30天自制操作系统》《图解密码技术》《家用游戏机简史》《有趣的二进制》等。 《面向对象是怎样工作的 第2版》 平泽章(作者) *职于UL System株式会社,多次参与面向大型金融机构的第三次在线系统的开发等系统开发工作,后负责技术咨询业务,2001年转为现在的职务。著有《UML建模教程》,是Working Effectively With Legacy Code、Refactoring: Improving the Design of Existing Code日文版译者之一。 侯振龙(译者) 管理科学与工程专业硕士,日语一级,软件开发工程师,具有十年以上对日软件开发经验,现*职于某日本独资企业。 《Linux是怎样工作的》 武内觉(作者) 2005年~2017年*职于日本富士通公司,负责商用Linux,特别是Linux内核的开发与支持工作。2017年后在Cybozu公司担任技术顾问。 曹栩(译者) 出生于中国广东省。毕业于天津理工大学。曾从事系统维护工作,长期参与开源贡献。目前在日本求学,专攻通信协议与网络*方向。 《程序是怎样跑起来的(第3版)》 矢沢久雄 YAZAWA股份有限公司董事长兼总经理。GrapeCity信息技术集团顾问。电脑作家之友会会长。 曾在某大型电子公司从事过电脑生产,在Software House做过程序员,现主要从事软件开发工作。工作之余笔耕不辍,从电路到编程语言均有涉及。代表作有《计算机是怎样跑起来的》《使用C语言学*程序设计的基础》《征服C++类和继承》等。自称软件艺人。
    1
    • 商品详情
    • 内容简介

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购