展开讨论

经验与复盘经验摘录 · 机器翻译

我可以推荐一本《软件设计哲学》平装本,作者是约翰·欧斯特豪特

我可以推荐一本《软件设计哲学》(Philosophy of Software Design)的平装本,作者是John Ousterhout。我从事编程工作已经有15年了,这本书非常符合我目前对编程的许多看法。他超越了编程/代码/模块的低层次方面,将讨论提升到一个概念层面,这正是你所寻求的。我认为书中大约有10个方面中只有2个方面,我觉得我有一些更好的想法,但a)他可能为了更容易解释而简化了内容;b)他的解释比我好得多,如果我尝试解释的话,可能还会失败。

源讨论Ask HN:有关工程哲学的好书有哪些?原帖 132 条评论 · 导入时统计
3

这条内容在回应什么?

父级讨论 · 节选

S3

我是一个出于热情而成为软件工程师的人。我喜欢电脑,我很好奇。我喜欢学习新事物/概念。我喜欢看到现有概念以完全意想不到的方式被应用,这让你想知道每件无聊的事情都有无数种变化,这些变化并不明显。 通过我的大学教育、行业经验和好奇心,我学到了很多。但是,即使我尝试寻找关于工程哲学或工程艺术/工艺的书籍,我还是失败了。 我很想听听你们看到的哪些书籍/项目启发了你们作为工程师,以及它们为你们提供了自己的工程哲学。 我这里说的是广义的“工程”,而不仅仅是“软件工程”。 请求整个宇宙来启发我 :)

完整原文

社区评论 0

还没有社区评论,来聊聊你的看法。

原讨论中的回复 3

仅展示本次导入中包含的直接回复。中文为机器翻译,可查看英文原文。

CO

没读过这本书,但根据查看目录(所以请带着一点怀疑态度看待我的说法),我同意你的选择。你提到你已经编程有一段时间了,你可能听说过 Grady Booch 和《面向对象分析与设计及应用》。面向对象技术现在稍微不那么流行了,这可能是这本书不太受欢迎的原因之一,但大约20年前它很热门。它还讨论了你选择的许多主题:- 复杂性,它是什么以及如何管理它 - 封装(信息隐藏)。 - 接口 - 你封装代码的契约 - 抽象 我确信 Grady Booch 的书本身大部分是基于更早的材料。 我也非常喜欢任何一本关于需求分析的好书(它们有80%的信息是相同的)。了解所有利益相关者的真实需求(你)…

完整原文
DU

我正要推荐同一本书 - 这里有很多宝贵的智慧,没有你有时在这一类文献中找到的教条。

完整原文
AT

他提出保持接口小而强大的想法让我很困扰 - 我认为这并没有表达任何关于编程的真理,尽管它是一个很好的经验法则。我读的时候一直感到沮丧。lambda 演算拥有最理想的接口与功能比率,但你不会看到人类用它来编程。这个反对意见让我得出结论:更好的启发式方法是:程序应该主要向另一个读者传达意图,然后才是计算机。他提到过这一点,说要优先考虑可读性而不是可写性,但我认为这不是主要观点。我几乎同意他所说的其他所有内容,包括“做得太过分了”这一章(我实际上认为我们不应该用 lambda 演算来编程,哈哈)。好奇你不同意哪些部分。我只有2年的经验

完整原文
在 Hacker News 阅读

尊重不同观点,分享具体经验。

登录后即可发帖、评论、转发和引用。