BELAJAR BAHASA C & C++

Kamis, 23 April 2009

I. PENDAHULUAN

1.1 C & C++

Berbicara tentang C++ biasanya tidak lepas dari C, sebagai bahasa pendahulunya. Pencipta C adalah Brian W. Kerninghan dan Dennis M. Ritchie pada sekitar tahun 1972, dan sekitar satu dekade setelahnya diciptakanlah C++, oleh Bjarne Stroustrup dari Laboratorium Bell, AT&T, pada tahun 1983. C++ cukup kompatibel dengan bahasa pendahulunya C. Pada mulanya C++ disebut “ a better C “. Nama C++ sendiri diberikan oleh Rick Mascitti pada tahun 1983, yang berasal dari operator increment pada bahasa C.
Keistimewaan yang sangat berari dari C++ ini adalah karena bahasa ini mendukung pemrograman yang berorientasi objek ( OOP / Object Oriented Programming).


1.2 PEMROGRAMAN BERORIENTASI OBJEK

Sampai saat ini, program dianggap sebagai sekumpulan procedure yang melakukan aksi terhadap data. Procedure, atau function, adalah suatu set instruksi khusus yang dieksekusi secara bergantian. Data terpisah dari procedure, dan trik pemrogramannya adalah menjaga urutan pemanggilan fungsi, dan data apa yang diubah. Dalam demikian terciptalah program yang terstruktur.
Ide dari pemrograman terstruktur adalah memecah program yang besar menjadi kecil sehingga lebih mudah dipahami. Program-program lama memaksa pengguna untuk melakukan langkah-perlangkah melalui layar monitor. Sedangkan program modern menyajikan semua pilihan sekaligus dan merespon aksi pengguna.
OOP berusaha untuk memenuhi kebutuhan itu, menyediakan teknik untuk mengelola kompleksitas, mencatat penggunaan ulang komponen software dsb. Inti dari OOP adalah memperlakukan data dan procedure sebagai sebuah objek berisi entitas dengan identitas dan ciri yang khusus.


1.3 C++ & OBJECT ORIENTED PROGRAMMING

Tiga karakteristik utama dari bahasa yang berorientasi objek adalah
1. Encapsulation
2. Inheritance
3. Polymorphisme.
Tiga ciri diatas mendukung reusability, yang merupakan salah satu factor penentu kualitas software.
C++ mendukung karakteristik encapsulation dengan menggunakan konsep class. Setelah terbentuk, maka class akan bertindak sebagai entitas yang tenkapsulasi.
Dengan adanya konsep inheritance, maka C++ mendukung ide penggunaan ulang suatu object.
Polymorphisme ( Banyak Bentuk ) merupakan suatu konsep yang menyatakan sesuatu yang sama dapat memiliki berbagai bentuk dan perilaku yang berbeda.


1.4 MENYIAPKAN PROGRAM

Source code C++ dapat ditulis pada text editor apapun. Baik itu digunakan pada sistem operasi Windows atau Unix (Linux, BSD, dsb).
Walaupun demikian, lebih disarankan apabila digunakan dengan editor khusus C++, agar penggunaan tools yang lain lebih mudah.


1.5 KOMPILASI

Untuk mengubah source code menjadi sebuah program, kita gunakan compiler. Setelah source code tercompile, terbentuklah sebuah file objek dengan ekstension “ .obj “. File “ .obj “ ini belum merupakan sebuah program executable. Untuk membentuk program executable linker harus dijalankan. Jika program executable sudah diperoleh, walaupun di komputer anda tidak terinstall compiler C++ namun program masih tetap dapat dijalankan.
Saat ini banyak compiler C++ yang berada di pasaran, contohnyaa Borland C++, Turbo C++, Microsoft C++, C++ Builder, Visual C++ sampai pada compiler gratis seperti g++ di Unix.

Read More......

PEMROGRAMAN KOMPUTER

1. PEMROGRAMAN KOMPUTER

Dalam kehidupan sehari-hari, untuk berkomunikasi dengan orang lain, kita harus menggunakan bahasa yang sama dengan orang tersebut. Apabila kita menggunakan bahasa Indonesia, lawan bicara kita harus mengerti bahasa Indonesia. Apa yang terjadi jika ternyata lawan bicara kita tidak mengerti bahasa Indonesia? Ada dua jalan yang bisa ditempuh yaitu pertama, dengan menggunakan jasa penterjemah atau yang kedua,dengan meguasai bahasa yang dimengerti oleh lawan bicara kita.

Ilustrasi di atas memberikan gambaran yang sama dengan yang terjadi pada pemrograman komputer. Untuk bisa berkomunikasi dengan komputer, maka langkah yang harus diambil adalah menguasai bahasa yang dimengerti oleh komputer.
Komputer, pada dasarnya, merupakan mesin digital yang hanya mengenal kondisi ada arus dan tidak ada arus listrik (biasa disimbolkan angka 1) dan tidak ada arus listrik (biasa disimbolkan angka 0). Dari kondisi tersebutlah maka dikenal bahasa mesin, yaitu bahasa yang dikenal oleh komputer dengan menggunakan sandi 1 (satu) dan 0 (nol). Pemrograman dengan bahasa mesin biasa digolongkan dalam bahasa tingkat rendah (low level languages).

Karena bahasa mesin sangat susah, maka muncul ide untuk melambangkan untaian sandi 1 dan 0 dengan singkatan kata yang lebih mudah dipahami manusia. Singkatan kata ini kemudian disebut mnemonic code. Bahasa pemrograman yang menggunakan singkatan kata (mnemonic code) tersebut adalah bahasa assembly. Bahasa assembly menggunakan perangkat lunak untuk menerjemahkan/ mengkonversi perintah-perintah assembly ke dalam bahasa mesin yang disebut assembler. Bahasa assembly merupakan bahasa pemrograman tingkat menengah (intermediate level languages).

Contoh :
Bahasa mesin, dalam prosesor Intell  0011 1010 0000 1011.
Bahasa assembly  CMP AL, 0D (CoMPare AL with 0D)
Dapat dilihat bahwa singkatan CMP AL, 0D jauh lebh mudah dipahami dibandingkan dengan 0011 1010 0000 1011.

Bahasa pemrograman assembly dirasakan masih terlalu sulit maka dikembangkan bahasa pemrograman yang lebih user friendly. Bahasa pemrograman yang menggunakan kata-kata yang mudah dimengerti oleh manusia. Bahasa pemgraman seperti ini dikenal sebagai bahasa generasi ketiga atau disingkat 3GL (third-generation language). Selain itu dikenal dengan nama 3GL, juga dikenal dengan nama bahasa tingkat tinggi atau HLL (high level languages)

Definisi Program/Pemrograman
Adalah kumpulan instruksi-instruksi tersendiri yang biasanya disebut source code yang dibuat oleh programmer (pembuat program)
2. TINGKATAN BAHASA PEMROGRAMAN

Menurut tingkatannya, bahasa pemrograman dibagi atas 3 tingkatan, yaitu:
Bahasa pemrograman tingkat rendah (Low Level Language), bahasa pemrograman jenis ini sangat sulit dimengerti karena instruksinya menggunakan bahasa mesin. Biasanya yang mengerti hanyalah pembuatnya saja karena isi programmnya berupa kode-kode mesin.
Bahasa Pemrograman tingkat menengah (Midle Level Language), merupakan bahasa pemrograman tingkat menengah dimana penggunaan instruksi sudah mendekati bahasa sehari-hari, walaupun begitu masih sulit untuk di mengerti. Yang tergolong kedalam bahasa ini adalah Assembler.
Bahasa pemrograman tingkat tinggi (High Level Language), merupakan bahasa tingkat tinggi yang mempunyai ciri lebih terstruktur, mudah dimengerti karena menggunakan bahasa sehari-hari. Contoh-contoh bahasa yang disebut diatas merupakan bahasa yang digunakan pada level ini. Contohnya : Basic, Pascal, Delphi, Visual Studio (Visual Basic, visual Foxpro, Visual Objeck), ORACLE, MS-SQL, Perl, Phyton, Informix, C, Pascal, C++ ADA, Java, PHP, ASP, XML dan lain sebagaianya. Bahasa seperti Java, PHP, ASP, XML biasanya digunakan untuk pemrograman pada internet, dan masih banyak lagi yang terus berkembang yang saat ini biasanya dengan ekstensi .NET seperti Visual Basic.NET dan Delphi.NET yang merupakan bahasa program yang dikembangkan pada arah basis internet.

3. MODEL PEMROGRAMAN
Model-model atau tipe pengembangan pemrograman dapat dibedakan menjadi :

 Model Pemrograman Tak Terstruktur. Yaitu model pemrograman yang dimiliki oleh bahasa mesin. Bentuk dan strukturnya sulit untuk ditentukan algoritmanya. Struktur pemrograman biasanya berdasar pada pemikiran khusus oleh pembuat program dan biasanya hanya dimengerti oleh pembuatnya saja. Bentuk pemrograman ini digunakan saat pertama kali dibuat komputer. Saat ini bentuk pemrograman ini sangat jarang digunakan bahkan bisa dikatakan hampir tidak ada.
 Model Pemrograman terstruktur .Pemrograman terstruktur adalah cara pemrosesan data yang terstuktur. Prinsip pemrograman terstruktur adalah jika suatu proses telah sampai pada point tertentu, maka proses selanjutnya tidak boleh melompat ke baris sebelumnya, kecuali untuk proses berulang. Tujuan dari pemrograman terstruktur adalah :

Ide pemrograman terstruktur pertama kali diungkapkan oleh Prof Edsger Djikstra dari Universitas Eindhoven sekitar tahun 1965. Dalam papernya, Djikstra mengusulkan peniadaan perintah GOTO pada pemrograman terstruktur. Berbeda dengan pendapat HD Millis yang mengungkapkan bahwa pemrograman terstruktur tidak tergantung pada ada tidaknya GOTO tetapi lebih pada struktur program itu sendiri. Dari pernyataan keduanya, memberikan gambaran tidak adanya definisi yang jelas untuk pemrograman terstruktur. Tetapi dapat digarisbawahi bahwa pemrograman terstruktur merupakan suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program.
Tujuan dari pemrograman terstruktur adalah:
1. meningkatkan kehandalan suatu progam,
2. program mudah dibaca dan ditelusuri,
3. menyederhanakan kerumitan program,
4. pemeliharaan program, dan
5. meningkatkan produktivitas pemrograman.

Pemrograman terstruktur bercirikan:
1. mengandung teknik pemecahan yang tepat dan benar,
2. memiliki algoritma pemecahan masalah yang sederhana, standar dan efektif,
3. memiliki struktur logika yang benar dan mudah dipahami,
4. Memiliki struktur dasar yaitu pengurutan (sorting), seleksi (selection), dan perulangan (looping)
5. Menghindari penggunaan pernyataan GOTO, yang bisa mengakibatkan program menjadi tidak terstruktur.
6. biaya pengujian rendah,
7. memiliki dokumentasi yang baik,
8. biaya perawatan dan dokumentasi yang dibutuhkan rendah.

Algoritma adalah kumpulan urutan perintah yang menentukan operasi-operasi tertentu yang diperlukan untuk menyelesaikan suatu masalah ataupun mengerjakan suatu tugas tertentu. Algoritma merupakan urutan langkah instruksi yang logis. Setiap langkah instruksi mengerjakan suatu tindakan aksi. Bila suatu aksi dilaksanakan, maka operasi atau sejumlah operasi yang bersesuaian dengan aksi itu dikerjakan oleh pemroses. Bila data yang digunakan benar, maka algoritma akan selalu berhenti dengan memberikan hasil yang benar pula.

Pembuatan algoritma harus selalu dikaitkan dengan:
– Kebenaran algoritma, yakni bila program selesai maka hasilnya juga benar
– Kompleksitas, lama, dan jumlah waktu proses dan penggunaan memori.

Algoritma untuk menetapkan program yang baik, bercirikan:
– Tepat sasaran, yaitu memenuhi spesifikasi pekerjaan dan bekerja sesuai tujuan.
– Flexible dan portable, yaitu flexible untuk dikembangkan lebih lanjut serta Portable ntuk digunakan pada berbagai sistem dan mesin.
– Bersih dari kesalahan sistem ataupun lojik
– Murah, efisien dalam penggunaan piranti memori dan penyimpanan lainnya
– Cepat waktu pelaksanaannya
– Didokumentasi dengan baik untuk pengoperasian, pemeliharaan dan pengembangan
– Algoritma merupakan pemberian (description) pelaksanaan suatu proses, dimana sebuah proses dikerjakan oleh pemroses mengikuti algoritma yang sudah dibuat





Langkah-langkah untuk membuat program yang baik dan terstruktur adalah:
1. Mendefinisikan Masalah
Merupakan langkah penting dan vital yang paling sering dilompati oleh banyak
pemrogram. Karena sangat pentingnya pendefinisian masalah ini maka sangat
dianjurkan untuk terlebih dahulu mendefinisikan masalah yang akan dipecahkan, apa
saja masukkan yang harus diberikan dan bagaimana keluarannya.
2. Menentukan Solusi
Setelah masalah didefinisikan dengan jelas, masukan yang akan diberikan dan keluaran
yang diinginkan juga sudah diketahui selanjutnya adalah mencari jalan bagaimana
memecahkan masalah tersebut dengan masukan yang sudah diketahui. Apabila
permasalahan terlalu kompleks, bisa dibagi dalam bebrapa modul kecil.
Sebagai contoh, progam untuk menghitung invers matriks. Modul pertama adalah
meminta masukan matrik bujur sangkar. Modul kedua adalah mencari invers dari matrik
yang sudah dimasukkan, dan modul terakhir adalah menampilkan hasilnya kepada
pengguna.
3. Memilih Algoritma
Algoritma merupakan urutan langkah berhingga untuk memecahkan masalah logika
atau matematika. Pemilihan algoritma merupakan langkah vital, karena kesalahan
memilih algoritma akan menyebabkan program akan memberikan unjuk kerja yang
kurang baik.
4. Menulis Program
Untuk menuliskan program perlu dipertimbangkan bahasa yang digunakan dan
keperluan atau masalah masalah yang akan dipecahkan. Bahasa apapun bisa digunakan,
dengan mempertimbangkan efektifitas dan efisiensi serta biaya.
5. Menguji Program
Jika program telah selesai ditulis, maka harus dilakukan pengujian. Pengujian awal
berupa kompilasi yang menguji tata bahasa dan kebenaran program. Selanjutnya perlu
diuji apakah program sudah menampilkan keluaran seperti yang diinginkan atau belum.
Lebih jauh lagi, harus diuji program dengan banyak kasus lain. Sering terjadi suatu
program berjalan untuk kasus A, B dan C tetapi tidak berjalan untuk kasus X, Y, dan Z.
Pengujian ini harus sering dilakukan sampai benar-benar yakin program telah berjalan
dengan baik.
6. Menulis Dokumentasi
Menulis dokumentasi dilakukan seiring dengan pembuatan program. Dokumentasi
sangat penting untuk pengembangan dan perbaikan terhadap program sehingga
program selalu bisa diperbaharui.
7. Merawat Program
Perawatan program bertujuan untuk mendeteksi bug yang sebelumnya tidak terdeteksi.
Atau bisa juga digunkan untuk menambahkan fasilitas baru pada program, sehingga
perlu adanya revisi pada program.

BAHASA PEMROGAMAN PASCAL
Pascal adalah bahasa tingkat tinggi yang berorientasi pada segala tujuan. Pascal
dirancang oleh Prof Niklaus Wirth dari Techival University di Zurich, Switzerland,
sedangkan nama Pascal diambil dari Blaise Pascal seorang ahli matematika dan
philosophi yang terkenal pada abad 17 berasal dari Perancis.
Pascal dipublikasikan pertama kali pada tahun 1971 dengan tujuan untuk mengajar
komputer secara sistematis. Karena sifatnya yang merupakan pemrograman terstruktur,
maka dalam waktu singkat Pascal telah menjadi bahasa pemrograman yang popular.
Pascal mempunyai beragam compiler yang digunakan, antara lain Turbo Pascal, GNU
Pascal, Free Pascal, USCD Pascal dan Apple Pascal. Pada pembahasan buku ini penulis
menggunakan Free Pascal Compiler (FPC) versi 2.0.2.




Read More......
 
 
 
Hosting Unlimited Indonesia
 
Copyright © MUHSIY'S BLOG