Reading

Smart Contract Development on Layer 1 EVM Blockchains

Kursus: Pengembangan Kontrak Cerdas pada Blockchain EVM Layer 1

Smart Contract Development on Layer 1 EVM Blockchains

Kursus: Pengembangan Kontrak Cerdas pada Blockchain EVM Layer 1

Pendahuluan

83 Sumber | 204+ Jam

Pengembangan Blockchain dan aplikasi terdesentralisasi (Dapps) sedang meledak popularitasnya, beberapa bahkan menyebutnya sebagai paradigma disruptif berikutnya, bersamaan dengan internet dan ponsel. Blockchain adalah teknologi baru yang berfungsi sebagai buku besar digital yang dikelola secara terdesentralisasi dan peer-to-peer. Lebih mengesankan lagi, ia menyelesaikan masalah “pengeluaran ganda” yang (konon) tidak dapat dipecahkan dengan menggunakan pendekatan terdesentralisasi (dibandingkan dengan pendekatan konvensional, terpusat yang melibatkan pihak ketiga terpercaya untuk memantau semua transfer) yang memerlukan masalah kriptografi untuk dipecahkan secara matematis dalam jangka waktu yang ditentukan, ini disebut Bukti Kerja (PoW) dan ini memastikan bahwa transaksi tidak dapat dibatalkan dan final. Ratusan mata uang kriptografi (juga dikenal sebagai cryptocurrency) saat ini beredar, yang paling luas adalah Bitcoin dan Ethereum. Selain hanya sebagai bentuk mata uang digital, beberapa juga merupakan platform dan kerangka pengembangan Blockchain. Kombinasi ini telah mengarah pada pertumbuhan dan investasi yang kuat ke dalam domain ini.

Beberapa platform pengembangan Blockchain paling terkemuka adalah Ethereum, Hyperledger (Fabric, Iroha, Sawtooth Lake), Multichain, Stellar, Dispatch, dan NEO. Untuk tujuan jalur pembelajaran ini, fokus akan pada platform Ethereum, karena sebagian besar dari 1.500 mata uang digital yang beredar saat ini dibangun di atas fondasi teknologi Ethereum.

Mengapa kursus ini?

Jika Anda seorang pengembang atau manajer yang penasaran tentang apa itu gerakan Blockchain, maka kursus ini sangat cocok untuk Anda! Jalur pembelajaran ini akan memberi Anda tidak hanya gambaran umum tentang lanskap teknologi Ethereum, tetapi dapat digunakan sebagai panduan referensi ke depan saat Anda mengembangkan teknologi buku besar terdistribusi (yaitu Blockchain) dan aplikasi terdesentralisasi. Banyak dari pembelajaran ini dapat ditransfer ke platform Blockchain lain dan dapat menjadi dasar untuk membantu mencapai tujuan pengembangan Anda.

 

Untuk siapa ini?

Kursus ini untuk insinyur perangkat lunak, ilmuwan komputer, atau pengembang produk yang ingin belajar cara membangun aplikasi terdesentralisasi (atau terpusat) menggunakan teknologi Blockchain. Hasil akhirnya bisa menjadi protokol Blockchain baru, cryptocurrency alternatif, atau aplikasi yang berjalan di tumpukan teknologi Ethereum. Idealnya, kursus ini ditujukan untuk seseorang dengan pengalaman praktis dalam Java, C#, Golang, atau Python, memiliki keahlian dalam Node.js, repositori GIT atau sistem manajemen kode sumber serupa.

 

1.0 Pengenalan ke Tumpukan Aplikasi Blockchain

1.1 Tumpukan Aplikasi Blockchain [45m]

Untuk berhasil sebagai Pengembang Blockchain, Anda perlu terlebih dahulu memahami tumpukan aplikasi Blockchain. Lapisannya adalah:

  • Lapisan dasar adalah lapisan infrastruktur, di mana komputer/penyimpanan/jaringan/virtualisasi berlangsung, ini bisa di dalam rumah atau menggunakan solusi Blockchain as a Service (BaaS) yang sudah ada.
  • Lapisan berikutnya berfokus pada jaringan dan protokol, memutuskan jenis Blockchain yang ingin Anda buat (tanpa izin seperti Bitcoin atau Ethereum atau dengan izin seperti R3), platform pengembangan, algoritma konsensus node partisipasi jaringan (mis. Bukti Kerja (PoW), Bukti Kepemilikan (PoS), hibrida, dll.)
  • Lapisan selanjutnya adalah lapisan layanan yang memungkinkan operasi aplikasi (satu lapisan di atas) dan menetapkan koneksi ke fungsi yang berbeda seperti Oracles (API ke data dunia nyata), kontrak pintar, Multisignature (kontrak multi pihak), Dompet, Penyimpanan File Terdistribusi, dan banyak lagi.
  • Lapisan terakhir adalah yang menghadap konsumen atau klien, yaitu lapisan aplikasi di mana logika bisnis dan interaksi pengguna berlangsung, dan ini memerlukan penggunaan bahasa pemrograman yang berbeda seperti C++, Python, Solidity, dan Java.

1.2 Interoperabilitas Aplikasi Terdesentralisasi [30m]

Setiap teknologi melayani tujuan tertentu, dan selalu merupakan ide yang baik untuk tidak hanya memahami kontribusi Anda pada tumpukan aplikasi tetapi untuk memahami teknologi interoperabel yang berbeda.

1.3 Tabel Hash Terdistribusi [10m]

Saat ini ada sejumlah besar modal dan pendanaan yang disetujui dan didedikasikan untuk infrastruktur dan arsitektur teknologi kripto, dan dengan alasan yang tepat, perpipaan dan kabel digital perlu didirikan sebelum sesuatu yang berarti dapat diproduksi. Juga penting untuk mempelajari tentang otonomi, terdesentralisasi, toleransi kesalahan, dan skalabilitas tabel hash terdistribusi (DHT).

1.4 Lanskap Teknologi [30m]

Peta ini menyoroti beberapa aplikasi terkemuka yang berjalan di atas beberapa Blockchain seperti bursa mata uang kripto di mana mata uang digital diperdagangkan, solusi pemrosesan pembayaran seperti Bitpay dan Circle, dan platform penerbitan (mis. produk yang memungkinkan Anda untuk menandai aset virtual untuk memudahkan transferabilitas).

Pengembang Blockchain biasanya bertanggung jawab untuk merancang dan membangun solusi spesifik industri menggunakan teknologi Blockchain serta memimpin dan berkontribusi pada pengaturan infrastruktur Blockchain dan pengembangan solusi menggunakan kerangka kerja terkemuka. Juga, mereka harus memahami persyaratan fungsional sesuai dengan industri target dan mengubahnya menjadi spesifikasi sistem dan pengguna untuk pengembangan. Akhirnya, mereka harus mendefinisikan pendekatan pengembangan, praktik terbaik untuk menerapkan solusi, dan mendokumentasikan semua kerangka kerja pengembangan dan artefak desain.

1.5 Struktur Tim Aplikasi Blockchain Tipikal

Penting untuk memahami posisi mana yang ingin Anda fokuskan terlebih dahulu, dan sambil Anda mengevaluasi komponen mana dalam tumpukan aplikasi Blockchain yang akan Anda kontribusikan, Anda bisa mendapatkan gambaran tentang bagaimana konstruksi ini bekerja. Secara umum, Anda akan memiliki:

  • Front End: berfokus pada antarmuka pengguna dan pengalaman pengguna, ini akan melibatkan penggunaan HTML untuk pengembangan produk berbasis web, CSS Bootstrap untuk mendesain mockup yang disediakan, dan menggunakan Javascript, jQuery, AngularJS untuk membangun semua interaksi antara back-end (lapisan berikutnya ke bawah) dan antarmuka pengguna; pada dasarnya menampilkan informasi yang diproduksi di back-end, mis. fungsi pencarian, aksi di balik tombol, dll.
  • Back End: ini akan melibatkan pengaturan server cloud, penulisan API dalam Python, Node.js, Rails, membangun basis data di Mongo, Postgres, Cassandra untuk properti ACID, yang mengatakan, dalam dunia yang sempurna terdesentralisasi, Blockchain yang Anda gunakan pada akhirnya akan menjadi basis data Anda, oleh karena itu, desain basis data akan ditentukan oleh kebutuhan lingkungan terpusat vs. terdesentralisasi vs. terdistribusi vs. hibrida. API ini pada akhirnya kritis untuk manajemen pengguna (seperti Pendaftaran, login, logout, sesi browser), penerbitan dan utilitas di balik token, API penjelajah blok jika diperlukan, API dasbor untuk menarik data dari basis data, manajemen dompet API (untuk mengirim dan menerima token, jika berlaku), manajemen keamanan dan izin, dan membuat log dan analitik untuk semua kemungkinan peristiwa. log/analitik untuk semua peristiwa.
    • Blockchain-Platform: ini akan melibatkan mengonversi input data menjadi variabel, membuat kode soliditas, menggunakan variabel dan menerapkannya di jaringan Ethereum (baik MainNet / Testnet) menggunakan Solidity. Ini mungkin modul solusi yang paling rumit.

 

2.0 Pengenalan ke Platform dan Kerangka Pengembangan

Berbagai Platform Blockchain – Pengenalan Singkat [45m-10h]

Ada puluhan kerangka aplikasi terdesentralisasi yang dibangun di atas teknologi Blockchain, dan masing-masing menggunakan bahasa pemrograman sendiri atau telah menciptakan bahasa pemrograman khusus untuk platform tersebut. Beberapa contoh terkenal termasuk: Ethereum, Lisk, Omni, NEO, Ardor, Qtum, Counterparty, Stellar, Waves, Bitshares, Ubiq, NXT, dan Waltonchain. Artikel ini menyoroti beberapa platform dan kerangka yang lebih dikenal yang digunakan secara luas saat ini.

 

3.0 Pengenalan ke Ethereum

Makalah Putih Asli [5-10h]

Ini selalu menjadi langkah pertama ke dalam Ethereum, sangat disarankan untuk meluangkan waktu sebanyak mungkin untuk membaca ini secara detail. Ini adalah dokumen yang hidup dan bernapas yang terus diperbarui.

Bagaimana Ethereum Bekerja? [45-90m]

Saya akan merekomendasikan untuk meluangkan waktu membaca dan memahami sepenuhnya isi artikel ini. Ini terorganisir dengan baik dan dimulai dari awal, dengan apa itu Blockchain, menjelaskan paradigma blockchain Ethereum, dan masuk ke detail yang melelahkan tentang konfirmasi transaksi dan rencana eksekusi.

[Video] Ketika Teknologi Baru dan Kebijakan Kuno Bertabrakan [20-40m]

Pusat Inovasi Tata Kelola Internasional (CIGI) adalah think tank independen, non-partisan tentang tata kelola internasional, pekerjaan interdisipliner CIGI mencakup kolaborasi dengan komunitas kebijakan, bisnis, dan akademik di seluruh dunia, dan ini adalah wawancara yang dilakukan oleh Julie Maupin, Senior Fellow CIGI, di mana dia meminta Vitalik Buterin, pendiri Ethereum, untuk mengangkat tirai pada platform kompleks ini dan implikasi tata kelolanya. Diskusi mereka mencakup berbagai topik: pengenalan Buterin ke cryptocurrency; penciptaan Ethereum; bagaimana perangkat keras — besar dan kecil — memainkan peran dalam pengembangan dan adopsi masa depan; dan transisi Ethereum yang segera dari model “bukti kerja” ke “bukti kepemilikan.”

Vitalik sekarang menghabiskan lebih sedikit waktu mengirimkan pembaruan kode pemrograman, dan lebih banyak waktu pada arsitektur Ethereum, berfokus pada properti, efisiensi, kesederhanaan, privasi, dan skalabilitas.

 

3.1 Pengenalan ke Cryptocurrency, Kontrak Pintar dan Aplikasi Terdesentralisasi

Menggunakan teknologi Blockchain, Anda dapat menciptakan cryptocurrency (dari awal atau dengan mem-fork repositori kode publik yang ada), kontrak pintar (menegakkan aturan secara otomatis), dan aplikasi terdesentralisasi (program tanpa pemilik pusat atau satu titik kegagalan) Jika tujuan Anda adalah untuk menciptakan cryptocurrency baru dan mengumpulkan modal menggunakan penawaran koin awal (ICO), maka proses pengembangan Anda akan bergantung pada cryptocurrency mana yang ingin Anda ciptakan, jenis fungsionalitas dan fitur yang Anda cari, karakteristik token atau koin (mis. apakah itu dapat ditambang atau dapat ditumpuk, algoritma konsensus apa yang harus disetujui oleh node operasional, apa aturan hashingnya, mekanisme distribusi token apa yang akan diterapkan, apa properti kriptoeconomics seperti langkah-langkah inflasi yang akan diberlakukan pada tingkat protokol. Ada daftar panjang alat dan teknologi dalam Ekosistem Ethereum, dan saya melakukan yang terbaik untuk memilih beberapa yang terkenal untuk membantu Anda memulai perjalanan menarik ini.

 

3.2 Cryptocurrency

Meskipun secara teoritis, Anda dapat menggunakan bahasa pemrograman apa pun untuk menciptakan cryptocurrency atau blockchain, bahasa yang paling umum adalah Go (Golang), C, C++, Java, Python, Perl dan akan membantu menggunakan bahasa pemrograman yang banyak didukung dan memiliki komunitas pengembangan yang berkembang dan aktif. Bahasa resmi yang ditulis Ethereum Virtual Machine (EVM) adalah Go. Meskipun ada beberapa implementasi yang berbeda, klien Geth adalah yang paling umum dan Go juga merupakan bahasa pilihan untuk beberapa proyek besar lainnya, yaitu Cosmos. Keindahan cryptocurrency adalah Anda dapat secara harfiah memiliki akses ke seluruh skrip pemrograman sumber terbuka Ethereum, dan menciptakan koin alternatif (altcoin) Anda sendiri dengan mem-fork kode asli (jika Anda ingin kontrol penuh atas setiap aspek), atau hanya menerbitkan token di jaringan Ethereum. Penting untuk disebutkan bahwa saat ini, lebih dari 90% cryptocurrency adalah token atau aset yang diterbitkan di platform Ethereum.

Makalah Putih Asli oleh Satoshi Nakamoto [2-4h]

Ini adalah definisi kanonik dari apa itu cryptocurrency dan memberikan penjelasan ringkas tentang bagaimana Blockchain Bitcoin bekerja, model insentif yang digunakan, bagaimana privasi didirikan, dan bagaimana pohon Merkle digunakan untuk verifikasi pembayaran yang disederhanakan (konsep yang sangat penting untuk beberapa cryptocurrency).

3.2.1 Standar Token Ethereum

Penting bagi Anda untuk terlebih dahulu memahami Ethereum Request for Comments (ERC), yang merupakan protokol resmi untuk mengusulkan perbaikan ke jaringan Ethereum, yang paling umum adalah ERC20 dan ERC23 (secara resmi dikenal sebagai ERC223) untuk menciptakan cryptocurrency.

Definisi Token ERC20 [2h-3h]

Ini mendefinisikan seperangkat aturan untuk token yang beroperasi dalam lingkungan tersebut. Ini adalah artikel penting untuk dibaca secara mendalam, karena menjelaskan aturan antarmuka, apa yang dilakukan kontrak token, bagaimana menetapkan transfer saldo dan sirkulasi pasokan koin/token

 

3.3 Kontrak Pintar

Karena Ethereum adalah platform terdesentralisasi yang dibangun menggunakan teknologi Blockchain, atribut paling dikenalnya adalah kemampuannya untuk mengeksekusi kontrak pintar. Kontrak pintar adalah program yang berjalan persis seperti yang dikodekan dan akan secara otomatis mengeksekusi untuk memenuhi kondisi kontraktual umum seperti liens yang rumit, syarat pembayaran, dan penegakan perjanjian. Solidity, yang berbasis Javascript, adalah bahasa pemrograman resmi yang digunakan untuk mengkode kontrak pintar (di masa lalu, Serpent, yang berbasisDaftar ini mencantumkan beberapa alat umum untuk membantu saat Anda belajar, termasuk Dapp (Alat pembangun, manajer paket, dan asisten penyebaran) dan Solidity REPL (yang memungkinkan Anda mencoba coding dalam Solidity secara instan dengan konsol baris perintah).

Aplikasi Pemungutan Suara “Hello World” Full Stack di Ethereum Tutorial – Bagian 1 [2h-10h]

Ini adalah tutorial langkah demi langkah yang sangat baik yang berjalan dengan kecepatan yang stabil tentang cara mengembangkan aplikasi pemungutan suara yang kuat, namun sederhana di platform Ethereum. Tutorial ini terdiri dari tiga bagian dan baru saja diperbarui baru-baru ini untuk memanfaatkan peningkatan Ethereum terbaru. Jika Anda ingin menulis kode dari awal dan tidak menggunakan kembali konten inti, ini akan menjadi cara yang bagus untuk belajar cara menulis kontrak pintar, hanya saja akan memakan waktu yang jauh lebih lama untuk menyelesaikannya daripada hanya beberapa jam. Tujuan dari latihan ini adalah:

  • Mengatur lingkungan pengembangan untuk aplikasi pemungutan suara
  • Belajar metodologi dan sintaks menulis kontrak pintar, kemudian mengkompilasinya dan menyebarluaskannya di lingkungan tersebut
  • Berinteraksi dengan kontrak pintar di blockchain Ethereum melalui konsol Node.js.
  • Berinteraksi dengan kontrak pintar melalui halaman web sederhana untuk menampilkan jumlah suara dan memilih kandidat melalui halaman tersebut.

Aplikasi Pemungutan Suara “Hello World” Full Stack di Ethereum Tutorial – Bagian 2  [2h-10h]

Tutorial ini adalah kelanjutan dari pengembangan aplikasi pemungutan suara di atas, dan setelah Anda selesai, Anda akan:

  • Belajar cara memasang geth, yang merupakan perangkat lunak klien (salah satu dari banyak) yang digunakan untuk mengunduh seluruh blockchain Ethereum secara lokal untuk menjalankan sebuah node.
  • Belajar cara memasang kerangka kerja dapp Ethereum yang disebut Truffle yang dapat digunakan untuk mengkompilasi dan menyebarluaskan kontrak; topik ini berpotensi dapat menunggu hingga bagian selanjutnya karena itu mencakup aplikasi terdesentralisasi dengan detail yang jauh lebih besar.
  • Mengkompilasi dan menyebarluaskan kontrak pintar ke Ropsten Ethereum testnet.
  • Memiliki kesempatan untuk berinteraksi dengan kontrak pintar menggunakan konsol Truffle dan halaman web normal.

Aplikasi Pemungutan Suara “Hello World” Full Stack di Ethereum Tutorial – Bagian 3 [2h-7h]

Tutorial terakhir ini akan memandu Anda tentang cara menambahkan beberapa fitur kunci ke dapp pemungutan suara yang sebelumnya telah dikerahkan ke blockchain Ethereum, dan ini akan menjadi aktivitas yang sangat baik untuk mempelajari konsep yang lebih lanjut. Tujuan utama dari pelajaran ini adalah untuk:

  • Belajar cara menggunakan tipe data baru seperti struct untuk mengorganisir dan menyimpan data di blockchain.
  • Belajar prinsip-prinsip token dan penggunaannya.
  • Belajar cara melakukan pembayaran menggunakan Ether, mata uang dari platform blockchain Ethereum.

Aplikasi Pemungutan Suara “Hello World” Full Stack di Ethereum Tutorial – Demo Akhir  [1h]

Berikut adalah aplikasi pemungutan suara terdesentralisasi untuk seluruh dunia untuk mengalami secara langsung! Sebagai pengingat yang ramah, adalah bahwa agar aplikasi ini berfungsi dengan baik, Anda perlu memasang ekstensi browser MetaMask dan kemudian beralih ke Ropsten TestNet.

[Optional] Pengenalan ke Solidity – Bagian 1 [2h-5h]

Ethereum telah berjanji dari awal bahwa ia dapat mengerahkan, kode sewenang-wenang yang kuat (juga dikenal sebagai kontrak pintar), dan tutorial video ini diproduksi bersama oleh Will Warren dan Jordan Leigh berjalan melalui, langkah demi langkah tentang cara menyiapkan lingkungan Pengembangan Ethereum, dasar-dasar menulis dan menyebarluaskan kontrak pintar di blockchain Ethereum. Sangat direkomendasikan karena keduanya brilian.

[Optional] Pengenalan ke Solidity – Bagian 2 [2h-4h]

Ini adalah kelanjutan dari tutorial video di atas, juga direkomendasikan, terutama bagi pengembang yang suka mengikuti secara visual.

3.3.1 Prinsip Keamanan Kontrak Pintar Ethereum dan Audit

Apa risiko kontrak pintar diretas? Apakah metode verifikasi kontrak pintar otomatis ada saat ini? Seberapa efektif algoritma stabilisasi diri, audit diri, dan koreksi diri? Pertanyaan-pertanyaan ini akan dijawab dalam bagian berikut.

Sangat penting bagi Anda untuk meninjau materi di bawah ini sebelum dan selama pembuatan kontrak pintar. Ini memastikan bahwa kode pemrograman Anda mengikuti standar dan bahwa kerentanan keamanan ditangani sebanyak mungkin. Tidak ada kontrak pintar yang akan sempurna, tetapi mendekati kesempurnaan adalah tujuan dan rencana manajemen dan mitigasi risiko yang efektif adalah wajib.

Praktik Terbaik Kontrak Pintar [4h-15h]

Dokumen ini memberikan pengetahuan dasar yang bagus tentang pertimbangan keamanan, implikasi, dan aturan yang harus diikuti oleh pemrogram Solidity. Ini dipelihara oleh ConsenSys Diligence, dan komunitas Ethereum yang lebih luas.

Pertimbangan Keamanan Kontrak Pintar [2h-5h]
Panduan ini membahas secara detail tentang berbagai jebakan yang dapat Anda hadapi sebagai pemrogram soliditas, rekomendasi untuk diikuti, dan menyoroti beberapa metode verifikasi formal yang tersedia.

Contoh Audit Kontrak Pintar [30m-1h]

Ini adalah contoh yang bagus dari audit kontrak pintar yang diselesaikan oleh salah satu institusi paling dihormati dalam bisnis saat ini, Zeppelin Solutions. Meskipun setiap audit unik dan akan sangat bervariasi dalam detail, audit akan biasanya disusun dalam bagian berikut: masalah serius yang perlu segera ditangani sebelum peluncuran token, masalah potensial yang bisa berkembang menjadi masalah jika tidak segera ditangani (seperti penggunaan timestamp, penggunaan kode kirim dan terima, layanan escrow, menghindari kode duplikat, konstanta ajaib dalam jumlah), peringatan, dan akhirnya kesimpulan.

Kontes Audit Kontrak Pintar – Bagian 1 [20m-1h]

Ini adalah bacaan penting, ini memberikan beberapa pelajaran kunci yang dipelajari dari kontes soliditas yang licik, beberapa dapat dicegah dan beberapa tidak sebanyak itu, karena itu adalah sifat dari kontrak pintar secara keseluruhan, Anda hanya dapat melindungi kode Anda dari serangan yang diketahui, risiko penting berasal dari serangan yang tidak diketahui (keadaan atau skenario yang tidak Anda pertimbangkan selama fase desain awal).

Kontes Audit Kontrak Pintar – Bagian 2 [20m-1h]

Artikel ini membahas hasil audit dari kontes dan memberikan ringkasan yang bagus dari setiap pengajuan pemenang, banyak pengetahuan bagus di sini.

Contoh Kontrak Pintar untuk bertaruh pada pertarungan Mayweather dan McGregor [1h-2h]

Ini adalah kontrak pintar yang sebenarnya dikerahkan ke Ethereum MainNet yang digunakan untuk memfasilitasi taruhan untuk pertandingan tinju besar yang terjadi tahun lalu. Pengembang utama percaya bahwa menggunakan solusi seperti Oraclize adalah taruhan terbaik, oleh karena itu, setelah pertarungan siapa pun dapat memanggil fungsi checkResult(), dengan asumsi sedikit Ethers dikirim untuk menutupi biaya query, fungsi kemudian memanggil halaman BoxRec Floyd Mayweather dan mengikis hasil pertarungan McGregor, dan akhirnya, menyatakan pemenang dalam kontrak sesuai. Ini hanya contoh sederhana dari apa yang mungkin ketika Anda menyambungkan peristiwa nyata ke dalam kode kontrak pintar yang dapat diberlakukan secara otomatis dan transparan.

 

3.4 Aplikasi Terdesentralisasi

Sebelum langsung terjun ke pembangunan aplikasi terdesentralisasi, sangat menginspirasi untuk melihat apa yang telah dibangun, dan apa yang berhasil dengan sukses versus apa yang tidak diadopsi secara luas.

Keadaan Aplikasi Terdesentralisasi [30m-3h]

State of ÐApps adalah direktori terkurasi nirlaba dari Aplikasi Terdesentralisasi secara global. Semua ini dibangun di atas Blockchain Ethereum. State of ÐApps dibuat untuk mengategorikan dan menampilkan proyek yang dikembangkan di atas teknologi luar biasa ini, dan mencakup berbagai proyek dari berbagai bidang seperti realitas virtual, kecerdasan buatan, dokumentasi dan registri, pasar karir, permainan, kursus belajar dan pelatihan, dan masih banyak lagi.

Daftar Ethereum DApps [30m]

Ini adalah salah satu sumber daya terbesar yang tersedia di ruang ini, menampilkan hampir 300 aplikasi terdesentralisasi yang berjalan di atas platform Ethereum, dan menyoroti jumlah saldo ETH yang ada di semua kontrak DApp, pengguna aktif harian, jumlah transaksi yang diproses setiap hari, dan masih banyak lagi. Daftar ini telah tumbuh secara signifikan dan proyek-proyek terkemuka yang perlu diikuti secara dekat yang sudah aktif dan digunakan secara aktif adalah: Ethlance, CrytptoKitties, Etherbots, Ethercraft, Etheremon, Etheroll, ETHLend, Crypto Sportz, Edgeless, 0xBitcoin, dan Forkdelta.

Alur Kerja Front-End dari Aplikasi Terdesentralisasi [20m-30m]

Ini adalah alur kerja teknologi yang hebat yang memberikan gambaran tentang Dapps, dari perspektif front-end. Ini menunjukkan bahwa Anda dapat membangun DApp yang menyediakan UI bagi pengguna untuk menerapkan kontrak dan kemudian menggunakannya (Langkah 1 atau 4). Sebagai alternatif, Dapp dapat mengasumsikan kontrak sudah diterapkan (lebih umum saat ini) dan memulai alur UI dari sana (Langkah 6).

Pengantar Pengembangan Aplikasi Terdesentralisasi [10h-30h]

Ini adalah pengantar terbaik untuk pengembangan aplikasi terdesentralisasi di luar sana, sepenuhnya diproduksi oleh Jordan Leigh di Decypher Media. Kami beruntung, karena kursus ini dulunya adalah penawaran premium dan dulu membutuhkan biaya untuk mengaksesnya, namun, sekarang tersedia secara gratis.

Daftar putar ini cukup komprehensif dan Anda tentu tidak perlu menonton dan menjalankan setiap langkah dari program tersebut, tetapi akan berguna untuk menutupi bagian utama. Beberapa materi sebelumnya sedikit usang, namun, masih sepenuhnya relevan. Seluruh daftar dijelaskan di bawah ini, saya telah menandai tutorial yang paling mendesak:

  1. Menyiapkan lingkungan pengembangan
  2. Membuat Pasangan Kunci Ethereum
  3. Masalah Penghentian dan Mengapa Kita Membutuhkan Gas
  4. Pengantar Transaksi
  5. Mengirim Transaksi dengan Antarmuka Pengguna
  6. Mengirim Transaksi dengan Kode
  7. Kontrak Cerdas – Halo Dunia
  8. Kontrak Cerdas – Escrow
  9. Kontrak Cerdas – Coin Flipper – Bagian 1
  10. Kontrak Cerdas – Coin Flipper – Bagian 2
  11. Warisan Kontrak
  12. Orakel dan Oraclize
  13. Cara menggunakan Ethereum Name Service (ENS)
  14. Antarmuka Baris Perintah
  15. Batas Gas Blok
  16. Menghindari Loop dengan Pemetaan
  17. Peristiwa Kontrak
  18. Menandatangani Pesan Sembarang
  19. Menerapkan Skema Otentikasi
  20. Standar Token ERC20
  21. Menginstal Geth
  22. Blok Genesis
  23. Menyinkronkan Blockchain
  24. Keystore Geth

Aplikasi Terdesentralisasi – Seri [2h-10h]

Indeks ini mengulas beberapa aplikasi Nexus / DappHub yang dikenal. Ini mencakup Dapps, perpustakaan, paket dengan file Dapp, dengan harapan meningkatkan penggunaan toolchain dan fungsi mereka sebagai studi kasus yang bagus bagi pengembang. Mereka sedang menciptakan suite alat pengembang berorientasi blockchain yang komprehensif dalam semangat Filosofi Unix dan pasti layak untuk diinvestasikan waktu Anda, karena mereka berkontribusi pada proyek MakerDAO serta menghasilkan beberapa alat pengembang yang banyak digunakan.

[Optional] Pengaturan, Penyebaran, dan Pemeliharaan Amazon Web Services (AWS) [4h-7h]

Ini adalah materi opsional, tetapi masih layak ditonton jika Anda ingin menyiapkan instance AWS EC2 dari awal dan tertarik untuk menyiapkan lingkungan pengembangan Rails. Setelah itu, jika tertarik, Anda sebenarnya dapat menyiapkan instance AWS S3 untuk penyimpanan file cloud.

[Optional] Membuat aplikasi Ethereum Anda sendiri menggunakan Ethereum Go [45m-2h]
Ini masih merupakan panduan dan tutorial yang berguna untuk diikuti karena bahasa Go juga dapat digunakan untuk membangun aplikasi, karena Ethereum awalnya dibangun di Go.

[Optional] Dapps untuk Pemula [5h-20h]

Tim ini telah menghasilkan beberapa konten yang berguna bagi pengembang yang ingin terjun ke pemrograman menggunakan kriptoteknologi, mereka juga sedang mengerjakan platform pendidikan yang disebut EthAcademy (informasi lebih lanjut di bagian alat di bawah), untuk bersaing dengan Codeacademy.

 

4.0 Alat

Ini adalah daftar alat dan sumber daya yang akan Anda temukan paling berguna dalam pengembangan Anda:

Ethereum.stackexchange; Gratis

Ethereum Stack Exchange adalah situs tanya jawab untuk pengguna Ethereum

Wiki Ethereum; Gratis

Deskripsi mendalam yang berguna dari banyak komponen Ethereum

Kotak Truffle; Gratis

Boilerplate yang berguna, kotak-kotak ini sebenarnya dapat berisi kontrak & perpustakaan Solidity, tampilan front-end, dan contoh dapps lengkap.

Remix; Gratis

IDE Solidity, sangat berguna dan layak untuk diinvestasikan waktu

Ethacademy; Gratis

Ini belum dirilis, tetapi saya akan menyarankan untuk mendaftar ke newsletter karena mereka mengirimkan banyak informasi bagus tentang alat pengembangan Ethereum terbaru dan integrasi.

Ether.fund; Gratis

Memiliki direktori kontrak pintar Solidity yang dapat membantu Anda menghasilkan lebih banyak inovasi.

Github Ethereum; Gratis

Memiliki daftar sumber daya yang berguna untuk membantu pengembangan Dapps

CryptoZombies; Gratis

Dengan CryptoZombies, Anda akan belajar cara menulis Kontrak Pintar Ethereum menggunakan Solidity dengan cara yang menyenangkan dan interaktif di mana Anda mengkodekan permainan zombie Anda sendiri, khususnya membangun permainan kripto-kolektabel Anda sendiri.

Ethernaut OpenZeppelin; Gratis

Ini adalah cara yang bagus untuk mempelajari lebih banyak tentang keamanan Ethereum, khususnya cara melindungi kode soliditas Anda dari peretasan (sebanyak mungkin). Tutorial yang bagus untuk mempelajari dasar-dasarnya.

Yasiv; Gratis

Ini adalah alat web gratis yang luar biasa yang memungkinkan Anda melihat, secara visual dalam peta tautan, produk mana dari Amazon yang berkorelasi dengan cara tertentu atau lainnya. Contoh ini menampilkan buku-buku Blockchain. Coba ketik Ethereum.

Peta Geografis Bitnodes; Gratis

Ini dibuat untuk memperkirakan ukuran jaringan Bitcoin dengan mencapai semua node yang berkontribusi.

Peta Jaringan Bitnodes; Gratis

Ini adalah visualisasi yang indah dari semua node di jaringan Bitcoin, bagus untuk dilacak selama beberapa bulan.

Bitcoin Interaqt; Gratis

Visualisasi yang luar biasa ini adalah hidup dan beroperasi secara real-time, menampilkan blok saat mereka diproses dan ditambang. Anda sebenarnya dapat mengklik salah satu blok yang mengambang dan itu akan segera menunjukkan kepada Anda isi dari blok tersebut dalam tampilan penjelajah.

Blockchain Harian – Transaksi Tidak Terkonfirmasi; Gratis

Menakjubkan untuk melihat transaksi yang tidak terkonfirmasi dalam tampilan seperti ini, Anda dapat melihat ribuan transaksi yang menunggu untuk diproses; ada upaya bersama oleh semua orang di komunitas Bitcoin untuk mempercepat adopsi beberapa rutinitas optimasi yang mereka miliki.

Blockseer; Gratis

Ini adalah salah satu solusi yang tersedia saat ini yang memungkinkan Anda melacak aliran transaksi saat mereka melintasi Blockchain. Sangat disarankan untuk mendaftar.

Blok WizB; Gratis

Ini menarik untuk dilacak, memungkinkan Anda untuk memperbesar dan memantau di mana transaksi diproses oleh node dalam jaringan.

 

5.0 Materi Tambahan

Apa yang Perlu Anda Ketahui tentang Teknologi Blockchain; Gratis  [20m-40m]

Ini adalah tulisan bagus oleh Karim Lakhani, profesor Harvard Business School dan salah satu pendiri HBS Digital Initiative, di mana ia membahas blockchain secara mendalam. Lakhani memecah cara kerja teknologi di balik bitcoin dan membahas industri dan perusahaan yang dapat melihat peluang pertumbuhan baru atau kehilangan bisnis.

Kebenaran tentang Teknologi Blockchain; Gratis [15m-20m]

Ini adalah artikel lain yang sangat baik oleh Marco Iansiti, Profesor Administrasi Bisnis David Sarnoff di Harvard Business School dan juga oleh Karim R. Lakhani, Profesor Administrasi Bisnis Charles Edward Wilson dan Dorothy dan Michael Hintze Fellow di Harvard Business School. Mereka membahas pola adopsi teknologi, arsitektur baru, kerangka kerja untuk adopsi Blockchain

Buku- Mastering Bitcoin: Membuka Kriptokurensi Digital oleh Andreas M. Antonopoulos; Gratis

Ditulis oleh salah satu guru teknologi cryptocurrency dan Blockchain asli, tersedia secara gratis di sini.

Buku – Mastering Ethereum: Membangun Kontrak Cerdas dan Dapps; Gratis

Karya lain yang ditulis oleh Andreas Antonopoulos, diterbitkan pada Desember 2018, tetapi ada edisi gratis yang tersedia di GitHub.

Buku – Blockchain: Blueprint untuk Ekonomi Baru oleh Melanie Swan; Berbayar

Ini adalah salah satu favorit saya, Melanie tampaknya lebih maju dari zamannya ketika dia merilis buku ini, ini sebelum Ethereum bahkan mendapatkan perhatian utama, dia adalah seorang visioner sejati dan meramalkan pada tahun 2015 cukup banyak dari apa yang sebenarnya terjadi pada tahun 2017.

Pengantar ConsenSys untuk Pemrograman Kontrak Cerdas di Ethereum; Gratis [2h-4h]

Artikel dari Consensys ini menyediakan tutorial pengantar yang berguna tentang pemrograman kontrak cerdas berbasis Dapp.

Meskipun artikel ini sudah lama, masih berisi banyak informasi yang berguna bagi calon pengembang Blockchain dan arsitek Blockchain.

Ethereum dalam Praktik – Bagian 1, 2, dan 3 oleh salah satu pengembang Ethereum utama; Gratis [3h-5h]

  1. <a href="https://blog.ethereum.org/2015/12/03

Get Smarter About Crypto

Join 1,000+ subscribers and get our 5 min weekly newsletter on what matters in crypto trading.

Newsletter

Subscribe to our newsletter to get regular content.

© Blockcircle. 2024. All rights reserved

When you visit or interact with our sites, services or tools, we or our authorised service providers may use cookies for storing information to help provide you with a better, faster and safer experience and for marketing purposes.

THE bitcoinIST TODAY

Handpicked stories, in your inbox

A daily Bitcoin newsletter with the best of our information