Docstoc

Belajar Pemrograman Bahasa C - BAB I

Document Sample
Belajar Pemrograman Bahasa C - BAB I Powered By Docstoc
					Bab I: Pendahuluan
Dari Wikibooks Indonesia, sumber buku teks bebas berbahasa Indonesia

Daftar isi :
________________________________________________________________________________

1 Apa itu C# 2 Sejarah perkembangan bahasa pemrograman C# 2.1 Awal-awal pemrograman komputer digital 2.2 Munculnya bahasa pemrograman tingkat tinggi 2.3 Munculnya C 2.4 Munculnya C++ 2.5 Munculnya Java 2.6 Munculnya C#

Apa itu C#
Bahasa C# adalah sebuah bahasa pemrograman modern yang bersifat general-purpose, ‎ erorientasi b objek, yang dapat digunakan untuk membuat program di atas arsitektur Microsoft .NET Framework. ‎ ahasa C# ini memiliki kemiripan dengan bahasa Java, C dan C++ (selengkapnya B dapat dilihat pada Sejarah ‎ ahasa C#). B Bahasa pemrograman ini dikembangkan oleh sebuah tim pengembang di Microsoft yang dipimpin oleh ‎ nders Hejlsberg, seorang yang telah lama malang melintang di dunia pengembangan bahasa A p ‎ emrograman karena memang ialah yang membuat Borland Turbo Pascal, Borland Delphi, dan juga Microsoft J++. Kini, C# telah distandarisasi oleh European Computer Manufacturer Association (ECMA) dan ‎uga j International Organization for Standardization (ISO) dan telah menginjak versi 3.0 yang mendukung ‎ eberapa fitur baru semacam Language Integrated Query (LINQ) dan lain-lainnya.‎ b

Sejarah perkembangan bahasa pemrograman C#
Sebelum tahun 1970-an (atau lebih lama), menggunakan komputer seperti saat ini—dari mulai m ‎ engetik hingga main game komputer—merupakan sesuatu hal yang mustahil. Revolusi yang terjadi di dalam dunia ‎ omputer membutuhkan dua tahap agar dapat sampai kepada zaman seperti k sekarang, yakni: 1. saat ‎ omputer dibangun untuk membantu para ilmuwan untuk menyelesaikan tugas-tugas k ilmiahnya, dan 2. ‎urunnya harga komputer secara signifikan dan dapat digunakan oleh para pengguna yang t bukan programmer, yang berlangsung beberapa dekade setelah tahap pertama selesai. Pengguna awam komputer pun ‎ khirnya "dilahirkan", dan sejak itu programmer dan pengguna a merupakan dua buah entitas yang sama ‎ ekali berbeda, dan kurang begitu dapat berkomunikasi satu s dengan lainnya.‎

Awal-awal pemrograman komputer digital
Komputer digital yang dapat diprogram pertama kali dibuat pada tahun 1930-an. Maksud dari "komputer digital" di sini adalah bahwa komputer-komputer tersebut bekerja dengan menggunakan angka-angka diskrit (yang memiliki ‎ atasan yang jelas), seperti halnya 0, 1, nilai π‎(3.14159) dan b nilai-nilai angka lainnya. Sementara itu, ‎ aksud dari "komputer yang dapat diprogram" adalah m komputer dapat melakukan operasi-operasi ‎ atematika dengan berdasarkan instruksi-instruksi yang m disebut dengan program. Untuk beberapa tahun ‎ emenjak itu, program-program komputer ditulis s di atas kertas yang dilubangi (disebut sebagai punched-‎ ard) atau medium-medium lainnya. c Akhirnya, perangkat fisik komputer pun disebut sebagai perangkat ‎ eras (hardware), sementara k instruksi-instruksi yang ditulis di atas punched card atau medium lainnya ‎ ikenal dengan perangkat d lunak (software). Dinamai "perangkat lunak", karena memang memiliki sifat ‎ udah diubah. Kita m tidak harus membangun komputer secara keseluruhan untuk melakukan jenis ‎ erhitungan yang p berbeda. Sementara itu, perangkat keras didesain untuk melakukan beberapa jenis ‎ perasi o aritmetika dan logika. Operasi mana yang dapat dilakukan oleh perangkat keras dan bagaimana u ‎ rutan operasi tersebut, diatur oleh kode-kode program. Pada saat program dijalankan, komputer juga ‎ isebut sedang "mengeksekusi program", yakni saat komputer membaca kode dan melakukan d instruksi ‎ ang disuruhkan kepadanya.‎ y Untuk dekade-dekade awal perkembangan komputer digital, hubungan antara perangkat keras ‎ an d perangkat lunak sangatlah erat. Setiap mesin memiliki instruksinya sendiri-sendiri yang kadang

tidak ‎ ocok dengan mesin lainnya. Untuk mentransfer sebuah program dari satu mesin ke mesin c lainnya yang ‎ebih baru dan tentunya lebih cepat, program tersebut harus ditulis ulang dengan l semua kode-kodenya ‎ ang baru. Nah, kode-kode yang hanya dimiliki oleh mesin tertentu ini y dinamakan dengan kode mesin ‎ machine code) atau bahasa mesin (machine language). Untuk lebih ( cepat mengingat instruksi-instruksi dalam kode mesin, para desainer pun kemudian ‎ embentuk m sebuah cara dengan menyamakannya dengan sebuah kata tertentu (umumnya berupa ‎ ingkatan s dalam bahasa Inggris), yang kemudian berevolusi menjadi bahasa rakitan atau assembly l ‎anguage.

Munculnya bahasa pemrograman tingkat tinggi
Pada awal tahun 1950-an, para desainer pun mencoba untuk mendesain bahasa komputer yang u ‎ mum yang program hasilnya tidak hanya dapat berjalan di mesin-mesin tertentu saja. Muncullah bahasa ‎ emrograman tingkat tinggi atau high-level programming language. Disebut demikian p untuk ‎ embedakannya dengan kode mesin yang disebut sebagai bahasa pemrograman tingkat m rendah atau ‎ow-level programming language. Tren yang ada adalah kemunculan beberapa l bahasa pemrograman seperti FORTRAN, COBOL, BASIC, dan masih banyak lagi yang ‎ainnya. l Beberapa bahasa pemrograman tersebut masih terus-terusan digunakan hingga saat ini. Sebagai c ‎ ontoh, FORTRAN (akronim dari Formula Translator) masih sering digunakan oleh para ilmuwan dan para ‎ nsinyur bidang teknik; COBOL (akronim dari Common Business-Oriented i Language) juga sering digunakan ‎ alam institusi-institusi finansial; dan bahasa BASIC (akronim d dari Beginner’s‎All-purpose Symbolic ‎ nstruction Code) juga masih banyak digunakan hingga I saat ini, meskipun terjadi perubahan yang sangat ‎ ignifikan dari ketika bahasa tersebut s dipublikasikan pertama kali pada tahun 1963.‎ Program-program komputer yang dibangun dengan menggunakan bahasa FORTRAN, COBOL, B ‎ ASIC, atau bahasa tingkat tinggi lainnya pada dasarnya adalah berisi berkas teks yang terdiri atas s ‎ ekumpulan pernyataan yang ditulis di dalam bahasa pemrograman tertentu, dengan beberapa peraturan ‎ intaksis, semantik dan gramatika yang didefinisikan di dalam bahasa pemrograman. s Karena komputer ‎ anya dapat menjalankan machine code, maka program yang ditulis di dalam h bahasa pemrograman ‎ ingkat tinggi harus terlebih dahulu diterjemahkan ke dalam machine code t sebelum dieksekusi. Proses ‎ enerjemahan ini dapat dilakukan baik itu dengan menggunakan teknik p translasi (alat bantunya disebut ‎ engan translator), teknik interpretasi (alat bantunya disebut d interpreter), atau dengan menggunakan teknik ‎ ompilasi (alat bantunya disebut dengan k compiler). Teknik translasi merupakan teknik kuno yang ‎ enerjemahkan keseluruhan kode bahasa m pemrograman menjadi machine code; teknik kompilasi ‎ erupakan evolusi dari teknik translasi di m mana kode dalam bahasa pemrograman dipisah-pisah ke dalam ‎ eberapa berkas untuk kemudian b diterjemahkan dan dijadikan machine code, sementara teknik ‎nterpretasi merupakan sebuah teknik i di mana eksekusi dan translasi dilakukan secara berbarengan ‎ bersama-sama).‎ ( Bahasa pemrograman lainnya yang dikembangkan selama tahun 1950-an tapi sudah tidak d ‎ igunakan lagi adalah ALGOL (akronim dari Algorithmic Programming Language). ALGOL memang sudah ‎idak digunakan lagi, tapi memberikan dampak yang signifikan untuk beberapa t bahasa pemrograman ‎ ainnya di dalam sejarah perkembangan bahasa pemrograman komputer. l ALGOL didesain pertama kali pada akhir tahun 1950-an oleh sebuah komite ‎nternasional, untuk i kemudian diperbaiki pada tahun 1960 dan 1968. Meskipun saat ini bahasa tersebut ‎ ati seolah m lenyap ditelan bumi, jiwanya masih hidup di dalam bahasa pemrograman tingkat tinggi yang s ‎ ekarang banyak digunakan, seperti Pascal, PL/1, dan Bahasa C.‎

Munculnya C
Bahasa C dilahirkan di Bell Telephone Laboratories (atau sering disebut sebagai Bell Labs saja). S ‎ ulit membayangkan dunia modern saat ini jika tidak ada pengaruh dari Bell Labs . Pada tahun 1947, ‎ransistor ditemukan di Bell Labs, dan juga sistem operasi yang sekarang banyak digunakan t

di dalam ‎ omputer korporat (UNIX) juga dibuat di sana. Untuk beberapa tahun, ada sebuah bahasa k pemrograman ‎ ang sangat dekat dengan sistem operasi UNIX, yang disebut dengan bahasa C, yang y didesain oleh Dennis ‎ itchie dan Brian Kernighan. Mengapa disebut hanya C saja? Bahasa C R disebut demikian mengingat ‎ ahasa tersebut adalah turunan dari bahasa B, dan bahasa B merupakan b pemendekan dari Basic CPL, ‎ ementara CPL sendiri adalah sebuah bahasa pemrograman yang s merupakan singkatan dari Combined ‎ rogramming Language.‎ P Meskipun populer, bahasa C terkesan lebih rumit jika dibandingkan dengan ‎ ahasa pemrograman b lainnya, khususnya jika digunakan oleh para pemrogram pemula. Ketika ALGOL dan banyak turunan ALGOL menggunakan kata-kata yang ‎ udah diingat seperti BEGIN dan END untuk m membatasi sebuah seksi dalam instruksi program, bahasa C ‎ alah menggunakan tanda kurung m keriting ({ dan }). Beberapa operasi juga disederhanakan, bahkan ‎ anyak singkatannya yang cukup b membingungkan para programmer pemula. Contoh yang sering ‎ igunakan adalah printf, dan scanf. d Meskipun demikian, program-program yang ditulis dalam bahasa C ‎ eringnya lebih efisien s dibandingkan dengan bahasa pemrograman lainnya, yang artinya program-‎ rogram dalam bahasa C p diterjemahkan ke dalam machine code dalam jumlah yang relatif lebih sedikit ‎ika dibandingkan j dengan program yang ditulis dalam bahasa pemrograman lainnya . Salah satu bagian ‎ ang paling y canggih dari bahasa C adalah bahwa bahasa C memiliki "pointer", selain tentunya "variabel" ‎ an d "konstanta". Istilah Pointer dalam bahasa pemrograman merujuk kepada alamat-alamat memori yang ‎ engizinkan para programmer untuk melakukan beberapa tugas secara jauh lebih efisien , m dengan ‎ elibatkan bit, byte, dan word memori. Karenanya, banyak orang menyebut bahasa C m sebagai "High-level ‎ ssembly language, atau bahasa rakitan tingkat tinggi.‎ A Meskipun bahasa C masih merupakan bahasa pemrograman yang populer , bahasa ‎ersebut saat ini t dapat dikatakan telah "kadaluwarsa". Saat ini, bahasa tersebut diklasifikasikan ‎ e dalam "bahasa k pemrograman prosedural tradisional" (traditional procedural programming language), sebuah istilah yang merujuk kepada ‎ truktur program-program dalam bahasa C. Umumnya sebuah program s bahasa C terdiri atas ‎ anyak prosedur (juga sering disebut sebagai fungsi / function atau subrutin / b subroutine), yang ‎ etiap prosedur tersebut merupakan bagian dari kode yang melakukan beberapa s tugas tertentu ‎ tau merupakan implementasi dari algoritma tertentu. Prosedur-prosedur tersebut a dapat ‎ ekerja dengan data dalam beberapa cara. Data adalah kumpulan angka atau teks atau bahkan b g ‎ abungan antara keduanya. Dalam bahasa pemrograman prosedural tradisional, kodelah yang m ‎ emproses data menjadi output.‎

Munculnya C++
Akan tetapi akhir-akhir ini, banyak programmer cenderung memilih "bahasa ‎ emrograman p berorientasi objek"—atau object oriented programming (OOP). Permulaan ‎ unculnya bahasa m pemrograman berorientasi objek sering diasosiasikan dengan munculnya ‎ ahasa Smalltalk, sebuah b bahasa pemrograman yang dikembangkan di Palo Alto Research ‎ enter (PARC), yang merupakan C sebuah laboratorium penelitian yang didirikan oleh Xerox Cor‎ oration. Selain Smalltalk, PARC p juga menelurkan banyak inovasi lainnya, seperti halnya mouse ‎ an juga antarmuka grafis d (Graphical User Interface) yang pertama kali diimplementasikan di ‎ alam sistem Xerox Star, yang d kemudian diadopsi oleh Apple Macintosh dan juga Microsoft Win‎ ows.‎ d Dalam bahasa pemrograman berorientasi objek, para programmer tidaklah membuat ‎ rosedur, p tetapi mereka membuat kelas (class), dan dari kelas-kelas tersebut muncullah objek ‎ object), yang ( dapat berupa kode saja, data saja atau kombinasi dari kode dan data. Daripada ‎ embuat m prosedur-prosedur yang dikhususkan untuk bekerja dengan data, "data" dalam bahasa ‎ emrograman p berorientasi objek memiliki perangkat untuk bekerja dengan dirinya sendiri , ‎ ehingga dapat s dikatakan data bisa memproses dirinya sendiri. Perubahan perspektif ini ‎ embawa angin segar bagi m para pemrogram, karena menulis satu buah kode yang dapat ‎ igunakan dalam beberapa tugas d pemrograman telah menjadi lebih mudah.‎

Akhirnya, beberapa programmer pun mencoba untuk menciptakan sebuah versi bahasa ‎ yang C mendukung konsep bahasa pemrograman berorientasi objek. Dan, satu-satunya yang ‎ angat populer s dari usaha mereka, lagi-lagi, adalah bahasa pemrograman yang dikembangkan di ‎ ell Laboratories B pada tahun 1982 oleh Bjarne Stoustrup. Bahasa yang dikembangkannya kini ‎ ikenal dengan bahasa d C++ (dibaca C plus-plus), di mana nama tersebut merupakan "pelesetan", ‎ arena dalam bahasa C k dan turunannya dua buah tanda plus akan menambahkan 1 ke dalam ‎ ebuah angka atau variabel. s Akan tetapi, C++ juga memiliki masalahnya sendiri. Dalam teorinya, ‎ ++ adalah bahasa C yang C ditambahi dukungan konsep "berorientasi objek", sehingga C++ ‎ idaklah menggantikan bahasa C. t

Munculnya Java
Pada tahun 1992, Sun Microsystems membuat Java, sebuah bahasa pemrograman ‎ erorientasi b objek yang dibuat berbasiskan bahasa C, dengan perbedaan yang signifikan dari ‎ ahasa b pemrograman C++. Bahasa Java telah membersihkan beberapa sintaksis yang dianggap kurang bagus yang terdapat di dalam bahasa C++ dan‎membuang‎beberapa‎hal‎yang‎“berbahaya”‎dari‎ bahasa C, ‎etapi‎tetap‎mempertahankan‎“kerumitan”‎yang‎ditawarkan‎oleh‎bahasa‎C .‎ t

Munculnya C#
Pada tahun 2000, Microsoft pun merilis bahasa C# (dibaca C Sharp), yang secara umum ‎ idesain d oleh Anders Hejlsberg, yang juga lagi-lagi melanjutkan penamaan yang diplesetkan. Simbol ‎ agar p (#) yang digunakan dalam C#, secara sekilas terlihat seperti empat buah plus-plus yang ‎ isusun d sedemikian rupa. Selain itu, di dalam notasi musik, tanda pagar memang menunjukkan ‎ ada yang n lebih tinggi dibandingkan dengan nada yang tidak memiliki pagar —sehingga C# lebih ‎inggi t dibandingkan C.‎ Seperti halnya bahasa Java, bahasa C# telah membuang beberapa fitur berbahaya dari ‎ ahasa C. b Memang, pointer belum sepenuhnya "dicabut" dari C#, tapi sebagian besar ‎ emrograman dengan p menggunakan bahasa C# tidak membutuhkan pointer secara ekstensif, ‎ eperti halnya C dan C++. s Persamaan lainnya antara Java dan C# mencakup peran dari kompiler. ‎ iasanya, kompiler B menerjemahkan kode sumber (berkas teks yang berisi bahasa pemrograman ‎ingkat tinggi) ke dalam t kode mesin. Kode mesin tersebut membentuk sebuah berkas yang ‎ apat dieksekusi (executable atau d EXE), yang berupa sebuah berkas yang siap untuk dijalankan kapan saja ‎ ecara langsung oleh s komputer. Tetapi, karena kode mesin hanya diasosiasikan dengan sebuah ‎ enis mesin tertentu saja, j berkas yang dapat dieksekusi tersebut hanya dapat berjalan di atas ‎ atu jenis komputer saja. Inilah s sebabnya mengapa kita tidak dapat menjalankan secara langsung ‎ rogram yang sama yang berjalan p di atas sistem operasi Windows di atas sistem operasi GNU/Linux, Apple Macintosh atau sistem operasi lainnya, dan begitu pula sebaliknya.‎ Alat bantu kompiler yang digunakan oleh C# tidak menerjemahkan kode sumber ke ‎ alam kode d mesin, tetapi hanya menerjemahkan ke dalam sebuah bahasa perantara atau In‎ ermediate t Language (disingkat menjadi IL), yang merupakan sebuah jenis kode mesin hanya ‎ aja telah s digeneralisasikan. Ketika kita hendak menjalankan program di atas sebuah mesin, ‎ aka IL akan m diterjemahkan ke dalam kode mesin secara keseluruhan. Dilihat dari perspektif ‎ engguna, proses p translasi ini tidak terlihat. Tetapi, dalam teorinya, ternyata di balik itu terdapat ‎ roses dua langkah p rumit yang mengizinkan program dengan bahasa IL yang sama untuk berjalan ‎ i atas mesin yang d berbeda. Selain itu, sebuah program dalam bentuk IL dapat diuji lebih mudah ‎ leh sistem operasi o dari keberadaan kode yang merusak atau kode yang mencurigakan . ‎ emampuan ini telah menjadi K lebih penting saat program tersebut dipertukarkan melalui ‎aringan publik, seperti halnya Internet.‎ j Bahasa C, C++, Java dan C# kini dikenal dengan sebutan "keluarga besar bahasa ‎ emrograman C" p atau "bahasa pemrograman berbasis bahasa C". C++ mengandung semua hal ‎ ang dimiliki oleh C y tetapi memiliki fitur yang tidak dimiliki oleh C, sementara Java dan C# ‎ eskipun masih berbasis m bahasa C, keduanya tidaklah serta-merta merupakan pengganti dari ‎ ahasa C, dan antara bahasa b

Java dan C# memiliki kesamaan dalam berbagai bidang, ketimbang ‎ irip dengan bahasa C++. m Meskipun demikian, semuanya menggunakan banyak sintaksis yang ‎ irip, seperti void, int, struct, m dan lain sebagainya.‎


				
DOCUMENT INFO
Shared By:
Stats:
views:7998
posted:6/19/2009
language:Indonesian
pages:6