Apa itu Framework ?



Buat para programmer atau para interest IT, pasti sudah kenal kan yang namanya Framework??. Pasti jawabannya “tentu sudah kenal “. Tapi buat yang belom tahu tentang Framework, kira-kira pengertiannya dalam dunia IT begini:
Framework adalah sekumpulan perintah/fungsi dasar yang dapat membantu dalam menyelesaikan proses-proses yang lebih kompleks
Pengenalan

Mengapa harus Framework ? Sebenarnya bukan keharusan untuk menggunakan framework. Namun, seperti pengertian diatas, framework dapat membantu anda dalam menyelesaikan pekerjaan yang lebih kompleks.

Pada tutorial kali ini, saya akan membahas tentang CodeIgniter (CI), sebuah PHP Framework yang saya nilai lebih mudah digunakan ketimbang CakePHP atau Zend Framework. Struktur CI lebih banyak meniru Ruby on Rail (RoR), sebuah framework pembuatan aplikasi web dengan menggunakan bahasa pemrograman Ruby. Selain itu, dokumentasinya lebih lengkap dan tentunya mudah dipahami.

Secara umum, framework menggunakan struktur MVC (Model, View, Controller). Jika saya gambar kan, kira-kira seperti ini :

Input > Processing > Output = Controller > Model > View

Model
Model mencakup semua proses yang terkait dengan pemanggilan struktur data baik berupa pemanggilan fungsi, input processing atau mencetak output ke dalam browser

Controller
Controller mencakup semua proses yang terkait dengan pemanggilan database dan kapsulisasi proses-proses utama. Jadi semisal di bagian ini ada file bernama member.php, maka semua proses yang terkait dengan member akan dikapsulisasi/dikelompokan dalam file ini.

View
View mencakup semua proses yang terkait layout output. Bisa dibilang untuk menaruh template interface website atau aplikasi.

More Powerable

Nah, kelebihan lain dari CI adalah Search Engine dan Human Friendly URL….apalagi nih ? CI menggunakan struktur pemanggilan eksekusi seperti ini :
www.your-site.com/news/article/345.
Jadi maksudnya, ketika sebuah Search Engine mencari kata yang terkait ke sebuah situs, maka kata kunci tersebut bisa saja didapatkan dalam pemanggilan alamat situs tersebut.

Download

Nah, sebelum memulai, ada baiknya anda mendowload file CI terlebih dahulu. Pastikan juga komputer anda telah terinstall Apache, PHP, dan MySQL. Lebih mudah jika anda menggunakan XAmpp atau paketan web server jenis lainnya.

Setelah CI di download, taruh dalam htdocs. Jika anda menginstall XAmpp di folder C:/ Program Files maka alamatnya adalah C:/Program Files/xampp/htdocs/
Important

Nah, yang perlu anda perhatikan 3 folder penting :
/system/application/model
/system/application/controller
/system/application/view

Jadi, semua file yang terkait dengan website atau aplikasi anda, masing-masing harus ditaruh di ketiga folder ini sesuai dengan fungsinya masing-masing.
Aturan Penulisan Fungsi

Karena CI menggunakan Object Oriented Programming (OOP), maka yang perlu diingat bahwa penulisan nama class utama harus menggunakan huruf besar di awal dan disimpan dengan nama yang sama ,tetapi menggunakan huruf kecil semua.

Sebagai contoh, silahkan buka file /system/application/controllers/welcome.php

class Welcome extends Controller {
function Welcome()
{
parent::Controller();
}

function index()
{
$this->load->view(’welcome_message’);
}
}

Aturan ini berlaku untuk semua file yang terkait dengan class fungsi. Sedangkan jika didalamnya terdapat fungsi-fungsi lain, boleh menggunakan huruf kecil saja atau huruf besar. Tetapi perlu diingat bahwa PHP sangat Case Sensitive, jadi berhati-hatilah dalam menggunakan nama fungsi.
Konfigurasi

Selanjutnya, dalam folder /system/application/config/ ada beberapa file yang perlu anda ubah supaya CI bisa berjalan dengan baik.

config.php
Isi alamat pemanggilan di browser. Dalam contoh ini alamatnya adalah http://localhost/codeigniter
$config[’base_url’] = “http://localhost/codeigniter”;

database.php
Isi hostname, username, password dan nama database yang digunakan.

autoload.php
File ini berfungsi untuk memanggil secara otomatis fungsi-fungsi yang sudah disediakan CI atau yang anda buat tanpa harus memanggillnya dalam aplikasi anda. Dalam kasus ini, kita akan memanggil fungsi database secara otomatis sehingga setiap fungsi lain yang menbutuhkan fungsi database cukup dengan menggunakan perintah $this->db
Kira-kira seperti ini isinya :
$autoload[’libraries’] = array(’database’);

routes.php
Variabel ini digunakan untuk menentukan nama file utama yang digunakan sebagai ekeskutor utama website atau aplikasi. Contoh secara defaultnya adalah file welcome.
$route[’default_controller’] = “welcome”;

Silahkan buka folder /system/application/controllers/, pasti anda menemukan file yang bernama welcome.php. File ini yang disebut sebagai eksekutor utama dari proses secara keseluruhan. Bisa dibilang ‘index’ nyalah.
Execute

Oke…sekarang coba panggil melalui browser anda dengan alamat http://localhost/codeigniter/ (Codeigniter hanya sebagai contoh. Anda bisa merubah dengan nama yang anda inginkan)
Jika berhasil, akan tampil gambar seperti ini :
REVIEW

Mengapa kita butuh framework?
Bagi anda yang belum familiar dengan framework, framework adalah sekumpulan fungsi, class, dan aturan-aturan. Berbeda dengan library yang sifatnya untuk tujuan tertentu saja, framework bersifat menyeluruh mengatur bagaimana kita membangun aplikasi.

Framework memungkinkan kita membangun aplikasi dengan lebih cepat karena sebagai developer kita akan lebih memfokuskan pada pokok permasalahan sedangkan hal-hal penunjang lainnya seperti koneksi database, form validation, GUI, dan security; umumnya telah disediakan oleh framework. Disamping itu dengan aturan-aturan yang jelas dan harus dipatuhi, aplikasi kita lebih solid, more readable, dan kolabarasi dalam tim dapat lebih mudah dilaksanakan.

Kita sebagai seorang software developer bisa dianalogikan sebagai seorang tukang bangunan. Apabila anda perhatikan, seorang tukang bangunan bisa membuat sebuah rumah. Tidak akan menjadi masalah bila hanya untuk membangun rumah dengan satu atau dua lantai. Tetapi akan menjadi masalah apabila dia mendapatkan pekerjaan untuk membangun sebuah gedung bertingkat. Permasalahan akan menjadi semakin komplek, makin banyak pekerja dan material yang dilibatkan, belum lagi dengan jadwal yang ketat. Kita pun seperti itu. Membangun aplikasi kecil tentu tidak menjadi masalah. Namun bagaimana bagaimana apabila aplikasi kecil kita tersebut dengan makin lama makin bertambah requirementnya sejalan dengan kebutuhan user. Di sini lah peran penting sebuah framework dalam membangun aplikasi.

Framework yang ideal menurut saya

Sejak fenomena Ruby on Rails, sebuah framework untuk bahasa Ruby, yang mana mampu memberi kemudahan yang luar biasa bagi developer dalam membangun aplikasi web; tumbuh menjamur framework-framework sejenis yang mengadopsi kemampuan Ruby on Rails untuk bahasa lainnya. Untuk PHP sendiri, terdapat PHP on Track, Symfony, PHPCake, CodeIgniter, dan masih banyak lainnya.

Saya telah mencoba Symfony, PHPCake, dan CodeIgniter. Symfony memiliki fasilitas paling lengkap, terdapat command line interface untuk membangun Object Relational Model (ORM), yang menterjemahkan relational database menjadi kode program; dukungan AJAX; scaffolding, yaitu membuat mekanisme CRUD (create, retrieve, update, and delete). Namun sayangnya Symfony hanya berjalan di PHP5. Sebenarnya tidak menjadi masalah, karena saat ini telah banyak web hosting yang menyediakan PHP5. Apa yang saya rasakan adalah, bahwa Symfony adalah framework yang sangat solid. Saya sangat menyukai fasilitas ORMnya, scaffolding yang kompleks, dan tutorial dan dokumentasi yang sangat bagus dan komplit. Bagaimana tidak bagus, selain disediakan User Guide yang berisi referensi API, juga disediakan sebuah buku berisi study case pembuatan aplikasi ASKEET mulai dari desain awal sampai selesai pengkodean. Di samping itu terdapat juga tutorial yang berupa file movie, namun karena berukuran yang cukup besar, saya enggan mendownloadnya, saya merasa sudah cukup dengan manual berbentuk pdf. Secara kontras, saya juga merasakan bahwa Symfony adalah seperti senjata kelas berat. Untuk mengoperasikannya butuh learning curve yang cukup lama. Saya juga merasakan kekuatan yang out of control, dimana ketika terjadi saya menginginkan sebuah perubahan yang agak berbeda dari tutorial yang diberikan, saya seperti tidak tahu harus kemana dan bagaimana. Saya mencoba bertahan selama 3 hari dengan berusaha membuat aplikasi sederhana, namun pada akhirnya saya putuskan untuk berhenti.

Berikutnya adalah CakePHP, framework ini juga memiliki ORM dan scaffolding seperti halnya Symfony. Terdapat juga command line interface, yang disebut sebagai baker, namun sifatnya tidak mutlak digunakan. Secara keseluruhan CakePHP memiliki kemampuan tidak jauh dari Symfony, namun sekilas lebih sederhana dan ukurannya lebih kecil, dan yang tidak kalah menarik adalah kompatibilitasnya dengan PHP4. Namun sayang, dokumentasi kurang lengkap, sehingga saya kesulitan mencari informasi lebih dalam. Untung lah CakePHP membuka channel IRC sehingga kita bisa berkonsultasi langsung dengan para pakarnya. Saya sudah mencoba menanyakan permasalahan di channel IRC yang disediakan. Saya mendapatkan respon yang memuaskan dari pakarnya (developer CakePHP) sehingga permasalahn saya saat itu dapat diatasi. Namun di kesempatan lain, saya tidak mendapat respon sama sekali, saya mencari orang yang telah membantu saya sebelumnya, tetapi sepertinya dia tidak online. Saya merasa CakePHP tidak bisa memberikan apa yang saya inginkan, meski pun saya telah mencoba tutorial dan membaca panduan lainnya, saya tetap tidak besa melakukan apa-apa yang saya inginkan, atau bisa dibilang saya kebingungan, seperti halnya pada saat mencoba Symfony.

CodeIgniter, framework ini sebelumnya tidak masuk daftar yang akan saya coba. Hal ini dikarenakan oleh fiturnya yang jauh lebih sedikit dibandingkan Symfony dan CakePHP. Tidak ada ORM, scaffolding sangat sederhana, tidak ada AJAX, tidak ada user authentication. Lalu apa yang saya bisa harapkan darinya? Bermula dari membaca berbagai review php framework di blog lain, mereka mengatakan bahwa CodeIgniter memiliki kinerja yang lebih bagus daripada Symfony maupun CakePHP, dikarenakan oleh library yang di-load oleh framework lebih sedikit. Setelah saya mencobanya, memang framework ini terasa beda. Terasa lebih ringan dan lebih bebas. Meskipun CodeIgniter juga menggunakan design pattern MVC, namun tidak lah mutlak untuk menggunakan M (model). Jadi saya bisa dengan bebas menggunakan style yang saya sukai. Sajian dokumentasinya cukup lengkap, meskipun tidak selengkap Symfony, namun sangat memadai. Saya bisa melakukan ini itu setelah saya membaca panduan di online manual. Sangat menyenangkan, dimana Symfony dan CakePHP tidak bisa memberikannya untuk saya. Meskipun memiliki kemampuan yang dibawah framework lainnya, namun CodeIgniter sangat mudah untuk dipelajari. Mungkin ini lah yang dimaksud dengan framework lightweight. Mudah dan sangat ringan, namun tidak memiliki fasilitas sebanyak framework lainnya. Ketika saya amati forum dan halaman wiki, komunitas CodeIgniter memberikan solusi untuk permasalahan seperti User Authentication dan Ajax. Sepertinya memang pembuat CodeIgniter sengaja memberikan kebebasan kepada usernya untuk mengembangkan sendiri sesuai dengan kebutuhan masing-masing yang berbeda, sedangkan CodeIgniter bertanggungjawab terhadap tugas-tugas lain yang lebih utama.

Bagi saya CodeIgniter menarik, mudah dipelajari, dan sangat solid untuk membangun aplikasi yang besar. Peraturan-peraturan dan library yang disediakannya tidak membatasi saya untuk tetap menggunkan style pemrograman yang saya sukai. Ini adalah point penting. Siapa mengatur siapa, programer mengatur program atau program mengatur programer?

Cara Mempercepat Koneksi Modem



Cara Mempercepat Koneksi Modem - Mungkin banyak diantara sobat yang sering jengkel dengan koneksi internet yang dipakai, apalagi yang memakai modem. mulai dari koneksi lambat, disconnect sendiri, sampai loading yang tidak berkesudahan...hihihi...berarti kita senasib nih ^_^

Nah kali ini saya mau berikan sedikit solusinya nih, dengan harapan bisa sedikit membantu mempercepat koneksi modem sobat. setelah saya coba sendiri ternyata software ini mampu membantu Mempercepat koneksi internet sampai 200%, dengan jaminan lokasi sobat berada di daerah yg cukup sinyal ya, software ini ga berfungsi jika lokasi sobat memang kurang sinyalnya. nah penampakan softwarenya seperti gambar dibawah.

Untuk sobat yang ingin menguji software Flash Speed bisa langsung mengunduhnya di link dibawah ini


Klik disini untuk Download Software Flash Speed


Tags: smart, cdma, aha, telkomsel flash, gsm, smartfren, 3, flexi

Perkembangan Internet



Perkembangan Internet - Internet pada awalnya adalah sebuah proyek yang diciptakan untuk kepentingan pribadi sebuah negara. Namun saat ini sudah menjadi halayak umum. Semua orang sudah dapat menggunakan internet secara umum. Hampir semua orang juga sudah dapat mengoperasikan internet. Adapula sekarang internet yang sudah dapat dinikmati secara gratis yang disediakan oleh umum.

Jumlah pengguna internet saat ini sudah semakin bertambah dari tahun ke tahun. Oleh karena itu, perkembangan internet sangat pesat. Banyak juga dampak negatif dan positif yang disebabkan perkembangan internet ini. Oleh karena itu disini saya akan sedikit menjelaskan apa saja perkembangan internet dari dulu hingga sekarang.

Awal Mula Perkembangan Internet

Awal mulanya internet adalah sebuah proyek yang didirikan ARPA untuk mengintegrasikan jaringan komunikasi yang saling menghubungkan untuk keperluan sains dan militer. Hal ini dilatarbelakangi karena kejadian perang yang saat itu melanda pada tahun 1957. Seiring dengan perkembangan internet, mulailah dibuatnya sebuah sistem-sistem yang mendukung seperti Packet Switching yang memungkinkan untuk memecah paket data menjadi lebih kecil dan kirimkan ke tujuan.

Pada sebelumnya, proyek ARPANET hanya dapat menghubungkan 4 komputer saja. Namun dengan perkembangan, ada banyak lembaga seperti Universitas yang ingin ikut. Sehingga menambah lagi yang jadi 10 komputer yang terhubung. Lalu berkembang terus menerus hingga terjalinlah banyak situs atau komputer yang terhubung.

Lalu muncullah istilah TCP/IP yang dikenal hingga sekarang. TCP/IP ini menjadi protokol utama yang disepakati untuk saling terintegrasi satu komputer dengan lainnya. Setelah muncul TCP/IP, muncullah DNS. DNS adalah sebuah sistem yang memungkinkan sebuah IP digantikan dengan sebuah nama yang mudah diingat.

Setelah itu muncullah WWW yang menjadi perubahan besar. Dengan ini, muncullah beberapa website seperti email, online shop, ataupun sebagainya. Dengan ini, maka banyak perubahan-perubahan yang terjadi.

Saat ini perkembangan internet, masih terus berlangsung. Karena masih banyak yang perlu dikembangkan untuk keperluan-keperluan yang lain. Oleh karena itu, banyak yang masih mengembangkan internet untuk hal yang lebih baik. Saat ini juga, internet sudah banyak digunakan banyak orang untuk berbagai kebutuhan seperti siswa untuk mencari tugas. Lalu untuk keperluan pendidikan yang memberikan e-learning. Atau untuk para pebisnis mengenalkan produk mereka melalui internet

Cara Mempercepat Koneksi Internet



Cara Mempercepat Koneksi Internet - Akhir-akhir ini Koneksi internet yang saya pakai Sudah makin menjengkelkan, gonta-ganti provider terus tapi hasilnya masih nihil... koneksi masih tetep kaya siput.... malahan sering RTO. pasti jengkel dan kesal deh jika sudah begini. Malahan dulu pernah liat iklan salah satu provider yang menyarankan pakai sabuk pengaman saat internetan.... hahahaha..ngakak saya melihat iklan tersebut :P

Nah berikut ini ada beberapa tips dan trik mengenai cara mempercepat koneksi internet :

1. Standarnya Windows membatasi 20% bandwith.

Lalu bagaimana menyiasatinya? tanpa banyak basa-basi langsung praktek aja ya :)

Pertama-tama klik Start >> Run >> type gpedit.msc

Local Computer Policy >> Computer Configuration >> Administrative Templates >> Network >> QOS Packet Scheduler >> Limit Reservable Bandwidth


Double click pada Limit Reservable Bandwidth. Disana ditunjukkan bahwa string ini belum diatur (not configured), pada tab Explain ada penjelasan :

“By default, the Packet Scheduler limits the system to 20 percent of the bandwidth of a connection, but you can use this setting to override the default.”

Jadi Trik yang kita lakukan adalah mendisablenya dengan mengeset nilainya menjadi NOL.

2. Membuat Internet Explorer (IE) secepat Firefox

Banyak yang bilang IE memang browser yang paling payah, lelet, dan tidak stabil. Tapi ternyata ada trik untuk sedikit men-tune-up IE anda hingga kecepatannya bisa setara dengan Firefox. Caranya :

* Klik start >> run
* ketik regedit >> enter
* Carilah folder HKEY_CURRENT_USER\Software\Microsoft\Windows\Curre ntVersion\InternetSettings
* Klik kanan pada jendela sebelah kanan pilih >> New >> DWORD
* Ketik MaxConnectionsPerServer >> beri nilai terserah sobat (semakin tinggi nilai yang sobat buat, semakin bagus kecepatannya, eg : 99)
* Buat string DWORD baru lagi dengan cara yang sama >> ketik MaxConnectionsPer1_0Server
* Lalu beri nilai yang tinggi seperti di atas
* restart IE..

Selesai..

3. Mempercepat browsing dengan DNS cache

Buka notepad dan copy paste kode di bawah ini :

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServic es|DnscacheParameters]
“CacheHashTableBucketSize”=dword:00000001
“CacheHashTableSize”=dword:00000180
“MaxCacheEntryTtILimit”=dword:0000fa00
“MaxSOACacheEntryTtILimit”=dword:0000012d

Simpan dengan nama dnscache.reg
Double click file ini di windows explorer, tekan “yes”.

4. copy paste kode di bawah ini ke dalam notepad. Simpan dengan nama “cepat.reg”

REGEDIT4
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesT cpipParameters]
“SackOpts”=dword:00000001
“TcpWindowSize”=dword:0005ae4c
“Tcp1323Opts”=dword:00000003
“DefaultTTL”=dword:00000040
“EnablePMTUBHDetect”=dword:00000000
“EnablePMTUDiscovery”=dword:00000001
“GlobalMaxTcpWindowSize”=dword:0005ae4c

5.  Mempercepat Koneksi Internet bagi pengguna koneksi LAN

Berikut ini cara untuk mempercepat koneksi LAN :

* buka registry editor (start >> run >> ketik regedit)
* masuk ke HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Curr entVersion\Explorer\RemoteComputer\NameSpace dan DELETE key {D6277990-4C6A-11CF-8D87-00AA0060F5BF)
* Tutup registry editor dan restart windows.

6. Bagi pengguna koneksi internet dengan Broadband/DSL cobalah trik berikut ini

Buka registry editor dan masuk ke :

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesT cpipParameters

Buat string DWORD baru, dengan cara mengklik ‘Edit >> New >> DWORD Value’ dan buat nama-nama value dibawah ini :

DefaultTTL = “80? hex (atau 128 decimal) .
EnablePMTUBHDetect = “0?
EnablePMTUDiscovery = “1?
GlobalMaxTcpWindowSize = “7FFF” hex (or 32767 decimal)
TcpMaxDupAcks = “2?
SackOpts = “1?
Tcp1323Opts = “1?
TcpWindowSize = “7FFF” hex (or 32767 decimal)

tutup registry dan restart computer.

7. Jika semua cara di atas sudah dilakukan, namun koneksi tidak ada perubahan alias masih lambat bin lemot bin lelet berarti sudah saatnya Beralih ke provider yang lebih canggih. xixixixixi..... ^_^
Diberdayakan oleh Blogger.