Belajar Bahasa C sharp/Bab II: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
Baris 4:
Berikut adalah contoh dari beberapa aljabar sederhana:
<source lang="csharp">
</source>
Bagi kita, persamaan di atas memang merupakan persamaan yang sama sekali tidak rumit, tetapi jika kita dapat membujuk komputer untuk menyelesaikan persamaan di atas, maka kita juga dapat membujuknya untuk menyelesaikan persamaan atau masalah lainnya yang jauh lebih kompleks. Sebagai langkah pertama, kita akan mencoba untuk melakukan konversi aljabar di atas ke dalam sintaksis di dalam bahasa C#, dan bentuknya kira-kira seperti di bawah ini:
<source lang="csharp">
</source>
Tiga baris kode di atas, tidaklah membentuk program C# yang komplet, tapi contoh kode di atas dapat ditemukan dalam program C#, mungkin program yang kita dapat buat sendiri. Kita bisa menulis kode di atas dengan menggunakan beberapa editor teks (semacam <code>notepad</code> atau <code>WordPad</code>) hingga menggunakan alat bantu khusus yang didesain untuk menyederhanakan pemrograman dengan menggunakan bahasa C#, seperti [
Perbedaan yang signifikan antara bentuk pertama (aljabar) dan bentuk kedua (kode dalam bentuk bahasa C#) adalah bahwa setiap baris di dalam bahasa C# selalu diakhiri dengan menggunakan karakter titik koma (''semicolon''). Setiap baris yang diakhiri dengan karakter titik koma disebut dengan '''pernyataan program C#''' ('''''C# program statement'''''). Sebuah program komputer yang dibuat dengan menggunakan C# umumnya terdiri atas macam-macam statemen. Huruf <code>A</code>, B dan C yang disebut di atas merupakan apa yang disebut sebagai variabel, dan setiap variabel merepresentasikan lokasi di dalam memori di mana nilai dari variabel akan disimpan.
Bandingkan dengan aljabar dan bentuk statemen program C# di bawah ini:
<source lang="csharp">
</source>
dan bentuk
<source lang="csharp">
</source>
Sekilas, aljabar di atas terlihat sama dengan bentuk pertama dan kedua, dan hasil akhirnya adalah <code>C = 8</code>. Akan tetapi, ketika diubah ke dalam bentuk statemen bahasa C#, hasilnya tidaklah sama, karena hasil <code>C = 3</code>. Hal ini dikarenakan statemen-statemen program akan diproses secara berurutan oleh komputer, baris demi baris. Komputer akan pertama-tama membaca nilai A = 3 seperti yang telah disebutkan pada baris pertama, dan langsung menjalankan baris kedua yang berisi <code>C = A + B</code>. Karena nilai B pada saat baris kedua dijalankan belum memiliki nilai (alias nilainya kosong), maka <code>C = 3 + kosong</code>, dan nilai dari <code>C = 3</code>. Meskipun statemen program pada baris ketiga dijalankan, statemen tersebut tidak akan dapat mempengaruhi nilai C yang telah ditetapkan pada baris kedua.
Baris 36 ⟶ 38:
Operator penugasan dapat memiliki beberapa bentuk. Semua statemen-statemen di bawah ini adalah benar, menurut bahasa C#:
<source lang="csharp">
</source>
Dalam setiap kasus di atas, sebuah variabel yang diletakkan di sebelah kiri tanda sama dengan akan diberi nilai dengan ekspresi yang dievaluasi yang diletakkan pada bagian sebelah kanan. Tanda plus di sana merupakan contoh dari operator aritmetika, yang berarti penjumlahan. Seperti halnya di dalam aljabar yang memiliki penjumlahan, perkalian dan pembagian, C# juga memilikinya dan mengizinkan kita untuk melakukannya.
Perhatikan jenis kode di bawah ini:
<source lang="csharp">
</source>
Sekilas, menurut aljabar, statemen di atas merupakan statemen yang benar adanya dan valid. Akan tetapi, tidak bagi C#, karena C# hanya mengizinkan sebelah kiri tanda sama dengan sebagai tempat diletakkannya variabel, bukan tempat diletakkannya ekspresi.
Perhatikan juga kode di bawah ini:
<source lang="csharp">
</source>
Kira-kira, berapa nilai dari C? Meskipun statemen di atas terlihat "tidak masuk akal" dalam aljabar, di dalam C# hal tersebut valid adanya. Dalam C#, pernyataan di atas akan menambahkan 5 dari nilai variabel C. Jika C diberi nilai 20 sebelum statemen di atas, maka nilai akhir dari C adalah 30 setelah statemen tersebut dijalankan.
Pernyataan-pernyataan yang telah dituliskan di atas sejauh ini mengandung beberapa elemen, yakni variabel, operator penugasan, tanda penjumlahan, angka-angka dan juga tanda titik koma. Angka-angka, di dalam C#, seperti 3 dan 5, disebut dengan literal numerik, yang diklasifikasikan ke dalam beberapa jenis tergantung seberapa jauh daya jangkaunya (''range'') dan seberapa tinggi ketelitiannya (''precision''). Angka-angka semacam 3 dan 5 merupakan contoh dari literal integer, karena memang angka 3 dan angka 5 merupakan bilangan bulat yang tidak memiliki koma, pecahan, dan juga pangkat. Bagaimana dengan bilangan bulat negatif? Ya, kita juga bisa memasukkan bilangan bulat negatif dalam C# dengan menggunakan tanda minus, seperti kode di bawah ini.
<source lang="csharp">
</source>
Lalu, bagaimana kita memasukkan nilai bilangan bulat yang besar (jutaan atau miliaran)? Apakah dengan menggunakan koma atau titik sebagai pemisah antar angka? Bahasa C# tidak mengizinkan kita untuk menuliskan koma dan titik untuk merepresentasikan angka yang besar, apalagi hanya digunakan sebagai pemisah antar angka. Statemen di bawah ini tidaklah valid menurut C#:
<source lang="csharp">
</source>
Akan tetapi, tuliskan seperti di bawah ini:
<source lang="csharp">
</source>
Kenapa huruf-huruf di atas (<code>A</code>, <code>B</code>, <code>C</code>, dan <code>Z</code>) disebut variabel? Huruf-huruf di atas disebut variabel karena nilai yang bisa dikandungnya dapat bervariasi. Berikut ini adalah contoh statemen yang akan mendemonstrasikan bagaimana nilai dari variabel dapat berubah:
<source lang="csharp">
</source>
Setelah baris ketiga dijalankan oleh komputer, nilai C adalah 5. Setelah baris kelima dijalankan oleh komputer, nilai C adalah 13, bukannya 5 lagi. Dalam pemrograman, bisa saja variabel berubah secara dengan banyak sekali perubahan ketika program tersebut dijalankan. Sebagai contoh, sebuah variabel mungkin memang telah ditetapkan sebagai tempat penyimpanan Nama Santri, tetapi ketika program dijalankan program tersebut akan mengisi variabel tersebut dengan nama santri, yang berjumlah lebih dari satu, karena program tersebut disuruh untuk menangani puluhan, ratusan, atau bahkan ribuan nama santri. Karenanya, untuk menghindari kebingungan antara pemrograman dan aljabar, para programmer seringnya menyebut tanda sama dengan sebutan "C akan mendapatkan A ditambah B", atau "Nilai C akan diisi dengan nilai A yang ditambah dengan B." Beberapa ''programmer'' mungkin menyebutnya dengan sebutan yang lebih mudah, seperti "A ditambah B akan dimasukkan ke dalam C."
===Penggunaan Titik koma===
Penggunaan tanda titik koma di dalam bahasa C# pada akhir statemen program merupakan sebuah cara yang sangat umum dilakukan oleh bahasa-bahasa pemrograman yang diturunkan dari bahasa ALGOL. Penggunaan tanda titik dua tersebut dilakukan karena C# mengizinkan kode agar ditulis dalam bentuk yang bebas. Dalam C#, kita tidak perlu menulis kode dalam baris-baris yang terlihat "bagus." Kita bisa saja menulis kode di atas dengan menggunakan cara seperti di bawah ini:
<source lang="csharp">
</source>
Atau, kita juga bisa menggunakan bentuk seperti di bawah ini, meski terlihat acak-acakan:
<source lang="csharp">
= 2; C = A
+ B;
</source>
Meski terlihat acak-acakan oleh kita, komputer tidak akan kebingungan untuk memprosesnya, tanpa ada keluhan. Komputer akan membedakan baris-baris kode statemen program dengan menggunakan karakter titik dua, tidak peduli apakah sebuah baris tersebut dibagi ke dalam banyak baris terpecah-pecah, atau baris yang digabungkan dalam satu baris yang terlihat "rapi." Penggunaan spasi, dan baris baru di dalam program, dalam C# umumnya dikenal dengan sebutan ''White Space'' (ruangan putih). Para programmer sering menggunakan white space untuk membuat kode mereka terlihat lebih rapi. Sebagai contoh, saya akan menggunakan white space untuk membedakan antara variabel, operand, dan ekspresinya, seperti di bawah ini:
<source lang="csharp">
</source>
Meski kode di atas terlihat lebih rapi, kita tidak mesti melakukannya.
===Penamaan Variabel===
Meski <code>A</code>, <code>B</code>, <code>C</code>, dan <code>Z</code> adalah sebuah nama yang enak dibaca untuk nama-nama variabel, kita bisa membuat variabel dengan nama-nama yang lebih enak untuk diingat, seperti:
<source lang="csharp">
</source>
Bahasa C# merupakan bahasa pemrograman yang bersifat ''case-sensitive'', artinya kita dapat menggunakan karakter kapital (A sampai Z) dan huruf ordinal (a sampai z) sebagai nama variabel, tapi memang harus ada konsistensi. <code>Variabel1</code>, <code>variabel1</code> dan <code>variAbel1</code> tidaklah sama! Tiga variabel di atas adalah tiga variabel yang berbeda di dalam C#, meskipun dalam beberapa bahasa seperti [[w:Pascal|Pascal]] dan [[w:Visual Basic|Visual Basic]], merupakan variabel yang sama. Untuk meminimalisasi tingkat kebingungan yang kita alami, kita bisa menghindari penggunaan nama variabel yang sama tetapi berbeda huruf kapital dan ordinalnya.▼
Peraturan untuk membuat nama-nama variabel di dalam C# lebih kompleks dibandingkan dalam bahasa C, C++, atau Java, karena C# mendukung penggunaan karakter-karakter di luar karakter Latin, seperti ''[[w:Bahasa Rusia|Cyrillic]]'', [[w:Bahasa Arab|Arab]], dan juga [[w:Bahasa Yunani|Yunani]]. Kita bisa saja menggunakan aksara Yunani sebagai nama variabel seperti di bawah ini:▼
▲ variabel1 = 3;
<source lang="csharp">
▲ Variabel1 = 2;
▲ variAbel1 = variabel1 + Variabel1;
</source>
▲Bahasa C# merupakan bahasa pemrograman yang bersifat ''case-sensitive'', artinya kita dapat menggunakan karakter kapital (A sampai Z) dan huruf ordinal (a sampai z) sebagai nama variabel, tapi memang harus ada konsistensi. <code>Variabel1</code>, <code>variabel1</code> dan <code>variAbel1</code> tidaklah sama! Tiga variabel di atas adalah tiga variabel yang berbeda di dalam C#, meskipun dalam beberapa bahasa seperti Pascal dan Visual Basic, merupakan variabel yang sama. Untuk meminimalisasi tingkat kebingungan yang kita alami, kita bisa menghindari penggunaan nama variabel yang sama tetapi berbeda huruf kapital dan ordinalnya.
▲Peraturan untuk membuat nama-nama variabel di dalam C# lebih kompleks dibandingkan dalam bahasa C, C++, atau Java, karena C# mendukung penggunaan karakter-karakter di luar karakter Latin, seperti ''Cyrillic'', Arab, dan juga Yunani. Kita bisa saja menggunakan aksara Yunani sebagai nama variabel seperti di bawah ini:
▲ π = 3.14;
▲ Ω = 4.13;
Untuk aksara-aksara yang dapat diketik dengan mudah dengan menggunakan keyboard, C# menawarkan beberapa peraturan dalam pemberian nama kepada variabel, yakni sebagai berikut:
Baris 116 ⟶ 119:
Nama-nama variabel juga tidak boleh mengandung spasi atau tanda baca selain karakter garis bawah (''underscore''). Untuk variabel yang menggunakan banyak kata di dalamnya, para ''programmer'' sering menggunakan karakter ''underscore'' untuk memisahkan kata-kata tersebut:
<source lang="csharp">
</source>
Atau, mereka juga bisa menggunakan campuran antara huruf besar dan huruf kecil, seperti di bawah ini:
<source lang="csharp">
</source>
Meski demikian, ada beberapa kata yang tidak dapat digunakan sebagai nama-nama variabel. Kata-kata tersebut, dinamakan dengan '''''C# Keyword''''' ('''kata kunci C#'''), yang memang direservasikan oleh C#. Kira-kira ada 87 buah keyword yang terdapat di dalam C# yang tidak bisa digunakan di dalam melakukan penamaan variabel.
<center>
Baris 238 ⟶ 241:
</center>
Sebagian besar programmer menggunakan nama-nama variabel yang lebih memiliki makna dalam berbagai hal. Mungkin, orang lain selain kita akan membaca program yang kita buat, atau memang kita akan membaca kembali program yang kita buat, setelah beberapa lama kita tidak membukanya. Kita akan mendapatkan manfaat yang sangat besar, ketika kita memang menulis variabel dengan nama-nama yang memberitahukan apa maksud dari setiap variabel tersebut.
<source lang="csharp">
</source>
Meski statemen di atas kelihatan lebih panjang, jelas kita lebih mudah memahaminya dibandingkan dengan menggunakan huruf <code>A</code>, <code>B</code>, <code>C</code> atau <code>Z</code> sebagai nama variabel. Kalau memang kita malas mengetik nama variabel yang panjang, kita bisa menggunakan singkatan-singkatan yang meskipun singkat tetap menunjukkan kejelasan, sebagai berikut:
<source lang="csharp">
</source>
Meskipun memang bagi manusia statemen-statemen di atas terlihat sudah sempurna, bagi kompiler C#, statemen di atas tidaklah sempurna, karena memang statemen-statemen di atas hanyalah berisi ekspresi saja. Kompiler membutuhkan tambahan informasi untuk memulainya, yang dibahas pada bagian berikutnya.
===Hungarian Notation===
|