Anda di halaman 1dari 8

Nama Anggota : Muhammad Fahmy (5160411162)

Yudha Prasetyo (5160411155)


Daniel Yudha Pratama (5160411175)
Jurusan : Teknik Informatika
Kelas :C

KONSEP PEMROGRAMAN & BAHASA PEMROGRAMAN

1. Pengenalan
Komputer adalah mesin yang dapat melaksanakan seperangkat perintah dasar
(instruction set). Agar komputer dapat melakukan sesuatu hal, harus diberikan
perintah yang dapat dilaksanakannya, yaitu dalam bentuk kumpulan perintah-perintah
dasar. Program komputer adalah sekumpulan instruksi yang dikenal oleh komputer
dan disusun menurut urutan yang logis untuk menyelesaikan suatu masalah. Bahasa
pemrograman adalah bahasa yang dapat diterjemahkan menjadi kumpulan perintah-
perintah dasar tersebut. Penerjemahan dilakukan oleh program komputer yang disebut
kompilator. Sintaks dari bahasa pemrograman lebih mudah dipahami oleh manusia
daripada sintaks perintah dasar. Namun tentu saja komputer hanya dapat
melaksanakan perintah dasar itu. Maka di sinilah peran penting kompilator sebagai
perantara antara bahasa pemrograman dengan perintah dasar. Kegiatan membuat
program komputer dengan menggunakan bahasa pemrograman disebut pemrograman
komputer. Untuk dapat membuat program komputer, harus dikuasai bahasa
komputer. Berbagai bahasa komputer telah diciptakan untuk membantu manusia
memprogram komputer. Berdasarkan tingkatannya dikenal beberapa tingkat bahasa
pemrograman diantaranya:
a. Bahasa Pemrograman tingkat dasar seperti: Bahasa Mesin, Bahasa
Assembley.
b. Bahasa Pemrograman tingkat tengah seperti: Bahasa C, Bahasa FORTH.
c. Bahasa Pemrograman tingkat tinggi seperti: Bahasa Pascal, FORTRAN,
COBOL, dan lain-lain.
Bahasa pemgrogram tingkat dasar, sebagai hirarki pertama, disebut juga bahasa
generasi pertama, bahasa ini sangat tergantung pada jenis CPU yang dipakai oleh
komputer itu. Bahasa ini sangat sulit dipelajari, karena sifatnya yang sangat
tergantung pada mesinnya itu (machine dependent). Untuk menguasai bahasa ini,
harus dipelajari dan dikuasai teknologi dan arsitektur komputer, matematika diskrit,
elektronika, dan lain-lain. Bahasa ini masih menggunakan simbol-simbol yang bersifat
mnemonic.
Bahasa pemrograman tingkat tengah, sifatnya sudah lebih mudah dari pada bahasa
pemrograman tingkat dasar, perintah-perintahnya sudah lebih mudah dibaca sebab
sudah menggunakan huruf-huruf.
Bahasa pemrograman tingkat tinggi adalah bahasa komputer yang sudah mirip
dengan bahasa manusia. Perintah-perintahnya sudah dibuat dalam bahasa yang
mudah dimengerti manusia, seperti PRINT, WRITE, IF, THEN, ELSE, dan lain-lain.
2. Tahapan dalam Pemrograman
Langkah-langkah yang dilakukan dalam menyelesaikan masalah dalam pemrograman
dengan komputer adalah:

a. Defenisikan Masalah
Tentukan apa yang menjadi masalah
Tentukan data input yang diperlukan
Tentukan output yang diinginkan
b. Buat bagan dan struktur cara penyelesaian
Bagan secara global
Deskripsikan tugas masing-masing subprogram
c. Pilih Metode Penyelesaian
Pilih struktur data dan Algoritma terbaik
d. Pengkodean
Pilih bahasa pemrograman yang sesuai
Menterjemahkan algoritma ke bahasa pemrograman
e. Mencari Kesalahan
Kesalahan sintaks (penulisan program)
Kesalahan Pelaksanaan: Semantik, Logika, dan ketelitian
f. Uji dan Verifikasi Program
g. Dokumentasi Program
h. Pemiliharaan Program
Memperbaiki kekurangan yang ditemukan kemudian
Memodifikasi, karena perubahan spesifikasi

3. Diagram Alir
Konsep pemrograman dapat digambarkan juga dengan menggunakan diagram alir
(flowchart). Diagram alir adalah simbol-simbol yang digunakan untuk
menggambarkan sebuah pernyataan logika pemrograman serta aliran logika yang
ditunjukkan dengan arah panah. Ada dua jenis diagram alir yaitu:
1. Diagram alir sistem yaitu bagan dengan simbol-simbol tertentu yang
menggambarkan urutan procedure dan proses suatu file dalam suatu media
menjadi file di dalam media lain, dalam suatu system pengolahan data.
2. Diagram alir program yaitu bagan dengan simbol-simbol tertentu yang
menggambarkan urutan proses dan hubungan antar proses secara mendetail di
dalam suatu program.
Berikut merupakan beberapa contoh simbol yang disepakati oleh dunia
pemrograman:

4. Syarat Program yang Baik


Program yang baik haruslah memenuhi beberapa kriteria, antara lain:
Program haruslah sesuai dengan tujuan dan memenuhi spesifikasi yang telah
ditentukan.
Fleksibel
Tidak mengandung kesalahan
Didokumentasi secara baik
Cepat dalam waktu penggunaannya
Efesien dalam penggunaan memori computer.

5. Data
Data adalah sekumpulan bahan mentah yang kemudian diolah untuk menjadi sebuah
informasi yang berguna bagi yang membutuhkan informasi tersebut.

6. Model Komputasi
Ada tiga model dasar komputasional, yaitu fungsional, logika, dan imperatif.
Masing-masing model komputasional mempunyai satu set operasi yang digunakan untuk
menggambarkan komputasi.

a. Model Fungsional : terdiri dari satu set nilai-nilai, fungsi-fungsi dan operasi aplikasi
fungsi dan komposisi fungsi. Fungsi dapat mengambil fungsi lain sebagai argumentasi
dan mengembalikan fungsi sebagai hasil. Suatu program adalah koleksi definisi fungsi-
fungsi dan suatu komputasi adalah aplikasi fungsi.

b. Model Logika : terdiri dari satu set nilai-nilai, definisi hubungan dan kesimpulan logis.
Program terdiri dari definisi hubungan dan suatu komputasi adalah suatu bukti(suatu
urutan kesimpulan).

c. Model Imperatif : terdiri dari satu set nilai-nilai yang mencakup suatu keadaan dan
operasi tugas untuk memodifikasi pernyataan. Pernyataan adalah set pasangan nilai-nama
dari konstanta dan variabel. Program terdiri dari urutan tugas dan suatu komputasi terdiri
dari urutan pernyataan.

7. Prinsip Bahasa Pemrograman


a. Prinsip Kelengkapan Komputasional
Model komputasional untuk tujuan umum suatu bahasa pemrograman harus
universal.
b. Prinsip Implementasi
Implementasi harus efisien dalam penggunaan waktu dan ruangnya. Prinsip
memrogram harus ditulis dalam suatu bahasa yang mencerminkan daerah masalah.

8. Sintaks, Semantik dan Pragmatik


Bahasa pemrograman memiliki 3 konsep penting, yakni sintaks, semantik dan
pragmatik.

a. Sintaks adalah aturan gramatikal atau komposisi suatu program yang mengatur tata
cara penulisan huruf, angka dan karakter lainnya. Sintaks ini berhubungan dengan
struktur bahasa.
b. Semantik adalah sebuah bahasa yang menggambarkan hubungan antara sintaks dan
model komputasi. Singkat kata, semantik ini menjelaskan arti dari program.
c. Pragmatik berhubungan kemudahan implementasi dan efisiensi. Ini berhubungan
dengan peng-kodingan dalam suatu bahasa pemrograman.

PARADIGMA PEMOGRAMAN

Paradigma secara gampangnya dapat diartikan sebagai sudut pandang terhadap suatu
problem, keadaan, dan sebagainya. Dalam hal pemrograman pun dikenal paradigma, yang
nantinya paradigma tersebut akan menjadi sebuah pengerucut ke dalam suatu pendekatan
khusus dalam memecahkan suatu persoalan. Paradigma pemrograman terdiri dari 6
paradigma, jadi akan dijelaskan di bawah ini secara singkat.

1. Paradigma Prosedural
Langkah-langkah untuk menyelesaikan suatu persoalan yang ada di eksekusi secara
sekuensial / sistematis / terurut. Jadi langkah yang berada di tingkat atas berpengaruh
terhadap langkah-langkah selanjutnya atau langkah-langkah di bawahnya. Dengan kata lain
pengeksekusian langkah-langkahnya terstruktur.
Jadi untuk membuat program ada rumusnya :
Algoritma (langkah-langkah) + Struktur Data = Program, dapat dijelaskan bahwa algoritma
dan struktur data itu terpisah tempatnya. Memori algoritma hanya berisi seputar langkah-
langkah terstruktur yang menjelaskan isi dari memori struktur data sedangkan memori
struktur data nya sendiri berisi tentang data apa saja yang akan dijelaskan di memori
algoritma.

2. Paradigma Fungsional
Sudah tidak memikirkan lagi yang namanya memorisasi dan struktur data. Tidak ada
pemisahan antara data dan program. Tidak ada yang namanya variabel. Yang ada hanya
sebuah kondisi awal dan kondisi akhir. Tapi program fungsional harus lebih diolah dari pada
program prosedural, karena menyangkut efisiensi dan kinerjanya. Semakin pendek suatu
algoritma, maka semakin cepat pula eksekusinya.

3. Paradigma Deklaratif atau Lojik


Sebuah program yang berisi kumpulan aksioma (fakta atau aturan deduksi). Pada
paradigma ini program menguraikan sekumpulan fakta dan aturan. Ketika progarm di
eksekusi pemekai mengajukan pertanyaan dan program akan menjawab apakah pertanyaan
tersebut dapat dideduksi dari fakta dan aturan yang ada.

4. Paradigma Berorientasi Objek


Dari kata berorientasi Objek, sudah dipastikan bahwa paradigma ini mengarah
pada sebuah objek. Jadi sebuah program dibuat berdasarkan objek yang sudah ada. Sebagai
contoh adalah sebuah handphone. Ketika kita menekan angka 1 maka akan ditampilkan
dilayar angka 1. Setiap kita menekan angka 1 atau angka yang lain kita artinya
mengeksekusi sebuah algoritma yang sudah dibuat. Disetiap tombol yang ada pada
handphone itu mengandung algoritma. Kalo kita menekan angka 1 maka algoritma yang
akan memunculkan angka 1 tereksekusi sehingga muncullah angka 1.

5. Paradigma Konkuren
Paradigma ini didasari oleh kenyataan dalam keadaan nyata, sebuah sistem
komputer harus menangani beberapa program (task) yang harus dieksekusi secara bersamaan
dalam sebuah lingkungan baik mono ataupun multi-processor. Dalam paradigma ini
programmer tidak lagi berfikir sekuensial, melainkan harus menangani koomunikasi dan
singkronisasi antar task.

6. Paradigma Relasional
Didasari entity dan relasi. Dan pemrogramannya dalam bahasa query sehingga
memungkinkan terbantuknya suatu nilai himpunan.

Berikut ini bahasa pemrogramannya nya dari paradigma diatas :


a. Algol
Kelebihan :
i. kemampuannya melaksanakan kontol loop, pada Algol ini lebih luwes dan luas
dari pada Fotran.
Kekurangan :
i. Sudah jarang dipakai karena dianggap sudah ketinggalan zaman dan digantikan
oleh Pascal
b. Pascal
Kelebihan :
i. Tipe data standar, tipe-tipe data standar yang telah tersedia bahasa pemrogaman.
Pascal memiliki tipe data standar Boolean, integer, char, real, string.
ii. User defined data types, programmer dapat membuat tipe data lain yang
diturunkan dari tipe data standar.
iii. Strongly-typed, programmer harus menentukan tipe data dari suatu variable dan
variable tersebut tidak dapat dipergunakan untuk menyimpan tipe data selain
format yang ditentukan.
iv. Terstruktur, memiliki sintaks yang memungkinkan penulisan program dipecah
menjadi fungsi-fungsi kecil (procedur dan function) yang dapat dipergunakan
berulang-ulang.
v. Sederhana dan ekspresif, memiliki struktur yang sederhana dan sangat mendekati
bahasa manusia (bahasa inggris) sehingga mudah dipelajari dan dipahami.
Kekurangan :
i. Versi awal Pascal kurang cocok untuk aplikasi bisnis karena dukungan basisdata
yang terbatas.
ii. Sintaks Pascal terlalu bertele-tele.
iii. Tidak mendukung pemrograman berorientasi objek.

c. Cobol :
Kelebihan :
i. Program COBOL dibuat dalam instruksi bahasa inggris, sehingga lebih mudah
dipelajari dan dibuat.
ii. Program COBOL sesuai untuk pengolahan data yang banyak diterapkan pada
permaslahan .
iii. Program COBOL sifatnya standard, sehingga dapat dipergunakan pada komputer-
komputer yang berbeda, tanpa banyak perbedaan.
iv. Struktur program COBOL jelas, sehingga dapat dimengerti oleh orang seperti
akuntan, auditor, atau manajer-manajer yang hanya mempunayai pengetahuan
pengolahan data yang sedikit.
v. COBOL menyediakan fasilitas Listing Program, bilamana perlu dapat diperiksa
oleh orang lain selain programer.
vi. Mudah didokumentasikan dan dikembangkan bilamana perlu.
vii. Problem Orientad Language.
Kekurangan :
i. Operasi masukan dan keluaran yang masih kaku.
ii. Struktur penulisan program yang sangat kaku dan bertele-tele.
d. Basic
Kelebihan:
i. Bahasa yang sederhana. Banyak hal yang mungkin sulit dilakukan jika kita
menggunakan bahasa pemrograman lainnya, akan dapat dilakukan dengan
mudah dengan menggunakan Visual basic.
ii. Karena Visual basic sangat populer, maka sangat banyak sumber-sumber yang
dapat kita gunakan untuk belajar dan mengembangkan kemampuan kau baik
berupa buku, web site dll
iii. Kita bisa memperoleh banyak tools baik gratis maupun tidak di Internet yang
akan sangat membantu menghemat waktu kita dalam pemrograman
Kekurangan:
i. Visual Basic adalah bahasa pemrograman yang powerful, tetapi sebenarnya tidak
terlalu bagus untuk membuat game-game yang benar-benar memuaskan.
ii. Lebih lambat dibandingkan bahasa pemrograman lain.
e. Bahasa C.
Kelebihan Bahasa C :
i. Bahasa C tersedia hampir di semua jenis computer
ii. Kode bahasa C sifatnya adalah portable dan fleksible untuk semua jenis
computer.
iii. Bahasa C hanya menyediakan sedikit kata-kata kunci, hanya terdapat 32 kata
kunci.
iv. Proses executable program bahasa C lebih cepat.
v. Dukungan pustaka yang banyak.
vi. C adalah bahasa yang terstruktur.
vii. Bahasa C termasuk bahasa tingkat menengah.
Kekurangan Bahasa C :
i. Banyaknya operator serta fleksibilitas penulisan program kadang-kadang
membingungkan pemakai.
ii. Bagi pemula pada umumnya akan kesulitan menggunakan pointer.
f. LISP
Kelemahan :
i. Popularitas rendah
ii. Tidak banyak Tools yang mendukung
iii. Library pengembangan tidak banyak
Kelebihan:
a. Model komputasi yang atraktif
b. Alat belajar pemrograman yang baik
c. Efisien
g. Prolog
Kelebihan :
i. Berbeda dengan bahasa pemrograman yang lain, yang menggunakan algoritma
konvensionl sebagai teknik pencariannya seperti pada Delphi, Pascal, Basic,
COBOL dan bahasa pemrograman yang sejenisnya, maka prolog menggunakan
teknik pencarian yang di sebut heuristik (heutistic) dengan menggunakan pohon
logika.
ii. Melakukan komputasi rumit pada data yang kompleks.
iii. Mengekpresikan algoritma dengan baik.
iv. Mengalokasikan memori secara dinamis sehingga programmer tidak harus
mendeklarasikan ukuran sebuah struktur data sebelum membuatnya.
v. Mengembangkan dan memodifikasi dirinya sendiri sehingga sebuah program
dapat belajar melalui informasi yang didapat selama program dijalankan
vi. PROLOG mempunyai Automated Reasoning Procedure (Prosedur Sebab-Akibat
Otomatis) yang disebut Inference Engine (Inference = proses pengambilan
kesimpulan) yang sudah built-in didalamnya. Akibatnya, program yang
menggunakan logika sebab-akibat jadi lebih mudah ditulis dalam PROLOG.
Kekurangan :
i. Pemborosan dalam pengalokasian memory sehingga program berjalan menjadi
lambat
h. Java
Kelebihan Bahasa Java :
i. Sederhana dan ampuh, java menyediakan sarana untuk membuat program (applet)
yang berjalan pada web browser. Programmer dapat menggunakan applet kecil
yang aman, dinamik, lintas platform, aktif dan siap dijalankan di jaringan.
ii. Aman, java dirancang dengan konsep keamanan internet.
iii. Berorientasi objek, java tidak diturunkan bahasa pemrogaman manapun. Java
memiliki keseimbangan yang menyediakan mekanisme peng-class-an sederhana
dengan model antarmuka dinamik yang intuitif hanya jika diperlukan.
iv. Kokoh, java membatasi programmer dengan memberi kunci supaya progamer
dapat menemukan kesalahan lebih cepat saat mengembangkan program.
v. Interaktif, java dirancang untuk menciptakan program jaringan yang interaktif.
vi. Netral terhadap berbagai arsitektur, java mampu berjalan dalam platform apapun
seperti PC, UNIX, Macintosh, dll.
vii. Terinterpretasi dan berkinerja tinggi, java melengkapi keajaiban lintas platform
yang luar biasa dengan kompilasi ke dalam representasi langsung yang disebut
java code byte yang dapat diterjemahkan oleh system apapun yang memiliki java
interpreter dan java virtual machine.
viii. Mudah dipelajari karena bersifat sederhana.
ix. Mendukung koneksi ke database.
Kekurangan bahasa Java :
i. Java memiliki kecepatan yang kurang dari bahasa C ++.
ii. Implementasi J2ME tidak global. Misalnya, J2ME untuk Motorola dengan J2ME
untuk Sony Ericson tidak sama. Berbeda lagi J2ME untuk Nokia. Setiap produk
selalu mempunyai modul tersendiri yang dinilai aneh penerapannya dan harus di-
compile dengan modul yang berbeda-beda.
iii. Java memakan banyak memori computer.
iv. Java merupakan bahasa yang kompleks dan susah dipelajari.
Program yang dibuat oleh bahasa ini lebih lambat disbanding program yang
dibuat dengan bahasa lain seperti C atau C++.
i. Bahasa C++
Kelebihan :
i. Merupakan induk dari bahasa pemrograman perl, php, phyton, visual basic,
gambas, java, C#.
ii. Compiler bahasa C++ terdapat di semua platform.
iii. Untuk pengembangan visual dijejali dengan platform yang sangat banyak seperti
OWL, MFC, Cocoa, QT, GTK, dll.
iv. Merupakan pemrograman berorientasi objek.
Kekurangan :
i. Bahasa ini cukup sulit untuk dipel;ajari dan dipahami.
ii. Banyaknya operator serta fleksibilitas penulisan program kadang-kadang
membingungkan pemakai.
iii. Bagi pemula pada umumnya akan kesulitan menggunakan pointer.
j. SQL.
Kelebihan :
i. Bekerja dengan sangat baik pada sistem operasi Windows
ii. Mendukung banyak software database
iii. Dapat membuat clustering data
iv. Pengendalian dari sebuah database yang terpusat
v. Mudah untuk digunakan oleh client dan juga user
vi. Memiliki fitur recovery dan juga restore data
vii. Management password yang baik dan aman
Kekurangan :
i. Tidak multi OS, hanya bisa digunakan pada sistem operasi yang dibuat oleh
Microsoft
ii. Sulit digunakan pada bahasa pemograman lain
iii. Tidak cocok untuk skala database besar

Anda mungkin juga menyukai