百科问答小站 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是两个程序员用一万行重写了上面那个程序。过了几个月,想改一个流程。结果发现:

全部重写还省事一些!




  

相关话题

  CPython有GIL是因为当年设计CPython的人偷懒吗? 
  如何理解“from xxx import *这种写法会给你带来无穷无尽的噩梦?”? 
  'module' object has no attribute 'HTTPSConnection' 问题? 
  Python 有哪些黑魔法? 
  你都用 Python 来做什么? 
  对于一个开源 Python 量化交易平台项目的建议有哪些? 
  学习python中的pandas有没有好的教程推荐? 
  Top2博士毕业,几乎不会编程,没写过python,是不是人生没有希望了? 
  零基础如何学爬虫技术? 
  学习python为什么要在linux下?怎么学? 

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





© 2024-11-22 - tinynew.org. All Rights Reserved.
© 2024-11-22 - tinynew.org. 保留所有权利