关于代码过时和软件生命周期





创业公司,新技术,现代语言和框架。当我们从头开始做某事时,所有这些都是令人兴奋的。我们一定会选择数百万为我们的项目所喜爱的现代流行技术。但是时间并没有停止它的不懈努力,突然我们回头看看,我们的“创业公司”已经有15年的历史了。而且世界早已改变。而且我们的项目中仍然有相同的Basic / Delphi / Fortran /。以及如何生活呢?



不,我根本不想繁殖其他霍利瓦尔,这远非招迷。领导价值超过一百万行的过时技术代码项目,尤其是在Delphi上,这只是我个人的痛苦。



一个成功的项目通常能持续多久变得很有趣。如果环顾四周,那么原则上会有很多具有“胡须历史”的项目。这包括WinRAR,Microsoft Office,AutoCAD,Photoshop,3DSmax等。而且,这些都是面向广大观众的项目。以及存在多少个不同级别的银行系统,CIS,CRM和其他“公司”系统。其中许多不是最近五年写的。



当然,我想跟上时代的发展,但是,我认为将一个大型项目从一种语言迁移到另一种语言是一项艰巨的任务。这种迁移不仅会继续进行,还会编写新代码,旧项目也应该继续工作,运行和开发。在一个新项目中,有必要重复旧项目的所有逻辑,但是并不总是很清楚。在一个旧项目中,很多逻辑可以建立在开发人员长期不支持的库上。在一个新项目中,应替换这些库。如果这些是可视组件,那么这将更加困难,因为除了寻找替代组件之外,您还需要考虑如何重写用于使用这些可视组件的代码,以便新组件能够重复旧组件的行为。当然,所有事情都是可以解决的,没有将项目的工作重复100%的目标,但是,即使有50%的人做到这一点也非常非常困难,而且在进行这种重写的过程中,结果可能是他们决定重写为的平台/语言不适合或已经不受欢迎。



当然,我主要是在谈论具有重要逻辑层的大型项目。一百万行及以上。那些。与微型站点无关,与微服务无关,而是与此类整体(即使它们被分成“组件” /“层”等)无关。



我想知道在座人士的意见,您是否遇到过类似的问题以及在类似情况下的行为?



您将建议在开发过程中应用哪些解决方案,以便在10-15年内不希望将项目转移到另一个平台?



感谢您的回答!



All Articles