百科问答小站 logo
百科问答小站 font logo



「8 万行的 Python 程序用 4 万行 Java 重写了」,说明了什么? 第1页

  

user avatar   pansz 网友的相关建议: 
      

我来说说一个不一样的观点:其实吧,这与语言没有太大关系,反过来也很可能会得到一样的效果。

这相当于把代码重新写一遍,而重写代码通常能够得到更好的架构。无论是用 python 换成 java 还是 java 换成 python,对整个程序的性能可能都会有提升。

为什么代码要重写,甚至换一种语言重写才能提升效率?因为只有换一种语言,才能迫使你把原先的代码全部抛弃,你不能复用,不能 copy 任何的旧代码,那么新代码必然是全新的,通常是更好的设计。

为什么新代码常常可能是更好的设计?因为:

  1. 写新代码的时候,你知道了更多的需求,写旧代码的时候,往往还根本不明确需求,是在边写代码边探索的过程中,代码很可能有很多补丁,最后的业务逻辑与当初第一版设计代码的时候已经大相径庭。新代码是站在最终对业务逻辑更好的理解的高度上的。
  2. 写新代码的时候你是个有丰富经验的老程序员,写旧代码的时候你很可能是个新手。你升级了,理应写出更优秀的代码。

当然,如果有足够的纪律,就算不换语言的重构也可以得到不错的效果。只是,如果不换语言,以现有的管理水平以及大多数程序员的自律程度,很难真正实现重构的目的而已。

因此,这件事情本身再正常不过,只是因为他涉及到切换语言,而造成了语言间的纷争,但在我看来这种纷争并无必要。以程序员的惰性,不更换语言的重构确实难以达到理想效果。至于具体更换为什么语言,在这里并不是那么的重要。


user avatar   yw-yt 网友的相关建议: 
      

Java的优势不是这样体现的。Java是几百个程序员合作写了一个百万行代码的东西。其中绝大多数程序员写的屎一样的代码。

但编译之后,居然

没有BUG!

Python是两个程序员用一万行重写了上面那个程序。过了几个月,想改一个流程。结果发现:

全部重写还省事一些!




  

相关话题

  Python函数中*和**的内涵究竟是什么呢? 
  Python如何实现list元素的两两相加并返回最大值? 
  开源社区很多开源框架都有Rails的影子,为什么不用Rails呢? 
  MATLAB在逐渐被Python淘汰吗? 
  学校和机构都建议孩子放弃 Python 转 C++,我该如何处理? 
  创业公司选择 .NET 技术栈究竟比选 Java/Python 贵多少钱? 
  可以自学Python吗? 
  为什么现在部分985高校还是给大一上C语言课? 
  pytorch ddp训练中一个node fail,导致整个训练失败,有可能解决吗? 
  Python中除了matplotlib外还有哪些数据可视化的库? 

前一个讨论
加持良治爱葛城美里么?
下一个讨论
如果魔戒远征队成功到达摩多了,然后会怎么样?能不能偷偷进去把戒指扔到火山里?





© 2025-06-19 - tinynew.org. All Rights Reserved.
© 2025-06-19 - tinynew.org. 保留所有权利