12. Perangkat Lunak Komputer
12.1. Jenis-jenis Software
- System Software:
- Operating System (OS) : Windows, MacOS, Linux, BSD, Darwin
- Programming Languages : asembly, pascal, C, C++, .. perl, php, java
- System Utility : scandisk, fdisk, ..
- Application Software
- Custom-made Software / Custom Software / Tailor-made Software
- Commercial Software / Package Software :
- wordprocessor,
- desktop publishing,
- spareadsheet,
- database management system,
- graphics software, dsb
Situs directory (pengelompokan, klasifikasi) software:
|
12.2. Bahasa Pemrograman
Tahap penyusunan software:
|
Peserta diharapkan mengerti bagaimana komputer berpikir (secara terstruktur).
12.2.1. Logika Pemrograman
Program Control Structures:
- Sequential : urut. Setiap langkah dikerjakan satu per satu secara terurut dari langkah awal hingga langkah terakhir.
- Branch, selection, decision : pencabangan.
- Loop, iteration, repetition : pengulangan
Dokumentasi program :
- flowchart
- pseudocode, algoritma
|
Contoh Program Flowchart
Flowchart: program sederhana![]() | Flowchart program yang menggunakan branch![]() | Flowchart program yang menggunakan loop![]() |
Contoh pseudocode untuk program yang sama dengan flowchart di atas.
Masukkan nilai jmlBrg dan hrgSat | Masukkan nilai jmlBrg dan hrgSat IF jmlBrg > 100 THEN
ELSE
END IF Cetak nilai harga | Masukkan nilai jmlBrg dan hrgSat REPEAT WHILE jmlBrg < 10
END REPEAT |
12.2.2. Bahasa Pemrograman Procedure-oriented
Contoh program yang dibuat dengan bahasa pemrograman procedure-oriented (mis: QBASIC)
CLS INPUT "Masukkan jumlah barang yang dibeli:", jmlBrg INPUT "Masukkan harga satuan:", hrgSat harga = jmlBrg * hrgSat PRINT "Harga yang dibayar:", harga END CLS INPUT "Masukkan jumlah barang yang dibeli:", jmlBrg INPUT "Masukkan harga satuan:", hrgSat IF jmlBrg > 100 THEN
ELSE
END IF CLS INPUT "Masukkan jumlah barang yang dibeli:", jmlBrg INPUT "Masukkan harga satuan:",hrgSat WHILE jmlBrg < 10
WEND END |
12.2.3. Bahasa Pemrograman Object-oriented
OOP mencakup 5 konsep dasar:
- Class
- Object
- Properties / Attributes
- Event
- Method / Procedure / Operations
Objects memiliki sifat umum:
- encapsulation: sebuah object merupakan unit yang berdiri sendiri; object mencakup data dan instruksi yang terkait.
- inheritance : semua karakteristik sebuah class akan dimiliki oleh object yang dibuat berdasarkan class tersebut
- polymorphism: setiap object dapat memahami dan melaksanakan perintah-perintah yang diterimanya, sesuai dengan sifat object itu sendiri.
12.2.4. Kesalahan Pemrograman
- syntax error: kesalahan karena penulisan perintah tidak sesuai dengan aturan. (coding, compiling)
contoh: mau menuliskanPRINT
tetapi terketikORINT
(salah ketik, salah ejaan). - logical error : kesalahan karena logika pemrograman (algoritma) tidak benar
- numerical error:
- original data error : data yang dihitung memang salah
- truncation error : hitung
((100 / 3) * 3) = 99
- round off error : hitung
((100 / 3) * 3) = 99,9999
- propagated error :
12.3. Perangkat Lunak Aplikasi
Perangkat lunak aplikasi umumnya dapat menangani data jenis:
- text: type face, type size (satuan point = 1/72"), type weight, type style, font
- numbers
- pictures
- sound
- video
12.4. Hak Cipta Perangkat Lunak
- Perangkat lunak gratis:
- freeware
- public domain
- Perangkat lunak dengan hak cipta
- copyrighted software
- shareware
- Masalah: software piracy
Tips menyusun algoritma atau flowchart
- Baca masalahnya. - tentu saja - :)
- Tentukan input, output, proses. Bayangkan penyelesaian masalah tersebut sebagai sebuah sistem. Proses secara global dapat dianggap sebagai sebuah 'black box'.
- Flowchart untuk membantu melihat (visualisasi) diagram alur kejadian. Jika bingung dengan bentuk gambar node flowchart, abaikan dulu pemilihan bentuknya.
- Tulis algoritma, berikan catatan dalam kalimat yang manusiawi jika perlu
Contoh:
Buat algoritma atau flowchart untuk menentukan apakah sebuah bilangan merupakan bilangan ganjil atau genap.
- Masalahnya sudah dibaca? Bisakah anda ulangi pertanyaan tersebut dengan kalimat sendiri tanpa harus melihat seluruh cerita?
- Tentukan:
- input: sebuah bilangan sembarang, asumsikan input dari sebuah alat input (misal: keyboard)
- output: pernyataan "bilangan ganjil", "bilangan genap"
- proses:
gimana sih caranya? Bilangan genap: habis dibagi dua. Jika dibagi dua, maka hasilnya adalah bilangan bulat utuh.
Fungsi apa saja yang sudah tersedia?
Simbol-simbol flowchart
Flow line | Arah alur program | |
Terminator | Awal, akhir program atau proses | |
Persiapan, inisialisasi | Mengisi harga awal, kondisi-kondisi awal | |
Proses | Proses perhitungan atau pengolahan | |
input, output | input atau output data, parameter, informasi lain | |
predefined process | sub program atau sub proses. proses yang didefinisikan di dalam flowchart lain | |
decision | Pemilihan langkah | |
on page connector | penghubung ke bagian lain flowchart di halaman yang sama | |
off page connector | penghubung ke bagian lain flowchart yang ada di halaman lain |
Tidak ada komentar:
Posting Komentar