Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mari kita bincangkan tentang ciri, persekitaran dan spesifikasi tatabahasa bahasa Go

Mari kita bincangkan tentang ciri, persekitaran dan spesifikasi tatabahasa bahasa Go

PHPz
PHPzasal
2023-04-27 09:10:58569semak imbas

Pelaksanaan bahasa Go tulen umumnya digemari oleh banyak pembangun, kerana bahasa Go mempunyai sokongan yang baik untuk pengaturcaraan serentak dan pengaturcaraan rangkaian, dan juga menyediakan beberapa perpustakaan standard yang boleh menulis prosedur yang Cekap dan boleh dipercayai dengan cepat. Berikut akan ditulis dari aspek ciri bahasa Go, persekitaran pembangunan, spesifikasi tatabahasa, struktur projek dan langkah pelaksanaan.

1. Ciri bahasa Go

  1. Sokongan pengaturcaraan serentak: Bahasa Go menyediakan mekanisme asli untuk menyokong konkurensi Contohnya, goroutine boleh membuat dan menjadualkan urutan dengan mudah dan menyalurkan data Kemudian boleh disegerakkan dan dipindahkan antara berbilang goroutine, dan mekanisme seperti mutex dan atomic boleh memastikan ketepatan data. Mekanisme ini membolehkan pembangun melaksanakan program serentak berskala besar dengan mudah tanpa perlu terlalu risau tentang isu seperti penggantungan benang dan penukaran benang.
  2. Sokongan pengaturcaraan rangkaian: Bahasa Go menyediakan perpustakaan pengaturcaraan rangkaian yang berkuasa untuk menulis program dengan mudah untuk protokol TCP/IP dan UDP, dan juga menyediakan perpustakaan http untuk menulis aplikasi web dengan mudah. Sebagai contoh, pakej bersih boleh menyediakan mekanisme untuk pengaturcaraan soket dan membaca dan menulis data rangkaian, manakala pakej http boleh digunakan untuk menulis aplikasi pelayan http.
  3. Sokongan pengurusan memori: Bahasa Go menyediakan mekanisme pengumpulan sampah yang cekap yang boleh mengurus memori secara automatik. Selain itu, bahasa Go juga telah menambahkan beberapa penyelesaian pengoptimuman untuk peruntukan timbunan Sebagai contoh, sync.pool digunakan untuk mengurus objek terkumpul, dan ia juga menyediakan alatan seperti had memori dan analisis prestasi.
  4. Kod ringkas: Sintaks bahasa Go sangat ringkas, menjadikannya mudah untuk menulis kod yang jelas dan mudah difahami. Selain itu, bahasa Go menyokong kompilasi baris arahan dan alatan pembinaan, pengurusan kod automatik dan memfokuskan pada spesifikasi gaya kod, yang turut memberikan banyak kemudahan kepada pembangun.

2. Persekitaran pembangunan bahasa Go

Terdapat banyak persekitaran pembangunan untuk bahasa Go Contohnya, Visual Studio Code, IntelliJ IDEA, Goland, dll. semuanya termasuk beberapa pemalam dan persekitaran pembangunan untuk alat bahasa Go. Di sini, kami menggunakan Kod Visual Studio sebagai contoh untuk menerangkan persekitaran pembangunan bahasa Go.

  1. Pasang persekitaran bahasa Go

Bahasa Go ialah bahasa sumber terbuka Sebelum pemasangan, anda perlu memuat turun pakej pemasangan bahasa Go. Buka https://golang.org/dl/ dan pilih pakej pemasangan yang sepadan dengan sistem pengendalian tempatan dan nombor bit untuk dimuat turun. Selepas memuat turun pakej pemasangan, nyahzip fail dan pilih direktori yang sesuai untuk pemasangan.

  1. Konfigurasikan pembolehubah persekitaran sistem

Terdapat tiga pembolehubah persekitaran utama dalam bahasa Go, iaitu GOPATH, GOROOT dan GOBIN.

GOPATH: Laluan ke perpustakaan, alatan dan fail projek pihak ketiga yang diperlukan oleh projek bahasa Go.

GOROOT: Direktori akar pemasangan bahasa Go.

GOBIN: Laluan untuk menyimpan program boleh laku yang dijana.

Tiga pembolehubah persekitaran ini perlu dikonfigurasikan ke dalam persekitaran sistem untuk mengelakkan kesulitan pembangunan.

  1. Pasang Kod Visual Studio

Buka https://code.visualstudio.com/, muat turun pakej pemasangan Kod Visual Studio dan pasangkannya.

  1. Pasang pemalam bahasa Go

Mulakan Kod Visual Studio, buka pilihan sambungan (Ctrl+Shift+X), cari "Go" dan pasangkannya .

Apabila menggunakan Visual Studio Code untuk menulis program bahasa Go, anda perlu memasang beberapa pemalam biasa, seperti:

(1) Modul Go

(2) Go Tools

(3) Go Test

(4) gopls

(5) gocode

(6) delve

In tambahan kepada pemalam di atas untuk dipasang , anda juga perlu memasang beberapa pemalam yang menyokong penyerlahan sintaks, penyiapan automatik dan fungsi lain, seperti:

(1) Pergi

(2 ) Coretan Go

(3) Import Go

3 Spesifikasi tatabahasa bahasa Go

Spesifikasi tatabahasa bahasa Go adalah sangat ketat dan pembangun dikehendaki menulis kod yang menepati spesifikasi.

  1. Konvensyen penamaan

Konvensyen penamaan dalam bahasa Go agak serupa dengan bahasa C, yang memerlukan nama pembolehubah, nama fungsi dan nama jenis mesti dinamakan dalam gaya Pascal ( unta), dan nama pakej mestilah semua huruf kecil.

  1. Spesifikasi lekukan

Lekukan dalam bahasa Go menggunakan kekunci tab, menggunakan 2 lekukan kosong dan anda boleh menggunakan gofmt untuk pemformatan kod automatik

  1. Spesifikasi ulasan

Terdapat dua kaedah ulasan dalam bahasa Go, iaitu: // (ulasan baris tunggal) dan / / (ulasan berbilang baris). Antaranya, komen satu baris hanya boleh muncul di hujung baris kod, manakala komen berbilang baris boleh berada di mana-mana

4. Organisasi struktur projek bahasa Go

Dalam pembangunan projek bahasa Go, adalah perlu Susun struktur projek mengikut saiz dan fungsinya. Berikut ialah pengenalan kepada dua kaedah organisasi yang lebih biasa.

  1. Fail tunggal

Apabila projek bahasa Go agak kecil, satu fail biasanya digunakan untuk menulis kod Kaedah ini mudah dan jelas serta menyuntingnya juga lebih senang untuk bangun.

  1. Struktur hierarki

Apabila projek bahasa Go adalah agak besar, ia biasanya disusun menggunakan struktur hierarki Kaedah ini boleh menyusun kod dengan lebih baik lain untuk memudahkan penyelenggaraan dan pengembangan. Struktur hierarki biasanya dibahagikan kepada tiga peringkat: pembentangan, perniagaan dan akses data.

5. Langkah pelaksanaan projek bahasa Go

Sebelum membangunkan projek bahasa Go, anda perlu menjelaskan keperluan dan reka bentuk projek, kemudian tentukan struktur fail projek berdasarkan skala dan fungsi projek. Seterusnya, kami akan mengambil pelaksanaan laman utama laman web ringkas sebagai contoh untuk menerangkan langkah-langkah pelaksanaan projek bahasa Go.

  1. Buat folder projek

Pertama, kita perlu mencipta folder dalam cakera tempatan, contohnya, dalam pemacu D, kita mencipta folder bernama Folder web, digunakan untuk menyimpan projek yang dibangunkan dalam pertempuran sebenar ini.

  1. Nyatakan laluan projek

Sebaik-baiknya nyatakan projek terus di bawah "$GOPATH/src" untuk memudahkan pengimportan pakej.

  1. Buat modul projek

Jalankan arahan dalam direktori rumah projek: go mod init + nama modul untuk menjana fail go.mod.

  1. Buat fail main.go

Fail main.go ialah fail kemasukan program Kita perlu menulis kod dalam fail ini, contohnya:

package main

import (
    "net/http"
)

func main() {
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        w.Write([]byte("hello world!"))
    })

    http.ListenAndServe(":8080", nil)
}

Kemudian, masukkan: pergi jalankan main.go dalam baris arahan untuk menjalankan kod di atas Selepas program berjalan, masukkan localhost:8080 dalam penyemak imbas, dan anda akan melihat keluaran "hello world!" .

  1. Tambahkan fail statik pada projek

Dalam pembangunan sebenar, kita perlu menambah beberapa fail statik (seperti imej, fail CSS dan JavaScript) pada projek, Ini cara, apabila pengguna meminta halaman, fail boleh diakses terus. Di sini, kami menambah fail statik pada folder awam projek.

  1. Tulis fungsi pengendali

Dalam fungsi utama, kita boleh menulis beberapa fungsi pengendali untuk mengendalikan perhubungan antara permintaan penghalaan yang berbeza. Sebagai contoh, kita boleh menulis fungsi pengendali untuk memproses permintaan halaman utama Kod adalah seperti berikut:

func indexHandler(w http.ResponseWriter, r *http.Request) {
    http.ServeFile(w, r, "public/index.html")
}
  1. Tambah laluan

Dalam kod yang disebutkan di atas, kita boleh lulus http. Fungsi .HandleFunc () untuk melaksanakan pengikatan laluan. Sebagai contoh, kita boleh menentukan laluan "/" sebagai fungsi indexHandler(), kodnya adalah seperti berikut:

http.HandleFunc("/", indexHandler)
  1. Tambah penghalaan untuk fail statik

Dalam kod sebelumnya, kita boleh Tambah penghalaan untuk fail statik melalui fungsi http.FileServe() Kod tersebut adalah seperti berikut:

http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("public"))))

Kemudian, masukkan localhost: 8080/static/style.css dalam pelayar untuk mengakses. fail style.css.

Ringkasnya, kaedah penulisan bahasa Go bukan sahaja mudah dan elegan, tetapi juga mempunyai konkurensi yang baik dan sokongan pengaturcaraan rangkaian. Menggunakan bahasa Go untuk melaksanakan projek bukan sahaja boleh meningkatkan kecekapan pembangunan, tetapi juga meningkatkan kebolehpercayaan dan prestasi program.

Atas ialah kandungan terperinci Mari kita bincangkan tentang ciri, persekitaran dan spesifikasi tatabahasa 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