Pemrograman
Pemrograman adalah proses menulis, menguji dan memperbaiki (
debug), dan memelihara kode yang membangun sebuah program komputer. Kode ini ditulis dalam berbagai bahasa pemrograman. Tujuan dari
pemrograman adalah untuk memuat suatu program yang dapat melakukan suatu perhitungan atau 'pekerjaan' sesuai dengan
keinginan si pemrogram (programmer). Untuk dapat melakukan pemrograman, diperlukan keterampilan dalam algoritma, logika, bahasa pemrograman, dan di banyak kasus, pengetahuan-pengetahuan lain seperti matematika.
Pemrograman adalah sebuah
seni dalam menggunakan satu atau lebih algoritma yang saling berhubungan dengan
menggunakan sebuah bahasa pemrograman tertentu sehingga menjadi sebuah program
komputer. Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda pula. Gaya pemrograman ini biasa disebut paradigma pemrograman.
Apakah
memprogram perangkat lunak lebih merupakan seni, ilmu, atau teknik
telah lama diperdebatkan. Pemrogram yang baik biasanya mengkombinasikan
tiga hal tersebut, agar dapat menciptakan program yang efisien, baik
dari sisi waktu berjalan (
run time), atau memori.
Sejarah pemrograman
Mekanisme Antikythera dari Yunani kuno adalah kalkulator menggunakan
persneling dari berbagai ukuran dan konfigurasi untuk menentukan
operasi, [3] yang dilacak siklus Metonik masih digunakan di
bulan-ke-surya kalender, dan yang konsisten untuk menghitung tanggal
olimpiade [4]. Al-Jazari dibangun Automata diprogram pada tahun 1206.
Salah satu sistem yang digunakan dalam perangkat ini adalah penggunaan
pasak dan Cams ditempatkan ke drum kayu di lokasi tertentu, yang
secara
berurutan akan memicu tuas yang pada gilirannya dioperasikan instrumen
perkusi. Output dari perangkat ini adalah drumer kecil bermain berbagai
ritme dan pola drum. [5] [6] The
Jacquard Loom,
Joseph Marie Jacquard
yang dikembangkan pada tahun 1801, menggunakan serangkaian karton kartu
dengan menekan lubang di dalamnya. Pola lubang pola yang mewakili alat
tenun harus mengikuti menenun kain. Alat tenun bisa menghasilkan tenun
yang sama sekali berbeda dengan menggunakan kumpulan kartu yang berbeda.
Charles Babbage mengadopsi penggunaan kartu menekan sekitar tahun 1830
untuk mengendalikan Analytical Engine. Program komputer pertama ditulis
untuk Analytical Engine oleh matematikawan Ada Lovelace untuk menghitung
urutan Bilangan Bernoulli. [7] Sintesis perhitungan numerik, operasi
dan output telah ditentukan, bersama dengan cara untuk mengatur dan
masukan instruksi dengan cara yang relatif mudah bagi manusia untuk
hamil dan menghasilkan, menyebabkan perkembangan modern pemrograman
komputer. Pengembangan pemrograman komputer dipercepat melalui Revolusi
Industri. Pada akhir 1880-an, Herman Hollerith menemukan rekaman data
pada media yang kemudian dapat dibaca oleh mesin. Sebelum menggunakan
mesin dibaca dari media, di atas, telah untuk kontrol, bukan data.
"Setelah beberapa percobaan awal dengan kertas pita, ia menetap di kartu
menekan ..." [8] Untuk memproses kartu menekan ini, pertama kali
dikenal sebagai "kartu Hollerith" dia menciptakan tabulator, dan mesin
keypunch. Ketiga penemuannya dasar dari industri pengolahan informasi
modern. Pada tahun 1896 ia mendirikan Tabulating Machine Company (yang
kemudian menjadi inti dari
IBM).
Penambahan panel kontrol (plugboard) ke 1906 Tipe I Tabulator
memungkinkannya untuk melakukan pekerjaan yang berbeda tanpa harus
secara fisik dibangun kembali. Pada akhir 1940-an, ada berbagai mesin
panel kontrol diprogram, disebut catatan unit peralatan, untuk melakukan
pengolahan data tugas.
Data dan instruksi dapat disimpan pada kartu punched eksternal, yang
disimpan dalam rangka dan disusun dalam deck. Penemuan arsitektur
von Neumann
memungkinkan program komputer untuk disimpan dalam memori komputer.
Program awal harus susah payah dibuat dengan menggunakan instruksi
(operasi dasar) dari mesin tertentu, sering kali dalam notasi biner.
Setiap model komputer mungkin akan menggunakan instruksi yang berbeda
(bahasa mesin) untuk melakukan tugas yang sama. Kemudian, perakitan
bahasa tersebut dikembangkan yang memungkinkan programmer menentukan
setiap instruksi dalam format teks, singkatan memasukkan kode untuk
setiap operasi, bukan menetapkan sebuah nomor dan alamat dalam bentuk
simbolik (misalnya, ADD X, JUMLAH). Memasuki sebuah program dalam bahasa
assembly
biasanya lebih nyaman, lebih cepat, dan kurang rentan terhadap
kesalahan manusia daripada menggunakan bahasa mesin, tetapi karena
bahasa assembly adalah sedikit lebih dari satu notasi yang berbeda untuk
bahasa mesin, setiap dua mesin dengan instruksi yang berbeda set juga
memiliki perakitan yang berbeda bahasa. Pada tahun 1954, FORTRAN
diciptakan, melainkan tingkat pertama
bahasa pemrograman
tinggi untuk memiliki implementasi fungsional, dibandingkan dengan
hanya desain di atas kertas [9] [10] (Sebuah bahasa tingkat tinggi
adalah, dalam istilah yang sangat umum,. bahasa pemrograman yang
memungkinkan programmer untuk menulis program dalam istilah yang lebih
abstrak dari instruksi bahasa assembly, yaitu pada tingkat abstraksi
"lebih tinggi" daripada bahasa assembly.) Ini memungkinkan programmer
untuk menentukan perhitungan dengan memasukkan formula secara langsung
(misalnya Y = X * 2 + 5 * X + 9). Program teks, atau sumber, diubah
menjadi instruksi mesin menggunakan program khusus yang disebut
kompilator, yang diterjemahkan program FORTRAN ke dalam bahasa mesin.
Bahkan, nama FORTRAN adalah singkatan dari "Formula Translation". Banyak
bahasa lainnya dikembangkan, termasuk beberapa program untuk komersial,
seperti COBOL. Program itu sebagian besar masih masuk menggunakan kartu
punched atau pita kertas. (Lihat pemrograman komputer di era kartu
punch). Pada akhir 1960-an, perangkat penyimpanan data dan terminal
komputer menjadi cukup murah bahwa program dapat dibuat dengan
mengetikkan langsung ke dalam komputer. Teks editor tersebut
dikembangkan yang memungkinkan perubahan dan perbaikan harus dilakukan
jauh lebih mudah dibandingkan dengan kartu berlubang. (Biasanya,
kesalahan dalam meninju kartu berarti bahwa kartu harus dibuang dan yang
baru menekan untuk menggantikannya.) Ketika waktu telah berkembang,
komputer telah membuat lompatan raksasa di bidang kekuatan prosesor. Ini
telah membawa bahasa pemrograman baru yang lebih disarikan dari
hardware. Meskipun bahasa tingkat tinggi biasanya dikenakan biaya
overhead yang lebih besar, peningkatan kecepatan komputer modern telah
membuat penggunaan bahasa ini jauh lebih praktis daripada di masa lalu.
Bahasa ini semakin disarikan biasanya lebih mudah untuk belajar dan
memungkinkan programmer untuk mengembangkan aplikasi jauh lebih efisien
dan dengan kode sumber kurang. Namun, bahasa tingkat tinggi masih
praktis untuk beberapa program, seperti yang di mana tingkat rendah
kontrol perangkat keras diperlukan atau di mana kecepatan pemrosesan
maksimum adalah penting.
Sepanjang paruh kedua abad kedua puluh, pemrograman adalah karier
yang menarik di sebagian besar negara maju. Beberapa bentuk pemrograman
telah lepas pantai semakin tunduk pada outsourcing (impor perangkat
lunak dan jasa dari negara lain, biasanya dengan upah rendah), membuat
keputusan karir pemrograman di negara maju lebih rumit, sementara
meningkatkan peluang ekonomi di daerah kurang berkembang. Tidak jelas
seberapa jauh kecenderungan ini akan berlanjut dan seberapa dalam dampak
akan programmer upah dan kesempatan.
Referensi
http://id.wikipedia.org/