阿Han的軟體技術棧 💡
221
免費公開
房間資訊
付費訂閱
主軸圍繞於軟體科技, 除了過往經驗成章以外也持續學習新技能, 並將學習心法記錄與分享, 以期幫助相同道路之夥伴。 裡面包含著各種程式語言的疑難雜症解題技巧, 也提供資料庫、AI、認證與授權、工具庫...等技巧, 讓您自由找出您想要的解答, 如果您想要系統化的教學課程也歡迎至「🔒 阿Han的軟體心法實戰營」。
Top 5
1
【🤖 opencode】💸 月底吃土了嗎?換上這把「開源瑞士刀」,告別昂貴的 Claude Code!
2
【PDF文件】使用Chrome解除PDF密碼限制
3
【🤖 AI工具庫】什麼!AI也能自己開公司?Paperclip初探
4
【語音合成技術 - Kokoro TTS】比想像中更強!用 Python + uv 打造支援繁中的語音 API
5
🚀 用 AI 打造專屬的「理財健檢 Agent」,怎麼做?
1
【🤖 opencode】💸 月底吃土了嗎?換上這把「開源瑞士刀」,告別昂貴的 Claude Code!
2
【PDF文件】使用Chrome解除PDF密碼限制
3
【🤖 AI工具庫】什麼!AI也能自己開公司?Paperclip初探
4
【語音合成技術 - Kokoro TTS】比想像中更強!用 Python + uv 打造支援繁中的語音 API
5
🚀 用 AI 打造專屬的「理財健檢 Agent」,怎麼做?
全部
AI
python
Web
軟體知識
認證與授權
資料庫
工具庫
作業系統
Message Queue
javascript/nodejs
Go
區塊鏈
全部
AI
python
Web
軟體知識
認證與授權
資料庫
工具庫
作業系統
Message Queue
javascript/nodejs
Go
區塊鏈
全部類型
免費與付費
最新發佈
最新發佈
阿Han
2023/08/01
【元宇宙的奇幻旅程】 VR、AR與MR有何不同?
相信常常聽到元宇宙的世界裡有一個並不陌生又有點距離的名詞「XR擴展實境」,包含了三大核心技術,分別為VR、AR與MR,其中VR與AR較為貼近我們的生活,那三者究竟有何不同呢? 就讓我們持續的看下去吧! VR 虛轉實,把假的變成真的 說到VR最直覺的就是想到VR頭盔吧,它可以帶給我
#
區塊鏈
#
VR
#
XR
9
阿Han
2023/08/01
【元宇宙的奇幻旅程】 VR、AR與MR有何不同?
相信常常聽到元宇宙的世界裡有一個並不陌生又有點距離的名詞「XR擴展實境」,包含了三大核心技術,分別為VR、AR與MR,其中VR與AR較為貼近我們的生活,那三者究竟有何不同呢? 就讓我們持續的看下去吧! VR 虛轉實,把假的變成真的 說到VR最直覺的就是想到VR頭盔吧,它可以帶給我
#
區塊鏈
#
VR
#
XR
9
阿Han
2023/06/30
【開發智能合約 - 密碼學系列】零知識證明Ep.1 - 益智又有趣的機制
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
#
區塊鏈
#
認證與授權
7
阿Han
2023/06/30
【開發智能合約 - 密碼學系列】零知識證明Ep.1 - 益智又有趣的機制
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
#
區塊鏈
#
認證與授權
7
阿Han
2023/05/31
【開發智能合約 — Solidity系列】實作篇Ep.16 — 匯入模組拚積木(Import)
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
#
區塊鏈
#
智能合約
#
Solidity
4
阿Han
2023/05/31
【開發智能合約 — Solidity系列】實作篇Ep.16 — 匯入模組拚積木(Import)
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
#
區塊鏈
#
智能合約
#
Solidity
4
阿Han
2023/05/28
【開發智能合約 — Solidity系列】實作篇Ep.15 — 映射的奧秘(Mapping)
Mapping(映射)就像是字典表一樣,鍵入「什麼樣的標題」對應到「什麼樣的內容」,而標題就是從內容提煉出來的一種簡短快速識別的標的,透過這種方式,我們未來找尋內文時,只要先透過標題來查找,絕對會比直接找內文快上好幾倍,因此Mapping常常應用在查找事物上,它有點像一般程式語言的HashTable
#
區塊鏈
#
Solidity
#
智能合約
6
阿Han
2023/05/28
【開發智能合約 — Solidity系列】實作篇Ep.15 — 映射的奧秘(Mapping)
Mapping(映射)就像是字典表一樣,鍵入「什麼樣的標題」對應到「什麼樣的內容」,而標題就是從內容提煉出來的一種簡短快速識別的標的,透過這種方式,我們未來找尋內文時,只要先透過標題來查找,絕對會比直接找內文快上好幾倍,因此Mapping常常應用在查找事物上,它有點像一般程式語言的HashTable
#
區塊鏈
#
Solidity
#
智能合約
6
阿Han
2023/05/23
【Web3.0】什麼是Web3.0呢? 包含了那些?
文章會根據以下議題進行說明與介紹,從幾個大面向延伸發展小議題並逐一說明。 去中心化:打破集中化權力造成的失衡與巨嬰壟斷現象,這也是Web 3.0發展的主軸。 2. 反壟斷和隱私保護: 個人資訊掌控於個人手中,中間不會經過平台,因此對個人隱私更為保障。 3. 數據所有權: 我們可以自行掌握數據,並決定
#
區塊鏈
#
web3
6
阿Han
2023/05/23
【Web3.0】什麼是Web3.0呢? 包含了那些?
文章會根據以下議題進行說明與介紹,從幾個大面向延伸發展小議題並逐一說明。 去中心化:打破集中化權力造成的失衡與巨嬰壟斷現象,這也是Web 3.0發展的主軸。 2. 反壟斷和隱私保護: 個人資訊掌控於個人手中,中間不會經過平台,因此對個人隱私更為保障。 3. 數據所有權: 我們可以自行掌握數據,並決定
#
區塊鏈
#
web3
6
阿Han
2023/05/19
【開發智能合約 — Solidity系列】實作篇Ep.14 — 動動手來打造函式庫吧(Library)
簡單的來說就是把同類型常用的功能打包在一起,讓其他開發者能夠重複使用,達到資源有效利用的效果,以軟體開發來說就是減少多餘的程式碼,而Solidity語言中,Library可以視為物件導向中的靜態類別,不需要產生實體就能使用,因此能有效的減少Gas。 當我們剛完成一份合約時難免因為設計尚未考慮周全而導
#
區塊鏈
#
blockchain
#
智能合約
1
阿Han
2023/05/19
【開發智能合約 — Solidity系列】實作篇Ep.14 — 動動手來打造函式庫吧(Library)
簡單的來說就是把同類型常用的功能打包在一起,讓其他開發者能夠重複使用,達到資源有效利用的效果,以軟體開發來說就是減少多餘的程式碼,而Solidity語言中,Library可以視為物件導向中的靜態類別,不需要產生實體就能使用,因此能有效的減少Gas。 當我們剛完成一份合約時難免因為設計尚未考慮周全而導
#
區塊鏈
#
blockchain
#
智能合約
1
阿Han
2023/05/18
【開發智能合約 — Solidity系列】實作篇Ep.13 — 抽象化的合約(Abstract Contracts)
我們在前幾篇有介紹到介面的用途,都知道介面可以制定規格,建議可以先複習一下這一篇「【開發智能合約 — Solidity系列】實作篇Ep.10 — 標準化的介面(Interfaces)」,而這次來介紹一個非常抽象的概念,名為「抽象化合約」,果然如其名! 不太容易理解,這種合約跟介面非常相似,都可以用來
#
區塊鏈
#
智能合約
#
Solidity
4
阿Han
2023/05/18
【開發智能合約 — Solidity系列】實作篇Ep.13 — 抽象化的合約(Abstract Contracts)
我們在前幾篇有介紹到介面的用途,都知道介面可以制定規格,建議可以先複習一下這一篇「【開發智能合約 — Solidity系列】實作篇Ep.10 — 標準化的介面(Interfaces)」,而這次來介紹一個非常抽象的概念,名為「抽象化合約」,果然如其名! 不太容易理解,這種合約跟介面非常相似,都可以用來
#
區塊鏈
#
智能合約
#
Solidity
4
阿Han
2023/05/17
【開發智能合約 — Solidity系列】實作篇Ep.12 — 合約內同名但不同用途的函數超載
我們上一篇有介紹了「【開發智能合約 — Solidity系列】實作篇Ep.11 — 繼承同源但不同意圖的函數覆寫(Function Overriding)」學習到overriding這個關鍵字的概念,而今天介紹另一個非常相似的名詞overloading(超載),兩者看似很像,但本質上卻存在著非常大的
#
Solidity
#
區塊鏈
#
智能合約
4
2
阿Han
2023/05/17
【開發智能合約 — Solidity系列】實作篇Ep.12 — 合約內同名但不同用途的函數超載
我們上一篇有介紹了「【開發智能合約 — Solidity系列】實作篇Ep.11 — 繼承同源但不同意圖的函數覆寫(Function Overriding)」學習到overriding這個關鍵字的概念,而今天介紹另一個非常相似的名詞overloading(超載),兩者看似很像,但本質上卻存在著非常大的
#
Solidity
#
區塊鏈
#
智能合約
4
2
阿Han
2023/05/16
【開發智能合約 — Solidity系列】實作篇Ep.11 — 繼承同源但不同意圖的函數覆寫
我們在「【開發智能合約 — Solidity系列】實作篇Ep.9 — 何謂繼承(Inheritance)」有提到繼承的一些基本概念,然而在繼承的過程中我們可能會用到上游的方法,甚至加工,而方法名稱重複了,是否能被允許呢? 答案是「允許」的,就好比我們雖然繼承了父親的「處事技巧」,但在求新求變的時代中
#
區塊鏈
#
智能合約
#
Solidity
5
阿Han
2023/05/16
【開發智能合約 — Solidity系列】實作篇Ep.11 — 繼承同源但不同意圖的函數覆寫
我們在「【開發智能合約 — Solidity系列】實作篇Ep.9 — 何謂繼承(Inheritance)」有提到繼承的一些基本概念,然而在繼承的過程中我們可能會用到上游的方法,甚至加工,而方法名稱重複了,是否能被允許呢? 答案是「允許」的,就好比我們雖然繼承了父親的「處事技巧」,但在求新求變的時代中
#
區塊鏈
#
智能合約
#
Solidity
5
阿Han
2023/05/15
【開發智能合約 — Solidity系列】概念篇: 區塊鏈也要燃料費用? 到底什麼是Gas呢?
在講Gas這個概念之前,我們先以汽車為例子,不論是上高速公路還是加油,都是需要費用的,而費用的計算方式也跟我們使用的資源多寡有關,因此整個Gas就是圍繞在使用者付費的基礎之上,而計價的依據則根據Gas Price、Gas Limit最終產生出Gas fee。 相信對於Gas具備基本概念之後,我們在開
#
區塊鏈
#
智能合約
#
blockchain
5
阿Han
2023/05/15
【開發智能合約 — Solidity系列】概念篇: 區塊鏈也要燃料費用? 到底什麼是Gas呢?
在講Gas這個概念之前,我們先以汽車為例子,不論是上高速公路還是加油,都是需要費用的,而費用的計算方式也跟我們使用的資源多寡有關,因此整個Gas就是圍繞在使用者付費的基礎之上,而計價的依據則根據Gas Price、Gas Limit最終產生出Gas fee。 相信對於Gas具備基本概念之後,我們在開
#
區塊鏈
#
智能合約
#
blockchain
5
阿Han
2023/05/14
【開發智能合約 — Solidity系列】實作篇Ep.10 — 標準化的介面(Interfaces)
Interface我們就將之想像成是一種標準化的規範,在產品還沒開發出來之前,我們心中想必已經有個藍圖,嗯…,這個功能需要什麼樣的功能,這時候就可以來制定介面,以「設計」為出發點而後再進入「實作」,如此一來我們在設計階段就能發現一些盲點,減少經過實作過程才發現的窘境,節省繁複修改的成本,而且介面定義
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/14
【開發智能合約 — Solidity系列】實作篇Ep.10 — 標準化的介面(Interfaces)
Interface我們就將之想像成是一種標準化的規範,在產品還沒開發出來之前,我們心中想必已經有個藍圖,嗯…,這個功能需要什麼樣的功能,這時候就可以來制定介面,以「設計」為出發點而後再進入「實作」,如此一來我們在設計階段就能發現一些盲點,減少經過實作過程才發現的窘境,節省繁複修改的成本,而且介面定義
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/13
【開發智能合約 — Solidity系列】實作篇Ep.9 — 何謂繼承(Inheritance)
一個功能越趨完善且複雜的合約,勢必會拆成許多合約共同組成,而其實這些組成的合約之中許多的方法、元素都是重複的,因此我們可以使用Inheritance(繼承)的技巧,將共同的屬性、方法抽到某個上級合約,而其餘的合約只要繼承自上級合約,就能減少重複開發的狀況,我們都知道軟體開發的過程,只要開發的原始碼越
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/13
【開發智能合約 — Solidity系列】實作篇Ep.9 — 何謂繼承(Inheritance)
一個功能越趨完善且複雜的合約,勢必會拆成許多合約共同組成,而其實這些組成的合約之中許多的方法、元素都是重複的,因此我們可以使用Inheritance(繼承)的技巧,將共同的屬性、方法抽到某個上級合約,而其餘的合約只要繼承自上級合約,就能減少重複開發的狀況,我們都知道軟體開發的過程,只要開發的原始碼越
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/12
【開發智能合約 — Solidity系列】實作篇Ep.8 - 與交易有關的功能(Fallback & Receive)
Solidity支援兩種特殊的函數,分別是Fallback以及Receive,一個是處理合約中不存在的功能時進行的回退機制,而另一個Receive則是負責收款後的動作,但兩者稱為特殊函數的原因主要是跟我們一般函數不同的地方於它們是屬於匿名的函數,也就是不用給定Function名稱,因此才會較為特殊,
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/12
【開發智能合約 — Solidity系列】實作篇Ep.8 - 與交易有關的功能(Fallback & Receive)
Solidity支援兩種特殊的函數,分別是Fallback以及Receive,一個是處理合約中不存在的功能時進行的回退機制,而另一個Receive則是負責收款後的動作,但兩者稱為特殊函數的原因主要是跟我們一般函數不同的地方於它們是屬於匿名的函數,也就是不用給定Function名稱,因此才會較為特殊,
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/12
【開發智能合約 — Solidity系列】實作篇Ep.7 — 狀態的可變性限制(State Mutability)
這次的篇章主要在介紹狀態的可變性,透過約束來限制狀態,避免隨意更改狀態導致錯誤的合約出現,如果對於Solidity開發有興趣的朋友不妨參考「📚 更多關於Solidity的文章請看這裡…」,讓我們一起動動手學習開發智能合約吧! 我們都知道狀態在智能合約中扮演著非常重要的角色,經過什麼事件之後變化為什
#
區塊鏈
#
智能合約
#
Solidity
1
阿Han
2023/05/12
【開發智能合約 — Solidity系列】實作篇Ep.7 — 狀態的可變性限制(State Mutability)
這次的篇章主要在介紹狀態的可變性,透過約束來限制狀態,避免隨意更改狀態導致錯誤的合約出現,如果對於Solidity開發有興趣的朋友不妨參考「📚 更多關於Solidity的文章請看這裡…」,讓我們一起動動手學習開發智能合約吧! 我們都知道狀態在智能合約中扮演著非常重要的角色,經過什麼事件之後變化為什
#
區塊鏈
#
智能合約
#
Solidity
1
阿Han
2023/05/10
【開發智能合約 — Solidity系列】實作篇Ep.6 -關於可視範圍(Visibility)
為什麼要特別介紹可視範圍呢? 試想,假如我們的合約裡有些非常重要的內容只能侷限於合約內使用,此時就可以運用可視範圍的技巧,將某些重要的功能、狀態鎖定在合約內使用,不隨意開放給外部調用,避免汙染內部,但有些又是共用的內容及功能時,我們就可以利用公開的可視範圍讓相同的功能能夠重複使用。 合約中又可以依照
#
區塊鏈
#
智能合約
#
blockchain
3
阿Han
2023/05/10
【開發智能合約 — Solidity系列】實作篇Ep.6 -關於可視範圍(Visibility)
為什麼要特別介紹可視範圍呢? 試想,假如我們的合約裡有些非常重要的內容只能侷限於合約內使用,此時就可以運用可視範圍的技巧,將某些重要的功能、狀態鎖定在合約內使用,不隨意開放給外部調用,避免汙染內部,但有些又是共用的內容及功能時,我們就可以利用公開的可視範圍讓相同的功能能夠重複使用。 合約中又可以依照
#
區塊鏈
#
智能合約
#
blockchain
3
阿Han
2023/05/09
【開發智能合約 — Solidity系列】實作篇Ep.5 - 錯誤處理的機制(Error Handling)
Solidity語言的錯誤檢查提供了Require()、Revert()、Assert(),這三種方便的API調用,而這三種用途分別不同,畢竟牽涉到瓦斯費的問題,因此才會與過往的程式語言有些許的差異, require()通常會被使用在輸入值的驗證檢查,因為它的特性主要是能夠退回剩餘的Gas fee,
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/09
【開發智能合約 — Solidity系列】實作篇Ep.5 - 錯誤處理的機制(Error Handling)
Solidity語言的錯誤檢查提供了Require()、Revert()、Assert(),這三種方便的API調用,而這三種用途分別不同,畢竟牽涉到瓦斯費的問題,因此才會與過往的程式語言有些許的差異, require()通常會被使用在輸入值的驗證檢查,因為它的特性主要是能夠退回剩餘的Gas fee,
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/08
【開發智能合約 — Solidity系列】概念篇: 關於虛擬沙盒Ethereum Virtual Machine(EVM
每個產品在實驗室研發出來後,勢必會面臨到賣給客戶的階段,那麼當我們將產品移交給客戶時,意味著也要進行環境的安裝,但問題來了,每一個客戶的環境差異甚大,總不可能為了A客戶就建立一個A客戶的環境,因應B客戶就建立B客戶的環境,這樣隨著產品的銷售量增長也將連帶耗盡公司的資源,想必這不是我們所樂見的現象,當
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/08
【開發智能合約 — Solidity系列】概念篇: 關於虛擬沙盒Ethereum Virtual Machine(EVM
每個產品在實驗室研發出來後,勢必會面臨到賣給客戶的階段,那麼當我們將產品移交給客戶時,意味著也要進行環境的安裝,但問題來了,每一個客戶的環境差異甚大,總不可能為了A客戶就建立一個A客戶的環境,因應B客戶就建立B客戶的環境,這樣隨著產品的銷售量增長也將連帶耗盡公司的資源,想必這不是我們所樂見的現象,當
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/07
【開發智能合約 — Solidity系列】環境與工具篇:如何使用Remix進行Debug
建議閱讀前可以先了解一下「【開發智能合約 — Solidity系列】開發環境準備」,會比較容易操作Remix來開發智能合約。 Remix IDE的Debug方式其實也類似於我們開發軟體程式過程中的Debug流程,編輯好程式碼之後,經過編譯,發佈到暫存鏈上,對每一個區塊進行Debug,過程中逐步排查出
#
區塊鏈
#
智能合約
#
Solidity
5
阿Han
2023/05/07
【開發智能合約 — Solidity系列】環境與工具篇:如何使用Remix進行Debug
建議閱讀前可以先了解一下「【開發智能合約 — Solidity系列】開發環境準備」,會比較容易操作Remix來開發智能合約。 Remix IDE的Debug方式其實也類似於我們開發軟體程式過程中的Debug流程,編輯好程式碼之後,經過編譯,發佈到暫存鏈上,對每一個區塊進行Debug,過程中逐步排查出
#
區塊鏈
#
智能合約
#
Solidity
5
阿Han
2023/05/06
【開發智能合約 — Solidity系列】實作篇Ep.4 -貨幣與時間單位
「人」與「人」之間無非時時刻刻都在交易,只是每一種交易的形式與媒介有所不同,而區塊鏈的世界也有特定的交易單位,主要分為兩大類型的單位, 分別是以乙太幣單位以及時間單位。 最小單位為「wei」, 而其餘主要會用到的單位分別是「gwei」與「ether」。 時間單位的部份就比較容易理解了, 非常直觀,
#
區塊鏈
#
Solidity
#
智能合約
4
阿Han
2023/05/06
【開發智能合約 — Solidity系列】實作篇Ep.4 -貨幣與時間單位
「人」與「人」之間無非時時刻刻都在交易,只是每一種交易的形式與媒介有所不同,而區塊鏈的世界也有特定的交易單位,主要分為兩大類型的單位, 分別是以乙太幣單位以及時間單位。 最小單位為「wei」, 而其餘主要會用到的單位分別是「gwei」與「ether」。 時間單位的部份就比較容易理解了, 非常直觀,
#
區塊鏈
#
Solidity
#
智能合約
4
阿Han
2023/05/05
【開發智能合約 — Solidity系列】實作篇Ep.3 -資料型態的特性與流程控制
資料型態在合約當中扮演著什麼角色呢? 我們在「【開發智能合約 — Solidity系列】實作篇Ep.2 — 合約中的基本組成元素」有介紹過狀態變數可以儲存一些變化值,而儲存什麼類型的值就是所謂的資料型態,不同的資料型態可以處理的事物也有所不同,因此我們也需要了解一些基本的資料型態以及特性之後,未來開
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/05
【開發智能合約 — Solidity系列】實作篇Ep.3 -資料型態的特性與流程控制
資料型態在合約當中扮演著什麼角色呢? 我們在「【開發智能合約 — Solidity系列】實作篇Ep.2 — 合約中的基本組成元素」有介紹過狀態變數可以儲存一些變化值,而儲存什麼類型的值就是所謂的資料型態,不同的資料型態可以處理的事物也有所不同,因此我們也需要了解一些基本的資料型態以及特性之後,未來開
#
區塊鏈
#
智能合約
#
Solidity
6
加入
Top 5
1
【🤖 opencode】💸 月底吃土了嗎?換上這把「開源瑞士刀」,告別昂貴的 Claude Code!
2
【PDF文件】使用Chrome解除PDF密碼限制
3
【🤖 AI工具庫】什麼!AI也能自己開公司?Paperclip初探
4
【語音合成技術 - Kokoro TTS】比想像中更強!用 Python + uv 打造支援繁中的語音 API
5
🚀 用 AI 打造專屬的「理財健檢 Agent」,怎麼做?
1
【🤖 opencode】💸 月底吃土了嗎?換上這把「開源瑞士刀」,告別昂貴的 Claude Code!
2
【PDF文件】使用Chrome解除PDF密碼限制
3
【🤖 AI工具庫】什麼!AI也能自己開公司?Paperclip初探
4
【語音合成技術 - Kokoro TTS】比想像中更強!用 Python + uv 打造支援繁中的語音 API
5
🚀 用 AI 打造專屬的「理財健檢 Agent」,怎麼做?
全部
AI
python
Web
軟體知識
認證與授權
資料庫
工具庫
作業系統
Message Queue
javascript/nodejs
Go
區塊鏈
全部
AI
python
Web
軟體知識
認證與授權
資料庫
工具庫
作業系統
Message Queue
javascript/nodejs
Go
區塊鏈
全部類型
免費與付費
最新發佈
最新發佈
阿Han
2023/08/01
【元宇宙的奇幻旅程】 VR、AR與MR有何不同?
相信常常聽到元宇宙的世界裡有一個並不陌生又有點距離的名詞「XR擴展實境」,包含了三大核心技術,分別為VR、AR與MR,其中VR與AR較為貼近我們的生活,那三者究竟有何不同呢? 就讓我們持續的看下去吧! VR 虛轉實,把假的變成真的 說到VR最直覺的就是想到VR頭盔吧,它可以帶給我
#
區塊鏈
#
VR
#
XR
9
阿Han
2023/08/01
【元宇宙的奇幻旅程】 VR、AR與MR有何不同?
相信常常聽到元宇宙的世界裡有一個並不陌生又有點距離的名詞「XR擴展實境」,包含了三大核心技術,分別為VR、AR與MR,其中VR與AR較為貼近我們的生活,那三者究竟有何不同呢? 就讓我們持續的看下去吧! VR 虛轉實,把假的變成真的 說到VR最直覺的就是想到VR頭盔吧,它可以帶給我
#
區塊鏈
#
VR
#
XR
9
阿Han
2023/06/30
【開發智能合約 - 密碼學系列】零知識證明Ep.1 - 益智又有趣的機制
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
#
區塊鏈
#
認證與授權
7
阿Han
2023/06/30
【開發智能合約 - 密碼學系列】零知識證明Ep.1 - 益智又有趣的機制
什麼是零知識證明(Zero-knowledge proof) 是一種密碼學的概念,用於在不揭示具體信息的情況下,證明某個主張的正確性。它允許一方(稱為證明者)向另一方(稱為驗證者)證明某個陳述的真實性,而無需透露任何關於陳述的具體細節..., 這根本文字天書啊,底下讓我們用白話文來說一下唄! 「我必
#
區塊鏈
#
認證與授權
7
阿Han
2023/05/31
【開發智能合約 — Solidity系列】實作篇Ep.16 — 匯入模組拚積木(Import)
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
#
區塊鏈
#
智能合約
#
Solidity
4
阿Han
2023/05/31
【開發智能合約 — Solidity系列】實作篇Ep.16 — 匯入模組拚積木(Import)
一套大型的智能合約通常都會拆分成許多小合約,並且透過匯入的方式拼裝而成,而這樣的匯入在Solidity世界中就是「Import」,就讓我們來看看「Import」到底怎麼運用吧! 假設目錄結構如下 example.sol other.sol 我們引入的方式就會是: import ‘./other.so
#
區塊鏈
#
智能合約
#
Solidity
4
阿Han
2023/05/28
【開發智能合約 — Solidity系列】實作篇Ep.15 — 映射的奧秘(Mapping)
Mapping(映射)就像是字典表一樣,鍵入「什麼樣的標題」對應到「什麼樣的內容」,而標題就是從內容提煉出來的一種簡短快速識別的標的,透過這種方式,我們未來找尋內文時,只要先透過標題來查找,絕對會比直接找內文快上好幾倍,因此Mapping常常應用在查找事物上,它有點像一般程式語言的HashTable
#
區塊鏈
#
Solidity
#
智能合約
6
阿Han
2023/05/28
【開發智能合約 — Solidity系列】實作篇Ep.15 — 映射的奧秘(Mapping)
Mapping(映射)就像是字典表一樣,鍵入「什麼樣的標題」對應到「什麼樣的內容」,而標題就是從內容提煉出來的一種簡短快速識別的標的,透過這種方式,我們未來找尋內文時,只要先透過標題來查找,絕對會比直接找內文快上好幾倍,因此Mapping常常應用在查找事物上,它有點像一般程式語言的HashTable
#
區塊鏈
#
Solidity
#
智能合約
6
阿Han
2023/05/23
【Web3.0】什麼是Web3.0呢? 包含了那些?
文章會根據以下議題進行說明與介紹,從幾個大面向延伸發展小議題並逐一說明。 去中心化:打破集中化權力造成的失衡與巨嬰壟斷現象,這也是Web 3.0發展的主軸。 2. 反壟斷和隱私保護: 個人資訊掌控於個人手中,中間不會經過平台,因此對個人隱私更為保障。 3. 數據所有權: 我們可以自行掌握數據,並決定
#
區塊鏈
#
web3
6
阿Han
2023/05/23
【Web3.0】什麼是Web3.0呢? 包含了那些?
文章會根據以下議題進行說明與介紹,從幾個大面向延伸發展小議題並逐一說明。 去中心化:打破集中化權力造成的失衡與巨嬰壟斷現象,這也是Web 3.0發展的主軸。 2. 反壟斷和隱私保護: 個人資訊掌控於個人手中,中間不會經過平台,因此對個人隱私更為保障。 3. 數據所有權: 我們可以自行掌握數據,並決定
#
區塊鏈
#
web3
6
阿Han
2023/05/19
【開發智能合約 — Solidity系列】實作篇Ep.14 — 動動手來打造函式庫吧(Library)
簡單的來說就是把同類型常用的功能打包在一起,讓其他開發者能夠重複使用,達到資源有效利用的效果,以軟體開發來說就是減少多餘的程式碼,而Solidity語言中,Library可以視為物件導向中的靜態類別,不需要產生實體就能使用,因此能有效的減少Gas。 當我們剛完成一份合約時難免因為設計尚未考慮周全而導
#
區塊鏈
#
blockchain
#
智能合約
1
阿Han
2023/05/19
【開發智能合約 — Solidity系列】實作篇Ep.14 — 動動手來打造函式庫吧(Library)
簡單的來說就是把同類型常用的功能打包在一起,讓其他開發者能夠重複使用,達到資源有效利用的效果,以軟體開發來說就是減少多餘的程式碼,而Solidity語言中,Library可以視為物件導向中的靜態類別,不需要產生實體就能使用,因此能有效的減少Gas。 當我們剛完成一份合約時難免因為設計尚未考慮周全而導
#
區塊鏈
#
blockchain
#
智能合約
1
阿Han
2023/05/18
【開發智能合約 — Solidity系列】實作篇Ep.13 — 抽象化的合約(Abstract Contracts)
我們在前幾篇有介紹到介面的用途,都知道介面可以制定規格,建議可以先複習一下這一篇「【開發智能合約 — Solidity系列】實作篇Ep.10 — 標準化的介面(Interfaces)」,而這次來介紹一個非常抽象的概念,名為「抽象化合約」,果然如其名! 不太容易理解,這種合約跟介面非常相似,都可以用來
#
區塊鏈
#
智能合約
#
Solidity
4
阿Han
2023/05/18
【開發智能合約 — Solidity系列】實作篇Ep.13 — 抽象化的合約(Abstract Contracts)
我們在前幾篇有介紹到介面的用途,都知道介面可以制定規格,建議可以先複習一下這一篇「【開發智能合約 — Solidity系列】實作篇Ep.10 — 標準化的介面(Interfaces)」,而這次來介紹一個非常抽象的概念,名為「抽象化合約」,果然如其名! 不太容易理解,這種合約跟介面非常相似,都可以用來
#
區塊鏈
#
智能合約
#
Solidity
4
阿Han
2023/05/17
【開發智能合約 — Solidity系列】實作篇Ep.12 — 合約內同名但不同用途的函數超載
我們上一篇有介紹了「【開發智能合約 — Solidity系列】實作篇Ep.11 — 繼承同源但不同意圖的函數覆寫(Function Overriding)」學習到overriding這個關鍵字的概念,而今天介紹另一個非常相似的名詞overloading(超載),兩者看似很像,但本質上卻存在著非常大的
#
Solidity
#
區塊鏈
#
智能合約
4
2
阿Han
2023/05/17
【開發智能合約 — Solidity系列】實作篇Ep.12 — 合約內同名但不同用途的函數超載
我們上一篇有介紹了「【開發智能合約 — Solidity系列】實作篇Ep.11 — 繼承同源但不同意圖的函數覆寫(Function Overriding)」學習到overriding這個關鍵字的概念,而今天介紹另一個非常相似的名詞overloading(超載),兩者看似很像,但本質上卻存在著非常大的
#
Solidity
#
區塊鏈
#
智能合約
4
2
阿Han
2023/05/16
【開發智能合約 — Solidity系列】實作篇Ep.11 — 繼承同源但不同意圖的函數覆寫
我們在「【開發智能合約 — Solidity系列】實作篇Ep.9 — 何謂繼承(Inheritance)」有提到繼承的一些基本概念,然而在繼承的過程中我們可能會用到上游的方法,甚至加工,而方法名稱重複了,是否能被允許呢? 答案是「允許」的,就好比我們雖然繼承了父親的「處事技巧」,但在求新求變的時代中
#
區塊鏈
#
智能合約
#
Solidity
5
阿Han
2023/05/16
【開發智能合約 — Solidity系列】實作篇Ep.11 — 繼承同源但不同意圖的函數覆寫
我們在「【開發智能合約 — Solidity系列】實作篇Ep.9 — 何謂繼承(Inheritance)」有提到繼承的一些基本概念,然而在繼承的過程中我們可能會用到上游的方法,甚至加工,而方法名稱重複了,是否能被允許呢? 答案是「允許」的,就好比我們雖然繼承了父親的「處事技巧」,但在求新求變的時代中
#
區塊鏈
#
智能合約
#
Solidity
5
阿Han
2023/05/15
【開發智能合約 — Solidity系列】概念篇: 區塊鏈也要燃料費用? 到底什麼是Gas呢?
在講Gas這個概念之前,我們先以汽車為例子,不論是上高速公路還是加油,都是需要費用的,而費用的計算方式也跟我們使用的資源多寡有關,因此整個Gas就是圍繞在使用者付費的基礎之上,而計價的依據則根據Gas Price、Gas Limit最終產生出Gas fee。 相信對於Gas具備基本概念之後,我們在開
#
區塊鏈
#
智能合約
#
blockchain
5
阿Han
2023/05/15
【開發智能合約 — Solidity系列】概念篇: 區塊鏈也要燃料費用? 到底什麼是Gas呢?
在講Gas這個概念之前,我們先以汽車為例子,不論是上高速公路還是加油,都是需要費用的,而費用的計算方式也跟我們使用的資源多寡有關,因此整個Gas就是圍繞在使用者付費的基礎之上,而計價的依據則根據Gas Price、Gas Limit最終產生出Gas fee。 相信對於Gas具備基本概念之後,我們在開
#
區塊鏈
#
智能合約
#
blockchain
5
阿Han
2023/05/14
【開發智能合約 — Solidity系列】實作篇Ep.10 — 標準化的介面(Interfaces)
Interface我們就將之想像成是一種標準化的規範,在產品還沒開發出來之前,我們心中想必已經有個藍圖,嗯…,這個功能需要什麼樣的功能,這時候就可以來制定介面,以「設計」為出發點而後再進入「實作」,如此一來我們在設計階段就能發現一些盲點,減少經過實作過程才發現的窘境,節省繁複修改的成本,而且介面定義
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/14
【開發智能合約 — Solidity系列】實作篇Ep.10 — 標準化的介面(Interfaces)
Interface我們就將之想像成是一種標準化的規範,在產品還沒開發出來之前,我們心中想必已經有個藍圖,嗯…,這個功能需要什麼樣的功能,這時候就可以來制定介面,以「設計」為出發點而後再進入「實作」,如此一來我們在設計階段就能發現一些盲點,減少經過實作過程才發現的窘境,節省繁複修改的成本,而且介面定義
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/13
【開發智能合約 — Solidity系列】實作篇Ep.9 — 何謂繼承(Inheritance)
一個功能越趨完善且複雜的合約,勢必會拆成許多合約共同組成,而其實這些組成的合約之中許多的方法、元素都是重複的,因此我們可以使用Inheritance(繼承)的技巧,將共同的屬性、方法抽到某個上級合約,而其餘的合約只要繼承自上級合約,就能減少重複開發的狀況,我們都知道軟體開發的過程,只要開發的原始碼越
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/13
【開發智能合約 — Solidity系列】實作篇Ep.9 — 何謂繼承(Inheritance)
一個功能越趨完善且複雜的合約,勢必會拆成許多合約共同組成,而其實這些組成的合約之中許多的方法、元素都是重複的,因此我們可以使用Inheritance(繼承)的技巧,將共同的屬性、方法抽到某個上級合約,而其餘的合約只要繼承自上級合約,就能減少重複開發的狀況,我們都知道軟體開發的過程,只要開發的原始碼越
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/12
【開發智能合約 — Solidity系列】實作篇Ep.8 - 與交易有關的功能(Fallback & Receive)
Solidity支援兩種特殊的函數,分別是Fallback以及Receive,一個是處理合約中不存在的功能時進行的回退機制,而另一個Receive則是負責收款後的動作,但兩者稱為特殊函數的原因主要是跟我們一般函數不同的地方於它們是屬於匿名的函數,也就是不用給定Function名稱,因此才會較為特殊,
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/12
【開發智能合約 — Solidity系列】實作篇Ep.8 - 與交易有關的功能(Fallback & Receive)
Solidity支援兩種特殊的函數,分別是Fallback以及Receive,一個是處理合約中不存在的功能時進行的回退機制,而另一個Receive則是負責收款後的動作,但兩者稱為特殊函數的原因主要是跟我們一般函數不同的地方於它們是屬於匿名的函數,也就是不用給定Function名稱,因此才會較為特殊,
#
區塊鏈
#
智能合約
#
Solidity
3
阿Han
2023/05/12
【開發智能合約 — Solidity系列】實作篇Ep.7 — 狀態的可變性限制(State Mutability)
這次的篇章主要在介紹狀態的可變性,透過約束來限制狀態,避免隨意更改狀態導致錯誤的合約出現,如果對於Solidity開發有興趣的朋友不妨參考「📚 更多關於Solidity的文章請看這裡…」,讓我們一起動動手學習開發智能合約吧! 我們都知道狀態在智能合約中扮演著非常重要的角色,經過什麼事件之後變化為什
#
區塊鏈
#
智能合約
#
Solidity
1
阿Han
2023/05/12
【開發智能合約 — Solidity系列】實作篇Ep.7 — 狀態的可變性限制(State Mutability)
這次的篇章主要在介紹狀態的可變性,透過約束來限制狀態,避免隨意更改狀態導致錯誤的合約出現,如果對於Solidity開發有興趣的朋友不妨參考「📚 更多關於Solidity的文章請看這裡…」,讓我們一起動動手學習開發智能合約吧! 我們都知道狀態在智能合約中扮演著非常重要的角色,經過什麼事件之後變化為什
#
區塊鏈
#
智能合約
#
Solidity
1
阿Han
2023/05/10
【開發智能合約 — Solidity系列】實作篇Ep.6 -關於可視範圍(Visibility)
為什麼要特別介紹可視範圍呢? 試想,假如我們的合約裡有些非常重要的內容只能侷限於合約內使用,此時就可以運用可視範圍的技巧,將某些重要的功能、狀態鎖定在合約內使用,不隨意開放給外部調用,避免汙染內部,但有些又是共用的內容及功能時,我們就可以利用公開的可視範圍讓相同的功能能夠重複使用。 合約中又可以依照
#
區塊鏈
#
智能合約
#
blockchain
3
阿Han
2023/05/10
【開發智能合約 — Solidity系列】實作篇Ep.6 -關於可視範圍(Visibility)
為什麼要特別介紹可視範圍呢? 試想,假如我們的合約裡有些非常重要的內容只能侷限於合約內使用,此時就可以運用可視範圍的技巧,將某些重要的功能、狀態鎖定在合約內使用,不隨意開放給外部調用,避免汙染內部,但有些又是共用的內容及功能時,我們就可以利用公開的可視範圍讓相同的功能能夠重複使用。 合約中又可以依照
#
區塊鏈
#
智能合約
#
blockchain
3
阿Han
2023/05/09
【開發智能合約 — Solidity系列】實作篇Ep.5 - 錯誤處理的機制(Error Handling)
Solidity語言的錯誤檢查提供了Require()、Revert()、Assert(),這三種方便的API調用,而這三種用途分別不同,畢竟牽涉到瓦斯費的問題,因此才會與過往的程式語言有些許的差異, require()通常會被使用在輸入值的驗證檢查,因為它的特性主要是能夠退回剩餘的Gas fee,
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/09
【開發智能合約 — Solidity系列】實作篇Ep.5 - 錯誤處理的機制(Error Handling)
Solidity語言的錯誤檢查提供了Require()、Revert()、Assert(),這三種方便的API調用,而這三種用途分別不同,畢竟牽涉到瓦斯費的問題,因此才會與過往的程式語言有些許的差異, require()通常會被使用在輸入值的驗證檢查,因為它的特性主要是能夠退回剩餘的Gas fee,
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/08
【開發智能合約 — Solidity系列】概念篇: 關於虛擬沙盒Ethereum Virtual Machine(EVM
每個產品在實驗室研發出來後,勢必會面臨到賣給客戶的階段,那麼當我們將產品移交給客戶時,意味著也要進行環境的安裝,但問題來了,每一個客戶的環境差異甚大,總不可能為了A客戶就建立一個A客戶的環境,因應B客戶就建立B客戶的環境,這樣隨著產品的銷售量增長也將連帶耗盡公司的資源,想必這不是我們所樂見的現象,當
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/08
【開發智能合約 — Solidity系列】概念篇: 關於虛擬沙盒Ethereum Virtual Machine(EVM
每個產品在實驗室研發出來後,勢必會面臨到賣給客戶的階段,那麼當我們將產品移交給客戶時,意味著也要進行環境的安裝,但問題來了,每一個客戶的環境差異甚大,總不可能為了A客戶就建立一個A客戶的環境,因應B客戶就建立B客戶的環境,這樣隨著產品的銷售量增長也將連帶耗盡公司的資源,想必這不是我們所樂見的現象,當
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/07
【開發智能合約 — Solidity系列】環境與工具篇:如何使用Remix進行Debug
建議閱讀前可以先了解一下「【開發智能合約 — Solidity系列】開發環境準備」,會比較容易操作Remix來開發智能合約。 Remix IDE的Debug方式其實也類似於我們開發軟體程式過程中的Debug流程,編輯好程式碼之後,經過編譯,發佈到暫存鏈上,對每一個區塊進行Debug,過程中逐步排查出
#
區塊鏈
#
智能合約
#
Solidity
5
阿Han
2023/05/07
【開發智能合約 — Solidity系列】環境與工具篇:如何使用Remix進行Debug
建議閱讀前可以先了解一下「【開發智能合約 — Solidity系列】開發環境準備」,會比較容易操作Remix來開發智能合約。 Remix IDE的Debug方式其實也類似於我們開發軟體程式過程中的Debug流程,編輯好程式碼之後,經過編譯,發佈到暫存鏈上,對每一個區塊進行Debug,過程中逐步排查出
#
區塊鏈
#
智能合約
#
Solidity
5
阿Han
2023/05/06
【開發智能合約 — Solidity系列】實作篇Ep.4 -貨幣與時間單位
「人」與「人」之間無非時時刻刻都在交易,只是每一種交易的形式與媒介有所不同,而區塊鏈的世界也有特定的交易單位,主要分為兩大類型的單位, 分別是以乙太幣單位以及時間單位。 最小單位為「wei」, 而其餘主要會用到的單位分別是「gwei」與「ether」。 時間單位的部份就比較容易理解了, 非常直觀,
#
區塊鏈
#
Solidity
#
智能合約
4
阿Han
2023/05/06
【開發智能合約 — Solidity系列】實作篇Ep.4 -貨幣與時間單位
「人」與「人」之間無非時時刻刻都在交易,只是每一種交易的形式與媒介有所不同,而區塊鏈的世界也有特定的交易單位,主要分為兩大類型的單位, 分別是以乙太幣單位以及時間單位。 最小單位為「wei」, 而其餘主要會用到的單位分別是「gwei」與「ether」。 時間單位的部份就比較容易理解了, 非常直觀,
#
區塊鏈
#
Solidity
#
智能合約
4
阿Han
2023/05/05
【開發智能合約 — Solidity系列】實作篇Ep.3 -資料型態的特性與流程控制
資料型態在合約當中扮演著什麼角色呢? 我們在「【開發智能合約 — Solidity系列】實作篇Ep.2 — 合約中的基本組成元素」有介紹過狀態變數可以儲存一些變化值,而儲存什麼類型的值就是所謂的資料型態,不同的資料型態可以處理的事物也有所不同,因此我們也需要了解一些基本的資料型態以及特性之後,未來開
#
區塊鏈
#
智能合約
#
Solidity
6
阿Han
2023/05/05
【開發智能合約 — Solidity系列】實作篇Ep.3 -資料型態的特性與流程控制
資料型態在合約當中扮演著什麼角色呢? 我們在「【開發智能合約 — Solidity系列】實作篇Ep.2 — 合約中的基本組成元素」有介紹過狀態變數可以儲存一些變化值,而儲存什麼類型的值就是所謂的資料型態,不同的資料型態可以處理的事物也有所不同,因此我們也需要了解一些基本的資料型態以及特性之後,未來開
#
區塊鏈
#
智能合約
#
Solidity
6