G_diskusi Kelompok 6
-
Upload
zaimatus-sholikhah -
Category
Documents
-
view
25 -
download
4
Transcript of G_diskusi Kelompok 6
REKAYASA PERANGKAT LUNAK
“DISKUSI KELOMPOK”
Dosen Pengampu : Dr. Ratna Wardani
Oleh :
Kelompok 6
1. Dhian Septyaningrum (09520244044)
2. Rofik Tri Prasetyo (10520244059)
3. Anella Megaselfa H. B (10520244062)
4. Sungging Nanda Pratama (10520244078)
PROGRAM STUDI PENDIDIKAN TEKNIK INFORMATIKA
JURUSAN PENDIDIKAN TEKNIK ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
2012
1. Apa itu Translasi?
Translasi merupakan proses penerjemahan bahasa pemograman ( source code)
menjadikan sebuah file atau berupa tampilan lain. Proses Transalai meliputi istilah:
Compile, Interpret, dan Link. Program aplikasi computer (perangkat lunak) yang biasa
dikembangkan dapat berada dalam tiga bentuk:
1. Source-code
2. Intermediate-code
3. Executable-code
Source Code merupakan : Code-code yang langsung kita tulis dalam proses
pembuatan perangkat lunak computer, dan merupakan code sumber. Kode sumber dibuat
dekat dengan abstraksi (model) yang mudah dicema manusia.
Executable code hanya dikenal oleh Perangkat keras computer, tidak memahami
source code. yang kita buat, Executable-code adalah code yang bisa dieksekusi oleh
computer sedangkan. Source code tidak dapat dieksekusi oleh computer.Sedangkan
intermediate-code (kode antara) merupakan bentuk yang terletak diantara source-code
dan executable-code.
Dua Proses Tahap Translasi :
Dalam proses translasi dikenal 2 bentuk:
1. Translasi dari source-code ke intermediate-code
2. Translasi dari intermediate-code ke executable-code
Kedua operasi translasi ini umumnya dijalankan translator yang berbeda.
Yang perlu juga disampaikan di sini adalah bahwa kedua tahap translasi di atas
ada juga yang diwujudkan sedemikian sehingga kesan yang timbul hanya terjadi satu
tahap translasi3. Translasi dari source-code ke executable-code Compiler, Linker,
Interpreter
Merupakan perangkat translasi adalah perangkat utama translasi. Ketiganya
kata benda, dan bila kita ambil akar katanya (yakni kata kerja), kita] dapatkan compile,
link, dan interpret.
Tabulasi ketiganya diringkas sebagai berikut :
Input Output
Output file
ada?
Compiler Source-code
Intermediate-
code Ya
Linker (yang tidakbersifat
interpreter)
Intermediate-
code
Executable-code Ya
Interpreter (sebagailinker saja)
Intermediate-
code
Executable-code Tidak
Interpreter (tidaksebagai linker saja) Source-code Executable-code Tidak
Entri ketiga dan keempat dari tabulasi di atas dapat dijelaskan sebagai berikut. -
Program di kedua entri sama-sama dapat disebut interpreter (tidak menghasilkan output
file), dan sama-sama dapat disebut linker.
Perbedaan : linker di entri kedua memang hanya sebagai linker. Operasi link adalah
operasi penggabungan kumpulan intermediate code, sekaligus penterjemahan
intermediate-code ke executable code.
Contoh linker seperti kasus ini adalah linker java (nama executable file-nya
java).Linker di entri keempat tidak menggabung intermediate-code. Inputnya source-code,
bukan intermediate-code. Linker (dan interpreter) seperti ini misalnya adalah (OS) shell
interpreter. Hal relational-database oriented language seperti(Oracle) PL/SQL
dan (Microsoft) Transact-SQL.Linker di entri ketiga dan keempat berbeda dengan linker di
entri kedua. Linker di entri ketiga dan keempat tidak menghasilkan output file.
Variasi Pendekatan Translasi
Pendekatan translasi program komputer dalam bentuk source-code ke executable-code :
1. Full-interpretation. Translasi dari source-code langsung ke executable-code dengan
menggunakan sat tahap saja.
2. Mixed. Translasi dari source-code ke intermediate-code bersifat compile (dihasilkan
output file). Translasi dari intermediate-code ke executable-code bersifat interpret
(tidak dihasilkan output file).
3. Full-compilation. Translasi dari source-code ke intermediate-code bersifat compile
(output file ada). Translasi dari intermediate-code ke executable-code bersifat compile
juga (output file ada).Kata 'compile' dipakai sebagai istilah translasi yang
menghasilkan output file . Untuk selanjutnya, kata compile bermakna 'translasi dari
source-code ke intermediate-code (yang menghasilkan output file)'.
2. Karakteristik Bahasa Pemrograman
a. Aspek Psikologi
Psikologi perilaku dan kognitif dikonsentransikan dengan pemahaman perilaku
manusia, persepsi, proses kognitif dan keahlian mengontrol motorik, dan mengajukan
model proses tersebut yang dapat memberikan pengetahuan yang bermanfaat ke dalam
metode pencocokan mesin terhadap pengguna manusia.
Pengalaman psikologi menyediakan teknik evaluasi formal untuk mengukur
kinerja objektif dan opini subjektif dari sistem manusia-komputer.
b. Semantik Model
Semantik adalah aturan-aturan untuk menyatakan suatu arti. Sebuah model data
semantik dapat digunakan untuk melayani berbagai tujuan, seperti:
1. perencanaan sumber daya data
2. pembangunan database dapat dibagikan
3. evaluasi dari software vendor
4. integrasi database yang sudah ada
Tujuan keseluruhan dari model data semantik adalah untuk menangkap lebih
makna data dengan mengintegrasikan konsep-konsep relasional dengan lebih kuat
abstraksi konsep-konsep yang dikenal dari Artificial Intelligence lapangan. Idenya
adalah untuk memberikan primitif pemodelan tingkat tinggi sebagai bagian integral
dari model data dalam rangka memfasilitasi representasi situasi dunia nyata
c. Aspek Engineer
Kelompok orang yang bekerja setelah kebutuhan perangkat lunak dibuat
(bekerja sama dengan system engineer saat mendefinisikan kebutuhan perangkat
lunak dam membuat deskripsi perancangannya).
d. Memlilih Bahasa pemrograman
Karakteristik Bahasa Pemrograman secara individu dipertimbangkan
ketika memilih sebuah bahasa target yang akan digunakan pada Pengembangan
Perangkat Lunak yang efisien, reliable dan pada Pemeliharaan perangkat lunak.
Seorang Software Engineer dapat memperlihatkan fitur-fitur bahasa
pemrograman yang mendukung pada pengembangan Perangkat Lunak berasal dari 2
aspek yang berbeda (Rujukan Bell, Morrey & Pugh, 1987) yaitu:
1. Programming-in-the Small, Menguji atau mencoba fitur-fitur yang mendukung
dengan Pengkodean program modul-modul tunggal dan program-program kecil
oleh kepentingan Programmer secara individu
2. Programming-in-the Large,Pemrograman ini merujuk pada pengembangan
sebuah system yang keseluruhannya dipengeruhi oleh koordinasi atas sekelompok
orang (Sofware Engineer), dimana setiap engineer membuat respon komponen-
komponen pada system dengan bagian yang berbeda-beda.
Berikut beberapa bahasa pemrograman yang banyak digunakan saat ini
a. Bahasa C
1. Sejarah
Bahasa C merupakan perkembangan dari bahasa BCPL yang dikembangkan oleh
Martin Richards pada tahun 1967. Selanjutnya bahasa ini memberikan ide kepada Ken
Thompson yang kemudian mengembangkan bahasa yang disebut bahasa B pada tahun
1970. Perkembangan selanjutnya dari bahasa B adalah bahasa C yang diciptakan oleh
Dennis Ricthie & W. Kerninghan tahun 1972 di Bell Telephone Laboratories Inc.
(Sekarang adalah AT & T Bell Laboratories).
2. Aplikasi bahasa C
Bahasa C pertama kali digunakan di Computer Digital Equipment
Corporation PDP-11 yang menggunakan system operasi UNIX.
Bahasa C juga digunakan untuk menyusun operasi Linux.
Banyak bahasa pemrogaman popular seperti PHP dan Java menggunakan
sintaks dasar mirip bahasa C.
3. Kelebihan dan Kekurangan Bahasa C
Kelebihan Bahasa C :
Bahasa C tersedia hampir di semua jenis computer
Kode bahasa C sifatnya adalah portable dan fleksible untuk semua jenis
computer.
Bahasa C hanya menyediakan sedikit kata-kata kunci, hanya terdapat 32 kata
kunci.
Proses executable program bahasa C lebih cepat.
Dukungan pustaka yang banyak.
C adalah bahasa yang terstruktur.
Bahasa C termasuk bahasa tingkat menengah.
Kekurangan Bahasa C :
Banyaknya operator serta fleksibilitas penulisan program kadang-kadang
membingungkan pemakai.
Bagi pemula pada umumnya akan kesulitan menggunakan pointer.
b. Bahasa Java
1. Sejarah
Java adalah nama untuk sekumpulan teknologi untuk membuat dan
menjalankan perangkat luinak pada komputer standalone ataupun pada
lingkungan jaringan. Orang orang yang berkecimpung dalam dunia
pemrograman lebih suka menyebut Java sebagai sebuah teknologi dibanding
hanya sebuah bahasa pemrograman, karena Java lebih lengkap dibanding
sebuah bahasa pe mrograman konvensional.
2. Aplikasi Bahasa Java
Pemrograman jaringan
Pembuatan aplikasi berbasis windows
Program untuk membuat web
3. Kelebihan dan Kekurangan
Kelebihan Bahasa Java :
Sederhana dan ampuh, java menyediakan sarana untuk membuat program
(applet) yang berjalan pada web browser. Programmer dapat
menggunakan applet kecil yang aman, dinamik, lintas platform, aktif dan
siap dijalankan di jaringan.
Aman, java dirancang dengan konsep keamanan internet.
Berorientasi objek, java tidak diturunkan bahasa pemrogaman manapun.
Java memiliki keseimbangan yang menyediakan mekanisme peng-class-
an sederhana dengan model antarmuka dinamik yang intuitif hanya jika
diperlukan.
Kokoh, java membatasi programmer dengan memberi kunci supaya
progamer dapat menemukan kesalahan lebih cepat saat mengembangkan
program.
Interaktif, java dirancang untuk menciptakan program jaringan yang
interaktif.
Netral terhadap berbagai arsitektur, java mampu berjalan dalam platform
apapun seperti PC, UNIX, Macintosh, dll.
Terinterpretasi dan berkinerja tinggi, java melengkapi keajaiban lintas
platform yang luar biasa dengan kompilasi ke dalam representasi langsung
yang disebut java code byte yang dapat diterjemahkan oleh system apapun
yang memiliki java interpreter dan java virtual machine.
Mudah dipelajari karena bersifat sederhana.
Mendukung koneksi ke database.
Kekurangan bahasa Java :
Java memiliki kecepatan yang kurang dari bahasa C ++.
Implementasi J2ME tidak global. Misalnya, J2ME untuk Motorola dengan
J2ME untuk Sony Ericson tidak sama. Berbeda lagi J2ME untuk Nokia.
Setiap produk selalu mempunyai modul tersendiri yang dinilai aneh
penerapannya dan harus di-compile dengan modul yang berbeda-beda.
Java memakan banyak memori computer.
Java merupakan bahasa yang kompleks dan susah dipelajari.
Program yang dibuat oleh bahasa ini lebih lambat disbanding program
yang dibuat dengan bahasa lain seperti C atau C++.
c. Bahasa Pascal
1. Sejarah
Pascal dibuat pertama kali oleh Prof. Niklaus Wirth, seorang anggota
International Federation of Information Processing (IFIP) pada tahun 1971.
pascal berasal dari nama matematikawan yaitu Blaise Pascal. Pascal digunakan
untuk mengenalkan pemrograman terstruktur.
2. Aplikasi Bahasa Pascal
Pascal dipakai sebagai landasan pembuatan kode perangkat lunak Delphi
(berbasis windows).
Pascal dipakai sebagai landasan pembuatan kode perangkat lunak Kylix
(berbasis Linux).
3. Kelebihan dan kekurangan
Kelebihan bahasa Pascal :
Tipe data standar, tipe-tipe data standar yang telah tersedia bahasa
pemrogaman. Pascal memiliki tipe data standar Boolean, integer, char, real,
string.
User defined data types, programmer dapat membuat tipe data lain yang
diturunkan dari tipe data standar.
Strongly-typed, programmer harus menentukan tipe data dari suatu variable
dan variable tersebut tidak dapat dipergunakan untuk menyimpan tipe data
selain format yang ditentukan.
Terstruktur, memiliki sintaks yang memungkinkan penulisan program
dipecah menjadi fungsi-fungsi kecil (procedur dan function) yang dapat
dipergunakan berulang-ulang.
Sederhana dan ekspresif, memiliki struktur yang sederhana dan sangat
mendekati bahasa manusia (bahasa inggris) sehingga mudah dipelajari dan
dipahami.
Kekurangan bahasa Pascal :
Versi awal Pascal kurang cocok untuk aplikasi bisnis karena dukungan
basisdata yang terbatas.
Sintaks Pascal terlalu bertele-tele.
Tidak mendukung pemrograman berorientasi objek.
Pascal tidak fleksibel dan banyak kekurangan yang dibutuhkan untuk
membuat aplikasi yang besar.
d. Bahasa PHP
1. Sejarah
PHP adalah bahasa pemrogaman web atau scripting language yang
didesain untuk web. PHP dibuat pertama kali oleh Rasmus Lerdford untuk
menghitung jumlah pengunjung pada homepagenya pada akhir tahun 1994. PHP
terus berkembang dari PHP 1 yang ditulis ulang Rasmus dalam bahasa C pada
tahun 1995 sampai PHP 4 yang diluncurkan tanggal 22 Mei 2000.
2. Aplikasi Bahasa PHP
PHP digunakan sebagai landasan operasi pada pemrogaman jaringan berbasis
web.
PHP digunakan juga untuk pemrogaman database.
PHP digunakan untuk membuat aplikasi web.
3. Kelebihan dan Kekurangan
Kelebihan :
PHP menjadi popular karena kesederhanaannya dan kemampuannya dalam
menghasilkan berbagai aplikasi web seperti counter, system artikel/ CMS, e-
commerce, bulletin board, dll.
PHP adalah salah satu bahasa server-side yang didesain khusus untuk
aplikasi web.
PHP termasuk dalam Open Source Product dan telah mencapai versi 4.
Aplikasi PHP cukup cepat dibandingkan dengan aplikasi CGI dengan Perl
atau Phyton bahkan lebih cepat disbanding dengan ASP maupun Java dalam
berbagai aplikasi web.
Tersedia baik di Windows maupun Linux, walau saat ini paling efektif di
web server Apache dan OS Linux.
Sintaks mirip C dan mudah dipelajari.
Komunitas yang ramai dan saling membantu, seperti di diskusiweb.com,
phpbuilder.com, phpindo.com, dll.
Berbagai script atau aplikasi yang gratis telah tersedia.
Kekurangan :
Tidak detail untuk pengembangan skala besar.
Tidak memiliki system pemrogaman berorientasi objek yang sesungguhnya.
Tidak bisa memisahkan antara tampilan dengan logic dengan baik.
PHP memiliki kelemahan security tertentu apabila programmer tidak jeli
dalam melakukan pemrogaman dan kurang memperhatikan isu konfigurasi
PHP.
Kode PHP dapat dibaca semua orang, dan kompilasi hanya dapat dilakukan
dengan tool yang mahal dari Zend.
e. Visual Basic
1. Sejarah
BASIC adalah beginner all-purpose symbolic instruction code
dikembangkan tahun 1965 di Darmouth College oleh John Kemeny dan Thomas
Kurtz. Awalnya ditujukan untuk pengajaran dasar pemrogaman computer.
2. Aplikasi bahasa Basic
Landasan pemrograman Visual Basic dan visual basic for application.
Bahasa pemrograman pada banyak produk Microsoft seperti untuk
administrasi dan otomatisasi batch skrip, windowskrip house.
Untuk pembuatan program kid Basic, FreeBasic, dan Gambas.
3. Kelebihan dan Kekurangan
Kelebihan :
Bahasa yang sederhana. Banyak hal yang mungkin sulit dilakukan jika kita
menggunakan bahasa pemrograman lainnya, akan dapat dilakukan dengan
mudah dengan menggunakan Visual basic.
Karena Visual basic sangat populer, maka sangat banyak sumber-sumber
yang dapat kita gunakan untuk belajar dan mengembangkan kemampuan
kau baik berupa buku, web site dll
Kita bisa memperoleh banyak tools baik gratis maupun tidak di Internet
yang akan sangat membantu menghemat waktu kita dalam pemrograman.
Kekurangan:
Visual Basic adalah bahasa pemrograman yang powerful, tetapi sebenarnya
tidak terlalu bagus untuk membuat game-game yang benar-benar
memuaskan.
Lebih lambat dibandingkan bahasa pemrograman lain.
f. Bahasa C++
1. Sejarah
Bahasa C++ diciptakan oleh Bjarne Stroustrup tahun 1983 di Lab Bell.
C++ merupakan bahasa pemrograman berorientasi objek menggunakan kaidah
bahasa C
2. Aplikasi bahasa C++
Sebagai bahasa pemrograman di Windows, UNIX, Linux.
Visual C++ dapat dibuat aplikasi apa saja seperti database.
Bahasa untuk pembuatan system operasi, game, system kendali,pembuatan
aplikasi
Untuk membuat bahasa baru atau membuat compiler bahasa baru
Untuk menulis komponen dan file-file pustaka bahasa lain
3. Kelebihan dan Kekurangan
Kelebihan :
Merupakan induk dari bahasa pemrograman perl, php, phyton, visual basic,
gambas, java, C#.
Compiler bahasa C++ terdapat di semua platform.
Untuk pengembangan visual dijejali dengan platform yang sangat banyak
seperti OWL, MFC, Cocoa, QT, GTK, dll.
Merupakan pemrograman berorientasi objek.
Kekurangan :
Bahasa ini cukup sulit untuk dipel;ajari dan dipahami.
Banyaknya operator serta fleksibilitas penulisan program kadang-kadang
membingungkan pemakai.
Bagi pemula pada umumnya akan kesulitan menggunakan pointer.
e. Bahasa pemrograman dan Software Engineering
Komponen perangkat dibangun dengan bahasa pemrograman yang memiliki
kosakata yang terbatas, sebuah tata bahasa yang dibatasi secara eksplisit serta aturan –
aturan syntax dan semantik yang dibentuk secara baik. Pada bahasa paling rendah,
bahasa – bahasa itu mencerminkan serangkaian instruksi perangkat keras. Pada
tingkat sedang, bahasa pemrograman seperti Ada 95, C, atau SmalTalk, dipakai untuk
membuat deskripsi prosedural dari program. Pada bahasa paling tinggi, bahasa –
bahasa tersebut menggunakan ikon grafik atau simbol lain untuk mewakili kebutuhan
akan sebuah pemecahan. Instruksi – instruksi yang dapat dieksekusi secara otomatis.
3. BAHASA PEMROGRAMAN DASAR
a. Macam-macam Tipe Data dan Pengelompokan Data
A. TIPE DATA SEDERHANA (SIMPLE - DATA TYPE)
- Adalah tipe data yang sudah ada dan dijadikan standar dalam bahasa
pemrograman tertentu.
- Isi dari tipe data sederhana ini adalah data-data tunggal.
STANDARD DATA TYPE
INTEGER
Contoh bilangan integer adalah: 34 6458 -90 0 1112 Penggolongan tipe data integer
tersebut dimaksudkan untuk membatasi alokasi memori yang dibutuhkan misalkan
untuk suatu perhitungan dari suatu variabel bilangan diperkirakan nilai aksimumnya
32767 kita cukup mendeklarasikan variabel bilangan sebagai integer (2 byte),
daripada sebagai longint(4 yte). Di dalam kompilernya, Pascal menyediakan
konstanta untuk bilangan Integer yaitu: MaxInt and MaxLongInt, pemrogram bisa
menggunakannya di dalam programnya tanpa harus terlebih dahulu
mendefinisikannya.
Contoh program integer
Program display_maxint;
uses wincrt;
begin writeln (maxint)
end.
Hasilnya: 32.767
REAL
Bilangan real atau nyata merupakan jenis bilangan pecahan, dapat dituliskan secara
biasa atau model scientific . contoh bilangan real: 34.265 -3.55 0.0 35.997E+11,
dimana E merupakan simbol perpangkatan 10. Jadi 452.13 mempunyai nilai sama
dengan 4.5213e2. Penggolongan tipe data bilangan real dapat dilihat pada tabel 2.
Bilangan Real
CHAR
Tipe data ini menyimpan karakter yang diketikkan dari keyboard, memiliki 266
macam yang terdapat dalam tabel ASCII (American Standard Code for Information
Interchange). Contoh: 'a' 'B' '+', dsb. Yang perlu diingat bahwa dalam menuliskannya
harus dengan memakai tanda kutip tunggal. Jenis data ini memerlukan alokasi memori
sebesar 1(satu) byte untuk masing-masing data.
STRING
Obyek yang terdiri atas deretan karakter
Tidak perlu ditentukan jumlah karakternya
Inisialisasi :
– Langsung tanpa kata kunci new
– Langsung dengan kata kunci new
BOOLEAN
merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE (benar) atau
FALSE (salah). Turbo Pascal for Windows memiliki tiga macam jenis ini yaitu:
Boolean, WordBool, dan LongBool. Tipe boolean memakai memori paling kecil,
sedangkan WordBool dan LongBool dipakai untuk menulis program yang sesuai
dengan lingkungan Windows.
Contoh Program Boolean
Contoh: Program display_bool;
uses wincrt;
begin writeln(ord(true));
writeln(ord(false));
end.
Hasilnya: 1 0 3.2.
B. TIPE DATA TERSTRUKTUR (STRUCTURED - DATA TYPE)
Tipe ini terdiri atas : array, record, set, dan file. String adalah tipe data jenis
array, tetapi karena string memiliki kekhasan tersendiri sebagai array dari karakter
maka penulis perlu memberikan penjelasan tersendiri. Sedangkan untuk array, record,
dan file perlu dijelaskan dalam bab yang lain karena agak banyak halhal yang perlu
dibahas.
1. ARRAY (LARIK)
- Larik adalah tipe data yang berisi beberapa data yang ditampung dalam satu
variabel yang memiliki tipe data yang sama.
- Masing masing data yang tertampung dalam sebuah larik akan ditandai
sebagai elemen pertama sampai ke - n.
- larik dapat dibuat beberapa dimensi, misalnya untuk menggambarkan matrix
kita perlu menggunakan larik 2 dimensi.
2. RECORD (REKAMAN)
- Tipe data rekaman di gunakan untuk menampung data yang terdiri dari
beberapa tipe yang berbeda.
- Record dapat diakses (diisi) dan dibaca per elemen record dengan menyebut
nama elemennya.
3. FILE
4. SET (HIMPUNAN)
- Tipe data himpunan merupakan sebuah tipe data yang didalamnya memuat
sejumlah elemen (anggota) dimana anggotanya memiliki tipe data dasar yang
sama.
C. TIPE DATA PENUNJUK (POINTER - DATA TYPE)
- Pointer secara harfiah dapat diartikan sebagai penunjuk.
- Tipe data pointer ini merupakan tipe data yang berisikan alamat memori
dimana data disimpan
b. SUBPROGRAM
Subprogram merupakan program bagian dengan blok terpisah dan didalam program
utama, dan akan dipanggil pada program utama jika subprogram itu diperlukan untuk
dijalankan.
Macam Subrogram :
Pada Pascal dikenal 2 Subprogram yaitu
- Procedure
Procedure digunakan untuk subprogram yang nilai outputnya boleh ada ataupun tidak
ada tetapi untuk Function nilai inputnya dan outputnya ada dan dapat dipanggil
langsung seperti sebuah variabel sehingga untuk function harus langsung
dideklarasikan tipe datanya.
- Function
Suatu program yang terpisah dalam blok sendiri yang berfungsi sebagai subprogram
(program bagian)
Banyak digunakan karena
• Merupakan konsep program modular yaitu memecah-mecah program yang rumit
menjadi bagian yang lebih sederhana
• Untuk hal-hal yang sering dilakukan berulang-ulang, cukup dituliskan sekali saja
dalam procedure dan dapat dipanggil
atau digunakan sewaktu-waktu bila diperlukan.
- Parameter
• Parameter bersifat Lokal artinya bahwa nilai yang terdapat didalam suatu modul
program hanya dapat digunakan pada modul yang bersangkutan sehingga tidak dapat
digunakan pada modul lain.
• Parameter bersifat Global artinya bahwa nilai dapat digunakan pada semua modul
maka nilai tersebut harus dideklarasikan di atas modul yang akan menggunakannya.
Pemanggilan Parameter
Pemanggilan parameter pada prosedur terdiri dari
2 yaitu :
• Parameter Secara Nilai ( By Value )
Bersifat satu arah, jika terjadi perubahan pada subprogram, maka tidak akan
mempengaruhi program utama.
• Parameter Secara Acuan ( By Reference )
Bersifat dua arah, jika terjadi perubahan pada subprogram, maka program utamanya
akan ikut berubah.
c. CONTROL STRUKTUR
• Struktur kontrol merupakan pengatur aliran program
• Rangkaian perintah yang harus ditulis untuk memenuhi beberapa keadaan, yaitu :
– Mengulang sebagian rutin karena tidak terpenuhinya suatu kondisi
– Melanjutkan sebuah pernyataan bila kondisi terpenuhi
– Memilih sebuah pilihan dari beberapa alternatif bila sebuah kondisi
terpenuhi
– Struktur Pengambilan Keputusan :
• If … Then
• If … Then … Else
• Select Case
Struktur Pengambilan Keputusan
- If … Then
Struktur Pengambilan Keputusan
- If … Then … Else
If kondisi Then perintah(untuk perintah satu baris)
If kondisi Then
Perintah 1Perintah 2
…End If
(untuk perintah dengan banyak baris)
Struktur Pengambilan Keputusan
- Select Case
Looping
- FOR … NEXT
If kondisi 1 Then[perintah blok 1]
ElseIf kondisi 2 Then[perintah blok 2]
Else[perintah blok – n]
End if
Select Case kondisiCase ekspresi 1[perintah blok 1]Case ekspresi 2[perintah blok 2]Case else[perintah blok – n]
End Select
Adalah untuk mengulangi suatu perintah (instruksi) dalam jumlah yang telah
ditentukan, serta besar kenaikannya.
FOR counter = nilai-awal TO nilai-akhir [STEP kenaikannya]
…. Instruksi…
[Exit FOR]
…. Instruksi …
NEXT
- WHILE LOOP
Pernyataan while loop adalah pernyataan atau blok pernyataan yang diulang-
ulang sampai mencapai kondisi yang cocok.
Bentuk pernyataan while,
WHILE( kondisi ){
Instruksi1;
Instruksi2;
. . .
}
Pernyataan di dalam while loop akan dieksekusi berulang-ulang selama
kondisi
boolean_expression bernilai benar (true).
- DO WHILE … LOOP
Adalah untuk mengulangi suatu perintah (instruksi) selama While (suatu
kondisi) memenuhi syarat (bernilai TRUE) dan akan berhenti apabila while
tidak lagi memenuhi syarat (bernilai FALSE).
DO WHILE (kondisi) Dapat juga ditulis : DO
…. Instruksi… ….Instruksi….
[Exit Do] [Exit Do]
…. Instruksi … … Instruksi …
LOOP LOOP WHILE (kondisi)
4. CODING STYLE
a. Pengertian Dokumentasi
Dokumentasi adalah materi yang tertulis atau sesuatu yang menyediakan
informasi tentang suatu subyek. Dokumentasi dapat berisi tentang deskripsi-deskripsi,
penjelasan-penjelasan, bagan alir, daftar-daftar, cetakan hasil komputer, contoh-contoh
obyek dari sistem informasi.
Setiap program yang dibuat, seharusnya memiliki dokumentasi karena program
yang telah selesai dibuat belum tentu dapat langsung sempurna, sesuai dengan yang
diperlukan oleh penggunanya. Perlu ada :
pengembangan untuk dapat memenuhi keperluan penggunanya.
Terkadang program harus ada perbaikan, jika ternyata pada saat digunakan ditemukan
kesalahan.
Dokumentasi juga berguna untuk menginformasikan tentang proses yang ada
dalam program, sehingga jika ada pertanyaan tentang program yang dibuat memiliki
kemampuan apa saja, kita dapat mengetahui atau menjelaskan berdasarkan dokumentasi.
Dokumentasi program sangat diperlukan oleh pemilik aplikasi, jika ingin
mengembangkan aplikasinya bukan oleh pengembang yang sama. Pengembang lain yang
diserahi tugas untuk mengembangkan aplikasi dapat dengan cepat mempelajari dari
dokumentasi tersebut.
Macam dokumentasi program
Macam dokumentasi program:
1. dokumentasi spesifikasi program
Dokumentasi spesifikasi program seharusnya sudah ada sebelum program dibuat.
Dibuat oleh perancang aplikasi (sering kali dibuat oleh analis sistem). Berdasarkan
dokumentasi inilah program dibuat. Dokumentasi spesifikasi program ini dibuat untuk
memberikan panduan tentang logika program yang harus dibuat. Harus ada proses apa
saja, bagaimana flow prosesnya. Pemrogram dapat melakukan coding dengan lebih
mudah. Ketiadaan dokumentasi bisa menyebabkan komunikasi antara perancang
aplikasi dan pemrogram menjadi tidak baik, karena bisa jadi akan ada perselisihan
akibat ketidakjelasan akan apa yang dikerjakannya.
Dokumentasi spesifikasi program harus ada, walaupun secara global.
Setidaknya ada informasi tentang poin-poin yang harus ada dalam program, kemudian
bagaimana urutan prosesnya. Dokumentasi spesifikasi program menjadi pegangan
bersama antara perancang, pemrogram, dan penguji. Untuk memastikan bahwa
program yang dibuat sudah sesuai dokumentasi
2. Dokumentasi teknis program / kode
Dokumentasi kode program, merupakan dokumentasi yang harus ada dalam
program, untuk memberikan penjelasan kepada setiap baris atau pun blok perintah
dalam program.
Dokumentasi program diperlukan bagi programmer itu sendiri, untuk dapat
menelusuri logika program. Karena biasanya, pemrogram akan lupa akan alur
programnya sendiri. Apalagi jika sudah lama sudah ditinggalkan, karena mengerjakan
pekerjaan lain. Pada saat harus memperbaiki atau menyempurnakan, programmer
sering harus mempelajari terlebih dahulu alur programnya sendiri, baru kemudian
baru bisa melakukan modifikasi sesuai dengan yang diinginkan.
Dari sisi lain, dokumentasi juga diperlukan untuk memudahkan untuk
memvalidasi apakah program yang telah dikembangkan, sudah sesuai dengan yang
dispesifikasikan atau belum. Proses validasi ini akan dilakukan oleh tim penguji
(validator).
Dokumentasi kode program merupakan pelengkap dokumentasi spesifikasi,
karena menjelaskan bagaimana dari spesifikasi diterjemahkan ke dalam program.
Jika dokumentasi spesifikasi tidak ada maka dokumentasi kode program akan
menjadi dokumentasi yang sangat berharga, karena bukan menjadi dokumen
pelengkap tetapi menjadi dokumentasi utama.
Dokumentasi dalam kode program umumnya dilakukan dengan
menuliskan baris-baris komentar dalam kode sumber programnya. Isi dari
dokumentasi kode program, setidaknya terdiri atas:
langkah-langkah dalam program untuk menyelesaikan masalah
komentar dituliskan pada setiap awal modul atau fungsi,
jika mungkin komentar ditulis pada setiap blok program, jika tidak maka ditulis
pada blok-blok yang penting saja. Lebih baik lagi jika setiap baris ada
komentarnya.
Informasi tentang siapa yang membuat, kapan pertamakali dibuat, kapan
terakhir diperbaiki, jika mungkin informasi perubahan dari waktu ke waktu
Cara menuliskan komentar harus mengikut kepada cara penulisan yang baku.
Jika menggunakan bahasa pemrograman Java, maka dapat menggunakan format yang
telah ditetapkan oleh javadoc.
3. Dokumentasi penggunaan program
Dokumentasi Penggunaan Program
Dokumentasi penggunaan program sangat diperlukan untuk dapat
memberitahu kepada pengguna bagaimana cara menggunakan program yang telah
dibuat. Jika tidak dibuatkan cara menggunakan programnya, dikhawatirkan program
menjadi tidak dapat dipakai, apalagi jika programnya kurang interaktif.
Banyak program yang dibuat, cara pemakaiannya sesuai dengan alur logika
pemrogramnya. Bukan berdasarkan alur logika pengguna program. Karenanya harus
dibuatkan dokumentasi cara menggunakan program, agar pengguna tahu bagaimana
cara menggunakan dengan benar.
Tools
Jika kita hanya memiliki dokumentasi kode program, maka kita dapat
mengambil dokumentasi dari kode program tersebut untuk menjadi seolah-olah
dokumentasi spesifikasi program. Kita harus menggunakan tools untuk melakukan
pengambilan dokumentasi kode program dengan menggunakan tools.
Agar dokumentasi dalam kode program dapat diambil oleh tools yang akan
digunakan, maka cara penulisan dokumentasi harus mengikuti standar tertentu. Jika
kita menggunakan Java, maka kita dapat menggunakan javadoc untuk mengambil
dokumentasinya. Untuk bahasa pemrograman lain ada juga toolsnya. Masing-masing
memiliki tools yang membantu untuk membuatkan dokumentasi dari dokumentasi
kode program.
Beberapa tools yang umum digunakan adalah:
javadoc
delphidoc
doxygen
b. Deklarasi
Dalam setiap penulisan bahasa pemograman deklarasi sangat digunakan
apabila dalam penulisan program dibutuhkan indentifier atau tanda pengenal.
Indentifier pada umumnya di buat oleh progremmmer yang digunakan untuk
mewakili nilai dari suatu object.
Indentifier yang dikenal dalam Delphi adalah label, konstanta, tipe, fungsi,
procedure maupun variabel.
a. Deklarasi Variabel
Variabel adalah suatu nama yang digunakan untuk menyimpan suatu nilai
dari tipe data tertentu. Deklarasi variabel mengikut aturan sebagai berikut :
tipeData namaVariabel. Contoh berikut adalah deklarasi variabel dengan
menggunakan tipe data int :
int bilangan1;
int bilangan2;
Variabel bisa diinisialisasi (diberi nilai awal). Misalnya pada contoh di
atas kita melakukan inisialisasi sebagai berikut :
int bilangan1 = 0;
b. Deklarasi Tipe
Deklarasi ini digunakan untuk menyebutkan tipe setiap data yang akan
digunakan pada program Java ataupun bahasa lainnya Tipe data menentukan
jangkauan nilai yang mungkin dari data yang digunakan.
Tipe data dalam pemograman java dibagi menjadi empat kelompok yaitu:
- Tipe data integer atau bilangan bulat: byte, short, int, long.
- Tipe data float atau bilangan nyata: float, double
- Tipe data char atau karakter: char.
- Tipe data Boolean: Boolean
c. Deklarasi konstanta
Konstanta digunakan untuk menyimpan data yang tidak akan kita ubah.
Contohnya konstanta adalah phi (3,14). Dalam bahasa Java, konstanta dituliskan
dengan keyword (final) didepan tipe variabel. Sekali konstanta diberi nilai, maka
nilai tersebut tidak dapat diubah.
[modifier] final tipe identifier1, identifier2;
[modofier] final tipe identifier1 = nilai, identifier2 = nilai;
Contohnya:
final double PI = 3.14;
PI = 2 // error, kode tidak dapat dikompilasi karena PI sudah konstan
bernilai 3.14
tidak dapat diubah final int Y;
d. Deklarasi prosedur
Prosedur adalah sebuah blok program tersendiri yang merupakan bagian
dari program lain yang lebih besar. prosedur dapat dipanggil oleh program
utamanya ataupun oleh prosedur lain yang juga merupakan bagian dari program
utamanya (yang masih dalam satu kode program). sebuah program yang
mememiliki prosedur biasanya terdiri dari satu atau lebih prosedur dan satu
program utama.
Keuntungan dari pembuatan prosedur
1. Memecah program menjadi lebih sederhana. misalnya diperlukan proses
pencarian berkali kali jika hanya terdiri dari satu program utama tanpa prosedur
maka kode program pencarian akan beberapa kali ditulis ulang dan hasilnya
dapat memperbesar ukuran file
2. Blok program yang digunakan jelas jika akan digunakan pada program lain
cukup dengan mengkopi yang membutuhkan dan program lain tersebut tinggal
memanggil prosedur tersebut jika didalam java prosedur hampir mirip dengan
yang dinamakan Metod.
prosedur hitungJumlah(input : integer hasil, integer operan1, integer operan2)
{
hasil = operan1+operan2;
}
penjelasan
hasil, operan1, operan2 adalah parameter dalam prosedur hitungJumlah dalam hal
ini jumlah parameter tidak terbatas namun prosedur yang baik biasanya memilki
parameter masukan paling banyak 7 buah parameter. masukan dari sebuah prosedur
tidak harus berupa variabel, dapat lansung berupa nilai karena jika yang dijadikan
masukan adalah variabel, tetap saja yang diproses dalam prosedur adalah nilai dari
variabel itu, oleh karena itu dalam pemanggilan sebuah prosedur dapat dilakukan
dengan cara sebagai berikut ;
hitungJumlah (1, 2, 3,4,.....n);
e. Deklarasi Fungsi
Fungsi adalah sebuah blok program yang tersendiri yang merupakan
bagian dari program lain yang lebih besar sama halnya dengan prosedur hanya
saja fungsi memiliki hasil keluaran sedangkan prosedur hanya berisi proses.
Untuk menggunakan fungsi buatan sendiri, langkah pertama adalah
mendeklarasikannya
Fungsi ada dua jenis :
a. Mengembalikan nilai
Fungsi ini memiliki return value
Ciri-cirinya :
-Tidak ada keyword void
-Ada keyword return
Contoh deklarasi dari fungis/method
Int nilaiTerbesar(int a, int b, int c)
{
// proses
Int hasil;
Return hasil;
}
Cara memanggil fungsi/ metode adalah
Nama_variabel = nama_fungsi (variabael_masukan);
Maximum = nilaiTerbesar (a, b, c);
b. Tidak Mengembalikan Nilai
Pada umumnya fungsi tanpa nilai balik (retrun value ) ini digunakan
untuk melaukukan proses-proses yang tidak menghasilkan nilai. Seperti
melakukan pengulangan, proses pengesetan nilai taupun yang lainya.
Fungsi ini tidak memiliki return value
Ciri-cirinya :
– Terdapat keyword void
– Tidak ada keyword return
• Contoh :
Void nilaiTerendah(void){
Int j;
For (j=0; j<10; j++){
Printf (“pelajaran c++”); }
c. STATEMENT CONTRUCTION
• Struktur kontrol merupakan pengatur aliran program
• Rangkaian perintah yang harus ditulis untuk memenuhi beberapa keadaan, yaitu :
– Mengulang sebagian rutin karena tidak terpenuhinya suatu kondisi
– Melanjutkan sebuah pernyataan bila kondisi terpenuhi
– Memilih sebuah pilihan dari beberapa alternatif bila sebuah kondisi
terpenuhi
– Struktur Pengambilan Keputusan :
• If … Then
• If … Then … Else
• Select Case
Struktur Pengambilan Keputusan
- If … Then
Struktur Pengambilan Keputusan
- If … Then … Else
Struktur Pengambilan Keputusan
- Select Case
If kondisi Then perintah(untuk perintah satu baris)
If kondisi Then
Perintah 1Perintah 2
…End If
(untuk perintah dengan banyak baris)
If kondisi 1 Then[perintah blok 1]
ElseIf kondisi 2 Then[perintah blok 2]
Else[perintah blok – n]
End if
Looping
- FOR … NEXT
Adalah untuk mengulangi suatu perintah (instruksi) dalam jumlah yang telah
ditentukan, serta besar kenaikannya.
FOR counter = nilai-awal TO nilai-akhir [STEP kenaikannya]
…. Instruksi…
[Exit FOR]
…. Instruksi …
NEXT
- WHILE LOOP
Pernyataan while loop adalah pernyataan atau blok pernyataan yang diulang-
ulang sampai mencapai kondisi yang cocok.
Bentuk pernyataan while,
WHILE( kondisi ){
Instruksi1;
Instruksi2;
Select Case kondisiCase ekspresi 1[perintah blok 1]Case ekspresi 2[perintah blok 2]Case else[perintah blok – n]
End Select
. . .
}
Pernyataan di dalam while loop akan dieksekusi berulang-ulang selama
kondisi
boolean_expression bernilai benar (true).
- DO WHILE … LOOP
Adalah untuk mengulangi suatu perintah (instruksi) selama While (suatu
kondisi) memenuhi syarat (bernilai TRUE) dan akan berhenti apabila while
tidak lagi memenuhi syarat (bernilai FALSE).
DO WHILE (kondisi) Dapat juga ditulis : DO
…. Instruksi… ….Instruksi….
[Exit Do] [Exit Do]
…. Instruksi … … Instruksi …
LOOP LOOP WHILE (kondisi)
d. Input dan Output
Program komputer bisa berguna jika ia bisa berinteraksi dengan dunia lain.
Interaksi di sini maksudnya input/outputatau I/O. Pada bab ini, kita akan melihat input
output pada file dan koneksi jaringan (network). Pada Java, input/output pada file dan
jaringan dilakukan berdasarkan aliran (stream), di mana semua objek dapat
melakukan perintah I/O yang sama. Standar output (System.out) dan standar input
(System.in) adalah contoh aliran.
Mencetak Keluaran dari Standard Output
Untuk mencetak keluaran, bisa menggunakan:
System.out.println("Hai!");
Membaca Masukan dari Standard Input
Ini adalah cara yang cukup mudah untuk digunakan. Pada bagian import, jangan lupa
definisikan:
import java.util.Scanner;
Penggunaan Scanner adalah sebagai berikut:
Scanner inputScanner = new Scanner(System.in);
String masukan = inputScanner.next();
System.out.println(masukan);
Untuk dapat menangkap input dari keyboard, maka kita harus menggunakan kelas
BufferedReader yang berada di java.io package.Sehingga di awal program kita harus
mencantumkan kelas tersebut pada kode program.
Contoh Pernyataan input pada Java.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class InputKeyboard
{
public static void main( String[] args ){
BufferedReader dataIn = new BufferedReader(new
InputStreamReader( System.in) );
String name = "";
System.out.print("Ketikkan nama anda:");
try{
name = dataIn.readLine();
}catch( IOException e ){
System.out.println("Error!");
}
System.out.println("Hai " + name +"!");
}
}
5. EFFICIENCY
Efisiensi merupakan tujuan yang harus dicapai dalam pengkodean.
Efisiensi yang harus dicapai meliputi :
Efisiensi Kode
Efisiensi Memori
Efisiensi Input / 0utput
A. EFISIENSI KODE
Efisiensi kode merupakan satu kesatuan dengan efisiensi algoritma yang
telah didefinisikan pada fase perancangan secara rinci.
Gaya dari pengkodean dapat mempengaruhi kecepatan pengerjaan dan
keperluan memori. Sejumlah petunjuk yang dapat digunakan adalah :
Menggunakan ekspresi arithmatik dan logika yang simpel.
Mengevaluasi perintah berulang apakah ada perintah yang berada diluar looping
(pengulangan).
Apabila memungkinkan menghindari pemakaian array multi dimensional.
Apabila memungkinkan menghindari pemakaian pointer.
Jangan mencampur tipe data kecuali diizinkan oleh
bahasa pemrograman.
B. EFISIENSI MEMORI
Efisiensi memori tidak dapat disamakan dengan pemakaian memori yang
sedikit, yang dimaksud dengan efisiensi memori disini adalah ke efisienan perintah
dalam program dan dalam menggunakan memori baik untuk pelaksanaan perintah
ataupun pada penyimpanan data.
C. EFISIENSI INPUT / OUTPUT
Terdapat 2 pertimbangan dalam efisiensi I/0 yaitu :
I/O yang berpengaruh secara langsung terhadap ,manusia. Di sini input yang
dimasukkan oleh pemakai cukup jelas dan mudah dimengerti begitu juga untuk
output
I/O yang berpengaruh secara langsung terhadap mesin, pada pertimbangan yang
ke dua tidak akan di bahas pada buku ini.
Petunjuk yang dapat digunakan untuk memperbaiki efisiensi I/0 adalah :
Jumlah pemakaian I/0 kalau memungkinkan dikurangi.
Seluruh I/0 kalau memungkinkan di simpan pada buffer.
Untuk pemakaian memori sekunder (disk) menggunakan
metode akses yang simpel dan mudah.
Dan lain-lain
6. STUDI KASUS
Class Diagram KRS Online
Login
//Kelas untuk membuat tampilan
import javax.swing.JOptionPane;
public class KRSAPP {
public static void main (String [] arg){
PemilihanMK PMK = new PemilihanMK();
PMK.milihMK();
LoginForm LF = new LoginForm();
LF.login();
String KRS = "KRS online";
JOptionPane.showMessageDialog(null, KRS);
}
}
public class LoginForm {
LoginFormManager LFM;
LoginForm()
{
LFM = new LoginFormManager();
}
public void login()
{
LFM.inputData();
}
}
public class LoginFormManager {
PenyimpananData PD;
LoginFormManager()
{
PD = new PenyimpananData();
}
public void inputData()
{
PD.membacaData();
}
}
//Kelas Penyimpanan Data
public class PenyimpananData {
Admin ADM;
PenyimpananData()
{
ADM = new Admin();
}
public void inputData()
{
ADM.konfirmasi();
}
//Kelas Membaca Data
public void membacaData()
{
masukPemilihanMK();
}
private static void masukPemilihanMK()
{
}
}
Pemilihan Mata Kuliah
//Tampilan
import javax.swing.JOptionPane;
public class KRSAPP {
public static void main (String [] arg){
PemilihanMK PMK = new PemilihanMK();
PMK.milihMK();
LoginForm LF = new LoginForm();
LF.login();
String KRS = "KRS online";
JOptionPane.showMessageDialog(null, KRS);
}
}
import java.util.Vector;
class PemilihanMK {
DaftarMK DMK;
PenyimpananData PD;
PemilihanMK()
{
DMK = new DaftarMK();
PD = new PenyimpananData();
}
public void milihMK()
{
Vector v = DMK.mintaDaftar ();
PD.inputData();
tampilkanMK();
}
private static void tampilkanMK()
{
}
}
public class DaftarMK {
public Vector mintaDaftar()
{
Vector v = new Vector();
return new Vector();
}
}
public class PenyimpananData {
Admin ADM;
PenyimpananData()
{
ADM = new Admin();
}
public void inputData()
{
ADM.konfirmasi();
}
public void membacaData()
{
masukPemilihanMK();
}
private static void masukPemilihanMK()
{
}
}
public class Admin {
Printer PTR;
Admin ()
{
PTR = new Printer();
}
public void konfirmasi ()
{
PTR.cetakData();
}
}
public class Printer {
public void cetakData()
{
keluarkanJadwal();
}
private void keluarkanJadwal()
{
}