什么是独立的开发人员编程方法?

时间:2009-06-12 14:55:24

标签: methodology

小型项目的独立开发人员编程方法有哪些?

9 个答案:

答案 0 :(得分:24)

几乎任何开发方法都可以在独立环境中工作,除了明确需要团队的那些(例如并排编程)。但即便如此,你也可以通过创造一些想象中的朋友/队友或者发展出多重人格障碍来解决这个问题。

答案 1 :(得分:12)

即使是独立开发人员,您也可以使用适用于大型开发团队的方法。

  • 写一个规范。
  • 布局UML。
  • 做铅笔纸UI设计。
  • 走廊测试:如果你想要一大群人,请问妈妈是否容易使用。
  • 同行评审:您可以与其他独立开发人员一起建立临时审核小组。
  • 保持最新的时间表。
  • 等......

我一直在独自发展,这些做法使我与自己的工作保持一致,并给我的老板一个很好的资源,让我知道我做了什么以及我走了多远。他们让我保持正轨,开机!

答案 2 :(得分:12)

答案 3 :(得分:9)

许多敏捷技术都很有效:

  • 用户访谈和故事:如果您不知道用户想要什么,为什么您的软件会有用?
  • 一个简单的规范:甚至只是一个使命宣言。 “让人们向他们的订阅者列表发送短消息。” “使用in-degree对互联网搜索结果进行排序。” “让人们共同回答编程问题。”不管。
  • 严格排序的待办事项列表:有助于防止您陷入沉思。
  • 切线日志:一个好的待办事项列表有一个“待办事项”组件,所以你不要过分关注你不会做的事情。( / LI>
  • YAGNI:保持目标。这在你自己工作时非常重要,因为没有人可以告诉你“不!不要重新发明Java中的动态类型!回到项目中。” To-not lists help有这个。
  • 测试驱动开发:编写测试会迫使您考虑最终结果,而不是陷入实施细节中。无论如何你会陷入困境;没必要让它变得更糟。
  • 经常发布:让自己坚持截止日期。 “我们将有一个功能完整版本,其中包括星期五的用户故事1-4。它不会连接到网络或将数据保存到磁盘,但是XYZ ......”
  • 用户测试:让您的好友按照相当频繁的时间表查看您正在制作的内容 - 可能每月一次,也许每周一次,具体取决于您有多少朋友和多少啤酒/披萨,你想喂它们。在使用软件时要特别注意他们所说和所做的事情。

其他似乎只是在大项目中有意义的事情可以帮助很多:

  • 来源控制:安装 git 。这很简单。用它。不要为此着迷。
  • 异地备份:我知道。如遇房屋火灾或洪水。
  • 博客:但是只有在发布时才允许您在那里写作。 ;)还可以帮助您在产品发货之前为其构建受众。

希望这有帮助!对大型项目进行单独编程可能非常艰巨。

答案 4 :(得分:7)

按照此Stack Overflow问题中的说明进行操作:

  

What Tools/Techniques can benefit a solo developer?

另外。 使用源代码管理。你不会相信我在个人项目中被多少次咬过。

答案 5 :(得分:2)

就是这样:

http://en.wikipedia.org/wiki/Personal_Software_Process

这可能是矫枉过正的

答案 6 :(得分:1)

问题更多的是你对自己感到满意的问题以及你希望解决的问题。大多数方法在某些时候由独奏开发人员使用(结对编程是一个值得注意的例外)。问题是你实际上是独自一人,还是只是自己工作?我发现,拥有能够反省思想的人是非常宝贵的。此外,让其他人查看您的代码(同行评审)是找到您无法“看到”的问题的好方法。因此,与Aiden Bell达成一致“在你的oen上编程是不酷的。” 我会尝试连接到社区(如SO),在那里你可以将想法从其他人身上反弹出去。然后,您需要建立自己的方法,以便在发出想法时允许中断。

这有意义吗?你为什么一个人编程?

Pat O

答案 7 :(得分:1)

不是真正的官方方法论,但我做了很多独立开发(独立顾问和ISV),以下是我发现的重要事项:

  • 找一个在线组织(比如 oisv.com)分享想法和 想法
  • 确保您花时间进行互动 与现实世界中的真人一起
  • 设定项目目标,截止日期和 里程碑
  • 花些时间做适当的事情 设计和项目规划
  • 留出工作时间坚持 它们
  • 不要做太多工作并烧伤自己 出
  • 没有什么是完美的,所以努力 有效的代码,不是 完美
  • 获得一些非编程爱好

答案 8 :(得分:1)

这比技巧方法更具技巧性。当你正在调试时,向你自己解释一下这些错误,就像你试图向同事解释一样。感觉很愚蠢,但是强迫自己大声说出问题经常会发现问题所在。