软件开发 - 获得掌握 - 书籍或“导师”或其他?

时间:2009-07-21 12:47:19

标签: language-agnostic

对我而言,课堂培训似乎为我们提供了技术构建块,但很少涵盖实际构建任何大型或复杂的内容,即使课堂培训涵盖“大型项目”,您仍然只能获得正确的最终结果。< / p>

人们应该去哪里学习软件设计的更大方面?具体来说,在开始从事中型到大型项目/系统的工作时,人们可以去哪里学习实际的“最佳实践”? (理论较少,应用较多)

(我的重点是.NET和C#,但问题对任何技术都有效)

5 个答案:

答案 0 :(得分:7)

  1. 完成代码 - 由Steve McConnell撰写
  2. 务实的程序员 - 安迪·亨特和戴夫·托马斯
  3. 软件工程的事实和谬误 - 作者:Robert Glass

答案 1 :(得分:2)

根据我的经验,学习如何设计和开发大型项目的唯一方法就是开展这样的项目。当你认为大多数大型项目问题与团队成员之间和代码模块之间的沟通有关时,这是不可避免的。这几乎是不可能在课堂上模拟的(我已经尝试过)。

答案 2 :(得分:1)

一个地方:工业。如果你还在大学,这可以作为实习,如果你不上大学,也可以作为工作。没有地方可以学习像一个充满开发软件的公司那样的标准实践。

答案 3 :(得分:1)

代码代码 犯错误,修复它们 寻求帮助 - SO非常棒!

答案 4 :(得分:0)

  

即使课堂培训涵盖“大型项目”,您仍然只能获得正确的最终结果。

您似乎非常担心项目的评分方式。你不应该。

你的成绩当然很重要,但它们不应该是你所有大学经历的最终结果。你在那里(预付费数万美元)到学习。得到你的钱是值得的。好成绩应该是你正在学习这些材料的事实,而不是相反。

您在学校的大型项目可能是您最重要的学习经历。我最初真正面对的问题是:

  • 编码前设计的重要性
  • 使用同一项目的开发人员之间的通信
  • 处理开发人员之间真正的能力差异
  • 处理开发人员之间动机的差异
  • 使用修订控制的不确定性
  • 软件集成

整个经历最终成为毕业后我最终获得的工作面试中的一个主题。

我认为我们的项目得到了B,但这完全不合时宜。