【開發智能合約 — Solidity系列】Remix編輯器常用的Plugin

更新於 發佈於 閱讀時間約 5 分鐘

圖片來源

延續上一篇「【開發智能合約 — Solidity系列】開發環境準備」,我們建立好開發環境之後,為了提升開發效率與減少錯誤,因此會建議在基礎的編輯器之上加掛一些非常好用的外掛,俗話說工欲善其事,必先利其器,我們要動刀之前務必先磨好刀,接下來會建議一些必備的外掛套件以及示範如何使用,讓我們的開發功力更上一層樓。

Remix這款雲端編輯器非常方便,任何地方只要有瀏覽器就能進行開發,已經不同於以往的開發模式,相信這種開發方式在未來也會逐漸盛行,而且自由彈性度非常的高,在習慣的個人電腦上開發也會暫存我們的環境設定,今天換了一個新的電腦的瀏覽器之後,也會是全新的環境,未來或許會發展出綁定帳號的功能,就類似於我們使用的Google帳號,想要個人化時就登入綁定的帳號,不需要時就用無帳號的使用方式。

如何安裝外掛套件

打開編輯器左下角的插頭圖示,右邊的列表就會出現各種類型的外掛工具,再根據個人需求去進行安裝(Activate)即可。

圖片來源

而清單的上方也有搜尋輸入框,如果已經很確定要安裝哪些知名套件時就可以透過搜尋的方式進行安裝。

圖片來源

推薦的外掛套件

以下是個人在開發之前分析的一些剛需套件,因此會進行安裝與測試,確定是必備的套件在此跟大家分享。

程式語法自動提示

🔍 SOLHINT LINTER

對於初學Solidity的朋友來說,最困難的莫過於語法的不熟悉,因此有些語法我們可能需要邊看文件才能組合出需要的功能,如果能夠智能提示那該有多好,正好,Remix也支援此外掛功能,安裝後我們進行編輯程式碼的時候,只要輸入一個字母,就會提示我們可以使用的語法有哪些,非常方便,如下圖所示:

圖片來源

文件產生器

🔍 ETHDOC
🔍 ETHDOC VIEWER

擬定好一份合約之後,非常重要的一件事情就是撰寫這份合約的條款明細(使用方式),讓合約的利害關係人都能夠明確的知曉這份合約內容,確認無誤後才進行簽約。

而以上兩個外掛套件就是輔助我們在撰寫合約說明的時候可以預覽我們的說明格式與內容是否有誤,若確定無誤之後再發行合約,畢竟合約一旦發行之後,按照區塊鏈的特性就不容易撤銷,因此事前檢查機制非常重要。

首先將我們的程式碼進行編譯之後,只要編譯通過,就可以看到文檔預覽囉! 不過使用起來有點微幅的不方便,就是每次都要先編譯完成後才能看到預覽文檔,原先預期是編譯之前的開發就能夠預覽,或許要使用更強大的編譯器VSCode才有此功能吧,也或許是還沒熟悉此工具,待研究更透徹之後再來更新此部分。

智能合約測試

🔍 SOLIDITY UNIT TESTING

一份優質的合約勢必要經過嚴格的測試才能得到信任,因此我們在發布之前也應該具有自我檢測的機制,自己撰寫的合約自己負責,讓合約品質更加穩定。

這邊可以輸入我們的測試資料夾,通常資料夾底下的xxx_test.sol 符合這種檔案名稱的測試檔都會被偵測並進行測試流程,測試完畢後也會在下方提示檢測結果,讓我們的品質更加穩定。

圖片來源

結語

今天分享的三個重要外掛元件在我們接下來的實戰系列會非常重要,過程中常常會需要這些外掛來輔助,讓一份合約更加的完整,我們可曾想過,過去擬定一份合約之後,還要有審查員進行審查,發布的過程還要提交第三方公證機構,過程來來往往非常耗時耗費成本,額外付出的費用就是為了確保一個信任度。

而智能合約的強大之處不僅只有在發布之後的自動執行,就連擬定合約的過程中也簡化了第三方依賴的複雜度,讓開發合約的過程就能逐步嚴格檢查,縮短時程也確保品質。

或許大家會質疑「智能合約」的可信任度,畢竟還是由開發者進行開發,但試想傳統合約的擬定過程,假手他人就真的值得信任嗎? 其中一個環節出了問題不是更可怕嗎? 世界上並沒有一種最完美的解決方案,都是取捨與改善的過程,而「智能合約」正是補足「傳統合約」缺陷的一種解決方案,或許未來亦會發展出補足「智能合約」不足之處的新技術,我們應該抱持著開放、持續學習的心態去接納這些新事物,才能跟上趨勢,不會變成被淘汰的一員。

📚 更多關於Solidity的文章請看這裡…

— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — -

喜歡撰寫文章的你,不妨來了解一下:
Web3.0時代下為創作者、閱讀者打造的專屬共贏平台 — 為什麼要加入?
歡迎加入一起練習寫作,賺取知識,累積財富!

留言
avatar-img
留言分享你的想法!
avatar-img
阿Han的沙龍
129會員
282內容數
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
阿Han的沙龍的其他內容
2023/08/01
 相信常常聽到元宇宙的世界裡有一個並不陌生又有點距離的名詞「XR擴展實境」,包含了三大核心技術,分別為VR、AR與MR,其中VR與AR較為貼近我們的生活,那三者究竟有何不同呢? 就讓我們持續的看下去吧! VR 虛轉實,把假的變成真的 說到VR最直覺的就是想到VR頭盔吧,它可以帶給我
Thumbnail
2023/08/01
 相信常常聽到元宇宙的世界裡有一個並不陌生又有點距離的名詞「XR擴展實境」,包含了三大核心技術,分別為VR、AR與MR,其中VR與AR較為貼近我們的生活,那三者究竟有何不同呢? 就讓我們持續的看下去吧! VR 虛轉實,把假的變成真的 說到VR最直覺的就是想到VR頭盔吧,它可以帶給我
Thumbnail
2023/06/30
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
Thumbnail
2023/06/30
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
Thumbnail
2023/05/31
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
Thumbnail
2023/05/31
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
Thumbnail
看更多
你可能也想看
Thumbnail
大家好,我是一名眼科醫師,也是一位孩子的媽 身為眼科醫師的我,我知道視力發展對孩子來說有多關鍵。 每到開學季時,診間便充斥著許多憂心忡忡的家屬。近年來看診中,兒童提早近視、眼睛疲勞的案例明顯增加,除了3C使用過度,最常被忽略的,就是照明品質。 然而作為一位媽媽,孩子能在安全、舒適的環境
Thumbnail
大家好,我是一名眼科醫師,也是一位孩子的媽 身為眼科醫師的我,我知道視力發展對孩子來說有多關鍵。 每到開學季時,診間便充斥著許多憂心忡忡的家屬。近年來看診中,兒童提早近視、眼睛疲勞的案例明顯增加,除了3C使用過度,最常被忽略的,就是照明品質。 然而作為一位媽媽,孩子能在安全、舒適的環境
Thumbnail
我的「媽」呀! 母親節即將到來,vocus 邀請你寫下屬於你的「媽」故事——不管是紀錄爆笑的日常,或是一直想對她表達的感謝,又或者,是你這輩子最想聽她說出的一句話。 也歡迎你曬出合照,分享照片背後的點點滴滴 ♥️ 透過創作,將這份情感表達出來吧!🥹
Thumbnail
我的「媽」呀! 母親節即將到來,vocus 邀請你寫下屬於你的「媽」故事——不管是紀錄爆笑的日常,或是一直想對她表達的感謝,又或者,是你這輩子最想聽她說出的一句話。 也歡迎你曬出合照,分享照片背後的點點滴滴 ♥️ 透過創作,將這份情感表達出來吧!🥹
Thumbnail
  Soildity是一種風格類似JavaScript的強型別高階語言,專門用來進行智能合約的開發及編程。本文敘述solidity的獨特之處。   
Thumbnail
  Soildity是一種風格類似JavaScript的強型別高階語言,專門用來進行智能合約的開發及編程。本文敘述solidity的獨特之處。   
Thumbnail
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
Thumbnail
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
Thumbnail
簡單的來說就是把同類型常用的功能打包在一起,讓其他開發者能夠重複使用,達到資源有效利用的效果,以軟體開發來說就是減少多餘的程式碼,而Solidity語言中,Library可以視為物件導向中的靜態類別,不需要產生實體就能使用,因此能有效的減少Gas。 當我們剛完成一份合約時難免因為設計尚未考慮周全而導
Thumbnail
簡單的來說就是把同類型常用的功能打包在一起,讓其他開發者能夠重複使用,達到資源有效利用的效果,以軟體開發來說就是減少多餘的程式碼,而Solidity語言中,Library可以視為物件導向中的靜態類別,不需要產生實體就能使用,因此能有效的減少Gas。 當我們剛完成一份合約時難免因為設計尚未考慮周全而導
Thumbnail
建議閱讀前可以先了解一下「【開發智能合約 — Solidity系列】開發環境準備」,會比較容易操作Remix來開發智能合約。 Remix IDE的Debug方式其實也類似於我們開發軟體程式過程中的Debug流程,編輯好程式碼之後,經過編譯,發佈到暫存鏈上,對每一個區塊進行Debug,過程中逐步排查出
Thumbnail
建議閱讀前可以先了解一下「【開發智能合約 — Solidity系列】開發環境準備」,會比較容易操作Remix來開發智能合約。 Remix IDE的Debug方式其實也類似於我們開發軟體程式過程中的Debug流程,編輯好程式碼之後,經過編譯,發佈到暫存鏈上,對每一個區塊進行Debug,過程中逐步排查出
Thumbnail
本篇章會以實際的程式碼來說明開發Solidity的組成脈絡與重要的區塊,讓我們不再害怕閱讀艱澀難懂的程式碼,並且具備基礎知識以後也能看懂外面的合約。 開源程式碼常常會面臨到法律的問題,因此License的宣告就變得非常重要,而Solidity也考慮到這一塊,因此特別規劃了一塊License宣告的區塊
Thumbnail
本篇章會以實際的程式碼來說明開發Solidity的組成脈絡與重要的區塊,讓我們不再害怕閱讀艱澀難懂的程式碼,並且具備基礎知識以後也能看懂外面的合約。 開源程式碼常常會面臨到法律的問題,因此License的宣告就變得非常重要,而Solidity也考慮到這一塊,因此特別規劃了一塊License宣告的區塊
Thumbnail
延續上一篇「【開發智能合約 — Solidity系列】開發環境準備」,我們建立好開發環境之後,為了提升開發效率與減少錯誤,因此會建議在基礎的編輯器之上加掛一些非常好用的外掛,俗話說工欲善其事,必先利其器,我們要動刀之前務必先磨好刀,接下來會建議一些必備的外掛套件以及示範如何使用,讓我們的開發功力更上
Thumbnail
延續上一篇「【開發智能合約 — Solidity系列】開發環境準備」,我們建立好開發環境之後,為了提升開發效率與減少錯誤,因此會建議在基礎的編輯器之上加掛一些非常好用的外掛,俗話說工欲善其事,必先利其器,我們要動刀之前務必先磨好刀,接下來會建議一些必備的外掛套件以及示範如何使用,讓我們的開發功力更上
Thumbnail
上一篇我們介紹了智能合約的基本概念,而在開發智能合約之前, 建議先對智能合約具備基礎的概念, 往後進行開發時較容易融會貫通, 還沒閱讀的朋友可以參閱此篇「【開發智能合約 — Solidity系列】 淺談智能合約」。 理解完「智能合約」之後,相信大家已經開始手癢了吧! 應該很想開始動手完成第一個自己專
Thumbnail
上一篇我們介紹了智能合約的基本概念,而在開發智能合約之前, 建議先對智能合約具備基礎的概念, 往後進行開發時較容易融會貫通, 還沒閱讀的朋友可以參閱此篇「【開發智能合約 — Solidity系列】 淺談智能合約」。 理解完「智能合約」之後,相信大家已經開始手癢了吧! 應該很想開始動手完成第一個自己專
Thumbnail
打開官方IDE導入合約 : remix Step1:找到github輸入點 並且輸入下列網址: https://github.com/chase5ws/BlackChain/blob/main/ASC_ver1.sol Step2:找到合約檔案位置
Thumbnail
打開官方IDE導入合約 : remix Step1:找到github輸入點 並且輸入下列網址: https://github.com/chase5ws/BlackChain/blob/main/ASC_ver1.sol Step2:找到合約檔案位置
Thumbnail
開發 NFT 專案無非三個步驟:寫程式 → 編譯程式碼 → 發佈智能合約,除了這三個步驟以外,我們還將介紹如何使用 OpenZeppelin 做為專案開發的根基,想要打造車子不再需要從輪子開始造起了,大幅增加開發專案的效率。
Thumbnail
開發 NFT 專案無非三個步驟:寫程式 → 編譯程式碼 → 發佈智能合約,除了這三個步驟以外,我們還將介紹如何使用 OpenZeppelin 做為專案開發的根基,想要打造車子不再需要從輪子開始造起了,大幅增加開發專案的效率。
Thumbnail
這次的 NFT 開發,希望讓讀者們在實作時,盡量用最少的程式碼也能夠完成你的 NFT 作品,而這篇文章可以當做是一個暖身,我們會大致瀏覽本次開發 NFT 所需要用到的一些工具與小知識,大概整理之後暫時先分為六大主題...
Thumbnail
這次的 NFT 開發,希望讓讀者們在實作時,盡量用最少的程式碼也能夠完成你的 NFT 作品,而這篇文章可以當做是一個暖身,我們會大致瀏覽本次開發 NFT 所需要用到的一些工具與小知識,大概整理之後暫時先分為六大主題...
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News