Pages

Monday, November 21, 2011

Teknologi Informasi Terhadap Kehidupan



Kehidupan jaman sekarang sudah memasuki jaman yang moderen dan maju. Banyak sudah temuan-temuan sekarang yang sudah mencakup globalisasi dan suatu kebanggaan dalam hidup di jaman modern dan jaman yang canggih. Banyak hal-hal yang harus diketahui dan di pelajari di ilmu computer salah satunya.
Setiap jam atau menit seseorang menciptakan ilmu-ilmu baru dalam dunia computer. Maka, sebagai calon generasi muda yang berbakat, apalagi bangsa Indonesia juga tidak boleh tertinggal oleh bangsa luar.
Saat ini baru saja kita melihat bangsa asing yang berhasil menemukan teknologi computer seperti laptop, Ipad, Iphone, dan lain-lain. Akan tetapi untuk menciptakan ilmu-ilmu computer bangsa Indonesia belum mampu. Namun usaha keras dari para universitas untuk bias menjadikan para lulusan teknologi agar mampu menciptakan teknologi dengan para lulusan dari bangsa luar. Maka dari itu, banyak fakultas teknologi mencari bibit-bibit muda yang berkualitas untuk bias menjadikan bangsa Indonesia lebih baik dari segi teknologi informasi.
Sekarang banyak Negara-negara maju yang besar seperti Amerika, Jepang, German, dan lain-lain sebagian dari mereka sudah sudah terlihat kemajuan negaranya yang bias kita lihat dari segi teknologinya. Namun Indonesia tidak akan menyerah dengan bangsa luar sampai titik darah penghabisan. Oleh sebab itu kita berantas kebodohan dengan adanya ilmu computer. Sebagai anak didik kita harus bias belajar lebih baik demi masa depan yang baik dan cerah. Sesuai dengan kamajuan jaman yang sudah mencakup gobalisasi.
Kehadiran globalisasi membawa pengaruh bagi kehidupan suatu bangsa. Pengaruh globalisasi dirasakan di berbagai bidang kehidupan seperti kehidupan politik, ideologi, ekonomi, sosial budaya, pertahanan keamanan dan lain-lain yang akan mempengaruhi nilai-nilai nasionalisme bangsa.
Secara umum globalisasi dapat dikatakan suatu proses tatanan masyarakat yang mendunia dan tidak mengenal batas wilayah. globalisasi pada hakikatnya adalah suatu proses dari gagasan yang dimunculkan, kemudian ditawarkan untuk diikuti oleh bangsa lain yang akhirnya sampai pada suatu titik kesepakatan bersama dan menjadi pedoman bersama bagi bangsa- bangsa di seluruh dunia. Dengan kata lain proses globalisasi akan berdampak melampaui batas-batas kebangsaan dan kenegaraan.


Sebagai sebuah proses, globalisasi berlangsung melalui dua dimensi, dalam interaksi antar bangsa, yaitu dimensi ruang dan dimensi waktu. Dimensi ruang yang dapat diartikan jarak semakin dekat atau dipersempit sedangkan waktu makin dipersingkat dalam interaksi dan komunikasi pada skala dunia. Hal ini tentunya tidak terlepas dari dukungan pesatnya laju perkembangan teknologi yang semakin canggih khususnya teknologi informasi dan komunikasi (TIK).

Teknologi informasi dan komunikasi (TIK) adalah pendukung utama bagi terselenggaranya globalisasi. Dengan dukungan teknologi informasi dan komunikasi, informasi dalam bentuk apapun dan untuk berbagai kepentingan, dapat disebarluaskan dengan mudah sehingga dapat dengan cepat mempengaruhi cara pandang dan gaya hidup hingga budaya suatu bangsa. Kecepatan arus informasi yang dengan cepat membanjiri kita seolah-olah tidak memberikan kesempatan kepada kita untuk menyerapnya dengan filter mental dan sikap kritis. Makin canggih dukungan teknologi tersebut, makin besar pula arus informasi dapat dialirkan dengan jangkauan dan dampak global. Oleh karena itu selama ini dikenal asas “kebebasan arus informasi” berupa proses dua arah yang cukup berimbang yang dapat saling memberikan pengaruh satu sama lain.
Pada zaman modern yang semakin maju ini komputer telah mengalami evolusi sehingga sudah mencapai generasi kelima yang telah melahirkan generasi baru yaitu terjadinya penggabungan antara Teknologi Komputer dan Komunikasi sehingga sering di sebut sebagai Teknologi Informasi dan Komunikasi yang dibuat untuk membantu menyelesaikan berbagai masalah dengan mudah dan cepat.
Komputer digunakan secara meluas dalam berbagai aktivitas di kehidupan manusia seperti :
1. Perbankan
2. Perniagaan / Perdagangan
3. Industri
4. Transportasi
5. Obat-obatan / Rumah Sakit
6. Pendidikan
7. Seni
8. Penelitian
9. Rekreasi
10. Pertahanan dan Keamanan
11. Komunikasi

PERKEMBANGAN MULTIMEDIA

Perkembangan teknologi multimedia membuka potensi besar dalam perubahan cara belajar, cara memperoleh informasi dan sebagainya. Dengan perkembangan multimedia ini juga membuka peluang bagi para pendididik untuk mengembangkan sistem pembelajaran supaya menghasilkan hasil yang optimal. Demikian pula bagi peserta didik,dengan multimedia diharapkan mereka akan lebih mudah menentukan dengan cara apa dan bagaimana menyerap informasi yang disampaikan secara cepat dan efisien. Sumber informsi dan ilmu yang mereka peroleh tidak lagi hanya terpaku pada buku tetapi lebih luas dan beraneka ragam. Apalagi dengan adanya jaringan internet yang akan membuat kemudahan dalam memperoleh informasi yang diperlukan. 

DAMPAK POSITIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG PENDIDIKAN 
• Siswa / mahasiswa menjadi tidak mudah bosan dihadapkan hanya pada buku teks. 
• Suasana pengajaran dan pembelajaran yang interaktif akan menggalakkan komunikasi berbagai hal ( pelajar-guru, pelajar-pelajar, pelajar-komputer ) 
• Gabungan berbagai media yang memanfaatkan sepenuhnya indra penglihatan dan pendengaran mampu menarik minat belajar. 
• Perkembangan Teknologi Informasi (TI) Pada bidang Pendidikan, dampak yang muncul ialah kegiatan belajar dan mengajar yang dikenal dengan konsep e-Learning. 
di bawah ini adalah dampak positif dan negatif dari internet;

dampak positifnya
1. menambah wawasan baik luar maupun dalam negeri
2. menambah pengetahuan (ilmu komputer khususnya)
3. efisiensi waktu untuk bekerja
4. membantu dalam banyak hal
5. lahan info baik pendidikan, kebudayaan, dll
6. pertukaran info maupun data
7. membantu mencari tugas
8. efisiensi mencari data, daripada harus observasi
dampak negatifnya
1. kecanduan (bagi yang maniak game)
2. boros (internet ga murah)
3. merusak otak (porno site)
4. merusak mata (kan ngeliat komputer terus)
5. lupa waktu
6. carding
7. perjudian






DAMPAK POSITIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG BISNIS
• Sejumlah perusahaan memberikan training pada pegawainya dengan materi training berbasis multimedia dalam bentuk simulasi.
• Misalnya: 
• NASA menggunakan multimedia untuk training flight control bagi calon astronot 


DAMPAK POSITIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG ENTERTAINMENT
• Multimedia membuat edukasi menjadi lebih menarik = edutainment
• Multimedia sebagai pendukung kegiatan entertainment = animasi dan laser show yang terintegrasi pada konser musik
• Video/music Player

DAMPAK POSITIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG KESEHATAN
Kini telah terdapat alat-alat medis kedokteran serba canggih untuk megetahui atau mendeteksi keadaan tubuh dalam manusia. Seperti USG, Rontgen, Tensi darah, alat citiscan, HD, dll.

DAMPAK POSITIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG POLITIK
 
Dalam melakukan aksi kampanye pada jaman sebelum multimedia belum terlalu berkembang masih menggunakan lisan atau tulisan di selembaran atau sticker atau baleho. Kini setelah multimedia berkembang sangat baik, aksi kampanye telah menyebar ke dunia maya.


DAMPAK NEGATIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG PENDIDIKAN
• Dengan adanya pembelajaran jarak jauh atau e-Learning selain berbagai dampak positif yang di dapat ada juga beberapa nilai kurang baik yakni tidak adanya interaksi secara langsung sehingga pengajar tidak akan lebih intensif memonitori prilaku atau etitude pelajarnya dan pengurusan sertifikasi hasil belajar di nilai rumit
• Keberadaan guru dan tenaga pelajar sudah tidak lagi di prioritaskan
• Baru-baru ini banyak oknum-oknum yang memanfaatkan program sertifikasi yang di adakan oleh lembaga atau instansi tertentu contoh:sertifikasi dari Microsoft Corporation yang terdapat penjokian di dalamnya

DAMPAK NEGATIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG BISNIS
• Adanyan pihak-pihak yang melakukan black market (ilegal) dalam internet
• Hacker melakukan hacking guna proses transaksi 

DAMPAK NEGATIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG ENTERTAINMENT
• Multimedia dalam bentuk gambar atau video banyak gambar atau film yang mengandung pornografi dan kekerasan yang bisa mengakibatkan dorongan kepada seseorang untuk bertindak kriminal.

DAMPAK NEGATIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG KESEHATAN
• Dengan kemajuan multimedia praktek aborsi ilegal pun dapat dilakukan dengan tool-tool multimedia.
• Banyaknya pabrik toko narkoba menunjukan begitu mudahnya penggunaan multimedia untuk transaksi obat-obatan terlarang.

DAMPAK NEGATIF PERKEMBANGAN MULTIMEDIA DALAM BIDANG POLITIK
• Para elit politik pada pileg dan pilpres banyak menggunakan black campaygn (kampanye hitam) melalui internet beligho,spanduk dsb
• Dengan adanya kemajuan teknologi multimedia para koruptor dapat leluasa untuk melakukan aksinya, walaupun saat ini ada teknik penyadapan dari instansi yang berwenang tetapi cara itu belum sepenuhnya menjerat para koruptor.

KESIMPULAN
• Dari hari kehari perkembangan multimedia semakin maju, hal ini disebabkan semakin beraneka ragamnya kebutuhan akan multimedia. Semakin banyaknya software yang bermuculan untuk membuat aplikasi berbasis multimedia
• Apabila digunakan dengan baik, bisa luar biasa bermanfaat, khususnya bagi generasi muda dalam bidang pendidikan, materi pelajaran bisa disampaikan dalam berbagai bentuk, gambar, animasi, film, suara dan konten2 interaktif 

salah satu sumbernya adalah



http://www.va-media.com/forum/showthread.php?tid=1647

Tuesday, November 15, 2011

Konsep dasar pemrograman, Data, Model Komputasi, Prinsip Bahasa Pemrograman


Konsep Dasar Pemrograman
Pengertian :
Algoritma : Langkah-langkah untuk menyelesaikan sesuatu masalah
Pemrograman Terstruktur : “Metode untuk mengorganisasikan dan membuat kode-kode program supaya mudah untuk dimengerti, mudah di test dan di modifikasi.”
Algoritma Pemrograman Yang Baik
Ciri-ciri algoritma pemrograman yang baik adalah :
1.      Memiliki logika perhitungan/metode yang tepat dalam memecahkan masalah
2.      Menghasilkan output yang tepat dan benar dalam waktu yang singkat
3.      Ditulis dengan bahasa yang standar secara sistematis dan rapi sehingga tidak menimbulkan arti ganda.
4.      Ditulis dengan format yang mudah dipahami dan diimplementasikan ke dalam bahasa pemrograman.
5.      Semua operasi yang dibutuhkan terdefinisi dengan jelas.
6.      Semua proses harus berakhir setelah sejumlah langkah dilakukan.
Standar Suatu Program Yang Baik
A. Standar Pemecahan masalah
teknik untuk dapat membantu memecahkan masalah antara lain teknik Top Down dan teknik Modular.
B. Standar Penyusunan Program
1. Kebenaran logika dan penulisan
Program yang disusun harus memiliki logika dalam pemecahan masalah. Program yang dibuat harus memiliki ketepatan, ketelitian dan kebenaran sehingga menghasilkan program yang baik.
2. Waktu penulisan dan eksekusi program
3. Perawatan dan pengembangan program
Penyusunan program harus mempunyai sifat kesederhanaan dan kejelasan dari program yang nantinya akan dikembangkan dan membantu dalam perawatan.
4. Portabilitas
Bahasa pemrograman dan program yang disusun sebaiknya bisa dipakai pada berbagai tipe komputer yang berbeda-beda dan berbagai jenis sistem operasi.

Standar Perawatan Program
1. Dokumentasi
2. Penulisan Instruksi
a. Berikan keterangan untuk awal statement atau instruksi yang tergabung dalam sekelompok statement.
b. Awal dan akhir statement dari sekumpulan statement ditulis pada kolom yang sama.
c. Gunakan sebaris atau beberapa baris kosong sebagai pemisah.
d. Hindari pernyataan untuk Percabangan
(IF statement ) yang sangat rumit dan Nested Loop (Loop disalam Loop lain) yang berlebihan.
e. Gunakan “kurung buka dan tutup” dalam menulis suatu ekspresi Aritmatika atau logika.
f. Gunakan “Spasi” dalam menulis statement atau instruksi.
Sifat Penulisan Program
a. Program Oriented
Penulisan program yang struktur programnya selalu berubah, apabila kondisi data yang diproses di dalam program tersebut, bertambah volume datanya. Selain itu penulisan program ini bersifat statis dan tidak fleksibel (program animasi)
b. Data Oriented
Penulisan program yang struktur programnnya tidak selalu berubah, walaupun volume data yang diproses di dalam program tersebut, dalam jumlah besar. Selain itu pula penulisan program ini bersifat dinamis dan mempunyai tingkat fleksibilitas yang tinggi.
Kualitas Bahasa Pemrograman
1. Ekspresifitas
Bahasa pemrograman yang baik harus jelas dalam menggambarkan algoritmanya yang dibuat.
2. Definitas (dapat didefinisikan dengan baik)
Bahasa Pemrograman dapat didefinisikan dari adanya sintak dan semantic baik. Sintak dan semantic ini haruslah konsisten dan tidak bermakna ganda.

3. Tipe data dan Strukturnya
Bahasa pemrograman yang baik harus berkemampuan dalam mendukung berbagai tipe data (integer, string,real). Serta struktur data (array, record,file)
4. Modularitas
Bahasa pemrograman yang baik harus memiliki fasilitas sub program. Program yang besar dapat dikerjakan oleh beberapa pemrogram secara bersama-sama yang nantinya dengan mudah dapat digabungkan menjadi sebuah modul saja.
5. Adanya Input Output
Bahasa pemrograman yang baik harus dapat mendukung berbagai jenis model file seperti sequential, random, index dsb dalam proses masukan dan keluaran.
6. Portabilitas
Bahasa pemrograman yang dapat digunakan pada berbagai tipe mesin computer yang berbeda-beda.
7. Efisiensi
Bahasa pemrograman yang dapat mengatur banyaknya instruksi program dalam membatasi waktu tempuh pemrosesan, mengatur jumlah memori yang digunakan program,.
8. Interaktif
Bahasa pemrograman yang baik harus mudah dipelajari dan diajarkan pada user. Serta dimengerti tentang proses yang sedang dilakukannya.
9. Umum
Bahasa pemrograman yangn baik harus memiliki jangkauan yang luas untuk berbagai aplikasi pemrograman sehingga dapat bersifat bahasa serbaguna.

Sumber : Modul Kuliah STMIK Tasikmalaya
    http://kutukomputer.net23.net/2008/11/konsep-dasar-pemrograman/


DATA
Data adalah catatan atas kumpulan fakta.Data merupakan bentuk jamak dari datum, berasal dari bahasa Latin yang berarti "sesuatu yang diberikan". Dalam penggunaan sehari-hari data berarti suatu pernyataan yang diterima secara apa adanya. Pernyataan ini adalah hasil pengukuran atau pengamatan suatu variabel yang bentuknya dapat berupa angka, kata-kata, atau citra.
Dalam keilmuan (ilmiah), fakta dikumpulkan untuk menjadi data. Data kemudian diolah sehingga dapat diutarakan secara jelas dan tepat sehingga dapat dimengerti oleh orang lain yang tidak langsung mengalaminya sendiri, hal ini dinamakan deskripsi. Pemilahan banyak data sesuai dengan persamaan atau perbedaan yang dikandungnya dinamakan klasifikasi.
Dalam pokok bahasan Manajemen Pengetahuan, data dicirikan sebagai sesuatu yang bersifat mentah dan tidak memiliki konteks. Dia sekedar ada dan tidak memiliki signifikansi makna di luar keberadaannya itu. Dia bisa muncul dalam berbagai bentuk, terlepas dari apakah dia bisa dimanfaatkan atau tidak.
Menurut berbagai sumber lain, data dapat juga didefinisikan sebagai berikut:
• Menurut kamus bahasa inggris-indonesia, data berasal dari kata datum yang berarti fakta
• Dari sudut pandang bisnis, data bisnis adalah deskripsi organisasi tentang sesuatu (resources) dan kejadian (transactions)yang terjadi
• Pengertian yang lain menyebutkan bahwa data adalah deskripsi dari suatu kejadian yang kita hadapi



Teori komputasi adalah cabang ilmu komputer dan matematika yang membahas apakah dan bagaimanakah suatu masalah dapat dipecahkan padamodel komputasi, menggunakan algoritma. Bidang ini dibagi menjadi dua cabang: teori komputabilitas dan teori kompleksitas, namun kedua cabang berurusan dengan model formal komputasi.
Untuk melakukan studi komputasi dengan ketat, ilmuwan komputer bekerja dengan abstraksi matematika dari komputer yang dinamakan model komputasi. Ada beberapa model yang digunakan, namun yang paling umum dipelajari adalah mesin Turing. Sebuah mesin Turing dapat dipikirkan sebagai komputer pribadi meja dengan kapasitas memory yang tak terhingga, namun hanya dapat diakses dalam bagian-bagian terpisah dan diskret. Ilmuwan komputer mempelajari mesin Turing karena mudah dirumuskan, dianalisis dan digunakan untuk pembuktian, dan karena mesin ini mewakili model komputasi yang dianggap sebagai model paling masuk akal yang paling ampuh yang dimungkinkan. Kapasitas memori tidak terbatas mungkin terlihat sebagai sifat yang tidak mungkin terwujudkan, namun setiap permasalahan yang “terputuskan” (decidable) yang dipecahkan oleh mesin Turing selalu hanya akan memerlukan jumlah memori terhingga. Jadi pada dasarnya setiap masalah yang dapat dipecahkan (diputuskan) oleh meisn Turing dapat dipecahkan oleh komputer yang memiliki jumlah memori terbatas.
Pembagian Model komputasi ada 3 yaitu :
1. Mesin Mealy
Dalam teori komputasi sebagai konsep dasar sebuah komputer, mesin Mealy adalah otomasi fasa berhingga (finite state automaton atau finite state tranducer) yang menghasilkan keluaran berdasarkan fasa saat itu dan bagian masukan/input. Dalam hal ini, diagram fasa (state diagram) dari mesin Mealy memiliki sinyal masukan dan sinyal keluaran untuk tiap transisi. Prinsip ini berbeda dengan mesin Moore yang hanya menghasilkan keluaran/output pada tiap fasa.
Nama Mealy diambil dari “G. H. Mealy” seorang perintis mesin-fasa (state-machine) yang menulis karangan “A Method for Synthesizing Sequential Circuits” pada tahun 1955.
http://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Mealymachine_jaredwf.png/200px-Mealymachine_jaredwf.png



2. Mesin Moore
Dalam teori komputasi sebagai prinsip dasar komputer, mesin Moore adalah otomasi fasa berhingga (finite state automaton) di mana keluarannya ditentukan hanya oleh fasa saat itu (dan tidak terpengaruh oleh bagian masukan/input). Diagram fasa (state diagram) dari mesin Moore memiliki sinyal keluaran untuk masing-masing fasa. Hal ini berbeda dengan mesin Mealy yang mempunyai keluaran untuk tiap transisi.
Nama Moore diambil dari “Edward F. Moore” seorang ilmuwan komputer dan perintis mesin-fasa (state-machine) yang menulis karangan “Gedanken-experiments on Sequential Machines”.
http://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Graf_automatu_moore.svg/539px-Graf_automatu_moore.svg.png
3. Petri Net
Petri net adalah salah satu model untuk merepresentasikan sistem terdistribusi diskret. Sebagai sebuah model, Petri net merupakan grafik 2 arah yang terdiri dari place, transition, dan tanda panah yang menghubungkan keduanya. Di samping itu, untuk merepresentasikan keadaan sistem, token diletakkan pada place tertentu. Ketika sebuah transition terpantik, token akan bertransisi sesuai tanda panah.
Petri net pertama kali diajukkan oleh Carl Adam Petri pada tahun 1962.
http://www.doc.ic.ac.uk/%7End/surprise_97/journal/vol2/njc1/petri.gif
Sekianlah model-model komputasi. Materi ini bersumber dari :
http://id.wikipedia.org/wiki/Kategori:Model_komputasi
http://id.wikipedia.org/wiki/Teori_komputasi
http://www.doc.ic.ac.uk/~nd/surprise_97/journal/vol2/njc1/petri.gif
http://upload.wikimedia.org/wikipedia/commons/thumb/2/2f/Graf_automatu_moore.svg/539px-Graf_automatu_moore.svg.png

Tugas Bahasa Pemrograman I

Bahasa pemrograman dan bahasa alami sama-sama berfungsi untuk memfasilitasi komunikasi antar manusia, tetapi pada bahasa pemrograman yang difasilitasi adalah komunikasi ide-ide algoritmanya, baik antar manusia maupun manusia dengan mesin komputasi (yang tidak bisa dilakukan oleh bahasa alami). Dalam merancang sebuah bahasa pemrograman, perancang bahasa harus memiliki vocabulary dasar tentang struktur bahasa, arti dan hal-hal pragmatis lainnya dan memahami empat prinsip dasar perancangan bahasa pemrograman. Empat prinsip tersebut adalah:
  1. Sintaks, menjelaskan bagaimana struktur program yang benar.
  2. Tipe sistem dan semantik, menunjukkan tipe nilai yang dapat dimanipulasi oleh program dan arti(semantik) dari program, mencakup juga aturan penamaan entitas (variabel,fungsi,class,parameter,dll).
  3. Manajemen memori, menunjuk kepada sekumpulan teknik yang membantu kita untuk memahami pemetaan letak dari nilai, struktur data, dan struktur program di dalam memori.
  4. Exception handling, mengenai penanganan exception (hal-hal yang tak terduga yang terjadi ketika kita menjalankan sebuah program seperti kesalahan input yang tak terduga) .
Dalam perancangan bahasa, para perancang bahasa mengikuti paradigma-paradigma tertentu yang merupakan bentuk pemecahan masalah mengikuti aliran atau “genre” tertentu dari program dan bahasa. Berikut ini merupakan paradigma-paradigma pemograman yang utama:
  • Imperative programming-> program terdiri dari instruksi yang membentuk perhitungan, menerima input dan menghasilkan output. Contoh bahasa: Fortran, C, dan C++.
  • Object-oriented (OO) programming-> program adalah kumpulan objek yang saling berinteraksi melalui pesan yang mengubah state mereka. Contoh bahasa: Java, C++.
  • Functional programming-> program merupakan kumpulan fungsi matematika dengan input (domain) dan hasil (range). Fungsi-fungsi saling berinteraksi dan berkombinasi mengggunakan komposisi fungsional, kondisional, dan rekursif. Contoh bahasa: Lisp, Scheme,ML
  • Logic (declarative) programming -> memodelkan masalah menggunakan bahasa deklaratif, yang terdiri dari fakta dan aturan. Contoh bahasa : Prolog
  • Event-driven programming-> program merupakan sebuah loop yang secara kontinu  merespon event yang timbul oleh perintah yang tidak terduga.  Event ini berasal dari aksi user pada layar atau sumber lainnya. Contoh bahasa: Visual Basic dan Java.
  • Concurrent programming-> program merupakan sekumpulan proses yang bekerjasama, saling berbagi informasi dari waktu ke waktu tapi biasanya beroperasi secara tidak serempak. Contoh bahasa : SR, Linda, dan HPF.
Beberapa bahasa dirancang mendukung lebih dari satu paradigma. Contoh: C++ (imperative dan OOP), Leda(imperative, OOP, functional, logic).
Bahasa pemrograman telah mengalami perkembangan yang pesat sejak pertama kalinya ditemukan. Bahasa pemrograman yang pertama adalah bahasa mesin yang dirancang pada tahun 1940-an. Sejak saat itu ratusan bahasa pemrograman telah berkembang. Cobol dan Fortran adalah contoh bahasa yang berkembang sangat pesat sejak kemunculannya di akhir tahun 50-an dan telah memberikan pengaruh besar pada perkembangan bahasa lain selama lebih dari 40 tahun. Algol juga merupakan bahasa yang memiliki pengaruh sangat besar kepada para penerusnya seperti C++ dan Java. Java merupakan bahasa yang memberikan dukungan kuat pada paradigma OO, concurrent dan event-driven sehingga merupakan bahasa yang menarik bagi para perancang bahasa. Di wilayah functional programming Lisp merupakan bahasa yang dominan pada masa-masa awal dan masih terus mempengaruhi perkembangan bahasa sekarang seperti Scheme, ML, dan Haskell. Sedangkan di wilayah logic programming, Prolog menjadi satu-satunya pemain utama walaupun tidak banyak mempengaruhi desain bahasa di luar wilayahnya. Pada wilayah event-driven dan conccurent programming yang masih dalam masa awal evolusinya hanya menghasilkan sedikit bahasa yang menonjol, salah satunya adalah HPF.
Perbedaan domain aplikasi dan paradigma serta bahasa yang digunakan, menciptakan komunitas-komunitas programming yang berbeda-beda pula. Komunitas programming itu antara lain : Scientific Computing, Management Information System (MIS), Artificial Intelegence, System, dan Web-centric. Masing-masing komunitas tersebut tidak hanya menggunakan salah satu paradigma saja, tapi mengombinasikannya sesuai dengan kebutuhan domain aplikasi mereka.
Dalam merancang bahasa pemrograman, ada beberapa kendala yang harus diatasi para perancangnya, yakni:
  • Arsitektur komputer.  Bahasa pemrograman dirancang untuk komputer: well-match atau tidak dengan arsitektur komputer yang ada.
  • Kontekstual. Bahasa pemrograman juga harus mampu mengatasi kendala yang timbul akibat  konteks dimana mereka digunakan: wilayah aplikasi, sistem operasi, jaringan dan pilihan komunitas programmingnya.
  • Virtual machines dan Intrepreter. Bahasa pemrograman dianalis untuk selanjutnya diterjemahkan ke dalam bentuk yang dapat dipahami oleh mesin, apabila dijalankan oleh komputer (“real machine”) maka disebut proses compiling. Sedangkan apabila dijalankan oleh sebuah intrepreter (sebuah software yang menyimulasikan “virtual machine” dan menjalankannya dalam “real machine”) maka disebut sebagai proses intrepreting. Virtual machine, secara umum adalah model abstrak dari sebuah komputer yang diimplementasikan dalam software, tapi tidak di dalam hardware. Perancang bahasa harus memutuskan mana yang lebih sesuai untuk bahasa yang sedang dirancang, apakah menggunakan konsep virtual machines atau intrepreter , menurut tujuan dari pengembangan bahasa itu sendiri.
  • Standar. Memenuhi standar yang ditetapkan oleh ANSI (American National Standards Institute),atau ISO (International Standards Organization).
  • Legacy systems atau sistem pendahulu. Agar bahasa yang lama masih tetap bisa di-maintain, bahasa yang lebih baru harus tetap mempertahankan kompatibelitasnya dengan pendahulunya itu.
Selain mengatasi kendala-kendalan yang ada, untuk menciptakan bahasa pemrograman yang elegan, terdapat sejumlah kriteria yang harus dipenuhi oleh bahasa tersebut:
  • Simplicity and Clarity, program harus mudah ditulis dan dimengerti serta dipelajari oleh programmer pada umumnya.
  • Binding, memiliki batasan definisi dan waktu yang jelas, misalnya reserved words, ukuran memori suatu tipe data, run time, dsb.
  • Orthogonality, simbol atau reserved word memilki makna yang sama apapun konteks yang digunakan.
  • Realibility, program akan melakukan hal yang sama ketika memperoleh input data yang sama.
  • Applicability, bahasa tsb menyediakan dukungan yang tepat sesuai dengan domain aplikasi yang digunakan.
  • Abstraction, mendukung abstraksi data dan prosedural sehingga menjadi alat yang disukai dalam proses memprogram.
  • Implementasi yang efisien.

Sumber : http://humblediary.wordpress.com/2010/02/24/tugas-bahasa-pemrograman-i/