Rust更适合经验较少的程序员?
隨著 Rust被亞馬遜、谷歌等大廠青睞,越來越多的開發(fā)者加入學(xué)習(xí)大軍,但接觸之后,不少人紛紛嗟嘆,Rust 太難了。在2020年Rust調(diào)查報(bào)告中,當(dāng)被問及為什么會停止使用Rust時(shí),有35%的開發(fā)者表示他們還沒學(xué)會,可能是因?yàn)闆]有時(shí)間,也可能是因?yàn)樘y。
而近日 Reddit 上的一篇帖子引起了不少人討論,不少開發(fā)者表示:Rust可能更適合那些編程經(jīng)驗(yàn)較少的程序員,如果你有1、2年的編程經(jīng)驗(yàn),那么入門Rust會更快一些。
yxonic的用戶發(fā)帖表示:他一直認(rèn)為自己喜歡Rust的原因來自于自己是一名經(jīng)驗(yàn)豐富的程序員和自己明確的需求,之所以這樣考慮是因?yàn)樗蠧++和Haskell背景以及可以發(fā)現(xiàn)不少好東西,例如直接繼承和Rust可以解決的一些問題。
然而,他最近把Rust介紹給了他的女朋友,她大約有兩年的Python的編碼經(jīng)驗(yàn),沒想到,她一下子就愛上了Rust,因此,yxonic認(rèn)為,Rust對編碼經(jīng)驗(yàn)不足的程序員可能很有意,下面是yxonic跟女朋友總結(jié)的一些Rust優(yōu)點(diǎn):
-
在cargo(也許也有cargo-edit)的幫助下,立即開始一個(gè)項(xiàng)目和編寫代碼是非常容易的,并且所有的測試、文檔、lint、vcs 等都可以直接使用。而Python在這方面做得非常糟糕,以至于yxonic女朋友對Rust中的簡單性感到震驚。
-
理解和照例子編寫不需要深入理解。實(shí)際上,在閱讀文檔和 reqwest、rocket 等 crate 等示例后,做一些真正的事情會很容易。一個(gè)程序想要做什么已經(jīng)很好地表達(dá)了,而它究竟是如何完成的并不重要。
-
話雖如此,Rust 鼓勵開發(fā)者更多地理解“how”,更重要的是,它讓編程變得有趣和有益。感覺就像通過學(xué)習(xí)每個(gè) Rust 概念來學(xué)習(xí)編程和計(jì)算機(jī)。你進(jìn)行的每一步都會帶給你一些東西,不像在 Python 中,你只需要記住那些花哨的特性、奇怪的約定和微小的差異,但這些并不能促進(jìn)開發(fā)者對編程的理解。
盡管yxonic是通過與Python對比才得出了上面的結(jié)論,但這些觀點(diǎn)可能也適用于其它編程語言,并且他希望Rust能夠得到更多初級程序員的喜愛,讓他們對編程產(chǎn)生真正的興趣,并幫助大家變的更加自信和專業(yè)。
沒想到這一觀點(diǎn)得到了許多開發(fā)者們的響應(yīng),不少程序員紛紛拋出了自己的觀點(diǎn),筆者摘取部分點(diǎn)贊較多的跟大家共享:
nicoburns的評論獲得了162個(gè)支持:
nicoburns 認(rèn)為 Rust 非常適合擁有一兩年經(jīng)驗(yàn)的程序員。 他表示:Rust可能不適合小白類的初學(xué)者(例如仍在學(xué)習(xí)什么是變量、數(shù)組、循環(huán)的人)。 對于完全的初學(xué)者,他認(rèn)為即使是像 Java 這樣的語言也有太多的障礙,你真的需要像 Python 或 JavaScript 這樣的動態(tài)語言。當(dāng)然,您可以直接深入學(xué)習(xí) Rust 或 Java,但學(xué)習(xí)曲線會更陡峭。
IshKebab,43個(gè)支持:
IshKebab認(rèn)為Python缺乏編譯時(shí)的靜態(tài)類型檢查機(jī)制,這會阻礙初學(xué)者快速上手,在編寫 Python 代碼時(shí),你仍然需要了解類型。 在設(shè)計(jì)程序時(shí),你也需要考慮它們。 但是 Python 讓程序員將所有這些都記在腦子里,或在臨時(shí)注釋中。
在這方面Rust和Python的設(shè)計(jì)初衷是一致的,只是方法不同。Rust變量所有權(quán)檢查機(jī)制強(qiáng)迫開發(fā)者編寫代碼時(shí),就必須要考慮類型的問題,只要程序能編譯通過就不會有類型的錯(cuò)誤產(chǎn)生,在實(shí)戰(zhàn)中Rust的類型檢查方案確實(shí)減輕了開發(fā)者的負(fù)擔(dān)。
(是的,Python現(xiàn)在有靜態(tài)類型提示,但是 a)它們很糟糕,b)初學(xué)者教程不使用它們,c)生態(tài)系統(tǒng)的一半仍然沒有類型化,所以使用它們很痛苦。)
針對本文的觀點(diǎn),筆者細(xì)想一番,無論你學(xué)習(xí)何種技術(shù),0基礎(chǔ)跟有點(diǎn)經(jīng)驗(yàn)總歸是有區(qū)別的,有時(shí)候入門跟上手就在那一瞬間,一旦能Get到某些點(diǎn),那可能就是不一樣了,用句學(xué)習(xí)上的老話:“哎,開竅了”。對此,你怎么看?
總結(jié)
以上是生活随笔為你收集整理的Rust更适合经验较少的程序员?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: selenium自动化图片不加载设置
- 下一篇: 图片传输到ipfs节点然后将生成的ipf