Pengenalan Pemrograman Komputer (Software) Software Software atau perangkat lunak adalah data yang disimpan pada media penyimpanan data permanen seperti harddisk/disket/cd-r. Perangkat lunak ini dibuat untuk menjalankan perangkat keras komputer sehingga dapat berjalan sesuai fungsi yang diinginkan. Software Komputer Pada awalnya perangkat lunak komputer dibuat hanya untuk satu tugas saja, sampai sekitar tahun 1960 an baru mulai muncul era perangkat lunak modern dengan berbagai fungsi. Software juga Merupakan program-program komputer yang berguna untuk menjalankan suatu pekerjaan sesuai dengan yang dikehendaki. Program tersebut ditulis dengan bahasa khusus yang dimengerti oleh komputer. Program dapat dianalogikan sebagai instruksi yang akan dijalankan oleh prosessor. Software terdiri dari beberapa jenis, yaitu : 1. Sistem Operasi Sistem operasi adalah perangkat lunak yang mengatur fungsi dasar dari sebuah komputer. Sistem operasi bertugas melakukan kontrol pada semua aplikasi program pada komputer termasuk pengaturan perangkat keras dan sistem inputoutput. Contoh Sistem Operasi : 1. 2. 3. 4. Produk Microsoft : Windows 3.1, Windows 95, Windows 98, Windows 2000, WIndows Me, WIndows XP, Windows Vista, Windows 7, Windows 8 (akan datang), WIndows NT (untuk jaringan) Produk Novel : Linux, Redhat, OpenSuse, Ubuntu, Mandrake, Mandriva,dll Produk Apple : Macintosh Produk IBM : DOS, UNIX 1 Tanpa ada sistem operasi maka komputer tidak dapat difungsikan sama sekali. Sistem Operasi secara umum terdiri dari beberapa bagian: Boot, yaitu meletakkan kernel ke dalam memory Kernel, yaitu inti dari sebuah Sistem Operasi Shell atau Command Interpreter , yang bertugas membaca input dari pengguna Library, yaitu yang menyediakan kumpulan fungsi dasar dan standar yang dapat dipanggil oleh aplikasi lain • Driver untuk berinteraksi dengan hardware eksternal, sekaligus untuk mengontrol mereka. • • • • Microsoft DOS dan Microsoft Windows Sistem operasi mulai memasuki dunia komputer rumah tangga setelah adanya Microsoft DOS dari perusahaan software Microsoft. Sistem operasi ini belum menunjang penggunana komputer secara banyak tugas (multitasking) dan Sistem operasi baru memasuki dunia multi tasking setelah Microsoft merilis Sistem operasi baru dengan nama Microsoft Windows. Microsoft Windows 7 Microsoft Windows terus berkembang pesat sehingga merajai pasar perangkat lunak dunia. Diawali dengan larisnya Windows 95, Microsoft terus memperkokoh dominasinya dengan berturut-turut meluncurkan Windows 98, Windows 2000, Windows ME, Windows XP, Windows Vista dan Windows 7. Macintosh dari Apple Selain Microsoft, perusahaan perangkat lunak yang lain adalah Apple dengan produknya yang dilabeli dengan nama Macintosh Operating System (MacOS). MacOS pertama diluncurkan pada tahun 1984 untuk menjalankan komputer apple yang diberi nama Macintosh. Sistem operasi ini tidak kompatibel dengan komputer buatan IBM. Apple Macintosh MacOS adalah sistem operasi komputer pertama yang menggunakan antarmuka pengguna berbasis grafis (bukan teks) atau yang sering disebut dengan GUI (Graphical User Interface). Generasi MacOS diawali dengan penyebutan 2 dengan menggunakan kata Sistem, seperti Sistem 6, Sistem 7 hingga kini menggunakan MacOS 9 dan yang terbaru adalah MacOS X (X=ten=sepuluh) Linux dan Opensource Dua sistem operasi yang disebutkan diatas adalah sistem operasi yang berbayar, artinya kita harus membelinya untuk dapat menempatkan sistem operasi tersebut kedalam komputer pribadi kita. Pada beberap kasus memang ditemukan penggunaan sistem operasi windows dengan model mengkopi dari komputer yang satu ke komputer yang lain tanpa harus membeli namun ini adalah termasuk tindakan pembajakan. Pada tahun 1991 muncul wacana membuat sistem operasi dari kode Unix. Gagasan ini diawali oleh mahasiswa inggris yang bernama Linus Thorvalds. Sistem operasi yang dihasilkan oleh proyek ini kemudian disebut dengan Linux. Karena sifatnya yang gratis dan kode program yang terbuka (open source) maka Linux menjadi terus berkembang dan menjalar ke seluruh dunia. Distro Linux Beberapa contoh Sistem operasi Linux yang terkenal adalah Ubuntu, Mandrake, OpenSUSE, RedHat, Slackware dan Debian. Masing-masing nama tersebut dikenal dengan istilah distro (dari kata distribusi/penyaluran). Saat ini banyak distro linux baru yang muncul disetiap belahan dunia. 2. Program Utility. Program utility berfungsi untuk membantu atau mengisi kekurangan/kelemahan dari sistem operasi, misalnya PC Tools dapat melakukan perintah format sebagaimana DOS, tapi PC Tools mampu memberikan keterangan dan animasi yang bagus dalam proses pemformatan. File yang telah dihapus oleh DOS tidak dapat dikembalikan lagi tapi dengan program bantu hal ini dapat dilakukan. Program Bantu merupakan program yang bertujuan untuk mengatur konfigurasi komputer, menjaga komputer dari serangan virus dan hacker, menyelamatkan data dan sebagainya. Program jenis ini tidak banyak melibatkan 3 pengguna dalam penggunaannya, tetapi bekerja sendiri sesuai dengan perintah dan fungsinya. Contoh program bantu yang kita kenal yaitu Anti Virus, Backup , Disk Defragmenter, dsbnya. 3. Program Aplikasi, seperti GL, MYOB, Payroll. Merupakan program yang khusus melakukan suatu pekerjaan tertentu, seperti program gaji pada suatu perusahaan. Maka program ini hanya digunakan oleh bagian keuangan saja tidak dapat digunakan oleh departemen yang lain. Umumnya program aplikasi ini dibuat oleh seorang programmer komputer sesuai dengan permintaan/kebutuhan seseorang/lembaga/perusahaan guna keperluan interennya. Program aplikasi bersifat lebih khusus jika dibandingkan dengan sistem operasi. Perangkat lunak ini secara khusus menangani kebutuhan pekerjaan dari pengguna seperti mengetik, membuat tabel, memainkan musik, memutar video, dan browsing internet atau interkoneksi dengan sesama komputer lokal. Contoh Aplikasi komputer yang lain : • Aplikasi grafis, seperti: CorelDraw, Photoshop, ACDsee • Aplikasi Multimedia, seperti : Windows Media Player, Winamp, PowerDVD, Klite • Aplikasi Browser, seperti : Mozilla Firefox, Google Chrome, Internet Explorer • Aplikasi Programming, seperti: Visual Studio, Delphi, C++ Builder • Aplikasi Web Designer, seperti: Dreamweaver, Frontpage 4. Program Paket Program paket merupakan gabungan dari beberapa aplikasi yang di paket menjadi kesatuan untuk menangani suatu bidang pekerjaan yang saling berkaitan. Contoh paket yang paling terkenal adalah Microsoft Office dimana didalamnya terdapat program untuk mengolah kata (Microsoft Word), untuk mengolah angka (Microsoft Excel), Untuk Program Presentasi (Microsoft Power Point) dll. Dilihat dari bidang pekerjaan yang ditangani, program paket dapat dibedakan menjadi: 1. Aplikasi perkantoran, misalnya : Microsoft Office dan StarOffice, Lotus123, MS Excell, QuattroPro, Wordstar, MS Word, Word Perfect, AmiPro, MS PowerPoint, dll 2. Aplikasi database, misalnya : oracle dan SQL Server 4 3. Aplikasi grafik, misalnya Adobe Master Collection CS5 dan Corel Draw, PhotoShop 5. Compiler. Komputer hanya memahami satu bahasa, yaitu bahasa mesin. Bahasa mesin adalah terdiri dari nilai 0 dan 1. Sangatlah tidak praktis dan efisien bagi manusia untuk membuat program yang terdiri dari nilai 0 dan 1, maka dicarilah suatu cara untuk menterjemahkan sebuah bahasa yang dipahami oleh manusia menjadi bahasa mesin. Dengan tujuan inilah, diciptakan compiler. Perbedaan COMPILER Dengan INTERPRETER Interpreter adalah perangkat lunak yang mampu mengeksekusi code program (yang ditulis oleh programmer) lalu menterjemahkannya ke dalam bahasa mesin, sehingga mesin melakukan instruksi yang diminta oleh programmer tersebut. Perintah-perintah yang dibuat oleh programmer tersebut dieksekusi baris demi baris, sambil mengikuti logika yang terdapat di dalam kode tersebut. Proses ini sangat berbeda dengan compiler, dimana pada compiler, hasilnya sudah langsung berupa satu kesatuan perintah dalam bentuk bahasa mesin, dimana proses penterjemahan dilaksanakan sebelum program tersebut dieksekusi. Sedangkan Compiler sendiri adalah program sistem yang digunakan sebagai alat bantu dalam pemrogaman.Perangkat lunak yang melakukan proses penterjemahan code (yang dibuat programmer) ke dalam bahasa mesin. Hasil dari terjemahan ini adalah bahasa mesin. Pada beberapa compiler, output berupa bahasa mesin dilaksanakan dengan proses assembler yang berbeda. Untuk lebih jelas mengenai perbedaan antara Interpreter dengan Compiler, ada baiknya saya jelaskan lebih terperinci mengenai dua hal ini. Perbedaan antara Compiler dengan Interpreter : 1. Jika hendak menjalankan program hasil kompilasi dapat dilakukan tanpa butuh kode sumber. Kalau interpreter butuh kode sumber. 2. Jika dengan kompiler, maka pembuatan kode yang bisa dijalankan mesin dilakukan dalam 2 tahap terpisah, yaitu parsing ( pembuatan kode objek ) dan linking ( penggabungan kode objek dengan library ) . Kalau interpreter tidak ada proses terpisah. 3. JIka compiler membutuhkan linker untuk menggabungkan kode objek dengan berbagai macam library demi menghasilkan suatu kode yang bisa dijalankan oleh mesin. Kalau interpreter tidak butuh linker untuk menggabungkan kode objek dengan berbagai macam library. 4. Interpreter cocok untuk membuat / menguji coba modul ( sub-routine / programprogram kecil ). Maka compiler agak repot karena untuk mengubah suatu modul / kode objek kecil, maka harus dilakukan proses linking / penggabungan kembali semua objek dengan library yang diperlukan. 5 5. Pada kompiler bisa dilakukan optimisasi / peningkatan kualitas kode yang bisa dijalankan. Ada yang dioptimasi supaya lebih cepat, ada yang supaya lebih kecil, ada yang dioptimasi untuk sistem dengan banyak processor. Kalau interpreter susah atau bahkan tidak bisa dioptimasikan. Kompiler (compiler). Kompiler (compiler) adalah sebuah program komputer yang berguna untuk menerjemahkan program komputer yang ditulis dalam bahasa pemrograman tertentu menjadi program yang ditulis dalam bahasa pemrograman lain.Terlepas dari pengertiannya yang demikian relatif luas, istilah kompilator biasa digunakan untuk program komputer yang menerjemahkan program yang ditulis dalam bahasa pemrograman tingkat tinggi (semacam bahasa Pascal, C++, BASIC, FORTRAN, Visual Basic, Visual C#, Java, xBase, atau COBOL) menjadi bahasa mesin, biasanya dengan bahasa Assembly (assembler) sebagai perantara. 6. Driver perangkat keras Driver adalah Perangkat lunak yang mengatur dan mengendalikan kinerja dari senuah perangkat keras. Biasanya driver diperoleh dari vendor sebuah perangkat keras. Contoh perangkat yang sering membutuhkan instalasi driver yaitu SoundCard, VGA Card, dan LAN Card. Tanpa driver kadang suatu perangkat keras masih dapat berfungsi namun tidak dapat mencapai performa yang optimal, karena yang digunakan adalah driver universal. Jadi fungsi fungsi khusus yang merupakan kelebihan sebuah perangkat keras tidak dapat berfungsi dengan baik. 6