程序员修炼之道——程序设计入门30讲
✍ Scribed by 吕云翔、傅义
- Publisher
- 清华大学出版社
- Year
- 2018
- Tongue
- Chinese
- Leaves
- 170
- Category
- Library
No coin nor oath required. For personal study only.
✦ Synopsis
本书收录了与程序设计基础知识相关的30个问题。它们是大部分初次接触编程的读者共有的问题。这些问题的答案并不复杂,但是消化吸收它们却不是一个简单的过程。这需要读者培养计算思维,学习从程序的视角看问题。当你可以回答本书所有的问题时,相信你已经越过了程序设计的第一道门槛。
本书分为6部分,分别是:入门学堂、内存模型、初窥算法、面向对象、认识程序、编程之道。在入门学堂这部分中,主要介绍程序设计最基础的知识,例如如何编写第一个Java程序、第一个C++程序,学习调试程序等。在内存模型这部分中,我们将学习指针、引用、栈和堆、参数传递等内存相关的知识。初窥算法部分围绕基础的数据结构和算法展开,如链表、递归算法、搜索算法等。在面向对象这部分中,我们将围绕面向对象程序设计的三大特性展开学习。认识程序部分则介绍更多程序设计方面的知识,如异常处理机制、输入输出流、多线程编程等。编程之道部分讲述提升代码质量的方法,编程不仅是一项工程性的工作,更是一项艺术工作,这一部分就围绕程序设计的艺术性来展开。
本书面向所有计算机相关专业的学生,也面向所有对程序设计感兴趣的入门学习者,只要对本书中的任何问题感到疑惑,并且想知道背后答案的读者,都可以阅读本书。
✦ Table of Contents
封面
扉页
内容简介
版权页
前言
目录
一、入门学堂
1. #include, using namespace std, int main分别是什么意思?我的第一个C程序
2. import, public static void main, String[] args分别是什么意思?我的第一个Java程序
3. 什么是数据类型?
4. 如何阅读项目源码?
5. 如何调试程序?
二、内存模型
6. 变量和对象存储在哪里?理解栈和堆
7. 什么是stackoverflow异常?
8. 指针究竟是什么?
9. Java中的引用与C中的指针有什么区别?
10. 为什么C++中new之后要delete,Java中却不需要?
11. 明明是值传递,可对象为什么发生了变化?
三、初窥算法
12. 如何编写链表?
13. 从斐波那契到汉诺塔,如何编写递归算法?
14. 从深度优先到广度优先,如何编写搜索算法?
15. 什么是位运算?位运算究竟有什么用?
四、面向对象
16. 为什么要编写类?这么做是不是使问题更复杂了?
17. 组合还是继承?如何选择?
18. 为什么静态方法不能调用非静态成员?
19. Java为什么不支持多继承?
20. 为什么要定义接口?接口有什么用?
五、认识程序
21. Java中的异常处理机制有什么优点?
22. throws还是try...catch?异常处理原则
23. 什么是输入流和输出流?装饰器模式的应用
24. 为什么需要多线程编程?
25. 修改同时发生该听谁的?锁
26. 编译、链接、运行,程序是怎样跑起来的?
27. 为什么我写的都是黑框程序?图形界面是怎样写出来的?
28. 什么是回调函数?
六、编程之道
29. 如何正确地编写注释?
30. 应该培养哪些良好的编程习惯?
正文结束
参考文献
📜 SIMILAR VOLUMES
<p>本书分为四部分,第一部分全面介绍Java 7 的新特性,第二部分探讨Java 关键编程知识和技术,第三部分讨论JVM 上的新语言和多语言编程,第四部分将平台和多语言编程知识付诸实践。从介绍Java 7 的新特性入手,本书涵盖了Java 开发中最重要的技术,比如依赖注入、测试驱动的开发和持续集成,探索了JVM 上的非Java 语言,并详细讲解了多语言项目, 特别是涉及Groovy、Scala 和Clojure 语言的项目。此外,书中含有大量代码示例,帮助读者从实践中理解Java 语言和平台。</p> <p>本书适合Java 开发人员以及对Java7 和JVM 新语言感兴趣的各领域人士阅读。
<p>C++是近年来国内外广泛使用的现代计算机语言,它既支持基于过程的程序设计,也支持面向对象的程序设计。国内许多高校陆续开设了C++程序设计课程。但是,由于C++涉及概念很多,语法比较复杂,内容十分广泛,使不少人感到学习难度较大,难以入门。</p> <p>《C++程序设计(第3版)》作者深入调查了大学的程序设计课程的现状和发展趋势,参阅了国内外数十种有关C++的教材,认真分析了读者在学习中的困难和认识规律,设计了读者易于学习的教材体系,于2004年出版了《C++程序设计》一书。《C++程序设计(第3版)》降低入门起点,不需要C语言的基础,从零起点介绍程序设计和C++。广大师生用后反映非常好
<p> Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,特别适用于快速的应用程序开发。吕云翔、孟爻编著的《Python程序设计入门(21世纪高等学校计算机基础实用规划教材)》共分为15章,主要内容包括Python简介、Python环境搭建、Python基础语法、函数、模块、文件操作、异常处理、面向对象编程、正则表达式、PythonGUI编程、</p> <p>Python多线程与多进程编程、Python访问数据库、</p> <p>PythonSocket网络编程、PythonWeb编程以及Python综合应用实例。</p> <p>本书既可以作为普通高校计算机相关专