Belajar PHP

PHP merupakan salah satu bahasa pemrograman yang paling populer di dunia. Kepopuleran PHP banyak disebabkan oleh lisensinya yang Open Source dan kemudahan mempelajarinya. Akan tetapi, untuk mempelajari pemrograman web dengan PHP, kita juga harus mempelajari HTML, Javascript dan CSS. Dan saat ini, terdapat juga beberapa Javascript dan CSS framework yang sangat membantu dalam pembuatan program PHP, seperti AngularJS, jQuery, Twitter Bootstrap dan Modernizr.

Cara Belajar PHP

Pada tutorial di sini, akan dijelaskan cara-cara membuat web, dimulai dari konsep konsep dasar sampai ke konsep lanjutan. Dan terkadang Anda akan diarahkan ke halaman lain untuk mempelajari HTML, Javascript, CSS atau konsep lain yang dibutuhkan pada materi tersebut. Rangkaian tutorial ini hanya akan membahas PHP murni, tanpa framework.

Teknologi Web seputar PHP

Untuk dapat menggunakan PHP dengan baik, diperlukan pengetahuan dan skill pada teknologi web terutama HTML, javascript dan CSS. Berikut di bawah ini adalah beberapa teknologi tersebut beserta penjelasan singkatnya.

HTML (Hypertext Markup Language)

Digunakan untuk mendefinisikan tampilan web. Semua yang tampil pada web, mulai dari gambar, tulisan, ketebalan tulisan, posisi tulisan, tombol, formulir dan sebagainya, ditulis dalam HTML. Versi terbaru HTML disebut dengan HTML 5 merupakan perkembangan dari versi sebelumnya seperti HTML 4 dan XHTML. Jika Anda mempelajari HTML, pastikan Anda mempelajari HTML versi terbaru.

CSS (Cascading Style Sheet)

Juga digunakan untuk mendefinisikan tampilan web. Tetapi lebih ke arah "menghias" tampilan web. CSS menunjuk ke elemen tertentu di dalam HTML, dan memodifikasi tampilannya, dapat berupa bentuk, tebal tulisan, warna tulisan, posisi tulisan, dan sebagainya.

Javascript

Pada javascript, sering digunakan istilah DOM (Document Object Model), yaitu objek program yang mewakili elemen-elemen pada HTML. Javascript memberi perintah kepada objek-objek HTML melalui DOM. Selain javascript, terdapat juga Java dan Flash yang masih sering digunakan di Client Side (sisi klien).

Perlu diketahui juga bahwa kode javascript tidak dapat disembunyikan. Semua orang akan dapat melihat kodenya. Javascript paling jauh hanya dapat disamarkan (obfuscated). Jika dibandingkan dengan Java dan Flash, kode sumber Java dan Flash lebih sulit untuk dibuka. Jadi bila Anda membuat program di Javascript, pastikan bahwa tidak akan timbul masalah bila kode tersebut dilihat orang lain (hacker).

jQuery

Merupakan library (pustaka) javascript. Beberapa ahli pemrograman web belakangan ini menyarankan agar tidak terlalu bergantung dengan jQuery, dan menggunakan javascript bawaan saja (belakangan disebut juga vanillajs), karena prosesnya menjadi lebih lambat. Akan tetapi Saya tetap menganjurkan jQuery, karena kemudahan yang disediakan jQuery sangat membantu. Sedangkan kerugian jQuery hanya beberapa tambahan KB yang harus dipanggil browser dan tidak terlalu lambat dibanding javascript biasa.

Perlu diketahui juga, jQuery library tidak sama dengan jQuery UI. jQuery digunakan untuk memanipulasi DOM dengan cepat. Sedangkan jQuery UI digunakan untuk menampilkan UI (User Interface / antarmuka) yang lebih manis dan interaktif dibandingkan dengan UI HTML biasa. jQuery UI memiliki ukuran yang cukup berat dan beberapa kelemahan. Untuk saat ini, Saya sarankan untuk menggunakan jQuery saja, dan digabung dengan UI Framework yang lain seperti Bootstrap atau Modernizr.

-- Stop dan lanjut ke topik berikutnya bila Anda ingin cepat --

Kenapa memilih PHP

PHP dianggap mudah dipelajari karena:

  1. Mudah diinstal. Di internet sudah banyak terdapat paket instalasi seperti XAMPP, Appserv, dan WAMP.
  2. Tidak memerlukan deklarasi variabel dan library yang rumit.
  3. Saat diinstal, biasanya sudah langsung dapat dihubungkan dengan berbagai Database server.
  4. Sudah banyak terdapat tutorial dan pembahasan trik trik PHP di internet.
  5. Anda bahkan bisa mencoba mengonlinekan situs Anda di berbagai hosting gratis yang ada di Internet.

Bahasa pemrograman web selain PHP:

  1. Keluarga ASP .NET. Terdapat beberapa teknologi terkait ASP, seperti ASP .NET itu sendiri, dan beberapa versi ASP .NET MVC. Terakhir sudah sampai MVC 5. Perlu diketahui bahwa ASP .NET MVC adalah suatu framework pemrograman web. Sehingga agak berbeda dengan PHP murni. Akan tetapi dapat disamakan dengan PHP bila PHP menggunakan library framework seperti Code Igniter, Yii, atau Laravel.
  2. Java Enterprise Edition. Menggunakan bahasa pemrograman Java. Penulis sendiri belum berhasil mencoba menjalankan hello world pada platform ini.
  3. Code Fusion. Teknologi ini sudah agak tua, dan sepertinya hampir tidak ada yang memakainya lagi.
  4. Ruby On Rails. Cukup booming selama beberapa tahun, tetapi masa depannya sepertinya agak suram.
  5. NodeJS. Merupakan teknologi baru, tetapi belakangan mulai booming. Tapi teknologi ini masih belum matang. Sehingga penulis sarankan teknologi ini cukup dipelajari sebagai hobi dan antisipasi saja.

ASP .NET baik menggunakan VB.NET ataupun C# merupakan skillset yang cukup banyak dicari, tetapi menurut penulis, tidak gampang untuk mempelajari ASP.NET. Akan tetapi bila Anda memiliki background pemrograman .NET misalnya untuk desktop, mungkin ASP bisa menjadi suatu pertimbangan.

Sedangkan untuk NodeJS, seperti yang sudah dijelaskan di atas, masih belum matang sepenuhnya, dan butuh pengetahuan luas mengenai pemrograman, terutama tentang OOP dan Javascript.

Bila dibandingkan dengan PHP, maka PHP memiliki beberapa keunggulan dibanding yang lain:

  1. Cepat. Ada banyak situs yang membandingkan kecepatan PHP, ASP dan NodeJS dengan berbagai pendapat. Saya di sini tidak akan memihak, tetapi PHP 7 direncanakan akan dirilis dan kecepatan PHP 7 meningkat sangat signifikan dibanding PHP 5. Jadi untuk ke depan, PHP tidak akan kalah dalam hal kecepatan.
  2. Murah. Kita dapat dengan mudah menemukan hosting PHP yang gratis, murah ataupun mahal. Tidak demikian dengan ASP.NET. Cukup banyak hosting untuk ASP.NET, akan tetapi jarang ada yang gratis. Sedangkan untuk NodeJS, belum banyak terdapat jasa hosting NodeJS.
  3. Multi platform. PHP bisa dijalankan baik di Linux ataupun Windows. Hanya perlu diperhatikan bahwa pada server Linux, URL bersifat case sensitive, sehingga sangat perlu untuk memperhatikan URL. Misalkan "../images/TandaTanya.png" tidak sama dengan "../images/tandatanya.png".

PHP Framework

Penulis lebih cenderung murni (pure) tanpa framework. Karena framework akan terus muncul yang baru, sedangkan bila kita mempunyai struktur kode yang baik, koding kita akan tetap sangat bisa dimaintain. Tetapi meskipun Anda memilih untuk menggunakan suatu framework, tutorial ini tetap akan sangat bermanfaat karena PHP murni dapat dipakai pada framework PHP manapun.

Jika Anda ingin menggunakan PHP Framework, Saya benar-benar menyarankan untuk berpikir ulang. Jika Anda memang ingin, pilihlah Code Igniter, karena itu merupakan salah satu framework tertua yang paling banyak dipakai. Berjudi dengan Yii, Laravel atau sejenisnya hanya akan membuat Anda berjaya 1 atau 2 tahun. Sisanya Anda akan sibuk mempelajari framework baru.