Kamis, 22 November 2012

Generasi Bahasa Pemrogaman

Generasi Bahasa Pemrogaman

Perkembangan bahasa pemrograman mungkin tidak semudah yang kita kira, namun perkembangan tersebut sangatlah sulit dan memakan waktu yang lama hingga bisa menjadi bahasa pemrograman yang bisa kita nikmati sekarang ini. Pembagian generasi bahasa adalah seperti berikut:
• First-Generation Language (1GL) adalah bahasa mesin atau level instruksi dan data, yang diberikan kepada prosesor agar dapat bekerja. Pada komputer konvensiona terdiri dari deretan angka 0 dan 1.
• Second-Generation Language (2GL) adalah bahasa pemrograman assembler (orang juga mengenalnya sebagai bahasa assembly). Pada bahasa perograman generasi kedua ini assembler mengubah pernyataan bahasa pemrograman ke bahasa mesin.
• Third-Generation Language (3GL) merupakan bahasa pemrograman yang masuk dalam generasi ketiga. Ini adalah bahasa pemrograman tingkat tinggi, seperti PL/1, C, atau Java.
• Fourth-Generation Language (4GL) adalah bahasa pemrograman yang didesain lebih “natural”, sehingga makin mudah digunakan.
• Fifth-Generation Language (5GL) adalah bahasa pemrograman yang menggunakan interface pengembangan visual atau grafik untuk membuat bahasasumbernya, yang biasanya di-compile dengan compiler 3GL atau 4GL.

Perkembangan Bahasa

• Perkembangan bahasa pemrograman dimulai pada tahun 1949 dengan hadirnya Short Code, bahasa pemrograman komputer pertama yang digunakan dalam peralatan komputer elektronik. Ini masih berupa bahasa pemrograman manual (hand-compiled).
• Pada tahun 1951, Grace Hopper yang bekerja pada Remington Rand mulai bekerja untuk mendesain sebuah compiler yang diberi nama A-0. Pada tahun 1957, bahasa pemrograman ini kemudian dirilis oleh Rand dengan nama Math-matic.
• Kemudian Alick E. Glennie, di waktu senggangnya di Universitas Manchester, berhasil membuat programming system bernama AUTOCODE pada tahun 1952. Sekitar lima tahun setelahnya dirilislah mathematical FORmula TRANslating (FORTRAN), dan menjadi salah satu bahasa pemrograman yang mudah digunakan pada tahun itu.
• FORTRAN dibuat oleh tim yang diketuai oleh John Backus, yang kemudian juga memiliki konstribusi dalam pembuatan bahasa pemrograman ALGOL.
• Setahun kemudian, muncul FORTRAN II yang mampu menjalankan perintah subroutines dan koneksi ke bahasa assembly. Dan, pada tahun yang sama juga dirilis bahasa pemrograman ALGOL. Pada tahun 1960 muncul ALGOL 60. Bahasa pemrogramana ini sangat popular di Eropa pada pertengahan 1960-an. Pada tahun 1962, APL (A Programming Language) dirilis oleh Kenneth Iverson. Pada tahun yang sama juga dirilis FORTRAN IV.
• Perkembangan bahasa pemrograman terus berlanjut dengan munculnya berturut turut APL/360 dan PL/1 pada tahun 1964, SNOBOL3 pada 1965, FORTRAN 66 dan LISP 2 pada 1966, SNOBOL 4 pada 1967, ALGOL 68, ALTRAN, dan COBOL.
• Pada tahun 1975, Bob Albrecht dan Dennis Allison merilis Tiny BASIC. Pada tahun yang sama, Bill Gates dan Paul Allen merilis BASIC yang mereka jual ke MITS (Micro Instrumentation and Telemetry Systems). Tahun-tahun selanjutnya, beberapa bahasa pemrograman baru bermunculan. Di antaranya AWK yang dirilis tahun 1978; Smalltalk-80, Modula-2, Franz LISP pada tahun 1980; dan ISO Pascal serta PostScript yang dirilis pada tahun 1982. Pada tahun 1983 dirilis bahasa pemrograman Ada.
• Nama tersebut diambil dari Lady Augusta Ada Byron, yang menyandang gelar programer komputer pertama karena hasil kerjanya pada Charles Babbage’s analytical engine di tahun 1842.
• Tahun 1986, selain Apple telah merilis Object Pascal dan Borland merilis Turbo Prolog, pada tahun yang sama juga dirilis bahasa pemrogramanC++ dan Eiffel. Setahun sesudahnya dirilis Turbo Pascal version 4.0. Bahasa pemrograman C++ berkembang pesat dengan dirilisnya C++ 2.0 pada tahun 1989, dan C++ 2.1 pada tahun 1990. Ini bersamaan dengan dirilisnya FORTRAN 90. Setahun kemudian, Microsoft kembali merilis Visual Basic, yang kemudian memenangkan penghargaan BYTE’s Best of Show saat COMDEX.
• Bahasa pemrograman terus berkembang hingga tahun ini, dengan diilisnya Java 2 (versi 1.4), Python 2.2, J#, dan F#.

Bahasa Modern (Java)

• Kelahiran Java dimulai tahun 1991. Bahasa Java merupakan proyek penelitian Sun Microsystems yang diberi nama kode Green. Proyek ini bertujuan membangun sistem yang memungkinkan komputer berperan dalam rumah tangga. Fokus pertama proyek adalah pada TV kabel yang disebut set-top box.
• Untuk menjalankan proyek tersebut Sun merencanakan untuk membangun sebuah OS yang dibangun dengan bahasa C++. Akan tetapi James Gosling (salah seorang anggota tim proyek) merasa tidak puas dengan C++. Akhirnya Ia membuat sendiri bahasa pemrograman baru yang diberi nama Oak. Nama tersebut diambil dari nama pohon yang terlihat dari jendela kantornya. Oak dibuat berdasarkan syntak C++. Namun Oak lebih sederhana dari C++, lebih stabil dan lebih mendukung network-programming. Selain itu Oak dibuat murni object-oriented. Bahasa Oak dibuat sebagai bahasa yang tidak terikat pada satu platform (cross-platform atau multi-platform). Tahun 1994, proyek Green diperbesar oleh Sun menjadi proyek FirstPerson. Tapi proyek tersebut gagal akibat penolakan pasar terhadap ide TV interaktif.
• Pada saat itu Internet memulai sejarah baru dengan WWW (World Wide Web). Browser GUI pertama adalah Mosaic. Sun melihat celah lain dalam dunia Web. Sun merasa bahasa Oak yang multi-platform serta ditujukan untuk pemrograman interaktif dan distributed sangat cocok untuk dunia Web.
• Tahun 1995, nama Oak diganti dengan nama Java karena ada produk lain yang telah mematenkan nama tersebut. Pemilihan nama ini (yang dikenal oleh para pekerja Sun sebagai nama jenis kopi) sama sekali tidak didasarkan atas kedekatan mereka dengan Indonesia atau pulau (atau orang) Jawa. Nama Java dipilih mengalahkan nama-nama lainnya, sekedar karena mereka merasa bahwa nama ini sangat bagus (“cool” menurut bahasa anak muda sekarang). Bersamaan dengan lahirnya nama Java ini, Sun juga mengganti nama web-browser mereka menjadi HotJava (semula bernama WebRunner). Sun kemudian mengumumkan bahasa Java sebagai bahasa yang mampu menjalankan Web secara interaktif dan aman.
• Pada pertengahan tahun 1995, Netscape mengumumkan akan mengadopsi Java di dalam browser mereka. Kemudian, Java (pada tahun-tahun itu) secara de-facto menjadi bahasa standar di dunia maya Internet. Perkembangan Java dipermudah lagi dengan tersedianya JDK (Java Development Kit) di situs milik Sun yang dapat di-download gratis. Akhir tahun 1995, IBM dan Microsoft memutuskan untuk membeli lisensi Java untuk dipakai dalam teknologi mereka.

 BAHASA PEMROGRAMAN

1)Bahasa pemrograman tingkat tinggi
Bahasa pemrograman tingkat tinggi adalah sebuah bahasa pemrograman yang jika dibandingkan dengan bahasa pemrograman tingkat rendah memiliki sifat lebih mudah digunakan, lebih portabel (mudah diadaptasikan) antar-platform, dan lebih abstrak. Bahasa-bahasa semacam ini sering melakukan abstraksi terhadap beberapa operasi CPU, seperti halnya pengaksesan memori.
Fitur-fitur Bahasa pemrograman tingkat tinggi
Istilah "bahasa pemrograman tingkat tinggi" tidak serta merta menjadikan bahasa tersebut lebih baik dibandingkan dengan bahasa pemrograman tingkat rendah. Akan tetapi, maksud dari "tingkat tinggi" di sini merujuk kepada abstraksi yang lebih tinggi dibandingkan dengan bahasa tingkat rendah terhadap bahasa mesin. Dibandingkan dengan harus berurusan dengan register, alamat memori dan stack-stack panggilan, bahasa pemrograman tingkat tinggi akan berurusan dengan variabel, larik, dan ekspresi aritmetika atau aljabar Boolean. Selain itu, tidak seperti bahasa rakitan, bahasa tingkat tinggi tidak memiliki opcode atau kode operasi yang dapat secara langsung menjadikan bahasa tersebut menjadi kode mesin. Fitur lainnya seperti rutin-rutin penanganan string, fitur pemrograman berorientasi objek, input/output terhadap berkas juga terdapat di dalam jenis bahasa ini.
Secara umum, bahasa tingkat tinggi akan membuat pemrograman komputer yang kompleks menjadi lebih sederhana, sementara bahasa tingkat rendah cenderung untuk membuat kode yang lebih efisien. Dalam sebuah bahasa tingkat tinggi, elemen-elemen kompleks dapat dipecah ke dalam beberapa elemen yang lebih sederhana, meski masih dapat dianggap kompleks, di mana bahasa tersebut menyediakan abstraksi. Karena alasan ini, kode-kode yang harus berjalan dengan efisien dapat ditulis dalam bahasa pemrograman tingkat rendah, sementara bahasa tingkat tinggi digunakan untuk mempermudah pemrograman.
Akan tetapi, dengan bertambah rumitnya arsitektur mikroprosesor modern, kompilator-kompilator bahasa pemrograman tingkat tinggi dapat membuat kode yang lebih efisien dibandingkan dengan para programmer bahasa pemrograman tingkat rendah yang melakukannya secara manual.
Perlu dicatat bahwa istilah "tingkat tinggi" dan "tingkat rendah" adalah relatif. Pada awalnya, bahasa rakitan dianggap sebagai bahasa tingkat rendah, sementara COBOL, C, dan lain-lainnya dianggap sebagai bahasa tingkat tinggi, mengingat mereka mengizinkan abstraksi terhadap fungsi, variabel, dan evaluasi ekspresi. Akan tetapi, banyak programmer saat ini mungkin menganggap bahasa C sebagai bahasa pemrograman tingkat rendah, mengingat bahasa pemrograman tersebut mengizinkan akses memori secara langsung dengan menggunakan alamatnya, dan juga dapat menggunakan beberapa direktif bahasa rakitan.

http://id.wikipedia.org/wiki/Bahasa_pemrograman_tingkat_tinggi

2 CONTOH BAHASA PEMROGRAMAN KOMPUTER


C++
C++ adalah salah satu bahasa pemrograman komputer. Dibuat pada tahun 1980-an oleh Bell Labs (Bjarne Stroustrup) sebagai pengembangan dari Bahasa pemrograman C. Salah satu perbedaan yang paling mendasar dengan bahasa C adalah dukungan terhadap konsep pemrograman berorientasi objek (Object Oriented Programming).


Program C++ pertama
Contoh program sederhana C++ untuk hello world dengan menggunakan Pustaka Dasar C++ dapat dilihat di bawah ini:
#include // provides std::cout

int main()
{
std::cout << "Hello, world!\n";
return 0;
}
Kata yang dipesan
Kelompok pertama
C++ mempunyai 32 buah kata yang dipesan (reserved words). Kata kunci kelompok pertama merupakan turunan dari bahasa C, di antaranya:
auto
const
double
float
int
short
struct
unsigned
break
continue
else
for
long
signed
switch
void
case
default
enum
goto
register
sizeof
typedef
volatile
char
do
extern
if
return
static
union
while
Kelompok kedua
Kata yang dipesan kelompok kedua berjumlah 30. Kata-kata ini adalah baru dan hanya ada di bahasa C++.
asm
dynamic_cast
namespace
reinterpret_cast
try
bool
explicit
new
static_cast
typeid
catch
false
operator
template
typename
class
friend
private
this
using
const_cast
inline
public
throw
virtual
delete
mutable
protected
true
wchar_t
Kata-kata yang dipesan tersebut di atas tidak boleh dipakai sebagai nama variable, class, enum, macro, dan struct.
Tipe data dasar
Untuk menyimpan suatu variabel diperlukan tempat khusus di dalam memori komputer. Besar dan tipe dari variabel-variabel di dalam standar program C++ dispesifikasikan sebagai berikut.
Nama
Keterangan
Ukuran
Jangkauan
char
Abjad/karakter atau untuk bilangan bulat kecil
1 byte
signed: -128 to 127
unsigned: 0 to 255
short int (short)
Bilangan bulat dengan jangkauan pendek
2 byte
signed: -32768 to 32767
unsigned: 0 to 65535
int
Bilangan bulat
4 byte
signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
long int (long)
Integer dengan jangkauan panjang
4 byte
signed: -2147483648 to 2147483647
unsigned: 0 to 4294967295
bool
Boolean, dapat bernilai benar atau salah (true or false)
i byte
true or false
float
Angka dengan titik mengambang (bilangan cacah)
4 byte
3.4e +/- 38 (7 digit)
double
Bilangan cacah dengan ketelitian ganda
8 byte
1.7e +/- 308 (15 digits)
long double
Bilangan cacah dengan ketelitian ganda panjang
8 byte
1.7e +/- 308 (15 digits)
wchar_t
Karakter lebar, biasa dipakai untuk Unicode karakter
2 byte
1 karakter lebar
Daftar C++ compiler
Untuk mengubah kode-kode C++ program menjadi suatu program aplikasi yang dimengerti oleh sistem operasi dan komputer, diperlukan sebuah kompilator C++. Berikut ini adalah beberapa kompilator C++ yang dapat digunakan secara gratis.
Microsoft Visual C++ 2005 Express
Turbo C++ Explorer
Apple Xcode for Mac OS X
Open Source Watcom / OpenWatcom C/C++ Compiler
Digital Mars C/C++ Compiler (Symantec C++ Replacement)
Bloodshed Dev-C++ C++ Compiler
Free Microsoft .NET Framework Software Development Kit (SDK) / Free Microsoft Visual C++ Compiler
Intel C++ Compiler for Linux Non-Commercial Version
Sun Studio Compilers and Tools
Open64 Compiler Tools
Apple's Macintosh Programmer's Workshop (C and C++ compilers)
TenDRA C/C++ Compiler
GNU C/C++ Compiler
Ch Embeddable C/C++ Interpreter (Standard Edition)
DJGPP C and C++ Compilers
CINT C and C++ Interpreter
SDCC C Cross-compiler
Cygwin Project (C & C++ Compilers)
SDCC C Cross-compiler
Code::Blocks
Pranala luar
Homepage Bjarne Stroustrup
C++ Users Journal
Standard Template Library
ISO Standard
Andrei Alexandrescu
Code guru, C++ resource
C++ basic tutorial

Tidak ada komentar:

Posting Komentar