xes*_*shu 3 c# asp.net model application-design
我的问题不是技术问题.这更像是一种哲学而非个人偏好.我正在设计和开发一个应用程序(web +桌面),这只是我想到的,并且想知道你们(程序员和设计师)是否曾经遇到过这个问题:
一些设计人员相信制作将会运行3 - 5年的应用程序,并且任何变更都将反映在他们身上,而无需采用系统核心变更.作为一个程序员,我知道一个事实,这是从来没有的情况.确实发生了小的化妆品变化,但通常它们会在一两年后消失,随着时间的推移,将会发生变化,需要进行核心更改,最终您将进行新的应用.
鉴于技术的快节奏变化,设计一个5年的应用程序是相当荒谬的,恕我直言.嗯,我的意思是不设计,但这个应用程序将运行5年的想法,并认为我们不需要创建一个新的,我认为生活在一个愚人的天堂.我是说真的,各位程序员,有一个正在运行的流程通常被重新制作/重新结构化/重新组织/重新编码几年下来行反正最关键任务的或基本的小应用程序.
所以我的问题是为什么要保持这种完美的应用程序运行十年的态度.真的很愚蠢,因为你知道技术每年都会发生变化; 新框架,新方法,新技术将出现,您的客户将需要它们.所以,如果你原谅我使用这个短语,WTF就是重点?
我一直告诉我的设计师,应用程序将在几年反正被重新设计,有在试图使其从@ss拍摄灯光是没有意义的,因为它只是不会,永远.没有完美的应用程序.
我希望你们得到我的漂移.你们有同样的感受吗?BTW我从事软件编程业务已有7年了.如果你真的考虑过这个问题,你真的认为Facebook将会在5年内保持不变,因为设计每年都会改变,以保持"时髦",但核心每隔几年就会发生变化.我很清楚这一点.我是偏执还是什么?请告诉我其他程序员和我在同一条路上.任何人?
我的方法是设计变革.这意味着写的最易维护的代码,我就可以了,让事情松耦合,模块化,试图做的事情作为标准配置的方式可能使其他开发人员可以迅速回暖,对码等
我通常会在未来对数据库设计进行更多努力,因为在很多情况下,更改可能比代码更改困难得多.
我曾在两家不同的公司工作,这些公司的软件产品已接近10年以上.尽管它们已经扩展了大量的新功能并且已经进行了许多面部提升,但是自第一次稳定发布以来,应用程序的核心基本上没有被触及.这可能不是典型的,但如果架构师足够熟练,那么系统可以构建为模块化且可扩展到足以容纳惊人的增长量.