有哪些独立开发人员编程方法?

发布于 2024-07-24 09:13:24 字数 29 浏览 5 评论 0原文

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

What are some solo developer programming methodologies for smaller projects?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

夜未央樱花落 2024-07-31 09:13:24

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

Just about any development methodology will work in a solo environment except for those that explicitly require a team (such as side-by-side programming). But even then you could get around that by just creating some imaginary friends/teammates or developing a multiple personality disorder.

尤怨 2024-07-31 09:13:24

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

  • 写一个规格。
  • 布局 UML。
  • 进行纸笔 UI 设计。
  • 走廊测试:如果您预计会有很多人,请询问妈妈是否易于使用。
  • 同行评审:您可以与其他独立开发人员建立临时评审团队。
  • 保持最新的时间表。
  • 等等...

我一直在单独开发,这些实践使我与自己的工作保持一致,并为我的老板提供了一个很好的资源,让他们知道我做了什么以及我走了多远。 他们让我走上正轨,启动!

Even as a solo developer you can use methodologies applied to large development teams.

  • Write a Spec.
  • Layout a UML.
  • Do pencil-and-paper UI design.
  • Hallway testing: If your expect a large crowd, ask Mom if it's easy to use.
  • Peer review: You can build ad-hoc review teams with other solo developers.
  • Keep an up to date schedule.
  • and so on...

I solo develop all the time, and these practices keep me in line with my own work and give my bosses a great resource to know what I've done and how far along I am. And they keep me on track, to boot!

萌︼了一个春 2024-07-31 09:13:24

许多敏捷技术单独使用时效果很好:

  • 用户访谈和故事:如果您不知道用户想要什么,那么您的软件为什么有用?
  • 一个简单的规范:或者甚至只是一个使命宣言。 “让人们向他们的订户列表广播短消息。” “使用入度对互联网搜索结果进行排序。” “让人们协作回答编程问题。” 任何。
  • 严格排序的待办事项列表:有助于防止您陷入沉思。
  • 切线日志:一个好的待办事项列表有一个“不要做”的部分,所以你不会沉迷于你不打算做的事情(还)。
  • YAGNI:保持目标。 当您自己工作时,这一点非常重要,因为没有人会告诉您“不!不要在 Java 中重新发明动态类型!返回项目。” 待办事项未列出帮助有了这个。
  • 测试驱动开发:编写测试会迫使您思考最终结果,而不是陷入实现细节之中。 无论如何,你都会陷入困境; 没有必要让事情变得更糟。
  • 频繁发布:让自己遵守最后期限。 “我们将在周五之前推出一个功能完整的版本,其中包括用户故事 1-4。它不会连接到网络或将数据保存到磁盘,但 XYZ...”
  • 用户测试:让你的好友定期查看你正在做什么——也许每月一次,也许每周一次,具体取决于你有多少朋友以及你想喂多少啤酒/披萨他们。 使用软件时,密切关注他们的言行和想法。

其他看起来只在大型项目中有意义的事情可以提供很大帮助:

  • 源代码控制:安装git。 这很简单。 用它。 不要沉迷于它。
  • 异地备份:你知道。 如果发生房屋火灾或洪水。
  • 博客:但只有在发布版本时才允许您在那里写作。 ;) 还可以帮助您在产品发布之前为您的产品建立受众。

希望这可以帮助! 在大型项目上单独编程可能会非常令人畏惧。

Many agile techniques work great solo:

  • User interviews and stories: If you don't know what your users want, why would your software be useful?
  • A simple spec: Or even just be a mission statement. "Let people broadcast short messages to their subscriber lists." "Use in-degree to sort internet search results." "Let people collaboratively answer programming questions." Whatever.
  • A strictly-ordered todo list: Helpful to keep you from drowning in thoughts.
  • Tangents log: A good to-do list has a "to-don't" component, so you don't obsess over things you aren't going to do (yet).
  • YAGNI: Stay on target. This is very important when working by yourself, because no one is there to tell you "No! Don't reinvent dynamic typing in Java! Get back to the project." To-don't lists help with this.
  • Test-driven development: Writing tests forces you to think about the end result, rather than getting bogged down in implementation details. You'll get bogged down enough anyway; no need to make it worse.
  • Frequent releases: Make yourself stick to deadlines. "We'll have a feature-complete version that includes user stories 1-4 by Friday. It won't connect to the network or save data to disk, but XYZ..."
  • User testing: Have your buddies look at what you're making on a decently frequent schedule -- maybe once a month, maybe every week, depending on how many friends you have and how much beer/pizza you want to feed them. Pay very close attention to what they say and do and think when using the software.

And other things that only seem like they make sense in big projects can help a lot:

  • Source control: Install git. It's bone simple. Use it. Don't obsess over it.
  • Off-site backups: Y'know. In case of house fires or floods.
  • A blog: But you're only allowed to write there when a release comes out. ;) Also helps you build an audience for your product before it even ships.

Hope this helps! Solo programming on a large project can be very daunting.

萌能量女王 2024-07-31 09:13:24

请遵循 Stack Overflow 问题中的说明:

哪些工具/技术可以使独立开发者受益?

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

Follow what is laid out in this Stack Overflow question:

What Tools/Techniques can benefit a solo developer?

Also. Use Source Control. You wouldn't believe how many times I've been bitten by that on personal projects.

战皆罪 2024-07-31 09:13:24

有这样的:

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

这可能有点矫枉过正

尴尬癌患者 2024-07-31 09:13:24

问题更多的是你对什么感到满意以及你希望解决什么问题。 大多数方法都是由独立开发人员在某些时候使用的(结对编程是一个值得注意的例外)。 问题是你真的是一个人吗,还是只是一个人工作? 我发现能够向我提出想法的人是非常宝贵的。 此外,让其他人查看您的代码(同行评审)是发现您无法“看到”的问题的好方法。 因此,同意 Aiden Bell 的观点“在你的设备上编程并不酷。”
我会尝试连接到一个社区(比如SO),在那里你可以向其他人征求想法。 然后,你需要以这样的方式构建你的方法,以便在你发出想法时允许中断。

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

帕特奥

The issue is more a question of what you are comfortable with and what problems you hope to solve. Most methodologies are used by a solo developer at some point (pair programming is a notable exception). The issue is are you actually alone, or just working by yourself? I have found that it is invaluable to have people I can bounce ideas off of. Furthermore having someone else to look at you code (peer review) is a great way to find issues that you just cannot "see". So to agree with Aiden Bell "Programming on your oen is uncool."
I would try and connect to a community (like SO) where you can bounce ideas off of others. Then you need to build your methodology in such a way as to allow for interruptions when you send an idea out.

Does that make sense? Why are you programming alone?

Pat O

寻找一个思念的角度 2024-07-31 09:13:24

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

  • 找到一个在线组织(例如
    oisv.com)分享想法和
    确保
  • 您花时间进行互动
    与现实世界中的实际人员一起
  • 设定项目目标、截止日期和
    里程碑
  • 花时间预先做好适当的准备
    设计和项目规划
  • 留出工作时间遵守
    他们
  • 不要工作太多而烧伤自己
    没有
  • 什么是完美的,所以努力
    对于有效的好代码,而不是
    完美
  • 获得一些非编程的爱好

Not really an official methodology, but I have done a lot of solo development (independent consultant and ISV), and here are the things I have found to be important:

  • Find an online organization (like
    oisv.com) to share thoughts and
    ideas
  • Make sure you take time to interact
    with actual people in the real world
  • Set project goals, deadlines, and
    milestones
  • Take time to do appropriate up-front
    design and project planning
  • Set aside working hours are stick to
    them
  • Don't work too much and burn yourself
    out
  • Nothing is ever perfect, so strive
    for good code that works, not
    perfection
  • Get some non-programming hobbies
別甾虛僞 2024-07-31 09:13:24

这与其说是一种方法,不如说是一种技巧。 当您进行调试时,请向自己大声解释错误,就像您试图向同事解释一样。 这感觉很愚蠢,但强迫自己大声说出问题通常会揭示问题所在。

This is more of trick than a methodology. When you're debugging, explain the bugs out loud to yourself as though you were trying to explain it to a co-worker. It feels silly, but forcing yourself to articulate the problem out loud often reveals what the problem is.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文