Software atau Perangkat Lunak adalah komponen pemroses data berupa kumpulan program instruksi untuk mengontrol sistem komputer.
Software dapat dibagi menjadi 3 kategori :
- Perangkat lunak bahasa (language software),
- Perangkat lunak sistem operasi (operating system),
- Perangkat lunak aplikasi (application software).
1. Perangkat lunak bahasa (language software)
Yaitu program yang dibuat untuk menterjemahkan instruksi-instruksi yang ditulis dalam bahasa pemrograman aras tinggi ke dalam bahasa pemrograman aras rendah, agar dapat dimengerti oleh mesin.Produk dari perangkat lunak bahasa diantaranya adalah :
- Driver, untuk mengontrol perangkat I/O seperti joystick, mouse, printer, scanner, dll.
- Firmware, untuk mengontrol device khusus, seperti arloji digital, tamagoci, mesin cuci, dll.
- Embedded Systems, untuk mengontrol hardware lain, seperti mikrokontroller, traffic light, converter, dll.
Perkembangan Bahasa Pemrograman
- Generasi Pertama, berorientasi pada mesin,
- Generasi Kedua, menggunakan bahasa rakitan (assembly),
- Generasi Ketiga, menggunakan pendekatan prosedural, contoh : Algol, C, Basic, Cobol, Fortran, dan Pascal,
- Generasi Keempat, berorientasi pada obyek dan berbasis aplikasi, guna meningkatkan efisiensi pembuatan program. Contoh seorang programmer dapat membuat suatu program menggunakan IDE.
Secara garis besar, bahasa pemrograman terbagi atas 3 tingkatan yaitu :
- Bahasa Tingkat Rendah (Low Level Language), contoh : Bahasa Mesin, Assembler
- Bahasa Tingkat Menengah (Middle Level Language), contoh : bahasa C, FORTRAN
- Bahasa Tingkat Tinggi (High Level Language), contoh : bahasa Java, C++.
Translator
Bahasa Assembly masih merupakan bahasa yang dekat dengan bahasa mesin, sehingga masih sulit untuk digunakan. Untuk mengatasi hal ini, maka dikembangkanlah bahasa pemrograman aras tinggi (high level language) yang dibuat mirip dengan bahasa manusia.
Source program yang ditulis menggunakan bahasa tingkat tinggi harus diterjemahkan menjadi bahasa mesin menggunakan program translator seperti COMPILER dan INTEPRETER.
Perbedaan Antara Compiler dan Interpreter
COMPILER | INTERPRETER |
Menterjemahkan secara keseluruhan sekaligus, jadi source program sudah harus ditulis dengan lengkap terlebih dahulu. | Menterjemahkan instruksi per instruksi dan langsung dikerjakan, sehingga source program tidak harus ditulis secara lengkap terlebih dahulu. |
Bila terjadi kesalahan kompilasi, maka source program harus dibetulkan dan proses kompilasi diulang kembali. | Bila terjadi kesalahan interpretasi, maka dapat langsung dibetulkan secara interaktif. |
Dihasilkan object program | Tidak dihasilkan object program |
Dihasilkan executeble program, sehingga dapat dijalankan menggunakan CLI | Tidak dihasilkan executable program, karena langsung dijalankan pada saat proses interpretasi. |
Proses kompilasi lama, karena menterjemahkan seluruh instruksi program | Proses interpretasi terasa cepat, karena tiap-tiap instruksi langsung dikerjakan dan langsung dapat dilihat hasilnya. |
Proses eksekusi program lebih cepat, karena executable program merupakan bahasa mesin. | Proses pengerjaan program lebih lambat, karena setiap instruksi yang dikerjakan harus diinterpretasikan ulang, karena tidak menghasilkan executable program. |
Source program tidak digunakan lagi untuk mengerjakan program, karena yang dijalankan adalah executable program. | Source program masih terus digunakan. |
Keamanan program lebih terjamin, karena yang dijalankan adalah executable program, yang mana relatif sulit untuk diubah atau dimanipulasi. | Keamanan program kurang terjamin, karena program yang ditulis adalah program yang dijalankan sehingga source program relatif mudah diubah, dimodifikasi atau dimanipulasi. |
2. Perangkat lunak sistem operasi (operating system)
Adalah program yang dibuat untuk mengkoordinasi antara mesin dengan perangkat lunak aplikasi. Perangkat lunak ini juga berfungsi sebagai penengah antara perangkat keras dengan perangkat lunak yang dijalankan oleh user.
Sejarah perkembangan Sistem Operasi bisa Anda simak selengkapnya di sini :
SEJARAH LENGKAP SISTEM OPERASI / ASAL USUL OPERATING SISTEM
Sejarah perkembangan Sistem Operasi bisa Anda simak selengkapnya di sini :
SEJARAH LENGKAP SISTEM OPERASI / ASAL USUL OPERATING SISTEM
3. Perangkat lunak aplikasi (application software)
Adalah program yang dibuat untuk melayani tugas manusia, dilengkapi dengan interface yang menawan dan userfriendly, dengan memanfaatkan kemampuan komputer secara tidak langsung, contoh : ms office, coreldraw, photoshop, dll.
Klasifikasi aplikasi :
- Perangkat lunak perusahaan (enterprise)
- Perangkat lunak infrastruktur perusahaan
- Perangkat lunak informasi kerja
- Perangkat lunak media dan hiburan
- Perangkat lunak pendidikan
- Perangkat lunak pengembangan media
- Perangkat lunak rekayasa produk