Apa itu Kesungguhan dan Bagaimana Ia Digunakan untuk Membangunkan Kontrak Pintar?

Apa itu Kesungguhan dan Bagaimana Ia Digunakan untuk Membangunkan Kontrak Pintar?

Soliditi telah berjalan jauh sejak pertama kali dicadangkan pada tahun 2014 dan kemudian dikembangkan oleh pasukan Ethereum's Solidity. Terdapat ratusan ribu pemaju yang menggunakan bahasa pengaturcaraan untuk membuat perkhidmatan berasaskan blockchain untuk semakin banyak kes penggunaan.





Artikel ini menerangkan apa itu Soliditas dan bagaimana ia digunakan dalam ekosistem Ethereum. Artikel ini sesuai untuk anda jika anda berminat untuk mempelajari lebih lanjut mengenai cara kerja dalaman bahasa pengaturcaraan berasaskan blockchain ini.





cakera keras luaran tidak ditunjukkan dalam komputer saya

Apa itu Ketahanan?

Solidity adalah bahasa pengaturcaraan tahap tinggi yang berorientasikan objek yang digunakan untuk membuat kontrak pintar yang mengautomasikan transaksi pada blockchain. Setelah dicadangkan pada tahun 2014, bahasa itu dikembangkan oleh penyumbang projek Ethereum. Bahasa ini digunakan terutamanya untuk membuat kontrak pintar di blockchain Ethereum dan membuat kontrak pintar di blockchain lain.





Ketahanan mirip dengan salah satu bahasa pengaturcaraan yang paling biasa, JavaScript. Ia boleh dianggap sebagai dialek JavaScript. Ini bermakna bahawa jika anda memahami JavaScript, anda dapat dengan mudah memilih Solidity. Ketahanan juga mempunyai ciri yang serupa dengan bahasa pengaturcaraan C ++ dan Python.

Sebagai bahasa peringkat tinggi, Soliditi menghilangkan keperluan untuk menaip kod dalam huruf nol dan angka nol. Ini menjadikan manusia lebih mudah untuk menulis program dengan cara yang lebih mudah difahami, menggunakan gabungan huruf dan angka.



Ketahanan diketik secara statik, dengan sokongan untuk pewarisan, perpustakaan, dan jenis yang ditentukan pengguna yang kompleks. Oleh kerana Soliditi ditaip secara statik, pengguna banyak menentukan setiap pemboleh ubah. Jenis data membolehkan pengkompil memeriksa penggunaan pemboleh ubah yang betul. Jenis data ketahanan biasanya dikategorikan sebagai jenis nilai atau jenis rujukan.

Perbezaan utama antara jenis nilai dan jenis rujukan boleh didapati dalam bagaimana mereka ditugaskan ke pemboleh ubah dan disimpan di EVM (Ethereum Virtual Machine). Walaupun mengubah nilai dalam satu pemboleh ubah dari jenis nilai tidak mempengaruhi nilai dalam pemboleh ubah lain, siapa pun yang merujuk kepada nilai yang berubah dalam pemboleh ubah jenis rujukan dapat memperoleh nilai yang dikemas kini.





Bagaimana Kesungguhan Berfungsi?

Keindahan ekosistem Ethereum adalah kerana banyak cryptocurrency dan aplikasi terdesentralisasi dapat menggunakannya. Kontrak pintar memungkinkan teknologi unik dibuat di Ethereum untuk semua jenis perniagaan dan organisasi.

Setiap tahun, dunia membelanjakan berbilion dolar untuk penyelesaian blockchain. Sebilangan besar penyelesaian ini dicipta menggunakan Solidity. Kontrak pintar yang dibina menggunakan Solidity boleh dianggap sebagai cara untuk mengotomatisasi proses perniagaan dan bukan perniagaan antara orang yang berbeza. Ini memastikan bahawa orang yang melakukan transaksi di blockchain tidak perlu bimbang tentang risiko seperti penipuan atau tidak dapat menggunakan mata wang yang sama.





Salah satu komponen utama yang memungkinkan pelaksanaan kod Soliditi adalah EVM. EVM digambarkan sebagai komputer maya di blockchain yang mengubah idea orang menjadi kod yang menjalankan aplikasi di blockchain.

Di bawah tudung, Solidity mencipta kod peringkat mesin yang dilaksanakan pada EVM. Penyusun digunakan untuk memecah kod tahap tinggi yang dapat dibaca manusia, yang mana ia berubah menjadi arahan yang dibaca oleh pemproses. Pelbagai platform menyediakan kompilasi Soliditi percuma, termasuk penyusun dalam talian Remix dan penyusun seperti arahan yang dimuat turun pada PC.

Kontrak pintar EVM mempunyai beberapa batasan yang perlu ditangani. Salah satu yang paling penting adalah akses terhad ke fungsi perpustakaan yang berguna untuk menguraikan struktur JSON atau aritmetik floating-point.

Fungsi Awam dan Swasta

Fungsi awam serupa dengan API yang boleh diakses oleh sesiapa sahaja di dunia. Sesiapa sahaja boleh memanggil mereka dalam kod mereka. Fungsi awam dirancang, dalam banyak keadaan, untuk proses bersama di platform yang digunakan oleh semua pengguna.

Sebagai contoh, fungsi awam boleh dibuat untuk membolehkan semua pengguna platform memeriksa baki akaun mereka. Salah satu cara yang paling biasa untuk memanfaatkan kontrak pintar adalah melalui fungsi awam.

Berkaitan: Apa itu Blockchain dan Bagaimana Ia Berfungsi?

Walaupun kontrak pintar dapat ditulis dengan mudah dengan Soliditas, seringkali sangat sukar untuk menulisnya dengan selamat. Sebagai contoh, jika fungsi penarikan dalam kontrak pintar tidak selamat, penyerang dapat memanipulasi fungsi yang rentan untuk menguras dana.

Penyerang dapat memanggil fungsi penarikan untuk mengirim wang ke akaun lain, menggunakan gelung yang berulang kali mengulang fungsi penarikan.

Fungsi peribadi hanya boleh dipanggil dari dalam kontrak. Mereka berisi petunjuk yang hanya dapat dilaksanakan setelah dipanggil oleh fungsi lain, dalam rantai. Ini menyukarkan kod dimanipulasi oleh pelaku jahat.

Piawaian dan Logik Kod

Piawaian berbeza muncul yang menentukan bagaimana kontrak pintar Soliditas digunakan untuk membina aplikasi di Ethereum. Piawaian ini dikenali sebagai piawaian ERC (Ethereum Request for Comments). Piawaian tersebut didasarkan pada dokumen yang mengandungi panduan mengenai fungsi yang diperlukan dan sekatan mengenai bagaimana kod harus berperilaku.

Piawaian ERC yang menentukan bagaimana Soliditi berfungsi merangkumi:

  • ERC20
  • ERC165
  • ERC721
  • ERC223
  • ERC621
  • ERC777
  • ERC827
  • ERC884
  • ERC865
  • ERC1155

Terdapat pelbagai cara yang boleh digunakan untuk membuat kontrak pintar berinteraksi antara satu sama lain. Ketahanan juga boleh digunakan untuk membuat arahan khusus tentang bagaimana data disimpan dalam kontrak pintar. Logik dan data dalam kontrak pintar dapat dipisahkan menggunakan Solidity. Dengan menggunakan kontrak pengganti, logik kontrak dapat diubah untuk memungkinkan ini.

Ketidakkekalan

Adalah mustahil untuk mengubah kod kontrak pintar setelah ia ditulis dan disusun. Ini bererti bahawa setiap baris kode harus berfungsi sebagaimana mestinya atau mungkin ada risiko serius kod tersebut dieksploitasi.

Berkaitan: Bagaimana Menjadi Pengaturcara Blockchain dan Mula Menjana Wang Besar

Oleh kerana blockchain Ethereum tidak dapat diubah, mustahil untuk mengubah data dan logik yang ditulis kepadanya. Cara untuk mengatasi ini adalah dengan menggunakan proksi untuk menunjukkan kontrak lain yang mengandungi logik perniagaan sebenar. Ini membolehkan pepijat diperbaiki semasa versi baru kontrak dilaksanakan.

cara unzip fail tar.gz

Kos Gas

Terdapat kos tambahan yang dibayar untuk menggunakan Solidity di mainnet Ethereum. Sebilangan kos tambahan adalah berdasarkan sistem gas di Ethereum, yang memerlukan pembayaran kepada pelombong untuk mengamankan rangkaian blockchain supaya kod dapat berjalan dengan selamat di atasnya.

Semasa menulis kontrak pintar, penting untuk diingat bahawa kos gas dapat menentukan bagaimana prestasi kontrak pintar. Oleh kerana bayaran gas dibayar untuk setiap slot penyimpanan yang digunakan, tindakan yang dilakukan dengan kod Soliditi berharga gas. Kontrak pintar yang mahal untuk dijalankan tidak mungkin digunakan dalam jangka masa panjang.

Pengoptimuman gas membantu mengurangkan kos gas semasa kod Soliditas dijalankan. Beberapa kaedah pengoptimuman gas yang paling popular termasuk penggunaan perpustakaan dan menggunakan lebih sedikit fungsi. Perpustakaan sering digunakan untuk menyimpan bytecode.

Daripada menambahkan kod bytec yang tidak perlu pada kontrak pintar, logiknya dapat dimasukkan ke dalam perpustakaan. Ini membantu mengekalkan saiz kontrak pintar. Dengan menggunakan lebih sedikit fungsi, lebih sedikit bytecode diperlukan, dan kesukaran mengaudit kod juga dapat dikurangkan.

Bagaimana Ketumpatan Boleh Digunakan di Ethereum?

Ketahanan digunakan untuk membuat kontrak pintar untuk token fungible dan token tidak fungable. Piawaian yang berbeza digunakan untuk membina token tidak fungible dan token fungible di ekosistem Ethereum.

Ini membolehkan pelbagai jenis kes penggunaan dibuat untuk orang yang menggunakan blockchain. Ketahanan membolehkan orang menggunakan token dan token tidak mudah alih di Ethereum. Dari mencetak token yang tidak mudah dijangkiti hingga menambahkannya untuk menghasilkan kolam pertanian untuk kepentingan tambahan, pelbagai jenis penggunaan token dimungkinkan oleh Ethereum.

Organisasi Autonomi Terdesentralisasi (DAO) juga dimungkinkan oleh Soliditi. DAO, yang merupakan jenis struktur organisasi dalam talian yang baru, ditulis terutamanya dalam Solidity. DAO membolehkan pelbagai orang berkumpul sebagai ahli di platform dalam talian di mana mereka memilih keputusan utama DAO.

Ketahanan memungkinkan proses automatik dalam DAO. Contoh automasi proses di DAO termasuk membuat suara untuk keputusan utama dan peruntukan reputasi kepada anggota DAO atas sumbangan mereka kepada kumpulan itu.

Menentukan Piawaian untuk Blockchain

Ketenangan lebih daripada bahasa pengaturcaraan. Ini menentukan standard untuk masa depan teknologi blockchain.

Terima kasih kepada bilangan pembangun sumber terbuka yang berusaha meningkatkan keselamatan dan prestasi Soliditi, ribuan aplikasi dalam ekosistem Ethereum terus bergantung padanya agar aplikasi mereka dapat beroperasi. Oleh kerana standard baru dibuat untuk kontrak pintar di Ethereum, bahasa akan menjadi lebih selamat untuk digunakan.

Berkongsi Berkongsi Tweet E-mel Adakah Internet yang Benar-Benar Berkemungkinan? Bagaimana Ia Boleh Berfungsi Dengan Blockchain

Adakah internet yang benar-benar terdesentralisasi mungkin? Apa maksud desentralisasi, dan bagaimana cara itu menjadikan anda selamat?

Baca Seterusnya
Topik-topik yang berkaitan
  • Teknologi Dijelaskan
  • Pengaturcaraan
  • Ethereum
  • Blockchain
Mengenai Pengarang Calvin Ebun-Amu(48 Artikel Diterbitkan)

Calvin adalah seorang penulis di MakeUseOf. Ketika dia tidak menonton Rick dan Morty atau pasukan sukan kegemarannya, Calvin menulis mengenai permulaan, blockchain, keselamatan siber, dan bidang teknologi lain.

Lagi Dari Calvin Ebun-Amu

Langgan buletin kami

Sertailah buletin kami untuk mendapatkan petua, ulasan, ebook percuma, dan tawaran eksklusif!

Klik di sini untuk melanggan