Alamat asli: http://nettuts.com/tutorials/php/10-principles-of-the-php-masters/
Terjemahan dan penyuntingan: Andrew, harap sebutkan sumbernya jika Anda perlu mencetak ulang.
1. Gunakan PHP pada saat yang tepat - Rasmus Lerdorf
Tidak ada yang mengerti di mana PHP harus digunakan lebih rasional daripada Rasmus Lerdorf, pencipta PHP. Dia merilis bahasa PHP pada tahun 1995. Sejak itu, PHP seperti api padang rumput, membakar seluruh kamp pengembangan Internet. Namun Rasmus tidak membuat PHP karena alasan ini. PHP lahir untuk memecahkan masalah praktis para pengembang web.
Seperti banyak proyek sumber terbuka, PHP telah menjadi populer. Motivasi popularitasnya tidak dapat dijelaskan dengan filosofi normal, dan bahkan sangat populer sehingga menimbulkan kekaguman pada diri sendiri. Dapat dijadikan sebuah kasus, suatu kasus yang disebabkan oleh kebutuhan akan tools untuk menyelesaikan berbagai permasalahan web. Oleh karena itu, ketika PHP pertama kali muncul, semua kebutuhan tool tersebut terfokus pada PHP.
Namun, Anda tidak bisa mengharapkan PHP menyelesaikan semua masalah. Lerdorf adalah orang pertama yang mengakui bahwa PHP hanyalah sebuah alat, dan ada banyak situasi di mana PHP berada di luar kemampuannya.
Pilih alat yang tepat untuk pekerjaan itu. Saya telah mengunjungi banyak perusahaan untuk meyakinkan mereka agar menerapkan dan menggunakan PHP, tetapi ini tidak berarti bahwa PHP cocok untuk setiap masalah. Ini hanyalah bahasa skrip front-end yang dapat menyelesaikan sebagian besar masalah.
Sebagai pengembang web, mencoba menyelesaikan setiap masalah dengan PHP adalah hal yang tidak ilmiah dan hanya membuang-buang waktu Anda. Jika PHP tidak berfungsi, jangan ragu untuk mencoba bahasa lain.
2. Gunakan penyimpanan multi-tabel untuk meningkatkan skalabilitas - Matt Mullenweg
Tidak ada yang ingin mempertanyakan otoritas Matt Mullenweg di PHP. Dia mengembangkan sistem blog paling populer di planet ini (didukung oleh komunitas yang kuat): WordPress Setelah membuat WordPress, Matt dan timnya meluncurkan platform WordPress.com, sebuah situs blog gratis berbasis WordPress MU. Saat ini, WordPress.com memiliki sekitar 4 juta pengguna, yang menyumbangkan lebih dari 140.000 postingan setiap hari. (Untuk melihat lebih banyak statistik WordPress.com, klik di sini.)
Jika ada yang tahu cara membuat situs web berskala dengan mudah, itu adalah Matt Mullenweg. Pada tahun 2006, Matt membuat perbaikan masa depan pada struktur data WordPress dan menjelaskan mengapa WordPress MU menggunakan tabel MYSQL independen untuk setiap blog daripada memasukkan semua data blog ke dalam satu tabel besar.
Kami menguji pendekatan ini, namun ternyata pendekatan ini terlalu mahal untuk dikembangkan. Jika Anda menggunakan struktur data secara keseluruhan, Anda akan menghadapi masalah perangkat keras server saat menghadapi lalu lintas yang besar. Di dalam MU. Pengguna didistribusikan ke dalam tabel terpisah dan dapat diatur dengan mudah. Misalnya, WordPress.com menyimpan data pengguna di 4.096 database. Database ini dapat menyebarkan akses data berskala besar serta mengalihkan lalu lintas dan tekanan.
Portabilitas tabel data memungkinkan kode (blog) berjalan lebih cepat dan membuat sistem lebih skalabel. Mengandalkan strategi caching yang kuat dan strategi pemanfaatan basis data yang fleksibel, Matt menunjukkan kepada orang-orang bahwa Facebook dan WordPress.com paling populer dapat berjalan secara stabil di bawah PHP dan menangani jumlah lalu lintas yang luar biasa.
3. Jangan pernah mempercayai pengguna - Dave Child
Dave Child adalah jantung dari Added Bytes (sebelumnya ilovejackdaniels.com), sebuah situs yang terkenal dengan lembar contekan yang sangat bagus untuk banyak bahasa pemrograman. Dave bekerja untuk sejumlah perusahaan Inggris dan telah memantapkan dirinya sebagai otoritas di dunia pemrograman.
Dave memberikan banyak nasihat bijaksana untuk pengembang PHP, yang dirangkum dalam "menulis kode aman dalam PHP": Jangan pernah mempercayai pengguna Anda, mereka bahkan mungkin merugikan Anda.
Ada prinsip dasar pengembangan web yang sangat saya ulangi: jangan pernah mempercayai pengguna Anda dan berasumsi bahwa setiap unit data di situs web Anda adalah kode berbahaya yang dikumpulkan dari pengguna. Sering kali, Anda harus menggunakan JavaScript untuk memverifikasi konten yang dikirimkan oleh formulir di klien. Jika Anda terbiasa dengan hal ini, maka ini adalah kebiasaan yang baik. Jika keamanan penting bagi Anda, ini adalah prinsip paling penting untuk dipelajari.
Dave saat ini sedang menyusun contoh untuk seri bukunya "Menulis PHP yang Aman". Di akhir bukunya, dia berkata:
Akhirnya, jadilah sedikit paranoid. Kecuali jika Anda berpikir situs Anda tidak akan pernah diserang, hadapilah masalah ini secara langsung, karena jika hal itu terjadi, Anda akan berada dalam situasi yang buruk. Anda perlu menganggap setiap pengguna sebagai peretas yang akan melakukan serangan dan pertahanan pada situs, melakukan segala kemungkinan untuk melindungi keamanan situs, dan pada saat yang sama memikirkan solusi untuk masalah terkait.
4. Gunakan cache PHP lebih banyak - Ben Balbo
Ben Balbo mengembangkan Site Point, sebuah situs web yang memberikan panduan kepada pengembang dan desainer. Dia adalah anggota Klub Pengembangan dan Sumber Terbuka PHP Melbourne, jadi dia memiliki pemahaman tertentu tentang PHP dan memiliki ide serta pengalaman tertentu dalam cache PHP.
Jika Anda memiliki situs yang memiliki banyak traffic tetapi tidak sering diupdate (misalnya blog, berdasarkan beberapa jenis CMS), mungkin memerlukan beberapa modifikasi kontribusi terhadap kinerja. Jika Anda ingin membuat mekanisme caching untuk situs yang kompleks/pembaruan cepat, prosesnya mungkin berliku-liku, namun manfaatnya jelas.
Ada banyak teknologi caching PHP. Ben merekomendasikan yang berikut ini untuk kita:
fungsi caching menjalankan hasil pengaturan waktu kadaluarsa template file caching teknologi caching yang diunduh oleh IE
Cache_Lite
Karena karakteristik PHP sebagai bahasa dinamis, mekanisme caching sangat penting untuk situs yang tidak sering diperbarui.
5. Mempercepat pengembangan PHP dengan IDE, Template dan Cuplikan - Chad Kieffer
Ketika Chad Kieffer jauh dari pekerjaan desain UI dan optimasi database, dia akan berbagi banyak pengalaman teknis di blognya 2 sendok makan. Karena pengembangan komprehensif Chad dalam banyak aspek, ia sering menemukan masalah yang tidak dapat ditemukan oleh programmer lain dan membentuk pengalaman yang relevan, terutama metodenya dalam mengembangkan situs web. Beliau terlibat dalam setiap aspek pengembangan website, sehingga sarannya sangat berguna dalam meningkatkan gambaran besar pengembangan website.
Chad berpikir menggunakan Eclipse PDT
(Paket pengembangan PHP Eclipse) IDE semacam itu, meskipun menggunakan beberapa teknologi templat dan proyek sumber terbuka, dapat secara efektif meningkatkan kecepatan pengembangan PHP.
Rencana yang ketat, daftar tugas yang panjang, dan tenggat waktu membuat pengembang sangat frustrasi. Namun, beberapa fitur, seperti Templat Eclipse, dapat secara efektif mengurangi waktu pengkodean dan kemungkinan kesalahan.
Secara umum, proyek apa pun dapat diotomatisasi, dan semakin besar tingkat otomatisasi, semakin pendek waktu yang Anda perlukan untuk menyelesaikan proyek tersebut. Meluangkan waktu untuk mengembangkan kerangka kerja dan templat yang akan sering digunakan akan lebih menghemat waktu Anda nantinya. Pada saat yang sama, dengan menggunakan IDE seperti Eclipse dan paket PDT, Anda akan menemukan bahwa efisiensi Anda meningkat secara signifikan. IDE dapat menutup secara otomatis, menyelesaikan titik koma, dan melakukan debug secara lokal.
Posting terkait:
WordPress berhasil ditingkatkan ke 2.3.2. Meskipun tag tidak berguna bagi saya, saya tetap meningkatkannya karena alasan keamanan. Saya sangat memerlukan salinan peningkatan dari 2.0.5 dua tahun lalu ke 2.3.2 saat ini. Keberanian dan tekad, untungnya tidak ada masalah saat menjalankan upgrade secara lokal, namun fungsi pada template memerlukan beberapa modifikasi sederhana. Upgrade online berjalan lancar. Banyak orang akan bertanya-tanya, bukankah Anda baru saja memposting postingan yang meminta bantuan tentang metode upgrade? Baiklah, saya telah menemukan alat terbaik, plugin Pemutakhiran Otomatis WordPress. Plugin pemutakhiran otomatis WordPress ini benar-benar membuat pemutakhiran Anda bebas dari rasa khawatir, karena plugin ini akan mencadangkan semua file dan data untuk Anda sebelum pemutakhiran Jenis ". ", saya yakin ini sangat cocok untuk blogger yang tidak ingin khawatir tentang upgrade. Namun, ada masalah. Ada masalah dengan fungsi ekspor setelah upgrade. Ini meminta wp-config.php tidak dapat ditemukan. Saya tidak tahu apakah masalah ini umum atau masalah dengan blog saya, teman-teman yang mengalami masalah yang sama silakan tinggalkan pesan kepada saya dan saya akan mencari solusinya. (Setelah diteliti ternyata ada masalah pada jalur akses pada plug-in coolcode. Selama aktivasi plug-in ini dibatalkan, fungsi Ekspor dapat digunakan secara normal)...
Adakah yang punya pengalaman memutakhirkan dari WordPress 2.0? Saya mengunduh wordpress-2.3.2 hari ini. Awalnya saya ingin memutakhirkan, tetapi saya menemukan bahwa lompatan versinya cukup besar dan perubahan struktur datanya tampaknya cukup besar resikonya terlalu besar, jadi saya menyerah untuk saat ini Siapa? Ada teman yang punya pengalaman mengupgrade WordPress dari 2.0 ke 2.3. Mohon share. ...
Terjemahan: "14 Alat Webmaster Hebat" (Bagian 2) Teks asli: http://www.conversion-rate-experts.com/articles/understanding-your - pengunjung/ Artikel ini ditulis oleh Andrew( http://www . ahome.cn ) diterjemahkan secara independen. Jika Anda perlu mencetak ulang, harap sebutkan sumbernya. Pengguna adalah tenaga publisitas dan penjualan terbaik, datang dan dengarkan bagaimana mereka mempromosikannya, Raja Beritahu Teman—alami sekarang! Apakah Anda memiliki sistem rekomendasi pengguna? Sebuah sistem yang memungkinkan pengguna mengirim pesan untuk mengundang teman. Kita dapat melihat bahwa surat yang dikirim oleh para pengguna ini berisi jawaban atas pertanyaan "Mengapa pengguna menghabiskan uang di situs web Anda?" Banyak orang menghabiskan banyak waktu untuk memposisikan diri dan mengembangkan kata-kata iklan yang menarik, namun melalui testimoni pengguna, Anda dapat mengetahui mengapa pengguna lebih memilih Anda. Kumpulkan umpan balik pengguna dengan mudah, Kampyle—coba sekarang! Kampyle memungkinkan pengguna mengirimkan umpan balik pengguna di situs web Anda (melalui tombol kecil di bagian bawah halaman). saran. Webmaster dapat masuk ke situs web resmi Kampyle untuk melihat dan mengelola umpan balik pengguna yang dikumpulkan. Jika pengguna meninggalkan alamat email mereka, webmaster dapat dengan mudah memberi tahu pengguna bahwa mereka telah menerima umpan balik dan akan melakukan perbaikan yang sesuai. ...
6. Memanfaatkan fungsi filter PHP - Joey Sochacki
Mungkin Joey Sochacki tidak setenar Matt Mullenweg, tapi dia juga seorang pengembang berpengalaman dan berbagi banyak pengalaman teknis melalui blognya Devolio.
Joey menemukan bahwa menulis kode PHP Ada banyak tempat yang perlu difilter dalam prosesnya, tetapi tidak banyak pembuat kode yang memperhatikan fungsi pemfilteran bawaan PHP.
Memfilter data adalah sesuatu yang sering kali perlu kita lakukan, namun banyak fungsi pemfilteran bawaan PHP yang kaya fitur tidak diketahui. Dengan menggunakan fungsi bawaan PHP seperti filter_*, kita dapat menangani hampir semua tugas pemfilteran, termasuk validasi tipe data/URL/email dan validasi alamat IP/pemrosesan karakter khusus, dll.
Pemfilteran adalah hal yang rumit, tetapi saya yakin penemuan Joey akan memberi Anda banyak inspirasi dan membuat Anda menyadari fungsi pemfilteran PHP yang hebat.
7. Gunakan framework PHP - Josh Sharp
Ada banyak kontroversi mengenai apakah Anda harus menggunakan Zend, CakePHP, Code Igniter, atau framework PHP lainnya, namun di benak para pengembang web, mereka memiliki standar pengukurannya sendiri.
Josh Sharp membuat situs webnya sendiri, jadi dia memiliki pengalaman menggunakan kerangka kerja PHP untuk mengembangkan situs web. Ia percaya bahwa menggunakan kerangka PHP untuk pengembangan proyek dapat secara efektif menghemat waktu dan mengurangi kemungkinan kesalahan. Mengapa? Karena menurutnya PHP sangat mudah untuk memulai.
Kemudahan penggunaan PHP terkadang memiliki kekurangan, karena sintaksisnya yang longgar sering kali menyebabkan terciptanya banyak kode yang salah. Namun jika menggunakan framework PHP, kemungkinan terjadinya error akan sangat berkurang.
Framework PHP dapat membuat struktur kode Anda lebih terstandarisasi dan menghemat banyak waktu. Anda dapat membaca "Manfaat menggunakan framework PHP" untuk mendapatkan informasi yang lebih relevan.
8. Jangan gunakan framework PHP - Rasmus Lerdorf
justru bertolak belakang dengan sudut pandang Josh. Rasmus Lerdorf, pencetus PHP, berpendapat sebaiknya tidak menggunakan framework PHP. Karena PHP yang tidak berbasis framework memiliki performa yang lebih baik.
Dalam pidatonya di Drupalcon 2008, Rasmus menggunakan contoh "Hello World" untuk membandingkan performa antara beberapa framework PHP dan PHP sederhana. Hasilnya menunjukkan bahwa performa framework PHP jauh tertinggal.
9. Gunakan pemrosesan batch - Jack D. Herrington
Jack Herrington sudah tidak asing lagi dengan dunia PHP, dan telah menyumbangkan lebih dari 30 artikel ke pengembang IBM Works yang terkenal, dan juga menerbitkan buku "PHP Hacks", jadi dia benar-benar ahli.
Herrington merekomendasikan penggunaan pemrosesan batch dan Cron untuk menggantikan skrip program yang dapat berjalan di latar belakang. Pengguna web tidak bersedia menunggu pemrosesan Anda secara online, jadi beberapa hal lebih cocok untuk diproses di latar belakang.
Memang benar bahwa ini berlebihan dalam beberapa kasus, tetapi Anda dapat dengan jelas melihat bahwa membuat alat pemrosesan batch menggunakan metode berorientasi objek Cron, MySQL, PHP, dan Pear::DB bukanlah tugas yang mudah.
Jack percaya bahwa menggunakan cron, PHP dan MySQL untuk memproses beberapa tugas di latar belakang jauh lebih hemat biaya dibandingkan logika bisnis multi-proses.
Saya telah mencoba kedua metode tersebut, dan menurut saya Cron sangat konsisten dengan prinsip "Keep It Simple, Stupid" (KISS), yang membuat pemrosesan latar belakang menjadi sederhana. Dibandingkan dengan logika bisnis multi-proses, logika ini tidak memiliki risiko kelebihan memori. Anda dapat membuat skrip batch sederhana dan menjalankannya di cron. Skrip ini akan memeriksa secara berkala apakah ada tugas yang perlu diproses, dan akan keluar secara otomatis setelah pemrosesan, jadi Anda tidak perlu khawatir apakah suatu proses macet atau tidak. terjebak dalam lingkaran tak terbatas.
10. Aktifkan pelaporan kesalahan secara tepat waktu - David Cummings
David Cummings memiliki perusahaan yang mengkhususkan diri dalam menyediakan layanan perangkat lunak CMS dan telah memenangkan beberapa penghargaan. Dia memiliki pengalaman yang sangat kaya dalam pengembangan PHP.
David pernah menulis "dua tips PHP yang dia harap dia pelajari di awal", salah satunya adalah: mengaktifkan pelaporan kesalahan tepat waktu, yang akan menghemat banyak waktu.
Hal terpenting yang saya sampaikan kepada orang-orang adalah memaksimalkan pelaporan kesalahan di PHP. Karena PHP dapat menyembunyikan banyak masalah kecil:
variabel tidak ditentukan sebelumnya, variabel yang tidak tersedia direferensikan dalam cuplikan kode, konstanta yang tidak ditentukan digunakan, faktor-faktor ini mungkin tidak tampak seperti masalah besar kecuali Anda menulis perpustakaan kelas menggunakan objek pendekatan berorientasi. Seringkali, menonaktifkan pelaporan kesalahan kemungkinan akan membuat Anda mengeluarkan biaya lebih banyak untuk memelihara kode Anda.
Laporan kesalahan dapat membantu Anda dengan mudah menemukan masalah pada kode Anda. Jika tingkat laporan kesalahan cukup tinggi, kesalahan kecil dapat segera ditemukan, sehingga membantu Anda menghemat waktu proses debug secara keseluruhan.