在OO开发经历了7-10 + ++年后,您获得了哪些开发技能?

时间:2008-12-12 10:10:37

标签: language-agnostic oop

一些开发技能,比如重构操作,感觉它们几乎是无限的 学习的重要性 - 只有傻瓜会说他已经完成了学习。

其他技能与特定工具绑定,作为优秀的开发人员,我们学习新工具 大多数时候。

但是,一些技能与您如何考虑代码以及如何处理编码有关,有时与特定工具功能有关 应用。旋转对编程和与其他人密切合作似乎是获得这些技能的最佳方式, 虽然肯定不是唯一的方法。 (有时你会学到5年前你应该学到的东西,这些不是我要问的东西)

所以我想将程序与所有StackOverflow配对:

你最近获得的编码技能是什么?

编辑:我想如果你今天刚刚离开学校,我不会考虑你作为课程一部分学到的东西。

14 个答案:

答案 0 :(得分:8)

只有当我意识到我需要人才技能来补充我的技术技能时才真正开始我的职业生涯。

令人惊讶的是,与“开发技巧”相比,程序员忽略了这一点,或者被视为不重要。

答案 1 :(得分:6)

这可能看起来很愚蠢而且显而易见......但我认为,就我而言,这需要很多年才能掌握它:

  • 知道何时在真正需要的地方写评论。
  • 知道什么时候不写评论,因为代码现在已经足够自我记录了。

答案 2 :(得分:5)

成为一个团队中更好的开发人员的软技能比实际能够使应用程序(或多或少)符合规范并编译并使用户/测试人员不会大声喊叫的具体细节。

  1. 何时防御性地编写可扩展代码,因为您知道它最终会节省您的时间。
    • 何时明确不做点(1)。
    • 如何在团队中工作
    • 如何阅读和反应不完全准确或清晰写入的规范
    • 何时(以及如何)让其他人拥有这个时髦的项目,因为你太忙于苦差事
  2. 主要是关于成为一个更好的包装动物,有时候和地方成为一个男性 - 男性,但程序员往往不能批评,我们不能总是玩这些项目,就像他们是我们的玩具。

    如果你不能那样做,那么Guy Kawasaki和Joel Spolsky在创办自己的公司时写了很多好东西。

答案 3 :(得分:3)

实用主义和人才技巧。

对某种情况务实。是的,它可能是理想的,但它确实是必要的。有些东西可能是世界上最酷的功能,但它真的会产生更多的收入。问这些问题并且是现实的,这样你就可以从小麦中过滤出大量的糠..

我还在学习人才技巧。这不仅仅是了解所有答案,而是能够以他们理解和拥抱的方式将这些传达给管理层和客户。 OCD和Bi-Polar是一个自闭症,有时会让事情变得有点棘手。

答案 4 :(得分:3)

嗯,感谢依赖注入编写可测试代码。我们之前管理 的方式......

对我而言,知道要测试什么。

我是一个狂热者,他说一切都必须经过测试,DTO的获取/设定方法等等。这是不切实际和不必要的。你必须测试(致死)复杂而关键的东西,因为那是你的复杂和关键缺陷所在。轻轻地测试其余部分。

答案 5 :(得分:3)

原型设计&嘲笑。

我认为过去的时候,我已经开始尝试开发“原位”功能 - 更好地隔离沙盒应用中的问题。

嘲弄 - 再次,继隔离原则(Divide& Conquer)之后,这绝对是我现在提出的任何设计的核心。

答案 6 :(得分:3)

当我开始编码时,有些技巧不在我们身边:

  • 单元测试,
  • 重构,
  • 其他一些敏捷范例。

如果你停止呼吸,你应该停止学习。

答案 7 :(得分:3)

我已经学会了不要亲自附上我写的代码。当人们更改我的代码或批评我的代码时,我不再感到个人攻击/违规。

答案 8 :(得分:2)

软件架构,大型编程。 我意识到软件>>代码和编程语言的问题充其量只是三级。

答案 9 :(得分:2)

看到如此多的代码,一些好的,一些不好的,然后一些只是奇怪的,你认识到你想要拥有的工作和你不想拥有的东西的谦虚。例如,有些人喜欢“牛仔”风格的节目,而其他人则完全有条不紊,不会做任何事情,因为它是由3名上层管理人员编写,审查和签署的计划的一部分,以获得祝福做一些可能需要几周的事情。

更好地组织代码并查看可以重构的地方,以便制作更通用的内容,以便它有更多的用途或何时尝试锁定某些东西以便完成,而不是像客户那样一遍又一遍地进行外观修改不知道他们想要什么,但他们不想要他们见过的101个原型。

答案 10 :(得分:2)

我可能不属于管理层(我花了几年时间)。我编码比管理更快乐:)

编辑:此外;我刚刚开始真正掌握TDD,我很享受!

答案 11 :(得分:1)

我真的同意“人才技巧”的帖子,但除此之外:

说出一个 - 我真的明白语言实际上不是语言。他们是方言。

似乎对于进入我手指自主部分的每一条微知识,我都有幸能够对事物进行更高层次的理解。 - 这些是我父亲的一句话,他是一名焊工/钢铁工人。不能同意。

/罗伯特

答案 12 :(得分:1)

知道:虽然我可以,但并不意味着我应该“放纵”自己,并建立我所遇到的每一个要求。我的主要目标是提供一个解决方案,如果这意味着已经采取了一些措施并进行扩展 - 那就是它。

答案 13 :(得分:0)

仅使用我的代码的逻辑结构并尽可能忽略物理文件位置。

寻找你感兴趣的贴纸↓↓↓
豫ICP备18024241号-1