Orientasi Ethereum 10 Menit

Tujuan dari panduan ini adalah membuat Anda tenggelam dalam Web3 secepat mungkin sehingga Anda memiliki konteks dan pemahaman dasar yang diperlukan untuk mulai belajar dan mulai mengembangkan.

Mengapa Blockchain?

Jika Anda baru mengenal dunia luar angkasa, mungkin tidak jelas apa yang ditawarkan “Internet terdesentralisasi” kepada pengembang. Pikirkan blockchain publik seperti Ethereum sebagai definisi “keadaan” yang jelas — dan sumber kebenaran — untuk semua orang yang mengambil bagian di dalamnya, dapat diakses oleh siapa pun yang terhubung ke Internet, sistem yang menggunakan kekuatan protokol sumber terbuka dan redundansi jaringan peer-to-peer agar tetap dapat dipercaya dan aman. Daripada mengharuskan setiap pengembang aplikasi untuk membuat dan memelihara seluruh status aplikasi mereka di server pribadi, banyak yang dapat disimpan dan diambil dari, blockchain publik. Backend yang umum, tepercaya, dan aman.

Alasan hal ini dimungkinkan adalah karena karakteristik unik dari basis data blockchain. Ini hanya tulis: di mana database biasa dapat menambah dan menghapus catatan, data blockchain ada selamanya dan tidak dapat dihapus. Jaringan node memelihara database ini sebagai “buku besar terdistribusi” dan memiliki protokol ketat seputar siapa yang memiliki izin untuk menulis pada waktu tertentu. Salah satu aspek menarik dari teknologi ini adalah bagaimana izin tulis didistribusikan di antara node yang mungkin tidak memerlukan izin khusus untuk bergabung. Jika Anda memutar node Ethereum publik Anda sendiri, Anda akan memiliki akses tulis ke seluruh jaringan: asalkan Anda menyelesaikan “bukti kerja” yang diperlukan untuk memberi Anda hak istimewa untuk menulis node sebelum node lain melakukannya. 

Contoh utama dan tipikal dari teknologi blockchain yang sedang beraksi adalah kemudahan mengirim dan menerima cryptocurrency. Buku besar Ethereum publik memungkinkan pengembang untuk mengimplementasikan gateway pembayaran tanpa bank, akun, atau perantara lainnya. 

Pengembang dapat membuat token Ethereum mereka sendiri tanpa harus membuat infrastruktur yang dibutuhkan pengguna untuk memperdagangkannya. Platform game online mungkin membuat tokenize item dalam game, dan pengguna dapat membeli token tersebut dan memperdagangkannya di luar platform dan memilikinya secara terpisah dari platform game itu sendiri. Selain memperdagangkan item untuk digunakan dalam game, koleksi digital memiliki potensi masa depan yang sangat besar. Saat e-sports semakin populer, Anda mungkin memiliki token digital yang setara dengan “bola home run”.

Dengan setiap pengguna memiliki pasangan kunci publik / pribadinya sendiri, autentikasi pengguna menjadi lebih sederhana karena aplikasi hanya perlu memverifikasi bahwa pengguna dapat menandatangani transaksi dengan kunci pribadinya..

Kontrak pintar dapat digunakan untuk menghasilkan uang yang dapat diprogram. Pertimbangkan penggunaan dasar kontrak pintar yang dapat diprogram untuk mengatasi situasi di mana dua pemilik apartemen ingin membagi pembayaran sewa penyewa 50/50. Biasanya, penyewa harus membayar setiap pemilik secara terpisah, atau akan membayar satu pemilik atau agen, dan pemilik atau agen akan mencairkan uang tersebut. Meskipun situasi ini tidak terlalu bermasalah, pertimbangkan kepercayaan implisit yang diperlukan oleh satu individu untuk memberikan bagiannya kepada orang lain. Bandingkan ini dengan kontrak pintar sederhana yang secara terprogram membagi dana yang masuk dan mengirimkannya ke alamat masing-masing pemilik. Penyewa hanya perlu mengirimkan uang sewanya ke alamat tersebut dan setiap pemilik akan segera menerima bagiannya. Karena keamanan dan keabadian blockchain seperti Ethereum, setiap pemilik dapat diyakinkan bahwa kontrak pintar akan beroperasi sesuai keinginan, dan dapat mengaudit kodenya. 

Setelah kami memiliki tulang punggung kepercayaan digital yang disediakan oleh blockchain, kami juga dapat menerapkan manfaat pemrograman pada masalah sosial yang penting. Kami dapat menyediakan layanan perbankan dalam beberapa baris kode. Kami dapat mengkonfirmasi identitas dengan beberapa klik. Semuanya dengan protokol yang dapat berjalan di hampir semua komputer di mana pun di dunia.

Karena ruang ini baru dan berkembang, banyak peluang bagi pengembang untuk membangun alat, aplikasi, dan sistem jenis baru, dan untuk menghasilkan kasus penggunaan baru untuk teknologi ini.

Solusi untuk Mencari Masalah?

Pengulangan umum dalam kritik terhadap teknologi blockchain adalah bahwa ini adalah solusi untuk mencari masalah. Dapat dikatakan bahwa mata uang digital adalah aplikasi pembunuh blockchain pertama, dan Distributed Finance, atau DeFi, akan menjadi yang berikutnya, sejauh mana teknologi ini dapat diterapkan saat ini tidak diketahui dan merupakan salah satu alasan utama devs di luar angkasa merasa senang menjadi bagian dari. Selama lebih dari satu dekade, teknologi laser tidak digunakan secara nyata, sampai para peneliti, peneliti, dan pengusaha mampu menerapkannya dengan cara yang sama sekali tidak terduga. Sementara argumen yang sama dapat digunakan untuk teknologi baru apa pun, adopsi mata uang digital yang meluas secara besar-besaran dan lebih dari $ 350 miliar yang saat ini terkandung dalam blockchain yang terdistribusi, tidak terkelola, dan terdesentralisasi, cukup luar biasa.. 

Struktur Aplikasi Terdistribusi Dasar 

Aplikasi terdistribusi, secara umum, adalah aplikasi yang terhubung ke blockchain di suatu tempat di tumpukannya, dan kemungkinan dalam beberapa hal mendasar untuk operasinya. Aplikasi terdistribusi adalah campuran dari sistem front dan backend biasa yang akan Anda temukan di aplikasi web tetapi akan menggunakan perpustakaan seperti web3.js untuk terhubung ke jaringan Ethereum. Beberapa aplikasi terdistribusi sepenuhnya didistribusikan: hidup sepenuhnya di jaringan terdistribusi.

Di sisi pengguna, MetaMask adalah plugin populer yang mengelola dompet Ethereum pengguna. MetaMask menyediakan antarmuka bagi pengguna untuk menandatangani transaksi dan membuktikan “identitas” mereka.


Aplikasi terdistribusi tertentu dapat terhubung ke blockchain Ethereum dan juga ke dompet MetaMask pengguna (atau dompet lain) untuk otentikasi. 

Berinteraksi dengan Ethereum 

Biasanya, untuk berinteraksi dengan Ethereum, Anda perlu mengoperasikan node. Node adalah bagian fundamental dari struktur blockchain, rekan yang terhubung ke rekan lain untuk membentuk struktur terdesentralisasi. Protokol adalah raja di mainnet publik: tidak ada server pusat, tidak ada otoritas, dan tidak ada batasan siapa yang dapat mengoperasikan node. Hanya ada protokol umum untuk semua node yang berpartisipasi.

Banyak pengembang aplikasi lebih memilih untuk tidak menjalankan node Ethereum mereka sendiri, jadi layanan suka Infura ada untuk menyediakan gateway dan API untuk Ethereum yang dapat digunakan pengembang sebagai gantinya.

Kontrak Cerdas

Meskipun jaringan Bitcoin adalah salah satu blockchain paling terkenal, Ethereum memiliki serangkaian fitur yang lebih menarik bagi pengembang karena termasuk mesin virtual lengkap Turing yang dapat menjalankan program kecil yang disebut kontrak pintar. Hasilnya, Ethereum memiliki komunitas pengembang terkuat dan paling aktif di antara ekosistem blockchain mana pun. 

Kontrak pintar berjalan di node dan menggunakan transaksi untuk input dan outputnya. Kontrak pintar berada di alamat di blockchain, sama seperti alamat akun pengguna. Untuk berinteraksi dengan kontrak pintar, Anda hanya perlu mengirim transaksi ke sana bersama dengan data masukan. 

Gas

Menjalankan kontrak pintar membutuhkan gas, biaya kecil yang mengkompensasi operator node untuk layanan pelaksanaan kontrak pintar, sementara juga mengurangi kejadian spam (dengan membuat spamming mahal) dan mencegah kontrak pintar berkode buruk dari perulangan tanpa batas dan macet di jaringan.

Mainnet, Testnets, Jaringan Lainnya

Mainnet dalam bahasa blockchain mengacu pada jaringan aktif utama untuk protokol tertentu. Dalam kasus Ethereum, mainnet adalah tempat pertukaran nilai riil, dan dianggap sebagai sumber kebenaran. Tetapi grup node mana pun dapat membentuk jaringan mereka sendiri. Testnets melayani komunitas pengembang dengan menawarkan jaringan yang jauh lebih kecil di mana Eth dan gas gratis, sehingga pengembang dapat menguji proyek dan kode mereka tanpa risiko. Testnet Ethereum diberi nama Ropsten, Kovan, Rinkeby, dan Görli.

Jaringan Ethereum juga digunakan untuk aplikasi perusahaan: jaringan yang dibuat khusus yang beroperasi berdasarkan izin (versus mainnet dan testnet tanpa izin) untuk memfasilitasi transaksi dan operasi lain di antara sekelompok kecil organisasi (misalnya). Jaringan ini memiliki node yang jauh lebih sedikit dan biasanya melayani tujuan tertentu. Bank besar, misalnya, mungkin menggunakan blockchain untuk penyelesaian antar bank.

Pengembangan Ethereum

Pengembangan di Ethereum umumnya pertama kali terjadi pada blockchain lokal yang berputar di rumah. Pengembang bebas menggunakan sesuatu seperti geth, perangkat lunak baris perintah yang memungkinkan Anda membuat jaringan Ethereum. Tapi ini seperti pemrograman dalam bahasa tingkat rendah: membuat segalanya lebih mudah, Truffle suite melayani banyak kebutuhan pengembang. Ganache, bagian dari rangkaian, mempermudah pengembang untuk menjalankan jaringan blockchain lokal untuk menguji aplikasi mereka, menawarkan “blockchain satu klik” untuk tujuan pengembangan, bersama dengan alat baris perintah. Gerimis membantu pengembangan front-end, dan Truffle sendiri adalah kerangka kerja untuk membuat pengembangan dan penerapan kontrak pintar lebih mudah.

Berinteraksi dengan blockchain itu sendiri membutuhkan penggunaan API (seperti web3.js) dan akses ke sebuah node; daripada mengoperasikan node mereka sendiri, banyak pengembang akan menggunakan layanan seperti Infura sebagai API Ethereum.

Bahasa Kontrak Cerdas

Saat ini, bahasa paling populer untuk membuat kode kontrak pintar adalah Kepadatan. Bahasa mirip javascript ini cukup mudah digunakan untuk pengembang baru, terutama yang memiliki pengalaman pengkodean web. Remix adalah IDE online yang memungkinkan developer bereksperimen dengan membuat kontrak pintar. Ada banyak detail penting yang harus dipelajari untuk programmer kontrak pintar, karena kontrak pintar di mainnet beroperasi dengan nilai nyata, dan tidak dapat diubah setelah diterapkan (meskipun ada metodologi pemrograman yang membantu dalam hal ini).

Tumpukan Penuh

Seperti semua pengembangan web modern, ada banyak opsi untuk komponen yang akan digunakan di berbagai tingkat tumpukan. Anda bisa mendapatkan lebih banyak detail di tumpukan blockchain yang selalu diperbarui.

Tumpukan Proyek Sederhana

Berikut adalah seperangkat alat pengembangan umum yang mungkin Anda gunakan dalam proyek sederhana:

NPM 

Manajer paket node, bagian dari node.js

Kerangka Truffle

Serangkaian alat untuk mempermudah pengembangan

ganache

Dari kerangka kerja Truffle, digunakan untuk meluncurkan blockchain pribadi di mesin Anda sendiri

MetaMask

Antarmuka pengguna blockchain dan gerbang ke Ethereum; itu adalah plugin browser dan aplikasi seluler yang dapat dihubungkan dengan aplikasi Anda untuk memungkinkan pengguna menandatangani transaksi dan melakukan tugas lain.

Kepadatan

Bahasa pemrograman populer untuk kontrak pintar

HTML / CSS / JS

Untuk front-end Anda

Web3.js

Perpustakaan Ethereum API memungkinkan Anda terhubung dan berinteraksi dengan jaringan Ethereum

Infura

Layanan API Ethereum yang memberi pengembang akses ke jaringan Ethereum tanpa harus menjalankan node mereka sendiri

Jika Anda siap untuk memulai, panduan 3 langkah kami akan menjelaskan lebih detail agar Anda siap dan menjalankan blockchain dengan cepat dengan panduan.

    Orientasi Pengembang: Langkah 1Pengembang Onboarding Langkah 1

    Orientasi Pengembang: Langkah 1

    Orientasi Pengembang: Langkah 2Pengembang Onboarding Langkah 2

    Orientasi Pengembang: Langkah 2

    Orientasi Pengembang: Langkah 3Pengembang Onboarding Langkah 3

    Orientasi Pengembang: Langkah 3
Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map