You are on page 1of 25

Algoritma Pemrograman

Tujuan Mahasiswa memahami struktur penulisan bahasa pemrograman web-based (PHP) dan mampu membuat aplikasi komputer berbasis database (Mysql)

Prosentase Penilaian
Ujian mid semester Ujian semester Tugas kelompok Absen 35% 35% 20% 10%

Tugas Kelompok : - Minimal 3 orang, maksimal 6 orang - Membuat program aplikasi web-based - Tugas dikumpulkan saat UAS - Tugas dikumpul dalam media CD
Materi Kuliah dapat di download di : http://diktat.intersat.co.id

referensi

http://www.ilmukomputer.com Book : PHP for dummies PHP & MySql untuk Pemula (andy offset) Membuat Aplikasi Database Karyawan (andy offset)

Kenapa Belajar Pemrograman Komputer ?

Kebutuhan perangkat lunak di berbagai sendi kehidupan Modal murah (otak & PC/Laptop) dan tidak mudah ditiru Segmen luas, mass product (kuantitas) atau customized product (kualitas) Lifetime services Prospek masa depan yang akan terus berkembang Value Added Knowledge

Tahun 1823 Charles Babbage menciptakan sebuah mesin yg berbeda yang membutuhkan serangkain instruksi/perintah untuk menjalankan sebuah tugas tertentu
Ada King (Countess of Lovelace, Putri Lord Byron) merupakan orang yang membuat instruksi tersebut dan menjadi programmer pertama di dunia Rangkaian instruksi tersebut disebut sebagai bahasa pemrograman

Dalam kurun waktu 50 tahun, bahasa pemrograman terbagi atas 2 stage : - First Major Language - Second Major Language (yang digunakan saat ini) Bahasa pemrograman modern diawali dengan FORTRAN (FORmula TRANslating system) yang dikembangkan oleh IBM

Apa Itu Algoritma?

Definisi
Urutan langkah-langkah untuk memecahkan masalah Kamus Besar Bahasa Indonesia: Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah

Algoritma dibutuhkan untuk memerintah komputer mengambil langkah-langkah tertentu dalam menyelesaikan masalah

Penulisan Algoritma

Dalam bahasa natural (Bahasa Indonesia, Bahasa Inggris, dan bahasa manusia lainnya)

Tapi sering membingungkan (ambiguous) Bagus secara visual akan tetapi repot kalau algoritmanya panjang Sudah lebih dekat ke bahasa pemrograman, namun sulit dimengerti oleh orang yang tidak mengerti pemrograman

Menggunakan flow chart (diagram alir)

Menggunakan pseudo-code

Contoh

Requirement
Buat sebuah algoritma untuk memilih bilangan terbesar dari 3 buah bilangan Nantinya ini bisa digeneralisir menjadi n buah bilangan

Algoritma Dalam Bahasa Natural

Ambil bilangan pertama dan set maks sama dengan bilangan pertama Ambil bilangan kedua dan bandingkan dengan maks Apa bila bilangan kedua lebih besar dari maks, set maks sama dengan bilangan kedua Ambil bilangan ketiga dan bandingan dengan maks Apabila bilangan ketiga lebih besar dari maks, set maks sama dengan bilangan ketiga Variabel maks berisi bilangan terbesar. Tayangkan hasilnya

Algoritma dengan Flowchart


Mulai

Maks = bilangan pertama

Maks < bilangan kedua

Ya

Maks = bilangan kedua

Tidak

Maks < bilangan ketiga

Ya

Maks = bilangan ketiga

Tidak

Selesai

Algoritma dengan pseudo-code

Maks=n if (maks < x then Maks=x) if (maks < y then Maks=y)

Aspek Penting dari Algoritma


Finiteness Algoritma harus berhenti after a finite number of steps Definiteness Setiap langkah harus didefinisikan secara tepat, tidak boleh membingungkan (ambiguous) Input Sebuah algoritma memiliki nol atau lebih input yang diberikan kepada algoritma sebelum dijalankan Output Sebuah algoritma memiliki satu atau lebih output, yang biasanya bergantung kepada input Effectiveness Setiap algoritma diharapkan miliki sifat efektif

Pemrograman Komputer
Bentuk keahlian menulis instruksi yang sangat berguna, dapat dikelola, dan berkembang luas yang dapat diterjemahkan oleh sistem komputer untuk menjalankan sebuah tugas yang berguna. Program komputer dapat di bentuk dalam satu dari sekian banyak bahasa, mulai dari bahasa tingkat tinggi hingga tingkatan paling rendah.

The Software Engineering Body Of Knowledge (SWEBOK) : - Software requirements - Software design - Software construction - Software testing - Software maintenance - Software configuration management - Software engineering management - Software engineering process - Software engineering tools and methods - Software quality

Perkembangan teknologi jaringan menuntut aplikasi sederhana dengan kemampuan multi-jaringan yang dapat diakses dengan cepat dan powerfull Aplikasi Client-Server merupakan sebuah paradigma dalam teknologi informasi yang merujuk kepada cara untuk mendistribusikan aplikasi ke dalam dua pihak: pihak klien dan pihak server. Dalam model klien/server, sebuah aplikasi dibagi menjadi dua bagian yang terpisah, tapi masih merupakan sebuah kesatuan yakni komponen klien dan komponen server. Komponen klien juga sering disebut sebagai front-end, sementara komponen server disebut sebagai back-end

Komponen klien dari aplikasi tersebut dijalankan dalam sebuah workstation dan menerima masukan data dari pengguna. Komponen klien tersebut akan menyiapkan data yang dimasukkan oleh pengguna dengan menggunakan teknologi pemrosesan tertentu dan mengirimkannya kepada komponen server yang dijalankan di atas mesin server, umumnya dalam bentuk request terhadap beberapa layanan yang dimiliki oleh server. Komponen server akan menerima request dari klien, dan langsung memprosesnya dan mengembalikan hasil pemrosesan tersebut kepada klien. Klien pun menerima informasi hasil pemrosesan data yang dilakukan server dan menampilkannya kepada pengguna, dengan menggunakan aplikasi yang berinteraksi dengan pengguna.

Tipe Pemrograman

Pemrograman Desktop Pada umumnya program/aplikasi yang dibuat untuk digunakan di sebuah PC saja dan tidak bisa digunakan secara bersama-sama dengan PC lain disebut aplikasi desktop-based (misalnya : notepad, word, excel, dsj) Pemrograman Web-based Aplikasi yang di-install di sebuah PC dan dapat digunakan oleh PC lain dalam satu jaringan atau lebih yang saling terhubung. Untuk menjalankan aplikasi tersebut umumnya membutuhkan web-browser

Aplikasi Web-based

(+) Support semua Operating System (OS) (+) Open Source (+) Bisa di-enkripsi untuk keamanan/privasi (+) Dikembangkan oleh banyak pihak (+) Support jaringan secara otomatis (+) Mendukung sistem database (-) Instalasi tidak mudah untuk org awam (-) Tidak bisa berdiri sendiri,membutuhkan webserver & web browser

Requirement

PC / Server Computer Web & PHP-server (http://www.apachefriends.org/en/xampp.html) free. Database-server (xampp) Program Editor (http://notepadplus.sourceforge.net) free. Dreamweaver (not free)

PHP

PHP adalah bahasa scripting yang menyatu dengan HTML dan dijalankan pada server side. Artinya semua sintaks
yang kita berikan akan sepenuhnya dijalankan pada server sedangkan yang dikirimkan ke browser hanya hasilnya saja

PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP masih bernama FI (Form Interpreted), yang wujudnya berupa sekumpulan script yang digunakan untuk mengolah data form dari web.

Selanjutnya Rasmus merilis kode sumber tersebut untuk umum dan menamakannya PHP/FI, kependekan dari Hypertext Preprocessing'/Form Interpreter. Dengan perilisan kode sumber ini menjadi open source, maka banyak programmer yang tertarik untuk ikut mengembangkan PHP.

Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini interpreter PHP sudah diimplementasikan dalam program C. Dalam rilis ini disertakan juga modul-modul ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan.

Pada tahun 1997, sebuah perusahaan bernama Zend menulis ulang interpreter PHP menjadi lebih bersih, lebih baik, dan lebih cepat. Kemudian pada Juni 1998, perusahaan tersebut merilis interpreter baru untuk PHP dan meresmikan rilis tersebut sebagai PHP 3.0.

Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis tersebut dikenal dengan PHP 4.0. PHP 4.0

adalah versi PHP yang paling banyak dipakai pada awal abad ke-21. Versi ini banyak dipakai disebabkan
kemampuannya untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan dan stabilitas yang tinggi.

Pada Juni 2004, Zend merilis PHP 5.0. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi objek ke dalam PHP untuk menjawab perkembangan bahasa pemrograman ke arah paradigma berorientasi objek.

Kelebihan PHP

Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaanya. Web Server yang mendukung PHP dapat ditemukan dimana - mana dari mulai apache, IIS, Lighttpd, hingga Xitami dengan configurasi yang relatif mudah. Dalam sisi pengembangan lebih mudah, karena banyaknya milis - milis dan developer yang siap membantu dalam pengembangan. Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi yang banyak. PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah system.

Contoh Sederhana
Menampilkan pesan : <?php echo "<b>Hello World</b>" ; echo "<b>Halo Dunia</b>" ; ?> Menampilkan deret fibonaci : <?php $now = 1; $prev = 0; $jumlah = 8; while ($i < $jumlah) { $temp = $prev; $prev = $now; $now = $now + $temp; echo($now . ", "); $i++; } ?>

Homework

Download & Install XAMPP di PC Pelajari petunjuk singkatnya Download & Install PHP Editor

You might also like