![]() |
2
2
这个 Pragmatic Programmers 是的,很实用,但是他们精通CS理论,知道何时以及如何应用它。 |
![]() |
3
1
好吧,说到我自己是一个学生:) 我觉得斯特劳斯鲁普的论文很有趣,而且 实际的 而不涉及无用的细节。以他的论文为例 Object Oriented Programming 是我读过的最好的读物之一。它从最基本的编程思想,到通过OOP思想的模块化编程。他展示, 为什么? 我们是否需要在简短的代码片段示例中使用这些编程范例?这些是他依次经历的范例:
另一个精彩的阅读是 Sixteen Ways to Stack a Cat . 一 十六 写入堆栈的不同方法 C++ (语言实际上并不重要)。拿着这些,比较我所知道/听说的大多数范例的优缺点。 |
![]() |
4
1
不幸的是,缺乏经验的程序员通常不会意识到他们有问题,直到他们自己遇到问题。我认为在现实世界中看到问题的最好方法是让学生有“现实世界”的问题,这些问题可能最容易在教学CS校长的教室外发现。(我想在这方面软化会被教得有点不同) 代码完整+头部优先设计模式是我建议每个大学生在毕业前阅读的两本书。 哦,而且他们至少应该有一个完成(或大部分完成)的课外项目。网站、游戏、实用程序等等。 |
![]() |
5
0
代码完成。 http://cc2e.com/ |
![]() |
6
0
|
![]() |
7
0
我会用以下方法让球滚起来:
通常,这些模式是由于维护和开发大型代码的问题而开发的。程序员总是很紧张,没有人认为我们需要更多的时间。大多数程序员在整个软件生命周期中不会使用相同的代码,因此需要有一种方法让程序员不必读取几百万行代码就可以理解彼此的代码。
现实建筑类比:
你不能建造没有接缝的建筑物。否则,它会随着冷/热的加热而开裂和断裂。界面是两个可能刚性实体之间的关节。
|
![]() |
8
0
Uncle Bob The Apprentice 软件工艺系列。有一个很好的叙事风格,我认为学生可以与普罗塔伽主义者,因为他/她从一个低级学徒开始。 |
![]() |
John V · 是否存在单元测试无法发现的逻辑/流错误类型? 6 年前 |
![]() |
Beefster · 为什么ANSI颜色转义以“m”而不是“]”结尾? 6 年前 |
![]() |
Guillermo Gutiérrez · STR转换是如何工作的? 7 年前 |
![]() |
RudziankoÅ · 合并排序数组算法 7 年前 |
|
user8852560 · 构造函数中的验证和构造函数冲突 7 年前 |
![]() |
jav974 · 订购产品时寻找最佳价格组合的算法 7 年前 |
![]() |
hippietrail · 确定浮点数中前导零的数量 7 年前 |