“开发人员”应该如何了解架构和规划

时间:2009-05-20 18:17:47

标签: architecture

我已经使用C和C#多年了,我认为自己是一个“相当不错”的程序员,但正如多次指出的那样,编程只是软件工程和开发的一小部分。我是我部门的唯一编码人员,但看起来这种情况将会开始改变,我想从Stackoverflow社区了解以下内容。

  • 从编码器转向开发人员需要什么? - 我已经阅读了Code Complete,所以我想我已经准备好接受这一切了。在某种程度上我已经是。
  • 在使用我的软件模型时,我应该使用哪些工具 - 假设是C#
  • 在设置硬编码和快速代码之前,我应该对我的架构建模有多深? - 我意识到这个问题是多么主观,而且我更喜欢经验法则而不是“它取决于它”。假设我正在编写旨在“持续5 - 10年”的内部工具
  • 您愿意为从代码转向工程的人提出什么建议?

提前谢谢大家!有一个伟大的阵亡将士纪念日!

4 个答案:

答案 0 :(得分:17)

答案 1 :(得分:5)

请记住以下事项:

  • 抽象 - 干净,简单和 要点
  • 复制 - 避免它, 认真的
  • 依赖关系 - 分层 接口所在的架构 挂钩
  • 不变性 - 更多你处理可变性 (特别是并发 环境)你开始越多 感谢没有国家。
  • 假设 - 不要制造它们,不要让责任泄漏。 Law of Demeter很有帮助。

与某人一起审核或分享您的想法进行迭代设计和编码非常重要。你会有盲点。尝试对编程。

从长远来看,测试至关重要。它们可以保护您的背部并让您自由地改变而不必担心。恐惧是驱使重复,臃肿和不洁的力量。

答案 2 :(得分:1)

在我看来,阅读书籍,文章或博客是非常必要的。但这还不够。尝试找一位经验丰富的开发人员/建筑师来指导您。从编码员到建筑师的转变需要很长时间,经验是最重要的事情。

尝试获得可以研究和研究新技术的项目。但是,真的,试着找一个导师。

答案 3 :(得分:0)

第一步:向Stack Overflow上的优秀人士询问。

好的开始

其他步骤: 我很抱歉这些不是您问题的直接答案,但希望它们能帮助您找到答案。

如果您在大学或技术学院附近,看看他们是否有可以参加的软件工程课程,这可能是您和您的公司可以承担的更多时间承诺,但这些教授类型通常有很好的建议。

所以你是一个人操作呃?源控制是一块蛋糕吧?不再,你必须知道源代码控制是你在整个世界中最好的朋友,而不是你的妻子,不是你的狗,它是你的源代码控制应用程序。

聘请优秀的程序员!从一个程序员到另一个程序员的差异是巨大的,在你的团队中有一个平庸或糟糕的程序员是一个巨大的问题。在面试中,给他们提出非常难的问题,你可能会搞砸自己,在这种经济环境中,你应该有很多选择,所以要确保你有天赋。

之前的回答是找到一位导师,而不是那个,请阅读Joel on Software。

http://www.joelonsoftware.com/articles/fog0000000043.html