Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah faedah bahasa go

Apakah faedah bahasa go

青灯夜游
青灯夜游asal
2023-02-02 17:28:287144semak imbas

Faedah bahasa go: 1. Ia boleh disusun terus ke dalam kod mesin dan tidak bergantung pada perpustakaan lain 2. Bahasa jenis statik, tetapi mempunyai perasaan bahasa yang dinamik dan sangat cekap untuk menulis; . Sokongan tahap bahasa Concurrency; alatan; 8. Kompilasi merentas platform; 9. Sokongan C terbenam, yang boleh memanfaatkan perpustakaan C sedia ada yang kaya.

Apakah faedah bahasa go

Persekitaran pengendalian tutorial ini: sistem Windows 7, GO versi 1.18, komputer Dell G3.

Apakah itu bahasa Go?

Go ialah bahasa pengaturcaraan prosedur yang boleh digunakan untuk penyusunan kod mesin yang pantas. Ia adalah bahasa yang disusun secara statik. Ia menyediakan mekanisme serentak yang memudahkan untuk membangunkan program peringkat mesin berbilang teras dan rangkaian. Ia adalah bahasa yang pantas, ditaip dan ditafsir secara dinamik; ia menyediakan sokongan untuk antara muka dan pembenaman jenis.

Bahasa Go telah dibangunkan pada tahun 2007 oleh Robert Griesemer, Rob Pike, dan Ken Thompson dari Google, tetapi dilancarkan sebagai bahasa pengaturcaraan sumber terbuka pada tahun 2009.

Apakah faedah bahasa go

  • Boleh dikompilasi terus ke dalam kod mesin, tidak bergantung pada yang lain perpustakaan, versi glibc Terdapat keperluan tertentu Pengerahan dilakukan dengan hanya membuang fail.

  • Bahasa yang ditaip secara statik, tetapi ia mempunyai perasaan bahasa yang dinamik. Bahasa yang ditaip secara statik boleh mengesan kebanyakan masalah tersembunyi semasa penyusunan . Ia boleh digunakan dan sangat cekap untuk menulis.

  • Tahap bahasa menyokong konkurensi Ini adalah ciri terbesar Go. Saya pernah mengatakan bahawa terdapat perbezaan antara gen semula jadi dan pembedahan plastik sama cantik. Tetapi adakah anda lebih suka pembedahan plastik atau kecantikan genetik semulajadi? Go menyokong concurrency dalam gennya Ia boleh menggunakan sepenuhnya berbilang teras dan memudahkan penggunaan concurrency.

  • Waktu jalan terbina dalam menyokong pengumpulan sampah Ini adalah salah satu ciri bahasa dinamik Walaupun GC tidak sempurna pada masa ini, ia sudah cukup untuk menghadapi kebanyakan situasi yang boleh kita hadapi. , terutamanya GC selepas Go1.1.

  • Mudah dipelajari Semua pengarang bahasa Go mempunyai gen C, jadi kata kunci Go secara semula jadi ialah 25, tetapi kebolehan ekspresi sangat berkuasa, hampir Menyokong kebanyakan daripada ciri yang telah anda lihat dalam bahasa lain: warisan, beban berlebihan, objek, dsb.

  • Pustaka standard yang kaya pada masa ini mempunyai sejumlah besar perpustakaan terbina dalam, terutamanya pustaka rangkaian, yang sangat berkuasa Ini bahagian kegemaran saya.

  • Alat berkuasa terbina dalam terdapat banyak rangkaian alat terbina dalam bahasa Go Yang terbaik ialah alat gofmt, yang memformatkan kod secara automatik dan menjadikan semakan pasukan begitu mudah. Kod Formatnya adalah sama, jadi sukar untuk memikirkan sesuatu yang berbeza.

  • Kompilasi merentas platform Jika kod Go yang anda tulis tidak mengandungi cgo, maka anda boleh menyusun aplikasi Linux pada sistem tetingkap. Go merujuk kod plan9, iaitu maklumat yang tidak bergantung pada sistem.

  • Sokongan C terbenam Seperti yang dinyatakan sebelum ini, pengarang adalah pengarang C, jadi Go juga boleh terus memasukkan kod C dan menggunakan perpustakaan C kaya yang sedia ada.

Apa yang sesuai untuk Go?

  • Pengaturcaraan pelayan, jika anda menggunakan C sebelum ini Atau perkara-perkara yang dilakukan dalam C++ sangat sesuai untuk dilakukan dalam Go, seperti pemprosesan log, pembungkusan data, pemprosesan mesin maya, sistem fail, dll.

  • Sistem teragih, ejen pangkalan data, dsb.

  • Pengaturcaraan rangkaian, yang paling banyak digunakan pada masa ini, termasuk aplikasi Web, aplikasi API, muat turun Aplikasi,

  • pangkalan data dalam memori, groupcache yang dibangunkan oleh Google suatu ketika dahulu, sebahagian daripada couchbase

  • platform awan, pada masa ini banyak awan asing platforms are in Ia dibangunkan menggunakan Go dan sebahagiannya dibina oleh CloudFoundy Bekas pengarah teknikal VMare menghasilkan platform awan apcera sendiri.

Jalankan projek yang berjaya

  • nsq: sistem baris gilir mesej sumber terbuka sedikit, prestasi Sangat tinggi, pada masa ini mereka memproses berbilion-bilion mesej setiap hari

  • docker: alat pembungkusan maya berdasarkan lxc, yang boleh merealisasikan pembinaan platform PAAS.

  • pembungkus: digunakan untuk menjana fail imej untuk platform berbeza, seperti VM, vbox, AWS, dll. Pengarang ialah pengarang vagrant

  • skynet: Rangka kerja penjadualan teragih

  • Doozer: alat penyegerakan teragih, serupa dengan ZooKeeper

  • Heka: sistem pemprosesan log sumber terbuka mazila

  • cbfs: sistem fail teragih sumber terbuka couchbase

  • tsuru: platform PAAS sumber terbuka, yang mempunyai fungsi yang sama seperti SAE

  • groupcache: sistem caching untuk sistem muat turun Google yang ditulis oleh pengarang memcahe

  • god: sistem caching yang serupa dengan redis, tetapi menyokong pengedaran dan kebolehskalaan

  • gor: Alat tangkapan dan main semula paket trafik rangkaian

Berikut ialah beberapa syarikat, hanya sebahagian kecil:

  • Apcera

  • Stathat

  • Juju di Canonical/Ubuntu, pembentangan

  • Beachfront.iO di Media Beachfront

  • CloudFlare

  • Soundcloud

  • Mozilla

  • Disqus

  • Bit.ly

  • Heroku

  • google

  • youtube

[Cadangan tutorial: go language]

Atas ialah kandungan terperinci Apakah faedah bahasa go. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Apakah fungsi ujian go?Artikel seterusnya:Apakah fungsi ujian go?