Go (bahasa pemrograman): Perbedaan antara revisi
Konten dihapus Konten ditambahkan
k Perbaikan minor kalimat bahasa Indonesia yang lebih jelas dan mudah dimengerti. Tag: halaman dengan galat kutipan VisualEditor Tugas pengguna baru Newcomer task: copyedit |
Fitur saranan suntingan: 3 pranala ditambahkan. Tag: halaman dengan galat kutipan VisualEditor Suntingan perangkat seluler Suntingan peramban seluler Tugas pengguna baru Disarankan: tambahkan pranala |
||
Baris 176:
=== Jenis (Tipe Data) ===
Go memiliki sejumlah [[tipe data]] bawaan yang ditanamkan, termasuk numerik (byte, int64, float32, dll.), boolean, dan string karakter (string). String yang berubah; built-in operator dan kata kunci (bukan fungsi) memberikan rangkaian, perbandingan, dan [[UTF-8]] encoding dan decoding.<ref>Rob Pike, [http://blog.golang.org/strings Strings, bytes, runes and characters in Go] {{Webarchive|url=https://web.archive.org/web/20150103213441/http://blog.golang.org/strings |date=2015-01-03 }}, 23 October 2013</ref> [[Record|jenis Catatan]] dapat didefinisikan dengan kata kunci struct.{{Butuh rujukan|date=December 2016}}
Untuk masing-masing tipe ''T'' dan setiap non-negatif konstanta integer ''n'', ada sebuah array jenis dilambangkan [''n'']''T''; array yang berbeda-beda panjangnya sehingga dari jenis yang berbeda. Array dinamis yang tersedia sebagai "iris", dilambangkan []''T'' untuk beberapa jenis ''T''. Ini memiliki panjang dan ''kapasitas'' menentukan ketika baru memori yang harus dialokasikan untuk memperluas array. Beberapa irisan dapat berbagi mereka mendasari memori.{{r|append}}<ref>Andrew Gerrand, [http://blog.golang.org/go-slices-usage-and-internals Go Slices: usage and internals] {{Webarchive|url=https://web.archive.org/web/20150107025801/http://blog.golang.org/go-slices-usage-and-internals |date=2015-01-07 }}</ref><ref>The Go Authors, [http://golang.org/doc/effective_go.html#slices Effective Go: Slices] {{Webarchive|url=https://web.archive.org/web/20210209204944/http://golang.org/doc/effective_go.html#slices |date=2021-02-09 }}</ref>
Baris 186:
Selain dukungan untuk [[Go (programming language)#Interfaces|antarmuka]], Go tipe sistem adalah nominal: type kata kunci yang dapat digunakan untuk mendefinisikan baru ''bernama jenis'', yang berbeda dari lainnya bernama jenis yang memiliki letak yang sama (dalam kasus sebuah struct, anggota yang sama dalam urutan yang sama). Beberapa konversi antara jenis (misalnya, antara berbagai tipe integer) pra-didefinisikan dan menambahkan jenis baru dapat menentukan konversi tambahan, tapi konversi antara nama jenis harus selalu dipanggil secara eksplisit.<ref>{{Cite web|url=http://golang.org/ref/spec#Assignability|title=The Go Programming Language Specification|website=golang.org|access-date=2018-03-14|archive-date=2021-03-18|archive-url=https://web.archive.org/web/20210318133416/http://golang.org/ref/spec#Assignability|dead-url=no}}</ref> sebagai contoh, type kata kunci yang dapat digunakan untuk mendefinisikan tipe untuk [[Alamat IP versi 4|IPv4]] alamat, yang adalah 32-bit unsigned integer.{{Butuh rujukan|date=December 2016}}
Dengan jenis definisi tersebut, ipv4addr(x) menafsirkan uint32 nilai x sebagai [[alamat IP]]. Dengan menginisiasi x untuk variabel jenis ipv4addr adalah kesalahan tipe.{{Butuh rujukan|date=December 2016}}
Ekspresi konstan dapat berupa diketik atau "untyped"; mereka diberi jenis ketika ditugaskan untuk mengetik variabel jika nilai mereka mewakili melewati waktu kompilasi cek.<ref>{{Cite web|url=http://golang.org/ref/spec#Constants|title=The Go Programming Language Specification|website=golang.org|access-date=2018-03-14|archive-date=2021-03-18|archive-url=https://web.archive.org/web/20210318133416/http://golang.org/ref/spec#Constants|dead-url=no}}</ref>
Baris 279:
Hal ini juga termasuk profiling dan dukungan debugging, runtime instrumentasi (untuk, misalnya, melacak pengumpulan sampah jeda), dan kondisi balapan tester.
Ada sebuah ekosistem alat pihak ketiga yang menambahkan untuk distribusi standar, seperti <code>gocode</code>, yang memungkinkan kode autocompletion dalam banyak teks editor, <code>goimports</code> (oleh seorang anggota tim), yang secara otomatis menambahkan/menghapus paket impor yang diperlukan, <code>errcheck</code>, yang mendeteksi kode yang mungkin tidak sengaja mengabaikan kesalahan, dan banyak lagi. Plugin yang ada untuk menambahkan dukungan bahasa untuk beberapa banyak digunakan editor teks. Selain itu, beberapa [[Lingkungan pengembangan terpadu|Ide]] yang tersedia. Misalnya, LiteIDE, yang dicap sebagai "simpel, sumber terbuka, [[Lingkungan pengembangan terpadu|IDE]] [[lintas platform]] untuk Go",<ref>{{Cite web |url=https://github.com/visualfc/liteide |title=LiteIDE |access-date=2018-03-14 |archive-date=2023-03-05 |archive-url=https://web.archive.org/web/20230305230428/https://github.com/visualfc/liteide |dead-url=no }}</ref> dan GoLand, yang mengklaim untuk menjadi "mampu dan ergonomis."<ref>{{Cite web |url=https://www.jetbrains.com/go/ |title=GoLand |access-date=2018-03-14 |archive-date=2017-11-20 |archive-url=https://web.archive.org/web/20171120065416/https://www.jetbrains.com/go/ |dead-url=no }}</ref>
== Catatan ==
|