Jumat, 26 Desember 2014

The Most Popular Programming Language

Bahasa Pemrograman Apakah Yang Paling Populer Sekarang?




Ketika para developers  mulai menjelajahi dunia, mereka sering menghadapi orang-orang yang berbicara bahasa yang mereka tidak ketahui. Kami tidak berbicara tentang perjalanan ke Eropa, tentu saja, kita sedang berbicara tentang dunia startup, lembaga, dan perusahaan IT, di mana satu toko mungkin berbicara Python sementara yang lain fasih berbahasa Java. Memang ini mungkin agak menyulitkan. Dengan asumsi Anda tidak bisa fasih dalam setiap bahasa pemrograman, mana yang paling penting atau menguntungkan untuk tahu? Salah satu cara untuk menjawab pertanyaan itu adalah untuk mengetahui bahasa apa yang orang-orang yang inginkan dari programmer yang mereka sewa. Artinya, bahasa apa yang sebagian besar dicari untuk pekerjaan pemrograman saat ini . Untuk mengetahuinya, kita melihat ke data pendidikan, lowongan pekerjaan, dan in-the-parit pengalaman spesialis penempatan IT.

Phtyton 

Salah satu indikasi apa yang populer-atau setidaknya apa yang merupakan dasar standar adalah bahasa pemrograman apa yang lembaga pendidikan pilih untuk kursus pengantar pemrograman mereka. Dalam sebuah posting di Blog @ CACM, Philip Guo, asisten profesor ilmu komputer di University of Rochester, tampak di bagian  39 teratas departemen ilmu komputer di antara universitas AS (sebagai peringkat oleh US News.) Setelah menganalisi angka tersebut, Guo menemukan bahwa Python adalah bahasa yang paling sering diajarkan pada pemrograman, dengan 27 kelas, diikuti oleh Java dengan 22 kelas dan MATLAB di tempat ketiga dengan 8 kelas. menurut Guo, Java telah memimpin untuk sebagian besar dekade terakhir, hanya baru-baru ini sedang dikalahkan oleh Python.

Top39-700.4 (Grafik di atas digunakan dengan izin dari blog @ CACM.)

Java

Tentu saja, sekolah memiliki kebutuhan yang berbeda dari pengusaha di dunia nyata. Sekolah biasanya lebih memilih siswa untuk memulai dengan bahasa pemorgraman dengan tingkat tinggi, yang mudah di baca seperti Python. Itu terutama berlaku untuk kursus intro-to-program yan g dirancang untuk siswa yang tidak mengikuti jurusan CS, untuk membuatnya lebih mudah belajar konsep di balik sebuah pemrograman.  Menurut Dice di Juli, data 2014, Java (termasuk Java Platform Enterprise Edition, Oracle versi diperpanjang) dan berbagai jenis dari C (termasuk C ++ dan C #) berada di daftar paling atas, dengan 17.393 dan 16.172 lowongan pekerjaan meminta keterampilan-keterampilan tersebut. JavaScript, NET, HTML, XML juga termasuk . Python pada tingkat ke delapan, dengan 5.142 permintaan. Situs lain yang melacak popularitas pemrograman-bahasa adalah IEEE Spectrum, majalah unggulan dari organisasi teknologi profesional. Peringkatnya mengacu pada 12 metrik dari 10 sumber, termasuk permintaan untuk informasi tentang Google Trends, jumlah repositori baru untuk setiap bahasa di GitHub, dan pertanyaan yang diajukan tentang bahasa pada Stack Overflow.  Berikut ini adalah keseluruhan daftar sepuluh aplikasi sebagai Juli 2014:

1. Java
2. C
3. C ++
4. Pyton
5. C #
6. PHP
7. Javascript
8. rubi
9. R
10. MATLAB


Apa artinya semua ini bagi Anda?

Jelas, jika semua yang Anda cari adalah pekerjaan dalam pemrograman, Anda tidak bisa salah menjadi fasih di Java. Sebenarnya, Java "run anywhere" kualitasnya terdapat pada lokasi dan industri serta platform yang ada. Setelah itu, itu tergantung pada kombinasi apa jenis aplikasi yang ingin bekerja dan di mana Anda ingin bekerja. Mempelajari C dan C ++ jika Anda ingin mengembangkan sistem kontrol untuk utilitas dan industri berat. Tetap up to date pada .NET akan membantu mendapatkan pekerjaan di mana saja asalkan Microsoft tetap kuat. Dan Python akan membekali Anda untuk bekerja pada proyek-proyek atau pengembangan Web yang semakin populer, tetapi jika anda gagal, tampaknya anda bisa mengajarkan pemrograman untuk mahasiswa baru.

sumber : Oleh Jake Widman Posted in Nerd Culture, Topik Tech, Top Post 18 Agustus  2014 pada http://blog.newrelic.com/2014/08/18/programming-languages-popular/

Sejarah Bahasa Pemrograman




Bahasa pemograman adalah teknik komando/instruksi standar untuk memerintah komputer.Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer.
Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenislangkah apa secara persis yang akan diambil dalam berbagai situasi.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:
  1. Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
  2. Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bahasa InggrisAssembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
  3. Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
  4. Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb.
Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.

Untuk melaksanakan tugas maka komputer akan diperintah oleh sebuah sistem, perintah dasar komputer ini disimpan ke dalam sebuah sistem yang disebut sebagai sistem operasi seperti DOS, Unix, Windows, LinuxSolaris dsb. Perintah-perintah tersebut tentunya menggunakan bahasa mesin yang oleh komputer hanya mengenal angka 1 dan 0 (binary) dimana angka 1 dipresentasikan sebagai sebuah wadah yang mimiliki listrik dan angka 0 tidak memiliki listrik (Tegangan).
Untuk membuat sebuah sistem dikomputer maka diperlukan sebuah alat (tools) yang kita sebut sebagai bahasa pemrograman, jadi yang terlintas dibenak kita saat ini adalah “Alat yang dibuat untuk membuat program (sistem) disebut sebagai bahasa pemrograman”, sehingga Program-Program seperti Macro/Turbo Assembly, Turbo C, Microsft Visual C++, C++ Builder, Microsoft Visual Basic, Delphi dsb digunakan untuk membuat aplikasi bukan sebagai aplikasi untuk mengolah data seperti Microsoft Excel, SPPS dsb.
Atau dapat juga dikatakan bahwa bahasa pemrograman adalah bahasa yang digunakan pada komputer untuk melakukan tugas tertentu. Seperti juga bahasa yang digunakan manusia secara umum, bahasa pemrograman banyak sekali jenisnya.
Bahasa pemrograman dapat dikelompokkan berdasarkan tingkatan, seperti bahasa tingkat rendah (low Level), bahasa tingkat sedang (Mid Level Language), bahasa tingkat tinggi .
Berikut adalah ringkasan sejarah bahasa pemrorgraman.
Sebelum 1940
Pada jaman ini terdapat bahasa pemrograman yang pertama kali muncul sebelum adanya komputer modern, artinya bahasa pemrograman lebih tua dari komputer itu sendiri. Pada awal kemunculannya, bahasa pemrograman masih dalam bentuk kode-kode bahasa mesin. Bahasa mesin merupakan bahasa yang terdiri atas kode-kode mesin dan hanya dapat diinterpretasikan langsung oleh mesin komputer. Bahasa mesin ini tergolong bahasa tingkat rendah, karena hanya berupa kode 0 dan 1 seperti disampaikan pada bagian atas.
Periode 1940-an
 40
Dengan bahasa mesin ditemukan banyak kesulitan untuk pengembangan dan perbaikan pada program yang dibuat saat itu, Tahun 1940-an komputer bertenaga listrik dibuat, dengan kecepatan yang sangat terbatas dan kapasitas memori yang mencukupi untuk programmer memprogram, kemudian terciptalah bahasa assembly (Assembly language). Bahasa assembly adalah bahasa simbol dari bahasa mesin. Setiap kode bahasa mesin memiliki simbol sendiri dalam bahasa assembly. Misalnya Move untuk memindahkan isi data, ADD untuk penjumlahan, MUL untuk perkalian, SUB untuk pengurangan, dan lain-lain. Penggunaan bahasa Asembly dirasa belum sempurna karena selain sulit untuk diimplementasikan, ternyata bahasa ini juga sulit jika sang programer ingin mengembangkan program buatannya. Pada tahun 1948, Konrad Zuse mempublikasikan sebuah paper tentang bahasa pemrograman miliknya yakni Plankalkül. Bagaimanapun, bahasa tersebut tidak digunakan pada masanya dan terisolasi terhadap perkembangan bahasa pemrograman yang lain. Beberapa bahasa pemrograman yang berkembang pada masa itu antara lain:
• Plankalkül (Konrad Zuse) – 1943
• ENIAC coding system – 1943
• C-10 – 1949
Periode tahun 1950-an sampai dengan tahun 1960-an
 50
Mulai tahun 1950 dibuatlah bahasa pemrograman modern, yang turun-temurun dan tersebar luas hingga saat ini. Bahasa ini menggunakan istilah atau reserved word yang dekat dengan bahasa manusia seperti READ untuk membaca, WRITE untuk menulis dsb. Dalam perkembangannya Bahasa Tingkat Tinggi juga terdiri dari beberapa metode pemrograman, yaitu Procedural Programing dan Object Oriented Programing. Letak perbedaannya yaitu, jika pada procedural programing program dijalankan dengan menggabungkan variable, procedure-procedure yang saling keterkaitan dan berjalan berurut, sedangkan pada OOP seluruh task dijalankan berdasarkan kedalam object.
• FORTRAN (1955), the “FORmula TRANslator”, ditemukan oleh John W. Backus dll.
• LISP, the “LISt Processor”, ditemukan oleh John McCarthy dll.
• COBOL, the COmmon Bussines Oriented Language, dibuat oleh the Short Range Commitee, dan Grace Hopper berperan sangat besar disini.
Overview:
  • • Regional Assembly Language – 1951
  • • Autocode – 1952
  • • FORTRAN – 1954
  • • FLOW-MATIC – 1955
  • • COMTRAN – 1957
  • • LISP – 1958
  • • ALGOL – 1958
  • • COBOL – 1959
  • • APL – 1962
  • • SIMULA – 1962
  • • BASIC – 1964
  • • PL/I -1964



Periode 1967-1978: Menetapkan Paradigma Fundamental
Periode diantara tahun 60-an sampai dengan 70-an membawa pengaruh yang besar dalam perkembangan bahasa pemrograman.
 Kebanyakan dari pola bahasa pemrograman yang utama yang saat ini banyak digunakan:
• Simula, ditemukan pada akhir 60-an oleh Nygaard dan Dahl sebagai superset dari Algol 60, merupakan bahasa pemrograman pertama yang didesain untuk mendukun pemrograman berorientasi object.
• C, sebuah tahapan awal dari sistem bahsa pemrograman, yang dikembangkan oleh Dennis Ritchie dan Ken Thompson di Bell Labs antara tahun 1969 dan 1973.
• Smalltalk (pertengahan tahun 70-an) menyajikan desain ground-up yang lengkap dari sebuah bahasa yang berorientasi objek.
• Prolog, didesain pada tahun 1977 oleh Colmerauer, Roussel, and Kowalski, merupakan bahasa pemrograman logika yang pertama.
• ML membangun sebuah sistem polimorfis (ditemukan oleh Robin Miller pada tahun 1973) diatas sebuah Lisp, yang merintis bahasa pemrograman fungsional bertipe statis.
Beberapa bahasa pemrograman yang berkembang dalam periode ini termasuk:
  • • Pascal – 1970
  • • Forth – 1970
  • • C – 1970
  • • Smaltalk – 1972
  • • Prolog – 1972
  • • ML – 1973
  • • SQL – 1978
Periode 1980-an: konsolidasi, modul, performa
1980s adalah tahun dari konsolidasi relatif. C++ dikombinasikan dengan sistem programming dan berorientasi obyek. Pemerintah Amerika Serikat menstandardisasi Ada, sebuah sistem pemrograman yang bertujuan untuk digunakan para kontraktor untuk bertahan. Di Jepang dan di tempat lain, penjumlahan luas yang telah di selidiki disebut” generasi ke lima” bahasa-bahasa yang menyatukan logika pemrograman konstruksi. Masyarakat bahasa fungsional gerak ke standarisasi ML dan Cedal. Dibandingkan dengan menemukan paradigma-paradigma baru, semua pergerakan ini menekuni gagasan-gagasan yang ditemukan di dalam dekade sebelumnya.
However, one important new trend in language design was an increased focus on programming for large-scale systems through the use of modules, or large-scale organizational units of code. Modula, Ada, and ML all developed notable module systems in the 1980s. Module systems were often wedded to generic programming constructs generics being, in essence, parameterized modules (see also parametric polymorphism).
Bagaimanapun, satu kecenderungan baru di dalam disain bahasa adalah satu fokus yang ditingkatkan di pemrograman untuk sistem besar-besaran melalui penggunaan dari modul, atau kesatuan organisasi besar-besaran dari kode. Modula, Ada, dan ML semua sistem modul terkemuka yang dikembangkan pada 1980-an.




Beberapa bahasa pemrograman yang berkembang dalam periode ini termasuk:
  • • Ada – 1983
  • • C++ – 1983
  • • Eiffel – 1985
  • • Perl – 1987
  • • FL (Backus) – 1989
Periode 1990-an: Visual
Pada periode ini bahasa selain berorientasi objek juga sudah dikembangkan berbasi Visual sehingga semakin mudah untuk membuat program aplikasi, diawali oleh Python dan Microsoft Visual Basic 1 pada tahun 1991, Delphi yang dikembangkan dari Pascal for windows akhirnya pada tahun 1997 Visual Basic 5 diluncurkan dengan kemudahan koneksi ke database, OO Cobol sudah ditemukan dalam versi windows. Bagi kebanyakan programmer database tidak dapat dipungkiri bahwa era 1990an merupakan era yang paling produktif semenjak bahasa pemrogrammar diciptakan.
Beberapa bahasa pemrograman yang berkembang dalam periode ini termasuk
  • • Haskel – 1990
  • • Python – 1991
  • • Java – 1991
  • • Ruby – 1993
  • • OO Cobol
  • • Lua – 1993
  • • ANSI Common Lisp – 1994
  • • JavaScript – 1995
  • • PHP – 1995
  • • C# – 2000
  • • JavaFX Scrip, Live Script,
  • • Visual Basic
Periode 2000an hingga tulisan ini dibuat
Pada saat ini ada kecenderungan para vendor bahasa pemrograman untuk menggiring programmer hanya dengan mengggunakan produk mereka untuk membuat program meski kita sadari bahwa sulit rasanya untuk membuat program yang tangguh hanya dengan satu bahasa pemrograman, hal ini tentunya dilakukan dengan tujuan kelangsungan usaha mereka, namun terlepas dari semua itu terdapat dua konsepsi besar dalam periode ini dimana kemudahan berbasis visual sudah mulai digiring ke basis internet dan mobile, dengan bermunculan webservice dan berbasis net dan a mobile flatform.


Konsep pertama yang dicermati adalah konsepsi Microsoft dimana dengan Visual Net akan menyediakan berbagai bahasa pemrograman seperti VB Net , VC++ Net, ASP NET yang di compile dengan berbagai bahasa akan tetapi berjalan pada satu sistem operasi yakni windows. (Compile any program run one system)
Konsepsi Kedua, Merupakan konsep yang terbalik dari konsep pertama yakni apa yang ditawarkan Sun Microsystem melalui produknya Java, J2ME, JDK, yakni dicompile dengan satu bahasa pemrograman (java) dan berjalan dibanyak sistem operasi. (Compile one program running any system)
Selain itu periode ini juga merupakan jamannya CMS (Content Manajemen System), lompatan pengembangan PHP Script begitu cepat, dimana untuk membuat website atau portal telah tersedia banyak template, Banyak modul-modul yang siap pakai sehingga programmer atau webmaster tidak perlu lagi mempelajari semua script html dan bahasanya, tinggal merangkai modul yang tersedia sehingga dalam beberapa hari saja sebuah web sudah dapat dibuat. Apa yang ditawarkan Mambo, PhkNuke dan Jomla saat ini sangat memudahkan para desainer web.
Beberapa bahasa pemrograman yang berkembang dalam periode ini termasuk
• Tcl/Tk,
• O’Caml,
• Ruby,
• Phyton 3.1,
• Java 6 JDK, JED, Java Beans, J2ME
• Microsoft Visual Net (VB Net, C++ Net, ASP NET) 2008
• Java Scrip Template oleh Mambo, PhpNuke, Jomla

Sejarah pandangan pertama tiga generasi

Istilah “generasi pertama” dan “generasi kedua” bahasa pemrograman tidak digunakan sebelum coining dari istilah “generasi ketiga.” Bahkan, tak satupun dari ketiga istilah yang disebutkan dalam kompendium awal bahasa pemrograman. Pengenalan generasi ketiga dari teknologi komputer bertepatan dengan penciptaan generasi baru bahasa pemrograman. Pemasaran untuk pergeseran generasi dalam mesin tidak berkorelasi dengan beberapa perubahan penting dalam apa yang disebut tingkat tinggi bahasa pemrograman, dibahas di bawah, memberikan konten teknis untuk perbedaan kedua / ketiga-generasi antara bahasa pemrograman tingkat tinggi juga, dan mengubah nama refleks bahasa assembler sebagai generasi pertama.

Generasi Kedua

Bahasa pemrograman generasi kedua, awalnya hanya disebut bahasa pemrograman tingkat tinggi , diciptakan untuk menyederhanakan beban pemrograman dengan membuat ekspresi yang lebih seperti modus normal ekspresi pemikiran yang digunakan oleh programmer. Mereka diperkenalkan pada akhir 1950-an, dengan FORTRAN mencerminkan kebutuhan programmer ilmiah, ALGOL mencerminkan upaya untuk menghasilkan tampilan standar Eropa / Amerika.
Masalah yang paling penting yang dihadapi oleh para pengembang dari tingkat kedua bahasa adalah pelanggan meyakinkan bahwa kode yang dihasilkan oleh para penyusun dilakukan dengan baik-cukup untuk membenarkan meninggalkan pemrograman assembler. Dalam pandangan skeptisisme luas tentang kemungkinan memproduksi program efisien dengan sistem pemrograman otomatis dan fakta bahwa inefisiensi tidak bisa lagi disembunyikan, para pengembang yakin bahwa jenis sistem yang mereka ada dalam pikiran akan banyak digunakan hanya jika mereka bisa menunjukkan bahwa hal itu akan menghasilkan program hampir seefisien yang tangan kode dan melakukannya pada hampir setiap pekerjaan. Compiler FORTRAN dipandang sebagai tour de force-dalam produksi berkualitas tinggi kode, bahkan termasuk “… a Monte Carlo simulasi pelaksanaannya … sehingga dapat meminimalkan transfer barang antara toko dan indeks register.”

Generasi ketiga

Pengenalan generasi ketiga dari teknologi komputer bertepatan dengan penciptaan generasi baru bahasa pemrograman. [1] Fitur penting dari generasi ketiga bahasa adalah hardware-kemerdekaan mereka, ekspresi yaitu algoritma dengan cara yang independen dari karakteristik mesin yang algoritma akan berjalan.
Beberapa atau semua dari sejumlah perkembangan lain yang terjadi pada saat yang sama dimasukkan dalam 3GLs.
Interpretasi diperkenalkan. 3GLs Beberapa disusun , proses analog dengan penciptaan dieksekusi kode mesin lengkap dari kode assembly, perbedaan adalah bahwa dalam bahasa tingkat tinggi tidak ada lagi hubungan, satu-ke-satu, atau bahkan linier antara petunjuk source code kode mesin instruksi dan. Compiler dapat menargetkan hardware yang berbeda dengan memproduksi terjemahan yang berbeda dari perintah kode sumber yang sama.
Penafsir, di sisi lain, pada dasarnya menjalankan instruksi kode sumber itu sendiri – jika seseorang menemukan sebuah “add” instruksi, ia melakukan tambahan itu sendiri, daripada keluaran instruksi tambahan akan dieksekusi kemudian. Mesin-kemerdekaan dicapai dengan memiliki interpreter yang berbeda dalam kode mesin dari platform yang ditargetkan, yaitu penafsir itu sendiri umumnya harus dikompilasi. Interpretasi bukanlah “muka” linear, tetapi model alternatif untuk kompilasi, yang terus ada di samping, dan lainnya, baru-baru ini dikembangkan, hibrida. Lisp adalah bahasa interprepreted awal.
Para 3GLs awal, seperti Fortran dan Cobol , adalah spaghetti kode , yaitu mereka memiliki gaya yang sama dari aliran kontrol sebagai assembler dan kode mesin , membuat penggunaan berat dari goto pernyataan. pemrograman terstruktur [2] diperkenalkan model di mana program itu dilihat sebagai hirarki blok bersarang daripada daftar linear instruksi. Misalnya, programmer terstruktur adalah untuk memahami sebuah loop sebagai blok kode yang diulang, bukan perintah begitu banyak diikuti oleh melompat mundur atau goto. Pemrograman terstruktur kurang tentang kekuasaan – dalam arti satu tingkat yang lebih tinggi commannd ekspansi ke berbagai tingkat rendah yang – dari keselamatan. Pemrogram berikut ini jauh kurang rentan untuk membuat kesalahan. Pembagian kode ke blok, subrutin dan modul lainnya dengan antarmuka jelas-didefinisikan juga memiliki manfaat produktivitas dalam memungkinkan programmer banyak untuk bekerja pada satu proyek. Setelah diperkenalkan (dalam ALGOL bahasa), pemrograman terstruktur dimasukkan ke dalam hampir semua bahasa, dan dipasang dengan bahasa yang awalnya tidak memilikinya, seperti Fortran, dll
Struktur Blok juga dikaitkan dengan depresiasi variabel global , sumber kesalahan yang sama dengan goto . Sebaliknya, bahasa terstruktur diperkenalkan scoping leksikal dan manajemen penyimpanan otomatis dengan stack.
Fitur lain yang tingkat tinggi adalah pengembangan dari sistem tipe yang melampaui jenis data kode mesin yang mendasari, seperti string , array dan catatan .
Dimana 3GLs awal adalah tujuan khusus, (misalnya ilmu pengetahuan atau perdagangan) upaya telah dilakukan untuk menciptakan tujuan umum bahasa, seperti C dan Pascal . Sementara ini menikmati sukses besar, domain bahasa tertentu tidak menghilang.

Sebuah karakterisasi alternatif dari tiga generasi pertama


Karena setidaknya 1979, banyak penulis  telah menggunakan karakterisasi yang berbeda dari generasi bahasa pemrograman.

Generasi Pertama

Dalam kategorisasi ini, generasi pertama bahasa pemrograman mengacu pada angka kode mesin , yaitu petunjuk numerik secara langsung sesuai dengan petunjuk perangkat keras individu.
Awalnya, tidak ada penerjemah yang digunakan untuk mengkompilasi atau merakit sumber assembler untuk menghasilkan kode mesin numerik. Generasi pertama instruksi pemrograman yang masuk melalui switch panel depan dari sistem komputer.
Manfaat utama dari pemrograman dalam kode mesin adalah bahwa kode pengguna menulis dapat berjalan sangat cepat dan efisien, karena secara langsung dieksekusi oleh CPU . Namun, kode mesin adalah jauh lebih sulit untuk belajar dari yang lebih tinggi bahasa pemrograman generasi, dan itu jauh lebih sulit untuk mengedit jika terjadi kesalahan. Selain itu, jika instruksi perlu ditambahkan ke dalam memori di lokasi tertentu, maka semua instruksi setelah titik penyisipan perlu dipindahkan ke membuat ruang dalam memori untuk menampung instruksi baru. Melakukannya pada panel depan dengan switch bisa sangat sulit.

Generasi Kedua

Generasi kedua bahasa pemrograman mengacu pada (simbolis) bahasa assembly . Istilah ini diciptakan untuk memberikan perbedaan dari sebelumnya bahasa kode mesin dan tingkat yang lebih tinggi bahasa pemrograman generasi ketiga (3GL) seperti Fortran , COBOL danAlgol . Generasi kedua bahasa pemrograman memiliki sifat sebagai berikut:
  • Kode assembly simbolis dapat dibaca dan ditulis oleh seorang programmer. Untuk menjalankan pada komputer harus dikonversi ke dalam bentuk mesin yang dapat dibaca, proses yang disebut perakitan.
  • Bahasa adalah satu-ke-satu korespondensi dengan instruksi mesin dari keluarga prosesor tertentu dan lingkungan.
Majelis bahasa kadang-kadang digunakan dalam kernel dan driver perangkat (meskipun Cumumnya digunakan untuk ini di kernel modern), tetapi lebih sering menemukan penggunaan dalam pengolahan yang sangat intensif seperti game, video editing, grafis manipulasi / render.
Salah satu metode untuk membuat kode seperti ini dengan memungkinkan compiler untuk menghasilkan mesin-dioptimalkan perakitan versi bahasa fungsi tertentu. Sumber perakitan kemudian tangan-tuned, memperoleh wawasan baik brute-force dari algoritma mesin mengoptimalkan dan kemampuan intuitif optimizer manusia.

Generasi ketiga

Generasi ketiga bahasa pemrograman (3GL) awalnya disebut semua bahasa pemrograman pada tingkat yang lebih tinggi dari perakitan. Sedangkan instruksi individu dari bahasa generasi kedua dalam satu-ke-satu korespondensi dengan instruksi mesin individu (yaitu mereka yang dekat dengan domain mesin), bahasa generasi ketiga bertujuan untuk menjadi lebih dekat ke domain manusia. Instruksi beroperasi pada tingkat, lebih tinggi abstrak, lebih dekat dengan cara berpikir manusia, dan setiap instruksi individu dapat diterjemahkan ke dalam sejumlah (besar kemungkinan) mesin-tingkat instruksi. Bahasa generasi ketiga dimaksudkan untuk lebih mudah digunakan daripada bahasa generasi kedua. Dalam rangka untuk menjalankan pada komputer yang sebenarnya, kode yang ditulis dalam bahasa generasi ketiga harus dikompilasi baik secara langsung ke dalam kode mesin, atau ke perakitan, dan kemudian dirakit. Kode yang ditulis dalam bahasa generasi ketiga umumnya dapat dikompilasi untuk dijalankan pada komputer yang berbeda menggunakan berbagai arsitektur perangkat keras.
Pertama kali diperkenalkan pada akhir 1950-an, FORTRAN , ALGOL dan COBOL adalah contoh awal dari bahasa generasi ketiga.
Bahasa generasi ketiga cenderung baik seluruhnya (atau hampir seluruhnya) independen dari hardware, seperti untuk keperluan umum bahasa seperti Pascal , Java , FORTRAN , dll, meskipun beberapa telah ditargetkan pada prosesor tertentu atau arsitektur keluarga prosesor, seperti , misalnya PL / M yang ditargetkan pada prosesor Intel, atau bahkan C , yang sebagian auto-increment dan auto-decrement idiom seperti * (c + +) berasal dari hardware PDP-11 ini yang mendukung auto-increment dan auto-decrement mode pengalamatan tidak langsung, dan di mana C pertama kali dikembangkan.
Kebanyakan “modern” bahasa ( BASIC , C , C + + , C # , Pascal , Ada , dan Jawa ) juga generasi ketiga bahasa.
Dukungan 3GLs Banyak terstruktur pemrograman .

generasi Kemudian

Awalnya, bahasa pemrograman semua pada tingkat yang lebih tinggi dari perakitan yang disebut “generasi ketiga”, tetapi kemudian, istilah “generasi keempat” diperkenalkan untuk mencoba membedakan (kemudian) bahasa deklaratif baru (seperti Prolog dan domain- spesifik bahasa) yang diklaim beroperasi pada tingkat yang lebih tinggi, dan dalam domain bahkan lebih dekat ke pengguna (misalnya pada tingkat bahasa alami) daripada asli, bahasa tingkat tinggi seperti imperatif Pascal , C , Algol , Fortran , BASIC , dan lain-lain
“Generasi” klasifikasi bahasa tingkat tinggi (generasi ke-3 dan kemudian) tidak pernah sepenuhnya tepat dan kemudian mungkin ditinggalkan, dengan klasifikasi yang lebih tepat mendapatkan penggunaan umum, seperti object-oriented , deklaratif dan fungsional. Cmemunculkan C + + dan kemudian Java dan C # , Lisp untuk CLOS , Ada ke Ada 2.012 , dan bahkan COBOL untuk COBOL2002 , dan bahasa baru telah muncul dalam “generasi” juga.


Sumber : http://infomaticexpo.wordpress.com/tugas-tugas-kuliah-dan-info-menarik/sejarah-dan-perkembangan-bahasa-pemograman/
Copyright 2010 @ Klaten WEB.com & wikipedia.com

Sabtu, 13 Desember 2014

TUGAS

1. Apa yang dimaksud HTTP ?

HTTP merupakan singkatan dari HyperText Transfer ProtocolPengertian HTTP / Definisinya adalah sebuah protokol untuk melakukan akses antara client dan server. Client dan server masing-masing salaing menerima dan menjawab request keduanya. Sebuh client HTTP seperti web browser, biasanya memulai permintaan dengan membuat hubungan TCP/IP ke port tertentu di tempat yang jauh (biasanya port 80 atau 8080). Sebuah server HTTP yang mendengarkan di port tersebut menunggu client mengirim kode permintaan (request) yang akan meminta halaman yang sudah ditentukan, diikuti dengan pesan MIME yang memiliki beberapa informasi kode kepala yang menjelaskan aspek dari permintaan tersebut, diikut dengan badan dari data tertentu.

HTTP berkomunikasi melalui TCP / IP. Klien HTTP terhubung ke server HTTP menggunakan TCP. Setelah membuat sambungan, klien dapat mengirim pesan permintaan HTTP ke server. HTTP digunakan untuk mengirimkan permintaan dari klien web (browser) ke web server, dikembali kan ke konten web (halaman web) dari server ke klien.


2.  Apa yang dimaksud Protokol?

Protokol adalah sebuah aturan atau standar yang mengatur atau mengijinkan terjadinya hubungan, komunikasi, dan perpindahan data antara dua atau lebih titik komputer. Protokoldapat diterapkan pada perangkat keras, perangkat lunak atau kombinasi dari keduanya. Pada tingkatan yang terendah, protokol mendefinisikan koneksi perangkat keras.
Protokol perlu diutamakan pada penggunaan standar teknis, untuk menspesifikasi bagaimana membangun komputer atau menghubungkan peralatan perangkat keras. Protokol secara umum digunakan pada komunikasi real time dimana standar digunakan untuk mengatur struktur dari informasi untuk penyimpanan jangka panjang.
Sangat susah untuk menggeneralisir protokol dikarenakan protokol memiliki banyak variasi di dalam tujuan penggunaanya. Kebanyakan protokol memiliki salah satu atau beberapa dari hal berikut:
·         Melakukan deteksi adanya koneksi fisik atau ada tidaknya komputer atau mesin lainnya.
·         Melakukan metode "jabat-tangan" (handshaking).
·         Negosiasi berbagai macam karakteristik hubungan.
·         Bagaimana mengawali dan mengakhiri suatu pesan.
·         Bagaimana format pesan yang digunakan.
·         Yang harus dilakukan saat terjadi kerusakan pesan atau pesan yang tidak sempurna.
·         Mendeteksi rugi-rugi pada hubungan jaringan dan langkah-langkah yang dilakukan selanjutnya
·         Mengakhiri suatu koneksi.




3. Apa yang dimaksud IP Address? sertakan contohnya!

A. Pengertian IP Address
      IP address adalah alamat identifikasi komputer/host yang berada didalam jaringan. Dengan adanya IP address maka data yang dikirimkan oleh host/komputer pengirim dapat dikirimkan lewat protokol TCP/IP hingga sampai ke host/komputer yang dituju.
       Setiap komputer/host memiliki IP address yang unik sehingga dua komputer/host yang berbeda tidak boleh memiliki IP address yang sama dalam satu jaringan.

B. Format IP address
       IP address dinyatakan dalam struktur bilangan biner yang terdiri atas 32 bit dengan bentuk sebagai berikut.

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Misalnya
11000000000010100001111000000010
       Agar kita mudah membaca IP address, maka 32 bit bilangan itu dibagi ke dalam 4 segmen yang masing-masing berisi 8 bit. Kedelapan bit itu bisa disebutoktat.
       Selanjutnya, setiap oktat diterjemahkan ke dalam bilangan decimal. Misalnya:
11000000     =     192
00001010     =     10
00011110     =     30
00000010     =     2

       Adapun nilai terbesar dari 8 bit adalah 11111111 atau sama dengan 225. Dengan demikian, jumlah IP address seluruhnya adalah 225 x 225 x 225 x 225.
       Struktur IP address terdiri atas dua bagian yaitu bagian networkID danhostID. NetworkID menunjukkan ID alamat jaringan tempat host-host berada, sedangkan hostID adalah bagian yang menunjukkan host itu berada. Sederhananya, network ID seperti nama jalan sedangkan hostID adalah nomor rumah dijalan tersebut.

4. Apa yang dimaksud domain dan kaitannya dengan IP Address?

Domain adalah suatu nama berformat huruf abjad (a,b,c,d,e,dan seterusnya) dan angka (1,2,3,dan seterusnya) serta simbol (-)untuk menamai alamat url website untuk mengidenfitikasi sebagai pengganti format deretan angka alamat IP client server hosting tempat file website diletakkan.
Contoh : misal alamat IP server tempat file web kita disimpan adalah 77.165.90.89 sebenarnya kita bisa saja mengetikkan 77.165.90.89 langsung di browser untuk mengakses website kita, namun hal ini tentunya sangat tidak baik bagi ingatan orang khususnya ingatan pengunjung website yang mengakses website kita. Sehingga fungsi domain lebih untuk mudahkan orang mengingat sebuah nama url dibanding deretan deretan angka IP. Untuk itu diperlukan domain guna mengganti deretan angka tersebut agar menjadi deretan kata yang tentunya gampang diingat. misal:namadomain.com akan lebih mudah diingat ketimbang angka 218.719.51.617
Hubungannya dengan IP Address adalah, ibarat domain adalah IP address yang di terjemahkan dalam bentuk huruf (nama unik)

Sumber :
destymetik.blogspot.com


wikipedia