Selasa, 24 Juli 2012

Sejarah PHP


Penemu PHP
PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu PHP bernama FI (Form Interpreted). Pada saat tersebut PHP adalah sekumpulan script yang digunakan untuk mengolah data form dari web.

Perkembangan selanjutnya adalah Rasmus melepaskan kode sumber tersebut dan menamakannya PHP/FI, pada saat tersebtt kepanjangan dari PHP/FI adalah Personal Home Page/Form Interpreter. Dengan pelepasan 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 sudah diimplementasijan dalam C. Dalam rilis ini disertakan juga modtl-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 merhlis interpreter baru untuk PHP dan meresmikan nama rilis tersebut menjadi 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. Versi ini banyak dipakai sebab versi ini mampu dipakai untuk membangun aplikasi web kompleks tetapi tetap memiliki kecepatan proses dan stabilitas yang tinggi.

Pada Juni 2004, Zend merilis PHP 5.0. Versi ini adalah versi mutakhir dari PHP. Dalam versi ini, inti dari interpreter PHP mengalami perubahan besar. Dalam versi ini juga dikenalkan model pemrograman berorientasi objek baru untuk menjawab perkembangan bahas pemrograman kearah pemrograman berorientasi objek.

PHP grup kini merilis versi PHP terbaru yaitu 5.1.6
Kelebihan PHP
* Bahasa pemograman php adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaanya.

* Web Server yang mendukung php dapat ditemukan dimana - mana dari mulai IIS sampai dengan apache, 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 referensi yang banyak.

* PHP adalah bahasa open source yang dapat digunakan di berbagai mesin (linux, unix, windows) dan dapat dijalankan secara runtime melalui console serta juga dapat menjalankan perintah-perintah system.

* PHP adalah termasuk bahasa embedded ( bisa diletakkan dalam tag HTML )

* PHP diterbitkan secara gratis
Kekurangan PHP
·  Permasalhan yang sering terjadi pada register_globals
·  Tidak mengenal Package
·  Jika tidak di encoding, maka kode PHP dapat dibaca semua orang. Untuk encodingnya anda membutuhkan zend dan biaya encoding ini sangat mahal

·  ETC
BEberapa system database yang didukung oleh PHP adalah :
* Oracle

* Sybase

* mSql

* MySql

* Solid

* Generic ODBC

* Postgres Sql
Apa itu PHP 



PHP singkatan dari Personal Home Page Tools, adalah sebuah bahasa scripting yang dibundel dengan HTML, yang dijalankan disisi server. Sebagian besar perintahnya berasal dari C, Java dan Perl dengan beberapa tambahan fungsi khusus PHP. Bahasa ini memungkinkan para pembuat aplikasi web menyajikan halaman HTML dinamis dan interaktif dengan cepat dan mudah, yang dihasilkan server. PHP juga dimaksudkan untuk mengganti teknologi lama seperti CGI (Common Gateway Interface)



PHP bisa berinteraksi dengan hampir semua teknologi web yang sudah ada. Developer bisa menulis sebuah program PHP yang mengeksekusi suatu program CGI di server web lain. Fleksibilitas ini amat bermanfaat bagi pemilik situs-situs web yang besar dan sibuk, karena pemilik masih bisa mempergunakan aplikasi-aplikasi yang sudah terlanjur dibuat di masa lalu dengan CGI, ISAP, atau dengan script seperti Perl, Awk atau Python selama proses migrasi ke aplikasi baru yang dibuat dengan PHP. Ini mempermudah dan memperluas peralihan antara teknologi lama dan teknologi baru.


Komunitas


Komunitas yang ramai dan saling membantu juga merupakan salah satu kunci kesuksesan PHP. Banyak programer Perl, yang umumnya lebih senior atau berpengalaman, kesal jika mendapat pertanyaan yang melulu bersifat Web/CGI dan itu-itu lagi dari pemula. Karena Perl bukan hanya “bahasa CGI”, melainkan sebuah bahasa umum, maka pembahasan yang terus-menerus CGI/Web juga terasa di luar topik bahasan. Sementara komunitas PHP bisa dibilang lebih “muda” demografisnya. Banyak pemula di sana yang saling bertanya dan menjawab, dan karena PHP memang bahasa Web, pembahasan seputar Web, HTML, Javascript, dsb pun masih relevan dan ditolerir.
Milis php-general@lists.php.net, milis resmi PHP, kini beranggotakan lebih dari 2500 alamat email dan aktivitasnya mencapai 250–500 email per hari. Selain itu, berbagai situs seperti phpbuilder.com memiliki forum diskusi Web yang diramaikan banyak pengunjung setiap harinya

Kecepatan


Dibandingkan dengan aplikasi CGI dalam Perl atau Python, apalagi yang berukuran cukup besar, aplikasi serupa dalam PHP dapat sedikit banyak lebih cepat. PHP umumnya dipasang sebagai sebuah modul Apache, sehingga webserver dapat langsung mengerti dan memroses skrip PHP karena interpreter PHP telah ditanamkan ke dalamnya. Ini menghindari bottleneck yang umum terjadi di Unix, yaitu proses forking interpreter di setiap reqtest. PHP sebetulnya dapat dijalankan juga melalui mekanisme CGI, tapi bahasa PHP yang lebih sederhana—ditambah lagi kompiler Zend Engine pada PHP4 yang memang cepat—menyebabkan skrip PHP dapat diinterpretasi dalam waktu lebih singkat.

Keamanan


Sebagai konsekuensi kepraktisan dan kemudahannya, instalasi default PHP banyak memiliki kelemahan keamanan. Variabel global di PHP dapat berasal dari masukan pengunjung Web (dari GET/POST/Cookie), sehingga bila programernya ceroboh tidak menginisialisasi tiap variabel sebelum pemakaian, seorang penyerang dapat memasukkan nilai-nilai awal variabel ke dalam skrip untuk mengubah kelakuannya. Sebelum PHP 3.0.18 terdapat bug pada file upload yang banyak dieksploitasi untuk menembus banyak situs PHP. Dalam bug ini interpreter PHP dapat diakali untuk menulisi file di filesystem server mana pun sesuai keinginan penyerangnya, karena path dapat dimasukkan lewat form HTML.

Beberapa kelemahan ini dapat dikonfigurasi atau dimatikan. Karena itu seorang programer PHP dan admin perlu mengetahui opsi-opsi konfigurasi PHP agar sistem mereka lebih aman.

Kompilasi


Satu lagi isu terakhir, saat ini tidak ada produk gratis untuk mengkompilasi kode PHP. Bandingkan dengan Python atau Java misalnya, yang sejak awal sudah memiliki kemampuan menyimpan hasil kompilasi bytecode ke dalam file. Artinya, sebagian vendor aplikasi mungkin mempertimbangkan untuk tidak menggunakan PHP karena takut kodenya dapat dilihat oleh klien/pembeli program. Ada produk bernama Zend Encoder untuk mengatasi masalah ini, namun produk ini harganya mahal. Pertama diluncurkan dibandrol $6000 per mesin, meskipun kini—setelah diprotes habis-habisan oleh komunitas PHP—“hanya” berharga sekitar $2000 dan juga ada opsi pembayaran berlangganan (meskipun ini artinya pengembang aplikasi harus membayar terus-menerus pada Zend $50/bulan jika ingin masih bisa mengkompilasi kode PHP-nya).

Masa Depan PHP

Kelemahan-kelemahan yang disebutkan sebelumnya tentu saja tidak menghalangi PHP untuk tetap digunakan secara meluas. Setidaknya, dibandingkan dengan produk-produk komersial, PHP dapat menurunkan biaya karena softwarenya gratis dan sudah mencakup fitur yang cukup lengkap.

Zend Engine 2.0 yang dikembangkan—Zend adalah komponen kompiler dan executor pada PHP4—juga direncanakan akan memperbaiki kelemahan-kelemahan model objek PHP4 (atau PHP5?). Dengan versi 2.0, kemungkinan PHP akan memiliki fitur multiple inheritance, destruktor, eksepsi, pemanggilan metode berangkai, dan mungkin juga atribut privat.

Popularitas umumnya mendongkrak kesuksesan, dan tampaknya ini pun akan terjadi dengan PHP. Popularitas PHP yang begitu besar saat ini akan menjamin bahwa PHP akan tetap dipakai secara meluas di tahun-tahun mendatang. Bahkan juga mungkin di luar konteks Web/pemrograman Web tradisional. Kita sudah melihat ada yang mengembangkan PHP-GTK, tool untuk membuat program GUI desktop dengan GTK+. Di masa depan, di zaman Web services dan berkembangnya generasi aplikasi Web berikutnya, kita bisa cukup yakin bahwa PHP akan turut berada di sana!

PHP banyak sekali digunakan untuk pengembangan web dinamis, dapat di katakan mayoritas pengembangan web didunia menggunakan PHP, misalnya saja web yang sudah melegenda beberapa tahun belakangan ini, yaitu friendster dan digg. Mengapa mereka menggunakan PHP? Yaa.. tentunya ada didalam keuntungan yang sudah kami sebutkan sebelumnya di atas tadi.kesimpulannya

sekarang ini banyak Web dinamis adalah sebuah web yang dapat melalukan update pada contentnya, didalamnya selalu terdapat CMS [Content Management System ] yaitu “ruang kendali” bagi pemilik website untuk melakukan update, biasanya jika ingin masuk ke dalam CMS ini user atau sang pemilik harus memberikan password agar “ruang kendali” bebas dari tangan – tangan yang tidak bertanggung jawab.

Beberapa pihak pengembang web [ kami SimpleBlue.com salah satunya ] selalu memberikan CMS didalam web dinamis, jadi Anda pun tidak perlu bingung lagi untuk melakukan update pada web pribadi Anda. Kami akan memberikan salah satu contoh dari fungsi CMS, jika web Anda mempunyai kolom berita atau news, maka Anda tidak perlu lagi masuk ke dalam source code yang memusingkan kepala dan merepotkan, Anda hanya perlu masuk ke CMS dan pilih menu utuk melakukan perubahan content tersebut. Didalam CMS sendiri terdapat menu untuk menambah , merubah serta menghapus data.

click for more

Sejarah Java



Java diciptakan oleh suatu tim yang dipimpin oleh Patrick Naughton dan James Gosling dalam suatu proyek dari Sun Microsystem yang memiliki kode Green dengan tujuan untuk menghasilkan bahasa komputer sederhana yang dapat dijalankan di peralatan sederhana dan tidak terikat pada arsitektur tertentu. Mulanya disebut OAK, tetapi OAK sendiri merupakan nama dari bahasa pemrograman komputer yang sudah ada. Maka Sun mengubahnya menjadi Java.

Sun kemudian meluncurkan browser dari Java yaitu Hot Java yang mampu menjalankan script Applet. Setelah itu, teknologi Java diadopsi oleh Netscape yang memungkinkan program Java dijalankan di browser Netscape yang kemudian diikuti Internet Explorer. Karena keunikannya dan kelebihannaya, teknologi Java mulai menarik banyak vendor seperti IBM,Symantec,Inprise,dll.

Sun merilis versi awal Java secara resmi pada awal tahun 1996 yang kemudian terus berkembang hingga muncul JDK 1.1 kemudian JDK 1.2, yang mulai disebut sevagai versi Java2 karena banyak mengandung peningkatan dan perbaikan. Perubahan utama adalah dengan adanya Swing yang merupakan teknologi GUI(Graphical User Interface) yang mampu menghasilkan Window yang portabel. 

Dan pada tahun 1998-1999 lahirlah teknologi J2EE(Java 2 Enterprize Edition), yang berbasis J2SE(Java 2 Standart Edition) yang diawali dengan Servlet dan EJB kemudian diikuti JSP(Java Server Page). Java menjadi lebih cepat populer di lingkungan Server Side dikarenakan kelebihannya di lingkungan Network dan terdistribusi serta kemampuan multithreading. Sedangkan J2ME(Java 2 Micro Edition) dapat menghasilkan aplikasi mobile atau Handphone baik games maupun Software yang dapat dijalankan di peralatan Handphone seperti Symbian dan Java.

Java mempunyai 2 bagian utama, yaitu :
  • Java Virtual Machine (JVM)
  • Java Application Programming Interface (Java API)
Sun membagi arsitektur Java menjadi 4 bagian, yaitu :
  • Enterprize Edition(J2EE) untuk aplikasi Web, aplikasi system tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi. Merupakan SuperSet dari Standart Java.
  • Standart Edition (J2SE) ini dikenal sebagai bahasa Java.
  • Micro Edtiton (J2ME) merupakan subset dari J2SE dan salah satu aplikasinya yang banyak dipakai adalah untuk Mobile Device.
Fitur-fitur Java yang menarik
  • Applet
    Program Java yang dapat berjalan di atas browser, yang dapat membuat halaman HTML lebih interaktif.
  • Java Networking
    Sekumpulan API yang menyediakan fungsi untuk aplikasi-aplikasi jaringan, seperti penyediaan akses untuk TCP, UDP, IP Address dan URL. Tetapi Java Networking tidak menyediakan akses untuk ICMP dikarenakan alas an sekuriti dan pada kondisi umum hanya administrator (root) yang bisa memanfaatkan Protokol ICMP.
  • Java Database Connectivity(JDBC)
    Menyediakan sekumpulan API yang dapat digunakan untuk mengakses database seperti Oracle,MySQL,PostgreSQL,Microsoft SQL Server.
  • Java Security
    Java Security menyediakan sekumpulan API untuk mengatur security dari aplikasi Java baik secara High Level datau Low Level, seperti public/private key menegement dan certificates.
  • Java Swing
    Menyediakan sekumpulan API untuk membangun aplikasi-aplikasi GUI dan model GUI yang diinginkan bisa bermacam-macam.
  • Java RMI
    Java RMI menyediakan sekumpulan API untuk membangun aplikasi-aplikasi Java yang mirip dengan model RPC (remote Procedure Call), jadi objek-objek Java bisa di call secara remote di Jaringan Komputer.
  • Java 2D/3D
    Merupakan sekumpulan API untuk membangun grafik-grafik 2D/3D yang menarik dan juga akses keprinter.
  • Java Server Pages (JSP)
    Berkembang dari Java Servlet yang digunakan untuk menggantikan aplikasi-aplikasi CGI. JSP yang mirip ASP dan PHP merupakan alternatif terbaik untuk solusi aplikasi internet.
  • JNI (Java Native Interface)
    Merupakan sekumpulan API yang digunakan untuk mengakses fungsi-fungsi pada library (*.dll atau *.so) yang dibuat dengan bahasa pemrograman yang lain seperti C, C++, dan Basic.
  • Java Sound
    Menyediakan kumpulan API untuk manipulasi Sound.
  • Java IDL + CORBA
    Menyediakan dukungan Java untuk implementasi CORBA (Common Object Request Broker) yang merupakan model distributed-Object untuk solusi aplikasi besar di dunia Networking.
  • Java Card
    Java Card utamanya dipakai untuk aplikasi-aplikasi pada smart card, yang sederhana wujudnya seperti SIM Card pada Handphone.
  • JTAPI (Java Telephony API)
    Sekumpulan API untuk memanfaatkan devices-devices telephony, sehingga cocok untuk aplikasi-aplikasi CTI (Computer Telephony Integration) yang dibutuhkan seperti ACD (Automatic Call Distribution) PCPBX dan lainnya.


click for more