【问题标题】:Taking learning into account in a development process [closed]在开发过程中考虑学习[关闭]
【发布时间】:2010-04-28 23:22:13
【问题描述】:

如何处理在开发过程中不了解语言/框架的事实?

例如,假设一组 Java 开发人员即将开始一个 .NET 项目,他们不太了解平台,最终可能会找到框架已经解决或解决得更好的解决方案。

我的问题是:在这种情况下,哪些是最佳做法?进行良好练习之前的 RTFM 是否有效?什么时候应该停止 RTFM 并开始询问/搜索/播放?不是 RTFM 而只是搜索/询问/播放一个好习惯吗?估计呢?

我想听听您的经验:-)

【问题讨论】:

    标签: agile


    【解决方案1】:

    在编写生产代码之前先了解平台!

    通常人们只是跳入并开始编写他们的应用程序,结果变得一团糟,开发人员学到了很多东西,然后后悔他们所做的“菜鸟”,但却被锁定了。

    所以我的理论是通过几个尖峰实现一个非常非常细的功能,该功能会贯穿框架的所有层。

    也就是说,如果它是一个 web mvc / web services..... 有 javascript -> ajax -> html -> web service -> Controller -> Model -> Database 的东西。

    让人们对其进行审核。当您对正在处理的技术知之甚少时,不要花时间构建框架层。花一些时间探索您的技术具有什么样的灵活性(即,尝试多种不同的方法给猫剥皮)

    【讨论】:

      【解决方案2】:

      我认为,和其他人一样,拥有一个良好的心智模型并理解您将使用的抽象很重要......但是,有时这并不容易,可能是因为时间、经验甚至文档不足. 你可以在这里得到一些想法:http://www.se-radio.net/podcast/2009-06/episode-138-learning-part-development-allan-kelly 还有一种以学习为战略部分的敏捷方法:自适应软件开发(ASD)http://en.wikipedia.org/wiki/Adaptive_Software_Development 最后,我想提一下测试驱动开发中的探索性测试,它可以帮助学习新的框架http://en.wikipedia.org/wiki/Exploratory_testing

      【讨论】:

      • 感谢您的参考!我同意心智模型和理解抽象的重要性,但这些可能不同,学习它们(并将它们结合起来)需要时间。一个简单的例子是 WPF 上的依赖和绑定,我现在在一个项目中苦苦挣扎。
      【解决方案3】:

      假设您拥有一支由熟练的开发人员组成的团队,并且新技术在某种程度上与该团队过去所做的相同,那么动手学习几乎每次都会击败 RTFM。例如,我可以看到与一群 Java Web 开发人员一起进行 .NET Web 开发,但我不太愿意与专注于 VB Windows 应用程序的团队进行 .NET Web 开发。您应该从跨越所有层的基本功能峰值开始。最佳实践是在团队中增加一两个专家,通过结对编程来帮助指导和指导开发过程。出于估算的目的,我将显着减少我允许团队在前几次迭代中承担的故事点的数量。保守地说,我计划在最初的几次迭代中实现不超过团队历史速度的一半。

      【讨论】:

      • 我同意专家的观点,如果可能的话,完全值得聘请有经验的人来加速学习。但如果不是呢?
      【解决方案4】:

      一些有经验的人可以浏览并提供建议的某种代码审查或相关步骤怎么样?

      RTFM 似乎只会浪费时间,尤其是在您进行敏捷开发时。

      编辑:既然你说团队中“没有人”知道这种语言……我不知道,但尝试“学习整个语言”似乎仍然是在浪费时间' 在你开始之前。

      【讨论】:

      • 当然,他说团队中没有人有工具集/技术方面的经验。
      • 啊,我的错。我更新了我的帖子以反映。
      【解决方案5】:

      我参加过的大多数团队都至少有一位语言爱好者。这些人喜欢学习他们所能学到的关于新语言的一切,并且乐于分享。弄清楚这个人在你的团队中是谁,让他们知道你将使用新语言。

      一旦开始,请进行代码审查。其中很多都在小的、可管理的代码片段上。代码爱好者将能够指出该语言处理得更好的事情。整个团队都是这样学习的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-06-15
        • 1970-01-01
        • 2010-09-13
        • 1970-01-01
        • 1970-01-01
        • 2013-02-01
        • 1970-01-01
        • 2021-03-08
        相关资源
        最近更新 更多