目前有許多因素使成為智能合約開發人員成為一個有吸引力的職業前景,從使用對世界產生變革性影響的技術的機會到人才市場對智能合約開發人員的巨大需求。
此外,智能合約開發技能正變得越來越重要。在1990 年代,工程師從封閉的大型機世界轉移到互聯網的開放數據庫,現在隨著引入 智能合約. 正如當時開發人員轉向更相關的未來技術堆棧一樣,開發人員現在正在轉向Web 3.0 堆棧。
有抱負的智能合約開發人員對於如何進行這種轉變肯定會有很多問題:Web 3.0 開發人員堆棧是什麼?您應該學習哪些編碼語言?需要哪些技術技能,您如何學習這些技能?下面,您將找到這些問題的答案以及更多內容,讓您準備好進入智能合約開發的世界。
區塊鏈語言
區塊鏈智能合約的主要語言是 堅固性, 和 維珀 成為領先的競爭對手。與Python 等解釋型語言不同,Solidity 是靜態類型(聲明變量類型)和編譯的,這意味著您需要在運行前生成二進製文件。 Solidity 是Gavin Wood 開發的用於解決獨特問題的語言 以太坊 2014 年面臨,現在它是所有以太坊虛擬機(EVM) 兼容鏈的默認語言。這意味著,無論您是在Ethereum、Avalanche、Polygon、Binance Smart Chain (BSC) 還是任何其他EVM 鏈上開發,您都需要了解Solidity 的來龍去脈。但是,有些鏈不使用EVM 並使用不同的語言進行編程。 Solana 是區塊鏈的一個例子,它不使用Solidity,而是使用預先存在的語言Rust 和C/C++。
那麼如何選擇區塊鏈進行開發呢?有很多考慮因素,沒有一刀切的答案。以太坊目前是大多數dApp 存在的地方,它通常具有最大的流動性。此外,以太坊的悠久歷史使其在可靠性方面享有盛譽。如果速度和低成本不是您的主要關注點,並且您有生態系統需求(例如,您想與之交互的dApp 僅在以太坊上),那麼以太坊是一個不錯的選擇。
您還可以部署在擴展層(L2) 上,例如Arbitrum,它具有完全的EVM 兼容性,但將交易“捲起”到壓縮包中,因此交易吞吐量更高,這意味著成本更低,速度更快。至於其他EVM 鏈,每個鏈都提供了某種形式的比以太坊的可擴展性改進; BSC 使用更大的交易塊,Polygon 是一個側鏈,為了擴展而犧牲一些去中心化,而Avalanche 使用新的共識算法來提高其交易速度/成本。
就本文而言,我們將通過Solidity 關注EVM 鏈,因為這是最常見的選項。
技術能力
編譯的、相對低級的後端語言,如C/C++,為進入Solidity 編程提供了一個強有力的切入點。那些具有Web 開發背景或使用JavaScript 和Python 等語言經驗的人需要適應較低級別的Solidity 思維方式,在這種思維方式下,您可能會發現自己直接操作變量的位。但是,全棧區塊鏈程序員希望同時擁有這兩種技能,因為與Solidity 智能合約的大部分接口都是通過web3.js、ethers.js 和web3.py 庫完成的。優秀的開發人員可以處理後端Solidity 合約或JS/Python 中的前端——但優秀的開發人員可以處理整個堆棧。這 OpenZeppelin 合約庫 也是一個很好的借鑒來源,因為它為開發人員省去了編寫一些通用合約的麻煩,例如代幣合約。
可能需要培養的最關鍵技能是安全性。您的智能合約有一天可能會處理數十億美元的價值,因此最重要的是它沒有缺陷。像這樣的漏洞 重入性 在智能合約中考慮是很重要的。由於智能合約經常調用其他智能合約功能,因此其他功能可能會中斷您的智能合約流程。這就是著名的價值7000 萬美元的ETH DAO 黑客攻擊的原因。安全心態對於智能合約開發人員至關重要。
那麼這些合約的開發流程是什麼樣的呢?是否有工具和IDE 可以幫助我們?當然!一個流行的IDE 是 混音,這是一個基於Web 的IDE,可以處理合同的編譯和將其部署到您選擇的鏈上。此外, 松露 和 布朗尼 有兩個開發框架也可以幫助您。要詳細了解從頭到尾的流程,包括如何使用這些框架,我們強烈建議您查看Chainlink Labs 的首席開發人員倡導者Patrick Collins 通過freeCodeCamp 提供的極其詳盡的智能合約課程: Solidity、區塊鍊和智能合約課程——初學者到專家Python 教程.
回顧一下,這些是成為智能合約開發人員應該熟悉的一些語言、庫和工具:
- 堅固性
- JavaScript
- Python
- web3.js/web3.py
- 以太坊.js
- 松露
- 布朗尼
- 混音
社區
社區在智能合約領域極其重要。如此多的創新發生得如此之快,你很難跟上自己的步伐。這就是為什麼最優秀的開發人員積極在Twitter 上建立聯繫,加入黑客馬拉松以結識其他開發人員和潛在投資者或雇主 比特幣 獎金以協助開源開發,參與周到的論壇,例如 智能合約研究論壇,並在Discord 上聊天以學習和幫助他人學習。
黑客馬拉松是培養智能合約技能的特別好地方。在編程馬拉松中,您可以邊做邊學,並在構建過程中實時磨練自己的才能,同時業內受人尊敬的成員會幫助指導您——甚至可能成為您項目的合作者!這 Chainlink 2021 秋季黑客馬拉松 是開始建設的好地方。憑藉55 萬美元的總獎金、領先的專家和風投出席,以及數千名開發人員的會面,這可以極大地促進智能合約開發人員的職業生涯。另一個很棒的資源是 Chainlink 不和諧,開發者倡導者和熱情的社區成員可以幫助您入門。
在哪裡學習
有大量資源可用於支持您的學習,從黑客馬拉松到博客,再到Discord 服務器到YouTube 頻道等等。我們選擇了以下八種資源,它們為那些希望成為智能合約開發人員的人提供了絕佳的組合,其次是來自每個資源領域的頂級資源。
- Solidity、區塊鍊和智能合約課程——初學者到專家Python 教程
- 加密殭屍
- 連擊
- 鍊鍊接YouTube
- Chainlink 博客
- Chainlink 不和諧
- 以太坊網站
- ConsenSys 訓練營
YouTube
如果您是一名視覺學習者,並且更喜歡有人指導您完成教程而不是單獨學習,那麼YouTube 是一個很好的資源。這些YouTuber都為學習智能合約開發的人提供了極好的材料,提供了詳細的教程供您學習以支持您的學習。
社區
參與社區在智能合約領域至關重要。向更有經驗的人學習,結交朋友,並幫助那些會反過來幫助你的人。 Discord 和Reddit 社區是獲得實時幫助和與其他志同道合的開發者一起擴大社交圈的強大資源。以下是一些可以幫助您完成智能合約開發之旅的空間。
編程馬拉松
編程馬拉松是加速開發者旅程的一種令人興奮的方式。在新技術的前沿發展的同時突破你的極限,同時著名的社區領袖在那裡提供建議,投資者正在尋找下一個可能屬於你的大項目。 Chainlink Hackathon 是一個很好的起點,提供大量資源、研討會、獎品和交流機會。
邁出智能合約之旅的第一步
成為智能合約開發者的途徑有很多。我們已經列出了一些選項,但您可以選擇最適合您的選項。最重要的是你開始了,為了好玩而構建一些東西,開始探索,並開始提出問題——其餘的將隨之而來。無論您是後端開發人員、Web 開發人員,還是剛開始從事開發工作,都有一條通往成功的道路,並且有很多樂於助人的人。所以邁出第一步:加入Discords,閱讀教程,加入黑客馬拉松,並開始構建令人興奮的Web 3.0 未來。
在構建安全、功能豐富的dApp 時,Chainlink 久經考驗的預言機基礎設施為開發人員開啟了無數可能性。 要了解有關Chainlink 的更多信息,請訪問 鏈環, 訂閱 Chainlink 通訊,並遵循 @鏈環 在推特上。要了解Chainlink 網絡的完整願景,請閱讀 Chainlink 2.0 白皮書.