Rabu

Terjemah - Start Programming using Object Pascal - Motaz Abdel Azeem

Prakata Penerjemah

Untuk mengisi waktu yang agak longgar, iseng saya terjemahkan buku dari "Start Programming using Object Pascal" (SPUOP)  atau dalam bahasa terjemahan "Memulai memprogram Menggunakan Bahasa Object Pascal". Dalam terjemahan, mungkin sekali ada yang saya ringkas, saya keluarkan dari terjemahan, sedikit saya ubah, dan mungkin sekali terjemahan ini tidak selesai. Tergantung mood heheheh. Termasuk mungkin sekali diantaranya prakata dari penulis, Motaz Abdel Azeem. Saya memfokuskan pada materi yang ditulis.Jika Anda ingin tahu sumber versi Englishnya, bisa didownload di:
http://freepascalanswers.wordpress.com/2012/09/02/freepascallazarus-book-startprog/
versi arabnya bisa dilihat di:
http://code-sd.com/books/startbook/

Akhirnya saya berharap semoga ini menjadi amal baik yang diterima Allah Subhanallaahu wa ta'ala



Tentang Penerjemah

Abdellah Al-'Arief

Book Cover

 

 

Introduction

Buku ini ditulis untuk programmer yang ingin mempelajari Bahasa Object Pascal. Juga cocok untuk sebagai buku pemrograman dasar untuk siswa baru dan kalangan non-programmer. Buku ini juga menjelaskan teknik pemrograman secara umum disamping materi pemrograman Bahasa Objek Pascal.


Bahasa Object Pascal

Pertama kali yang memperkenalkan Bahasa Pascal berorientasi objek adalah perusahaan komputer Apple pada tahun 1983. Setelah itu disusul Borland menerapkannya pada produk terkenalnya, Turbo Pascal.

Object Pascal adalah bahasa untuk berbagai tujuan yang  hybrid (pemrograman terstruktur juga sekaligus berorientasi objek). Dapat digunakan untuk pembuatan berbagai macam aplikasi secara luas, seperti untuk pembelajaran, pembuatan game, aplikasi bisnis, aplikasi internet, aplikasi telekomunikasi, tools development, dan kernel OS.Book Cover


Delphi

Setelah sukses dengan Turbo Pascalnya, Borland memutuskan untuk mengalihkannya pada lingkungan Windows dan memperkenalkan teknis pengembangan aplikasi berbasis komponen. Tidak lama setelah itu Delphi menjadi tools RAD (Rapid Application Development) terbaik saat itu. 

Delphi pertama kali dirilis pada tahun 1995 dengan disertai paket komponen yang kaya dan lengkap yang mendukung pengembangan aplikasi database berbasis Windows.

 

Free Pascal

Setelah Borland menghentikan dukungan untuk Turbo Pascalnya, tim Free Pascal memulai proyek open source untuk membuat suatu kompiler yang kompatibel dengan Turbo Pascal dari nol, dan kemudian kompatibel dengan delphi. Saat ini kompiler Free Pascal  juga ditujukan untuk banyak platform dan sistem operasi seperti Windows, Linux, Mac, ARM, dan WinCE. 

Kompiler Free Pascal Versi 1.0 dirilis pada Bulan Juli Tahun 2000.


Lazarus

Free Pascal adalah suatu kompiler, yang tidak mempunyai IDE (Integrated Development Environtment / Lingkungan Pengembangan yang Terintegrasi) sebagaimana seperti yang terdapat pada Delphi. Proyek Lazarus kemudian dimulai untuk menyediakan IDE untuk Free Pascal, yang memiliki code editor, debugger, dan komponen sebagaimana terdapat pada IDE Delphi. 

Lazarus versi 1.0 baru dirilis pada Bulan Agustus 2012, walaupun demikian telah banyak aplikasi yang dibuat dengan Lazarus versi beta. Banyak pengunjung yang menulis package dan komponen untul Lazarus, dan komunitasnya semakin berkembang. 

Fitur Object Pascal

Object Pascal adalah bahasa pemrograman yang sangat mudah bagi pemula, kompilernya sangat cepat, dan aplikasi yang dihasilkan handal, cepat, dan dapat dibandingkan dengan C atau C++. Anda dapat membuat aplikasi yang besar dan stabil dengan tanpa kompleksitas yang berarti.

 

Penulis

Motaz Abdel Azeem
Saya lulusan dari Sudan University of Science and Technology pada tahun 1999. Saya mulai belajar Pascal sebagai bahasa kedua setelah BASIC. Kemudian setelah itu, saya terus menggunakannya, dan saya menumakan bahwa Pascal adalah perangkat yang sangat mudah dan powerful, terutama setelah saya mempelajari C dan C++. Setelah itu say beralih ke Delphi. Hingga kini saya menggunakan Delphi dan Lazarus pada hampir seluruh aplikasi saya. 

Saya tinggal di Khartoum. Pekerjaan saya sekarang Software Developer.

BAB I - Dasar Bahasa Pascal

Aplikasi Pertama


Setelah menginstall dan menjalankan Lazarus, kita dapat memulai dari membuat aplikasi baru dari menu utama:

Project->New Project->Program

Akan terdapat baris kode berikut pada jendela Source Editor : 
program Project1;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes
{ you can add units after this };
{$IFDEF WINDOWS}{$R project1.rc}{$ENDIF}
begin
end.

Kita dapat menyimpan program tersebut dengan mengklik File->Save dari menu utama, dan kemudian kita dapat memberikan nama program. Misalkan first.lpi.

Selanjutnya kita dapat menuliskan kode program berikut diantara statemen begin dan end.
Writeln('This is Free Pascal and Lazarus');
Writeln('Press enter key to close');
Readln;
Dan sehingga keseluruhan kode menjadi
program first;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes
{ you can add units after this };
{$IFDEF WINDOWS}{$R first.rc}{$ENDIF}
begin
Writeln('This is Free Pascal and Lazarus');
Writeln('Press enter key to close');
Readln;
end.
Statemen Writeln memerintahkan menampilkan teks pada layar (Console Window/Layar Hitam putih). Readln menghentikan eksekusi kode sehingga pengguna dapat membaca teks yang ditampilkan sampai tombol Enter ditekan untuk kembali ke IDE Lazarus.

Kemudian tekan tombol F9 untuk menjalankan aplikasi, atau klik tombol:


Setelah program dijalankan, aplikasi akan menampilkan pada layar:

This is Free Pascal and Lazarus
Press enter key to close

Jika kita menggunakan Linux, kita akan menemukan file baru yang dibuat pada direktori program dengan nama first, pada Windows first.exe. Kedua file tersebut dapat dieksekusi secara langsung dengan klik dobel. File tersebut juga dapat dijalankan di komputer lain yang tidak ada Lazarus nya.

Notes
If the console application window does not appear, we can disable the debugger from the Lazarus
menu:
Environment/Options/Debugger
In Debugger type and path select (None)

Catatan:
Jika Jendela Console aplikasi tidak muncul, kita dapat me-nonaktifkkan debugger dari menu Lazarus:
Environtment->Options->Debugger pada Debugger type and path pilih (None)


Contoh Lain


Pada program sebelumnya, ubah baris kode berikut
Writeln('This is Free Pascal and Lazarus');
menjadi
Writeln('This is a number: ', 15);
kemudian tekan F9 untuk menjalankan aplikasi. Layar akan menampilkan
This is a number: 15
ubah-ubahlah baris kode tersebut sebagaimana berikut, dan jalankan program setiap kali selesai mengubahnya.

Code:
Writeln('This is a number: ', 3 + 2);
Output:
This is a number: 5

Code:
Writeln('5 * 2 = ', 5 * 2);
Output:
5 * 2 = 10

Code:
Writeln('This is real number: ', 7.2);
Output:
This is real number: 7.2000000000000E+0000

Code:
Writeln('One, Two, Three : ', 1, 2, 3);
Output:
One, Two, Three : 123

Code:
Writeln(10, ' * ', 3 , ' = ', 10 * 3);
Output:
10 * 3 = 30

Kita dapat menuliskan nilai yang berbeda-beda pada statemen Writeln dan melihat hasilnya. Ini akan membantu kita memahami statemen tersebut dengan jelas.


Variabel

Variable adalah penampung data. Sebagai contoh, ketika kita katakan bahwa X = 5, maka itu berarti X adalah suatu variabel, dan menampung nilai 5.

Object Pascal bahasa pemrograman strongly typed, yang berarti bahwa kita harus mendeklarasikan tipe data suatu variabel sebelum mengisikan nilai padanya. Jika kita mendeklarasikan X sebagai integer, maka kita hanya dapat mengisikan angka-angka integer pada X selama aplikasi dijalankan.

Contoh pendeklarasian dan penggunaan variabel:
program FirstVar;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes
{ you can add units after this };
var
  x: Integer;
begin
  x:= 5;
  Writeln(x * 2);
  Writeln('Press enter key to close');
  Readln;
end.

Aplikasi akan memberikan output berupa angka 10.

Perhatikan, ketika kita menggunakan reserverd word (kata tercadang) var, ini berari baris kode setelahnya adalah deklarasi variabel.
x: Integer;
Deklarasi ini mempunyai makna 2 hal:

  1. Nama variabelnya adalah x
  2. Tipe variabelnya adalah integer, yang hanya bisa menampung data bertipe integer tanpa pecahan. Tipe integer bisa menyimpan nilai positif atau negatif. 

Dan pernyataan:
x:=5;
Bermakna isikan nilai 5 ke variabel x.

Pada contoh berikutnya kita tambahkan variabel Y:
var
  x, y: Integer;
begin
  x:= 5;
  y:= 10;
  Writeln(x * y);
  Writeln('Press enter key to close');
  Readln;
end.
output dari aplikasi adalah:

50
Press enter  key to close

Pada contoh berikutnya, kita mengenal tipe data lainnya yang disebut character.
var
  c: Char;
begin
  c:= 'M';
  Writeln('My first letter is: ', c);
  Writeln('Press enter key to close');
  Readln;
end.
Tipe data ini hanya dapat menampung satu karakter huruf, atau angka yang diperlakukan sebagai huruf, tidak bisa dilakukan operasi matematika penambahan, pengurangan, dan sebagainya  (disebut juga alphanumeric).

Pada contoh berikut ini, kita mengenal tipe data angka real , yang mana dapat menampung nilai pecahan:
var
  x: Single;
begin
  x:= 1.8;
  Writeln('My Car engine capacity is ', x, ' liters');
  Writeln('Press enter key to close');
  Readln;
end.
Untuk membuat suatu aplikasi yang interaktif dan fleksibel, kita membutuhkan input dari pengguna. Sebagai contoh, kita dapat meminta pengguna untuk memasukkan sebuah angka, dengan menggunakan statemen atau prosedur readln.

Pada contoh ini, pemberian nilai pada variabel X dilakukan dengan keyboard bukan lagi merupakan nilai tetap yang dituliskan dalam kode program.
var
  x: Integer;
begin
  Write('Please input any number:');
  Readln(x);
  Writeln('You have entered: ', x);
  Writeln('Press enter key to close');
  Readln;
end. 

Pada contoh berikut kita lihat tabel perkalian untuk angka yang diinputkan oleh pengguna:
program MultTable;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
{$ENDIF}{$ENDIF}
  Classes
{ you can add units after this };
var
  x: Integer;
begin
  Write('Please input any number:');
  Readln(x);
  Writeln(x, ' * 1 = ', x * 1);
  Writeln(x, ' * 2 = ', x * 2);
  Writeln(x, ' * 3 = ', x * 3);
  Writeln(x, ' * 4 = ', x * 4);
  Writeln(x, ' * 5 = ', x * 5);
  Writeln(x, ' * 6 = ', x * 6);
  Writeln(x, ' * 7 = ', x * 7);
  Writeln(x, ' * 8 = ', x * 8);
  Writeln(x, ' * 9 = ', x * 9);
  Writeln(x, ' * 10 = ', x * 10);
  Writeln(x, ' * 11 = ', x * 11);
  Writeln(x, ' * 12 = ', x * 12);
  Writeln('Press enter key to close');
  Readln;
end

Perlu dicatat bahwa pada contoh sebelumnya seluruh teks di antara tanda petik (') ditampilkan di jendela console sebagaimana apa adanya, seperti contoh:

' * 1 = '

Sedangkan variabel dan ekspresi yang dituliskan dengan tanpa tanda petik akan dilakukan pemrosesan operasi matematika dan ditampilkan hasilnya.

Perhatikan perbedaan kedua statemen dibawah berikut:
Writeln('5 * 3');
Writeln(5* 3); 

Hasil dari statemen pertama adalah:

5 * 3

Hasil dari statemen kedua setelah diproses adalah:

15

Pada contoh berikut, kita akan melakukan operasi matematika pada dua angka (x,y), kemudian hasilnya kita letakkan pada variabel ketika (Res).
var
  x, y: Integer;
  Res: Single;
begin
  Write('Input a number: ');
  Readln(x);
  Write('Input another number: ');
  Readln(y);
  Res:= x / y;
  Writeln(x, ' / ', y, ' = ', Res);
  Writeln('Press enter key to close');
  Readln;
end. 


Karena operasi pembagian, maka hasilnya boleh jadi pecahan, oleh karena itu kita mendeklarasikan variabel yang menampung hasilnya (Res) dengan tipe angka real (Single). Tipe Single bermakna angka real dengan single precision floating point.

Berikutnya >>

3 komentar:

  1. Anonim03:38

    Mantab..... Lanjutkan!

    BalasHapus
  2. Anonim16:14

    teruskan,.. penjelasannya nyaman, step by step (y)

    BalasHapus

# semua file unduhan pada blog ini dikompress menggunakan zip, 7-zip 32bit, atau 7-zip 64bit