Sabtu, 13 November 2010

Konsep MVC dengan database sederhana


Sekarang kita akan menerapkan konsep MVC(Model View Controller) dengan koneksi database,karena kali ini dengan koneksi database,makanya databasenya harus siap.Buat database dengan nama "dbtest",kemudian buat tabel dengan nama "tbl_test"sekarang setting configurasinya seperti di postingan sebelumnya ,karena sekarang menggunakan koneksi database.Ubah juga File database.php di folder App/Config
 $route['default']['username'] = "";
$route['default']['database] = "";

menjadi
   $route['default']['username'] = "root";
$route['default']['database] = "dbtest";

sekarang buat m_test.php di direktori system->application->models
 ?php
Class M_test extends Model {
function M_test(){
parent::Model();
}
function get_data() {
$data_siswa= $this->db->query("select * from tbl_test");
return $data_siswa;
}
}
?>

sekarang buat c_test.php di direktori system->application->controller
 ?php
Class C_test extends Controller {
function C_test(){
parent::Controller();
}
function index(){
$this->load->model('M_test','',TRUE);
$data['teks'] = $this->M_test
->get_data();
$this->load->view('V_test',$data);
}
}
?>

sekarang buat c_test.php di direktori system->application->views
 <Html><Head>
<Title>MVC dengan database</Title>
</Head>
<Body>
<table>
<tr><th>Nis</th><th>Nama</th><th>Kelas</th></tr>
<?php
foreach($teks->result() as $r){
?><tr><th><?php echo $row->Nis; ?></th><th><?php echo $row->Nama; ?></th><th><?php echo $row->Kelas?></th></tr>
<?php
}
?>
</table>
</Body></Html>

buat yang baca maap code nya gak karuan,,baru cobain code formater soalnya,, :)
Thank Full

Sabtu, 06 November 2010

Maen Dota Di linux

Buat kk yang mau maenin dota di linux gak usah bingung nyari emulator atau semacam nya.kk cukup pake wine aja,tapi wine ini bukan emulator lho cz wine singkatan dari Wine Is Not Emulator :)







1.sebelum maen Dota di linux,pastikan kk udah install driver VGA atau cek dulu apakah kk udah install driver vga,
  • $ glxinfo |grep rendering
2.trus install wine nya
  • $sudo apt-get update
  • $sudo apt-get install wine
3.kemudian jalankan dengan perintah di terminal
  • $wine (folder dota anda)/war3.exe -opengl
  • contoh $wine warcraf/war3.exe -opengl
4.maen dah kk.

Cat:
1.grapics nya gak sebagus maen di windows kk,mungkin respon mouse nya juga agak lama,:)
2.kalo pake patch dota yang terbaru install dulu "Microsoft Visual C++ 2005 Redistributable" ,kk bisa download di sini

Jumat, 05 November 2010

Hello Word di Code Igniter



Untuk Membuat membuat "Hello word" dengan framework Code Igniter kita harus mempunyai file code igniter,dan pastikan kita sudah menginstal php-server seperti xampp.oh yaw dan pastinya anda punya editornya...






1.file Code Igniter bisa di download di sini
2.extract file nya.dan paste kan di folder htdocs.
3.buka php editor kalian,bisa menggunakan NetBeans IDE,notepad++ ataupun CIgniter.
4.di sini saya akan menggunakan Net Beans,buat file baru File->Open Project->Php->PHP Application With Existing Source.kemudian broswe dan pilih folder yang di extract tadi.
5.buka file config.php di folder App/Config,ubah:
 $config['base_url'] = "http://example.com/";

menjadi
 $config['base_url'] = "http://localhost/test/";

6.buka file routes.php di folder App/Config,ubah:
 $route['default_controller'] = "welcome";

menjadi
 $route['default_controller'] = "c_test";

7.sekarang buat m_test.php di direktori system->application->models
 ?php
Class M_test extends Model {
function M_test(){
parent::Model();
}
function mhello() {
$teks = "Hello word";
return $teks;
}
}
?>


8.buat c_test sebagai controller di direktori system->application->controllers
 ?php
Class C_test extends Controller {
function C_test(){
parent::Controller();
}
function index(){
$this->load->model('M_test','',TRUE);
$data['teks'] = $this->M_test>mhello();
$this->load->view('V_test',$data);
}
}
?>

9.yang terakhir buat v_test sebagai view nya,buat di direktori system->application->views
 <Html><Head> 
<Title>Hello Word</Title>
</Head>
<Body>
<?php
Echo $teks;
?>
</Body></Html>

Dan sekarang tinggal cek di browser anda dengan url "http://localhost/test/"
alhamdulillah selesei tutorial pertama ini gan,,hehehehhe :)

Kamis, 04 November 2010

Apakah Code Iginter itu ??


Sebenarnya apa sih yang disebut dengan framework itu?? Framework bisa diartikan sebagai alat yang digunakan untuk membantu pekerjaan. Karena untuk pembuatan website maka framework disini dapat diartikan sebagai alat yang dapat digunakan untuk mempermudah pembuatan website. Jika dengan CMS maka kita tinggal menjalankan saja tidak perlu lagi memikirkan untuk menulis kode program sendiri, tetapi tidak demikian dengan framework. Menggunakan framework kita masih harus menulis kode, bedanya kode-kode yang kita tulis harus menyesuaikan dengan lingkungan framework yang kita gunakan. Memang konsekuensinya kita harus belajar lagi lingkungan pengembangan berdasarkan framework yang kita gunakan, tetapi hal itu akan terbayar setelah kita menguasai dan bisa menggunakan framework tersebut.

Sebuah framework selain menyediakan lingkungan pengembangan sendiri juga menyediakan berbagai macam fungsi siap pakai yang bisa kita gunakan dalam pembuatan website. Sehingga tidak perlu kaget jika akan banyak kode atau fungsi yang terlihat tidak seperti biasanya, karena fungsi fungsi tersebut merupakan fungsi bawaan framework dan bukan fungsi asli dari PHP. Fungsi tersebut terkadang merupakan pengembangan atau penyesuaian fungsi asli PHP agar lebih mudah digunakan atau agar lebih sesuai dengan kebutuhan pengguna.

CodeIgniter merupakan salah satu dari sekian banyak framework PHP yang ada. CodeIgniter dikembangkan oleh Rick Ellis (http://www.ellislab.com). Tujuan dari pembuatan framework CodeIgniter ini menurut user manualnya adalah untuk menghasilkan framework yang akan dapat digunakan untuk pengembangan proyek pembuatan website secara lebih cepat dibandingkan dengan pembuatan website dengan cara koding secara manual, dengan menyediakan banyak sekali pustaka yang dibutuhkan dalam pembuatan website, dengan antarmuka yang sederhana dan struktur logika untuk mengakses pustaka yang dibutuhkan. CodeIgniter membiarkan kita untuk memfokuskan diri pada pembuatan website dengan meminimalkan pembuatan kode untuk berbagai tujuan pembuatan website.

Kenapa CodeIgniter?

Ada banyak sekali framework PHP yang beredar di internet. Lantas kenapa kita memilih CodeIgniter bukan yang lain?? Berikut alasan-alasannya:

1. Gratis.

CodeIgniter dilisensikan dibawah lisensi Apache/BSD style open source license, ini berarti kita dapat menggunakannya sesuai dengan keinginan kita.

2. Berjalan di PHP versi 4 dan 5.

Sekarang ini PHP sudah mencapai versi ke 5, meskipun begitu masih banyak orang yang tetap menggunakan PHP versi 4, oleh sebab itu CodeIgniter dikembangkan agar tetap kompatibel dengan PHP versi 4 dan dapat dijalankan pada PHP versi 5.

3.Ringan dan cepat.

Secara default CodeIgniter hanya berjalan dengan me load beberapa pustaka saja, dengan demikian hanya membutuhkan resource yang sedikit sehingga ringan dan cepat dijalankan. Pustaka-pustaka lain yang nantinya akan digunakan bisa di load sesuai dengan kebutuhan.

4.Menggunakan MVC.

CodeIgniter menggunakan lingkungan pengembangan dengan metode Model View Controller (MVC) yang membedakan antara logika dan presentasi/tampilan, sehingga tugas bisa lebih mudah dipecah-pecah. Ada bagian yang khusus membuat tampilan dan bagian yang membuat core programnya.

5.Dokumentasi.

Salah satu hal yang bisa dijadikan barometer apakah sebuah aplikasi benar-benar dikembangkan atau tidak bisa dilihat dari dokumentasinya. Dalam hal ini CodeIgniter sangat luar biasa, terdapat dokumentasi yang sangat lengkap tentang semua hal yang ada dalam CodeIgniter. Mulai dari langkah instalasi sampai dokumentasi fungsi-fungsi nya tersedia. Adanya dokumentasi sangat memudahkan bagi pemula dalam mempelajari lingkungan pengembangan website dengan CodeIgniter.

6.Pustaka yang lengkap.

CodeIgniter dilengkapi dengan berbagai pustaka siap pakai untuk berbagai kebutuhan, misalnya saja koneksi database, email, session dan cookies, keamanan, manipulasi gambar dan banyak lagi.

Fitur-Fitur CodeIgniter

Berikut fitur-fitur yang didukung oleh CodeIgniter :

1. Sistem berbasis Model View Controller
2. Kompatibel dengan PHP versi 4.
3. Ringan dan Cepat.
4. Terdapat dukungan untuk berbagai basis data.
5. Mendukung Active Record Database.
6. Mendukung form dan validasi data masukan.
7. Keamanan dan XSS filtering.
8. Tersedia pengaturan session.
9. Tersedia class untuk mengirim email.
10. Tersedia class untuk manipulasi gambar (cropping,resizing, rotate dan lain-lain).
11. Tersedia class untuk upload file.
12. Tersedia class yang mendukung transfer via FTP.
13. Mendukung lokalisasi bahasa.
14. Tersedia class untuk melakukan pagination (membuat tampilan perhalaman).
15. Mendukung enkripsi data.
16. Mendukung benchmarking.
17. Mendukung caching.
18. Pencatatan error yang terjadi.
19. Tersedia class untuk membuat calendar.
20. Tersedia class untuk mengetahui user agent, misalnya tipe browser dan sistem operasi yang digunakan pengunjung.
21. Tersedia class untuk pembuatan template website.
22. Tersedia class untuk membuat trackback.
23. Tersedia pustaka untuk bekerja dengan XMP-RPC.
24. Menghasilkan clean URL.
25. URI routing yang felksibel.
26. Mendukung hooks, ekstensi class dan plugin.
27. Memiliki helper yang sangat banyak jumlahnya.

Model View Controller

Seperti sudah disebutkan di muka bahwa CodeIgniter menerapkan lingkungan pengembangan dengan metode MVC (Model View Controller). MVC memisahkan antara logika pembuatan kode dengan pembuatan template atau tampilan website. Penggunaan MVC membuat pembuatan sebuah proyek website menjadi lebih terstruktur dan lebih sederhana.

Secara sederhana konsep MVC terdiri dari tiga bagian yaitu bagian Model, bagian View dan bagian Controller. Didalam website dinamis setidaknya terdiri dari 3 hal yang paling pokok, yaitu basis data, logika aplikasi dan cara menampilkan halaman wesite. 3 hal tersebut direpresentasikan dengan MVC yaitu model untuk basis data, view untuk cara menampilkan halaman website dan controller untuk logika aplikasi.

1. Model

Merepresantiskan struktur data dari website yang bisa berupa basis data maupun data lain, misalnya dalam bentuk file teks atau file xml. Biasanya didalam model akan berisi class dan fungsi untuk mengambil, melakukan update dan menghapus data website. Karena sebuah website biasanya menggunakan basis data dalam menyimpan data maka bagian Model biasanya akan berhubungan dengan perintah-perintah query SQL. Model bisa dibilang khusus digunakan untuk melakukan koneksi ke basis data oleh karena itu logika-logika pemrograman yang berada didalam model juga harus yang berhubungan dengan basis data. Misalnya saja pemilihan kondisi tetapi untuk memilih melakukan query yang mana.

2. View

Merupakan informasi yang ditampilkan kepada pengunjung website. Sebisa mungkin didalam View tidak berisi logika-logika kode tetapi hanya berisi variabel-variabel yang berisi data yang siap ditampilkan. View bisa dibilang adalah halaman website yang dibuat menggunakan HTML dengan bantuan CSS atau JavaScript. Didalam view jangan pernah ada kode untuk melakukan koneksi ke basis data. View hanya dikhususkan untuk menampilkan data-data hasil dari model dan controller.

3. Controller

Controller merupakan penghubung antara Model dan View. Didalam Controller inilah terdapat class dan fungsi-fungsi yang memproses permintaan dari View kedalam struktur data didalam Model. Controller juga tidak boleh berisi kode untuk mengakses basis data. Tugas controller adalah menyediakan berbagai variabel yang akan ditampilkan di view, memanggil model untuk melakukan akses ke basis data, menyediakan penanganan error, mengerjakan proses logika dari aplikasi serta melakukan validasi atau cek terhadap input.

Jadi secara singkat urutan dari sebuah request adalah sebagai berikut : user berhubungan dengan view, dimana didalam view inilah semua informasi ditampilkan. Saat user melakukan permintaan atau request, misal klik tombol maka request tersebut akan diproses oleh Controller. Apa yang harus dilakukan, data apa yang diinginkan, apakah ingin melihat data, atau memasukan data atau mungkin melakukan validasi data terlebih dahulu, semua diproses oleh Controller. Kemudian Controller akan meminta Model untuk menyelesaikan request, entah itu melakukan query atau apapun. Dari Model, data akan dikirim kembali untuk di proses lebih lanjut di dalam Controller dan baru dari Controller data akan ditampilkan di View.

Source : KuliahIT.com

Jumat, 22 Januari 2010

Pemrogaman Komputer

Apa yang Disebut Bahasa Pemrograman?
Bahasa pemrograman adalah teknik komunikasi standar untuk mengekspresikan instruksi kepada komputer.Layaknya bahasa manusia, setiap bahasa memiliki tata tulis dan aturan tertentu.Bahasa pemrograman memfasilitasi seorang programmer secara tepat menetapkan data apa yang sedang dilakukan oleh komputer selanjutnya,bagaimana data tersebut disimpan dan dikirim, dan apa yang akan dilakukan apabila terjadi kondisi yang variatif.Bahasa pemrograman dapat diklasifikasikan menjadi tingkat rendah, menengah, dan tingkat tinggi.
Pergeseran tingkat dari rendah menuju tinggi menunjukkan kedekatan terhadap ”bahasa manusia”.

Kategori Bahasa Pemrograman
1. Bahasa Pemrograman Tingkat Tinggi
Merupakan bahasa tingkat tinggi yang mempunyai ciri-ciri mudah dimengerti karena kedekatannya terhadap bahasa sehari – hari.Sebuah pernyataan program diterjemahkan kepada sebuah atau beberapa mesin dengan menggunakan compiler. Sebagai contoh adalah : JAVA, C++, .NET
2. Bahasa Pemrograman Tingkat Rendah
Bahasa pemrograman generasi pertama. Bahasa jenis ini sangat sulit dimengerti karena instruksinya menggunakan bahasa mesin.Disebut juga dengan bahasa assembly merupakan bahasa dengan pemetaan satu – persatu terhadap instruksi komputer.Setiap intruksi assembly diterjemahkan dengan menggunakan assembler.
3. Bahasa Pemrograman Tingkat Menengah
Dimana penggunaan instruksi telah mendekati bahasa sehari – hari, walaupun masih cukup sulit untuk dimengerti karena menggunakan singkatan – singkatan seperti STO yang berarti simpan (STORE) dan MOV yang artinya pindah (MOVE).Yang tergolong dalam bahasa ini adalah Fortran.

Alur Pembuatan Program
Seorang programmer tidak melakukan pembuatan dan pengkodean program secara
begitu saja, namun mengikuti perencanaan dan metodologi yang terstruktur yang memisahkan proses suatu aplikasi menjadi beberapa bagian.Berikut ini langkah – langkah sistematis dasar dalam menyelesaikan permasalahan pemrograman :
1. Mendefinisikan masalah
Seorang programmer umumnya mendapatkan tugas berdasarkan sebuah permasalahan.Sebelum sebuah program dapat terdesain dengan baik untuk menyelesaikan beberapa permasalahan,masalah–masalah yang terjadi harus dapat diketahui dan terdefinisi dengan baik untuk mendapatkan detail persyaratan input dan output.Sebuah pendefinisan yang jelas adalah sebagian dari penyelesaian masalah.Pemrograman komputer mempersyaratkan untuk mendefiniskan program terlebih dahulu sebelum membuat suatu penyelesaian masalah.
Mari kita definisikan sebuah contoh permasalahan :
”Buatlah sebuah program yang akan menampilkan berapa kali sebuah nama tampil pada sebuah daftar”

2. Menganalisa dan membuat rumusan pemecahan masalah
Setelah sebuah permasalahan terdefinisi secara memadai, langkah paling ringkas dan efisien dalam penyelesaian harus dirumuskan.Umumnya, langkah berikutnya meliputi memecahkan masalah tersebut menjadi beberapa bagian kecil dan ringkas.
Contoh masalah :
Menampilkan jumlah kemunculan sebuah nama pada daftar
Input Terhadap Program :
Daftar Nama, Nama yang akan dicari
Output Dari Program :
Jumlah kemunculan nama yang dicari

3. Desain Algoritma dan Representasi
Setelah kita mengetahui dengan baik dan jelas mengenai permasalahan yang ingin diselesaikan, langkah selanjutnya yaitu membuat rumusan algoritma untuk menyelesaikan permasalahan. Dalam pemrograman komputer penyelesaian masalah didefinisikan dalam langkah demi langkah. Algoritma adalah urutan langkah – langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Logis merupakan kunci dari sebuah algoritma. Langkah-langkah dalam algoritma harus logis dan bernilai benar atau salah.
Algoritma dapat diekpresikan dalam bahasa manusia, menggunakan presentasi grafik melalui sebuah FlowChart (diagram alir) ataupun melalui PseudoCode yang menjembatani antara bahasa manusia dengan bahasa pemrograman. Berdasarkan permasalahan yang terjadi pada bagian sebelumnya, bagaimanakah kita dapat memberikan solusi penyelesaian secara umum dalam sebuah alur yang dapat dengan mudah dimengerti?

Mengekspresikan cara penyelesaian melalui bahasa manusia :
1. Tentukan daftar nama
2. Tentukan nama yang akan dicari, anggaplah ini merupakan sebuah kata kunci
3. Bandingkan kata kunci terhadap setiap nama yang terdapat pada daftar
4. Jika kata kunci tersebut sama dengan nama yang terdapat pada daftar, tambahkan nilai 1 pada hasil perhitungan
5. Jika seluruh nama telah dibandingkan, tampilkan hasil perhitungan (output)

Mengekspresikan solusi melalui Pseudocode :
listNama = Daftar Nama
keyNama = Nama yang dicari
hitung = 0
Untuk setiap nama pada Daftar Nama lakukan :
Jika nama == keyNama
Hitung = Hitung + 1
Tampilkan Hitung

4. Pengkodean, Uji Coba dan pembuatan dokumentasi
membentuk algoritma, maka proses penulisan program dapat dimulai. Menggunakan algoritma sebagai pedoman, maka kode program dapat ditulis sesuai bahasa pemrograman yang dipilih.
Setelah menyelesaikan seluruh kode program, langkah selanjutnya yaitu menguji program tersebut apakah telah berfungsi sesuai tujuannya untuk memberikan suatu solusi untuk menyelesaikan suatu masalah. Bilamana terjadi kesalahan – kesalahan logika atas program, disebut juga sebagai bugs, maka kita perlu untuk mengkaji ulang rumusan/algoritma yang telah dibuat, kemudian memperbaiki implementasi kode program yang mungkin keliru. Proses ini disebut dengan debugging.
Terdapat dua tipe kesalahan (errors) yang akan dihadapi seorang programmer. Yang
pertama adalah compile-time error, dan yang kedua adalah runtime error. Compile-time errors muncul jika terdapat kesalahan penulisan kode program. Compiler akan mendeteksi kesalahan yang terjadi sehingga kode tersebut tidak akan bisa dikompilasi. Terlupakannya penulisan semi-colon (;) pada akhir sebuah pernyataan program atau kesalahan ejaan pada beberapa perintah dapat disebut juga sebagai compile–time error. Compiler tidaklah sempurna sehingga tidak dapat mengidentifikasi seluruh kemungkinan kesalahan pada waktu kompilasi. Umumnya kesalahan yang terjadi adalah kesalahan logika seperti perulangan tanpa akhir. Tipe kesalahan ini disebut dengan runtime error. Sebagai contoh, penulisan kode pada program terlihat tanpa kesalahan, namun pada saat anda menelusuri struktur logika kode tersebut, bagian yang sama pada kode tereksekusi berulang–ulang tanpa akhir. Pada kasus tersebut compiler tidak cukup cerdas untuk menangkap kesalahan tipe ini pada saat proses kompilasi. Sehingga saat program dijalankan, aplikasi atau bahkan keseluruhan komputer mengalami hang karena mengalami proses perulangan yang tidak berakhir. Contoh lain dari run-time error adalah perhitungan atas nilai yang salah, kesalahan penetapan kondisi dan lain sebagainya.
Untuk memudahkan dalam memeriksa suatu kesalahan suatu program ataupun memahami jalannya program, kita juga perlu membuat suatu dokumentasi dari program yang dibuat. Dokumentasi tersebut berisi informasi mulai dari tujuan dan fungsi program, algoritma, serta cara penggunaannya.