展开讨论

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

找到了!是在一个播客里:https://changelog.com/podcast/604 这里有一些关键引语:…

找到了!是在一个播客里:https://changelog.com/podcast/604 这里有一些关键引语:"对我们来说非常重要的一点是面向对象编程(OO)。网络规范和浏览器内部结构往往高度面向对象,当你能在代码中紧密地模拟规范时,生活会更容易。" "所以我做的是,我让一些人‘请用几种不同的语言实现这些功能。然后我们可以讨论一下这个过程如何,你对每种语言有什么喜欢的地方,以及你希望每天使用哪种语言工作。’我们最终得到的结果是,人们一开始对用Rust工作感到很兴奋,因为有很多炒作,它是一种流行的语言……你可能会认为它自面包切片以来最伟大的发明……在很多方面确实如此,如果你想要的就是面包切片。或者我不知道我到底想说什么。但它对很多东西来说都很有效。" "但结果发现它并不适合构建浏览器……因为浏览器堆栈建立在上世纪90年代设计的API之上,当时受Java和XML等技术的启发。……

源讨论我试过Servo原帖 248 条评论 · 导入时统计
2

这条内容在回应什么?

父级讨论 · 节选

BU

> [Rust] 在他们发现它行不通之前基本上是最大的竞争对手。 我想了解更多这方面的情况。

完整原文

社区评论 0

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

原讨论中的回复 2

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

ZO

> 这个90年代的API,它奠定了网络栈的核心。它非常面向对象,而在Rust中很难表达所有这些内容,因为Rust并不适合面向对象编程。例如,它没有继承,而继承是一个非常基础的构建块。 这似乎是一个相当奇怪的批评,因为关于对象的唯一在Rust中稍微复杂一点的就是实现继承;即使如此,通过使用泛型类型状态模式,可以以非常合理的方式表达。也就是说,将一个可以被继承的类表示为泛型对象 MyBaseClass<T>,其中T保存“派生”对象的状态(并且本身也可以是泛型,从而扩展类型层次结构),方法可以为任何 MyBaseClass<T> 或某些特定的 MyBaseClass<MyDerivedObject> 实现。 (这个方法旨在在任何情况下都能做到正确的事情,当一个元...…

完整原文
BU

我欣赏这些细节。 最终,我并没有改变我最初的印象。 我曾在一家从事网络爬虫的公司工作,我们的代码很糟糕,我们也知道这一点,而首席程序员有点喜欢Elixir,我们一直打算有一天用Elixir重写,他在面试中经常提到这一点,也把它写在职位要求中,但实际上公司里几乎没有Elixir。我们想出了各种技术上似乎合理的理由来说明Elixir会很适合,我自己也提出了一些理由,因为当我说Elixir好话时,我得到了积极的社交反馈。但现在我离开公司了,我意识到Elixir并不是唯一能解决我们所面临问题的工具。只是有一个人喜欢Elixir,所以最终我们大家都这样做了。 我仍然预测LadyBird也会如此。你甚至可以在我链接的推文中看到,他们选择C++是因为一个人,所以我猜那个人也...…

完整原文
在 Hacker News 阅读

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

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