为什么很多网站讨论编程而不是描述他们试图生产的系统?

26
有很多网站教人们如何构建更好的软件,但为什么很少有网站实际上给出程序员所需创建的领域的详细描述呢?在不同类型的系统之间出现共同需求的模式之前,一个人只能构建那么多库存、会计和ERP系统。从逻辑上讲,如果程序员花费了大量时间尝试在他们的架构中创建可重用组件,这是否意味着他们应该具有一些可重用的“蓝图”,以描述他们应该创建的系统?换句话说,软件开发的焦点似乎过于关注“如何”构建软件,而忽略了目录和准确指定(具有详细要求)“首先”应该使用什么。

因此,我的问题是:是否有任何工作将所有不同类型的系统规范编目到单个位置,全部在单个网站上?如果缺乏项目开始时的适当要求是软件开发的苦恼之一,那么能否从已经编写过的同类型先前系统中“重复使用”要求规范更有意义呢?


为什么要关闭三票?这是一个非常好的问题。 - Steven A. Lowe
驱动式开发。没有评论。这是SO的诅咒,不幸的是。很遗憾没有办法投票来减少计数。 - dkretz
12个回答

0

拥有一个中央代码模式库将是一件好事,各种语言都可以涵盖。这样我们不仅可以展示我们惊人的代码,更容易相互学习,而且还可以通过提供xyz服务/产品的优秀示例来提高整体代码质量。

我的意思是,我们的编码项目有多少是独一无二的,没有其他人做过呢?

我粗略估计,我们工作中约98%的内容都是其他公司、类似行业、类似功能需求已经完成过的。

我的意思是,这正是stackoverflow应该支持的。不仅分享和讨论问题,还可以互相学习彼此的代码。


-1

谁会创造这样的东西?谁会使用它?

据我所知,你在谈论一个应用程序设计库。倾向于分享这些详细设计的人已经在以开放规范或开源的形式进行了分享。前者往往吸引那些已经参与创建实现此类规范的产品或与实现此类规范的系统互操作的产品的人和组织。后者...好吧,既然可以直接修改源代码,为什么还要重新实现设计呢?

正如Mark Harrison所指出的,确实有很多公司愿意推广常见业务系统的设计。他们会告诉你:“购买我们的系统,只需添加您组织所需的功能即可”,“为什么要浪费时间重新实现我们已经完成的事情?”他们真的没有太大动力分享详细的实现规范,因为他们真的不希望您重新实现他们试图向您销售的内容。

最后...这些东西真的并不那么复杂。或者说,它们确实很复杂...但这种复杂性源于规模,源于任何给定组织可能对系统施加的各种奥秘要求的无数组合。真正的工作在于解释这些要求,将它们构建到基础系统中——虽然这可能很乏味,但是这是不可避免的。


1
我不是在谈论应用程序设计——我实际上是在谈论应用程序规格和需求。我对定义问题本身的可重复使用方法感兴趣,而不是解决方案。你不能仅仅凭空提出一个应用框架,而不先了解问题本身…… - plaureano

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接