展开讨论

经验与复盘经验摘录 · 机器翻译

我以前是动态语言的狂热爱好者,Python是我最喜欢的语言,大多数时候都是……

我以前是动态语言的狂热爱好者,Python是我职业生涯中大部分时间的首选语言。后来我参与了一个约10万行代码的Python大型项目,团队有十个人。那时我才意识到,写代码快并不是问题。阅读代码才是问题,修改别人写的代码是问题,跨几十个模块进行重构也是问题。静态语言在所有这三个方面都有很大帮助。我仍然喜欢用动态语言处理小任务,但更倾向于使用像Go这样的静态语言,它仍然保持了相当多的动态感觉,并且能在编译时帮助我发现错误。我实际上设置了一个监视项目目录的程序,当有更改时会在另一台屏幕上的终端中自动重新编译(实际上是运行单元测试,包括编译)。这提供了持续的反馈,与动态语言的编辑-编译-测试运行速度相当。但最好的部分是单元测试。Go的单元测试运行得如此之快,我不会因为等待它们完成而分心,这让我保持专注,效率更高。

源讨论Python的“令人失望”的超能力原帖 239 条评论 · 导入时统计
2

社区评论 0

还没有社区评论,来聊聊你的看法。

原讨论中的回复 2

仅展示本次导入中包含的直接回复。中文为机器翻译,可查看英文原文。

TA

这几乎总是以显示大型系统需要某些静态系统的额外严格性的方式呈现。而动态系统只与快速原型设计有关。 我认为这是一种错误的表述。简而言之,任何10万行代码的系统都很难进入。要对其进行更改更是困难重重。这是无法避免的。更糟糕的是,如果你有大量实体在这些10万行代码中飞速运转,每次对实体的更改都会很危险。无论静态还是动态系统都是如此。尤其是如果它们被保存在某个地方,这时候静态保证就很难反映实际数据了。

完整原文
DE

一个具有类型层次结构、接口、契约和样板代码的静态类型系统的约10万行代码的项目,在像Python这样的动态类型语言中会缩减到约1万行代码。1万行代码的项目会比10万行代码的项目更易读。 来源:我多年来一直在用C++/Java编程,然后转到了Python。我曾将Java项目迁移到Python。

完整原文
在 Hacker News 阅读

尊重不同观点,分享具体经验。

登录后即可发帖、评论、转发和引用。