Xcode
**Xcode** adalah lingkungan pengembangan terintegrasi (IDE) Apple untuk macOS, yang digunakan untuk mengembangkan perangkat lunak untuk macOS, iOS, iPadOS, watchOS, tvOS, dan visionOS. Ini awalnya dirilis pada akhir tahun 2003; rilis stabil terbaru adalah versi 15, dirilis pada 18 September 2023, dan tersedia gratis melalui Mac App Store dan situs web Pengembang Apple. Pengembang terdaftar juga dapat mengunduh rilis pratinjau dan versi suite sebelumnya melalui situs web Pengembang Apple. Xcode menyertakan alat baris perintah yang memungkinkan pengembangan gaya UNIX melalui aplikasi Terminal di macOS. Mereka juga dapat diunduh dan diinstal tanpa GUI. Sebelum Xcode, Apple menawarkan pengembang Project Builder dan Interface Builder untuk mengembangkan aplikasi Mac OS X.

Fitur utama
-----------

Xcode mendukung kode sumber untuk bahasa pemrograman: C, C++, Objective-C, Objective-C++, Java, AppleScript, Python, Ruby, ResEdit (Rez), dan Swift, dengan berbagai model pemrograman, termasuk namun tidak terbatas pada Cocoa, Karbon, dan Jawa. Pihak ketiga telah menambahkan dukungan untuk GNU Pascal, Free Pascal, Ada, C#, Go, Perl, dan D.

Xcode dapat membuat file biner gemuk (biner universal) yang berisi kode untuk berbagai arsitektur dengan format eksekusi Mach-O. Hal ini membantu memudahkan transisi dari PowerPC 32-bit ke PowerPC 64-bit, dari PowerPC ke Intel x86, dari Intel 32-bit ke 64-bit, dan yang terbaru dari Intel x86 ke silikon Apple dengan memungkinkan pengembang mendistribusikan satu aplikasi ke pengguna dan membiarkan sistem operasi secara otomatis memilih arsitektur yang sesuai saat runtime. Menggunakan iOS SDK, tvOS SDK, dan watchOS SDK, Xcode juga dapat digunakan untuk mengkompilasi dan men-debug aplikasi untuk iOS, iPadOS, tvOS, dan watchOS.

Xcode menyertakan alat GUI Instrumen, yang berjalan di atas kerangka penelusuran dinamis, DTrace, dibuat oleh Sun Microsystems dan dirilis sebagai bagian dari OpenSolaris. Xcode juga mengintegrasikan dukungan bawaan untuk manajemen kode sumber menggunakan sistem dan protokol kontrol versi Git, memungkinkan pengguna untuk membuat dan mengkloning repositori Git (yang dapat dihosting di situs hosting repositori kode sumber seperti GitHub, Bitbucket, dan Perforce, atau dihosting sendiri menggunakan perangkat lunak sumber terbuka seperti GitLab), dan untuk melakukan, mendorong, dan menarik perubahan, semuanya dari dalam Xcode, mengotomatiskan tugas-tugas yang biasanya dilakukan dengan menggunakan Git dari baris perintah.

### Komposisi

Aplikasi utama suite ini adalah lingkungan pengembangan terintegrasi (IDE), juga disebut Xcode. Paket Xcode mencakup sebagian besar dokumentasi pengembang Apple, dan Pembuat Antarmuka bawaan, sebuah aplikasi yang digunakan untuk membuat antarmuka pengguna grafis. Hingga Xcode 4.1, rangkaian Xcode menyertakan versi modifikasi dari Koleksi Kompiler GNU. Dalam Xcode 3.1 hingga Xcode 4.6.3, ini menyertakan kompiler LLVM-GCC, dengan ujung depan dari Koleksi Kompiler GNU dan generator kode berdasarkan LLVM. Di Xcode 3.2 dan yang lebih baru, ini menyertakan kompiler Clang C/C++/Objective-C, dengan front end yang baru ditulis dan generator kode berdasarkan LLVM, dan penganalisis statis Clang. Dimulai dengan Xcode 4.2, kompiler Clang menjadi kompiler default, Dimulai dengan Xcode 5.0, Clang adalah satu-satunya kompiler yang disediakan.

Hingga Xcode 4.6.3, rangkaian Xcode menggunakan GNU Debugger (GDB) sebagai back-end untuk debugger IDE. Dimulai dengan Xcode 4.3, debugger LLDB juga disediakan; dimulai dengan Xcode 4.5 LLDB menggantikan GDB sebagai back-end default untuk debugger IDE. Dimulai dengan Xcode 5.0, GDB tidak lagi disediakan.

### Fitur Playgrounds

Fitur Playgrounds di Xcode menyediakan lingkungan untuk eksperimen dan pengembangan cepat dalam bahasa pemrograman Swift. Versi asli fitur ini diumumkan dan dirilis oleh Apple Inc pada tanggal 2 Juni 2014, selama WWDC 2014.

Taman bermain menyediakan tempat pengujian yang merender kode pengembang secara real-time. Mereka memiliki kemampuan untuk mengevaluasi dan menampilkan hasil ekspresi tunggal saat dikodekan (dalam baris atau di bilah samping), memberikan umpan balik yang cepat kepada pemrogram. Jenis lingkungan pengembangan ini, yang dikenal sebagai read-eval-print loop (atau REPL) berguna untuk belajar, bereksperimen, dan membuat prototipe dengan cepat. Playgrounds digunakan oleh Apple untuk menerbitkan tutorial Swift dan tur terpandu yang menunjukkan keunggulan REPL.

Fitur Playgrounds dikembangkan oleh departemen Alat Pengembang di Apple. Menurut Chris Lattner, penemu Bahasa Pemrograman Swift dan Direktur Senior dan Arsitek di Departemen Alat Pengembang, Taman Bermain "sangat dipengaruhi oleh ide Bret Victor, Light Table, dan banyak sistem interaktif lainnya". Taman bermain diumumkan oleh Apple Inc. pada 2 Juni 2014, selama WWDC 2014 sebagai bagian dari Xcode 6 dan dirilis pada bulan September.

Pada bulan September 2016, aplikasi Swift Playgrounds untuk iPad (juga tersedia di macOS mulai bulan Februari 2020) dirilis, menggabungkan ide-ide ini ke dalam alat pendidikan. Fitur Playgrounds Xcode melanjutkan pengembangan, dengan fitur eksekusi langkah demi langkah baru yang diperkenalkan di Xcode 10 di WWDC 2018.

### Fitur yang Dihapus

Sebelumnya, Xcode mendukung pendistribusian proses pembuatan produk ke berbagai sistem. Salah satu teknologi yang terlibat bernama Shared Workgroup Build, yang menggunakan protokol Bonjour untuk secara otomatis menemukan sistem yang menyediakan layanan kompiler, dan versi modifikasi dari distcc produk perangkat lunak gratis untuk memfasilitasi distribusi beban kerja. Versi Xcode sebelumnya menyediakan sistem bernama Dedicated Network Builds. Fitur-fitur ini tidak ada di versi Xcode yang didukung.

Xcode juga menyertakan alat dan kerangka WebObjects Apple untuk membangun aplikasi web dan layanan web Java (sebelumnya dijual sebagai produk terpisah). Pada Xcode 3.0, Apple menghentikan pengembangan WebObjects di dalam Xcode; WOLips harus digunakan sebagai gantinya. Xcode 3 masih menyertakan kerangka WebObjects.

Lihat Juga
----------

* XCodeGhost
* CodeWarrior

Referensi
---------

1. ↑  John Siracusa (November 9, 2003). "Mac OS X 10.3 Panther". Diakses tanggal 2022-01-15.
2. ↑  camelbones. "CamelBones, an Objective-C/Perl bridge for Mac OS X & GNUStep".
3. ↑  michelf. "D For XCode".
4. ↑  Extremetech. "Apples New Swift Language Ecplained a Clever Move to Boost iOS while Holding Android Apps Back".