Belajar C# Di Linux - kali ini artikelbebas-riez akan membuat artikel mengenai
Belajar C# Di Linux. Artikel ini saya copas di website
ini. Yasudah langsung saja deh :
C# merupakan bahasa pemrograman yang dikembangkan oleh Microsoft dan pertama kali di-release tahun 2000 bersamaan dengan inisiasi .Net Framework. Bahasa ini merupakan bahasa pemrograman berorientasi objek yang dapat digunakan untuk membuat aplikasi di .Net Framework bersama dengan bahasa pemrograman lain seperti VB.Net, F# dan C++/CLI. Dengan C#, anda bisa membuat berbagai macam aplikasi mulai dari aplikasi desktop, mobile, client-server, aplikasi web, maupun aplikasi yang berjalan di sistem komputasi awan (Cloud Computing dengan Windows Azure). Secara tata bahasa, sintak-sintak C# mirip dengan sintak bahasa C/C++ atau Java, sehingga akan memudahkan orang-orang yang pernah mempelajari bahasa ini untuk menguasai bahasa C#. Saat ini bahasa C# yang pengembangannya diarsiteki oleh Anders Hejlsberg (yang sebelumnya mengembangkan Turbo Pascal dan Embarcado Delphi) menjadi salah satu bahasa pemrograman yang populer, terbukti dari data berikut (Nomor 3 setelah Java dan C, per Maret 2012). Tidaklah mengherankan banyak lowongan-lowongan programer yang mensyaratkan kemampuan bahasa C# ini. Oleh karena itu, mempelajari dan menguasai bahasa pemrograman C# merupakan investasi yang bagus.
Untuk mempelajari C#, tentu diperlukan tool-tools seperti editor, compiler dan platform .Net. Pada sistem operasi Windows, tools-tools tersebut di-bundle dalam Microsoft Visual Studio. Anda dapat mendownload versi “Express” dari Microsoft Visual Studio secara gratis dan legal di site ini . Tapi bagaimana jika di komputer anda hanya terinstall Linux? Apakah harus beli Windows hanya untuk belajar C#? (saya sangat tidak menganjurkan penggunaan software bajakan!). Tenang saja, di Linux pun anda bisa belajar C#. Walaupun dikembangkan oleh Microsoft, tapi untuk mempromosikan penggunaannya, spesifikasi bahasa C# dibuka dan didaftarkan sebagai standar ECMA-334 dan ISO/IEC 23270:2006. Hal ini memberikan kesempatan bagi vendor lain untuk mengembangkan platform, compiler maupun tools-tools lain yang terkait. Nah, untuk Linux, platform tersebut disebut Mono Framework yang dikembangkan oleh Novell. Dan, bagusnya lagi, Mono Framework ini juga bisa dijalankan di sistem operasi lain seperti Windows, Mac OS X, mobile dsb. Kali ini kita akan menggunakan Mono Framework untuk belajar bahasa C# di Ubuntu Linux (11.10).
1. Install Mono Framework
Mono Framework, secara default sudah terinstall di Ubuntu. Akan tetapi untuk meyakinkan dan melengkapi package-package yang belum terinstall, kita install lagi. Pada Terminal Window (
http://www.psychocats.net/ubuntu/terminal), ketik perintah sebagai berikut.
sudo apt-get mono-complete
sudo apt-get mono-devel
Dengan perintah diatas akan terinstall mono runtime, development tools (compiler, library), profiler, dsb. Compiler pada Mono framework mempunyai nama yang berbeda untuk tiap versi C#/.Net Framework. gmcs untuk C# 3.0 (.Net Framework 3.0/3.5) dmcs untuk c# 4.0 (.Net Framework 4.0). Untuk memastikan apakah mono dan compiler terinstall, ketik perintah berikut.
mono --version
gmcs --version
dmcs --version
2. Membuat program pertama: Halo.cs
Pertama buat direktori csharp kemudian buat file Halo.cs. Perintahnya sebagai berikut:
mkdir ~/csharp
cd ~/csharp
gedit Halo.cs &
Isi file Halo.cs dengan kode seperti dibawah ini lalu simpan.
/**
* Tutorial C# di .Net/Mono Framework
* Author: I Putu Susila
* Tanggal: 16/03/2012
*/
using System;
class Halo
{
public static void Main(string [] args)
{
Console.WriteLine("Halo dari C# (.Net/Mono)");
Console.WriteLine("Nama saya: ______ ________");
}
}
Untuk mengcompile dan menjalankannya, ketik perintah berikut.
gmcs Halo.cs
./Halo.exe
Mudah bukan? Masih terasa kurang, karena contoh aplikasinya hanya menampilkan pesan di Terminal? Ok, kita lanjutkan dengan contoh aplikasi desktop yang berbasis GUI. Pada .Net Framework, untuk membuat aplikasi desktop, kita menggunakan package-package Windows Forms. Ini juga didukung oleh Mono Framework, tapi program untuk mendesain tampilannya belum sebagus dan sestabil Visual Studio. Selain itu, pada Mono Framework, kita bisa membuat aplikasi desktop dengan Gtk# dan untuk mendesain tampilan serta kodingnya bisa menggunakan MonoDevelop. Tapi, karena programnya sederhana, pada tulisan kali ini, saya akan mencontohkan penggunaan Windows Forms, dimana semua komponen GUInya diketik melalui editor. Pada terminal ketik:
gedit FormData.cs &
Kemudian, isikan source code berikut ini, lalu simpan.
/**
* Tutorial Windows Forms di .Net/Mono Framework
* Author: I Putu Susila
* Tanggal: 16/03/2012
*/
using System;
using System.Drawing;
using System.Windows.Forms;
class FormData : Form
{
Label lblNama;
Label lblAlamat;
TextBox txtNama;
TextBox txtAlamat;
Button btnDisplay;
Button btnClose;
public FormData()
{
InitializeComponents();
}
private void InitializeComponents()
{
//Label Nama:
lblNama = new Label();
lblNama.UseMnemonic = true;
lblNama.Text = "Nama:";
lblNama.ForeColor = Color.Maroon;
lblNama.Location = new Point(15, 15);
lblNama.Size = new Size(lblNama.PreferredWidth,
lblNama.PreferredHeight + 2);
this.Controls.Add(lblNama);
//Edit box untuk input nama
txtNama = new TextBox();
txtNama.Text = "Ketik Nama Anda";
txtNama.Location = new Point(15 + lblNama.Width + 15,
lblNama.Top);
txtNama.BackColor = Color.LightGray;
txtNama.ForeColor = Color.Maroon;
txtNama.BorderStyle = BorderStyle.FixedSingle;
txtNama.Size = new Size(200, 20);
this.Controls.Add(txtNama);
//Label alamat
lblAlamat = new Label();
lblAlamat.UseMnemonic = true;
lblAlamat.Text = "Alamat:";
lblAlamat.ForeColor = Color.Maroon;
lblAlamat.Location = new Point(lblNama.Left,
lblNama.Bottom + 10);
lblAlamat.Size = new Size(lblAlamat.PreferredWidth,
lblAlamat.PreferredHeight + 2);
this.Controls.Add(lblAlamat);
//Text untuk input alamat
txtAlamat = new TextBox();
txtAlamat.Text = "Ketik Alamat Anda";
txtAlamat.Location = new Point(txtNama.Left,
txtNama.Bottom + 10);
txtAlamat.BackColor = Color.LightGray;
txtAlamat.ForeColor = Color.Maroon;
txtAlamat.BorderStyle = BorderStyle.FixedSingle;
txtAlamat.Size = new Size(200, 20);
this.Controls.Add(txtAlamat);
//Tombol Tampilkan
btnDisplay = new Button();
btnDisplay.Text = "&Tampilkan";
btnDisplay.TextAlign = ContentAlignment.MiddleCenter;
btnDisplay.Size = new Size(50, 22);
btnDisplay.BackColor = Color.Maroon;
btnDisplay.ForeColor = Color.Yellow;
btnDisplay.FlatStyle = FlatStyle.Flat;
btnDisplay.Location = new Point(txtAlamat.Right - btnDisplay.Width,
txtAlamat.Bottom + 15);
btnDisplay.Click += new EventHandler(btnDisplay_Clicked);
this.Controls.Add(btnDisplay);
//Tombol Selesai
btnClose = new Button();
btnClose.Text = "&Selesai";
btnClose.TextAlign = ContentAlignment.MiddleCenter;
btnClose.Size = new Size(50, 22);
btnClose.BackColor = Color.Maroon;
btnClose.ForeColor = Color.Yellow;
btnClose.FlatStyle = FlatStyle.Flat;
btnClose.Location = new Point(lblAlamat.Left,
lblAlamat.Bottom + 15);
btnClose.Click += new EventHandler(btnClose_Clicked);
this.Controls.Add(btnClose);
//Atribut untuk form ini
this.Text = "Aplikasi GUI dengan C#";
this.StartPosition = FormStartPosition.CenterScreen;
this.AutoScaleBaseSize = new Size(5,13);
this.ClientSize = new Size(300, 120);
this.AutoScroll = true;
this.MaximizeBox = false;
}
public void btnDisplay_Clicked(object sender, EventArgs e)
{
string nama, alamat;
//Ambil data nama
nama = txtNama.Text.Trim();
if (nama == string.Empty || nama == "Ketik Nama Anda")
{
MessageBox.Show("Silahkan ketik nama anda!", "Error",
MessageBoxButtons.OK, MessageBoxIcon.Error);
txtNama.Focus();
return;
}
//Ambil data alamat
alamat = txtAlamat.Text.Trim();
if (alamat == string.Empty || alamat == "Ketik Alamat Anda")
{
MessageBox.Show("Silahkan ketik alamat anda!", "Error",
MessageBoxButtons.OK, MessageBoxIcon.Error);
txtAlamat.Focus();
return;
}
//Tampilkan pesan
MessageBox.Show(
string.Format("Halo {0}, \nAlamat anda adalah {1}",
nama, alamat), "Berhasil");
}
public void btnClose_Clicked(object sender, EventArgs e)
{
MessageBox.Show("Bye, selamat melanjutkan koding C#!", "Pesan");
this.Close();
}
[STAThread]
public static void Main(string [] args)
{
Application.Run(new FormData());
}
}
Untuk mengcompile dan menjalankannya, ketik perintah berikut ini.
gmcs FormData.cs -pkg:dotnet
./FormData.exe &
Jika berhasil, makan akan tampil seperti dibawah ini.
Dan ini adalah hasil-hasil saya tadi :