PHP, HTML, Javascript dan menulis praktik yang baik

10

Saya menyadari bahwa saya harus menuliskan spesifikasi konvensi tentang HTML, JavaScript dan coding PHP untuk saya dan tim saya.

Dalam pengembangan web, sama seperti di C ++, saya pasti penggemar lekukan dan komentar.

Meskipun demikian, sering dalam pekerjaan saya, saya menemukan kode HTML + JavaScript + PHP yang tiba-tiba memunculkan sakit kepala.

Saya mencoba membuat kode saya dapat dibaca, tetapi apa yang tampaknya lebih baik bagi saya (untuk indentasi & komentar) tampaknya tidak memesona rekan satu tim saya, jadi saya bertanya-tanya apakah ada praktik terbaik yang baik atau setidaknya dibagikan saat menulis "hibrid "Dokumen seperti halaman web hari ini, yang hari demi hari menjadi semakin kompleks.

Saya menyadari fakta bahwa mungkin kode kode halaman web saat ini agak rumit, tetapi saya bertanya-tanya apakah konvensi yang baik mengenai aspek-aspek ini sudah ada.

Federico Zancan
sumber

Jawaban:

19

Beberapa aturan umum yang saya ikuti:

Umum

  • Indentasinya 4 ruang.
  • Indentasi level baru
  • Komentar <~ 80 karakter dari level indent. Jika saya berada di dua level (8 spasi) itu berarti kursor akan berhenti sekitar 88 karakter.
  • Gunakan komentar multi-baris. Saya lebih suka tampilan, tetapi ini adalah titik subjektif .
  • Beri komentar sekarang daripada nanti ketika Anda tidak tahu apa yang sedang terjadi.
  • Kawat gigi gaya Allman . Lebih bersih dan lebih mudah dibaca. Subyektif .

JavaScript

  • Gunakan perpustakaan. jQuery khususnya sangat baik. Ini menghilangkan semua sakit kepala lintas browser.
  • Memahami bahwa ID adalah untuk elemen tertentu, kelas untuk gaya. ID tidak boleh digunakan lebih dari sekali per halaman dan mereka akan memiliki kait khusus yang melekat padanya. Gunakan kelas untuk hal-hal seperti navigasi.
  • Sumber keluar ke metode. Sangat menggoda untuk memasukkan semua kode ke dalam bindpanggilan, namun memasukkannya ke dalam fungsinya sendiri akan meningkatkan fleksibilitas kode Anda.
  • Gunakan fungsi bukan evals. Itu berarti setTimeout(function(){ /* Do something */ }, 1000);bukannyasetTimeout('doSomething', 1000);
  • Gunakan variabel lokal dengan var.

HTML

  • Markup semantik. Gunakan tag yang sesuai. Jangan letakkan <br />di sana untuk menambah ruang, sesuaikan margin dan aturan CSS.
  • Semua tag adalah huruf kecil .
  • Semua tag harus diakhiri dengan tag penutup atau ditutup sendiri .
  • Manfaatkan kelas untuk tata letak yang serupa. Memiliki beberapa kelas yang telah ditetapkan seperti hide, clear, error, dll
  • Semuanya (termasuk skrip) harus masuk <head>. Khawatir tentang pengoptimalan (memindahkan barang) saat ada masalah.
  • Lembar gaya eksternal dan sumber JavaScript adalah suatu keharusan kecuali jika itu adalah halaman tertentu.

PHP

  • Kerangka kerjanya bagus, saya sarankan CodeIgniter.
  • Jika Anda tidak ingin menggunakan kerangka kerja, cobalah untuk menggunakan versi PHP terbaru yang mungkin. (Itu berarti 5.3).
  • Gunakan includesuntuk keuntungan Anda.
  • Hapus suntikan atau gunakan pernyataan yang disiapkan.
  • Lakukan jika pemeriksaan pada nilai gagal-aman yang diprakarsai sebelumnya.

    $logged_in = false;
    if(check_user($user))
    {
         $logged_in = true;
         $user = load_user($_SESSION);
    }
  • Ketahui perbedaan antara tanda kutip tunggal dan ganda. Gunakan kutipan tunggal jika memungkinkan.
  • Jangan gema HTML.
Josh K.
sumber
4
Daftar yang sangat baik. Untuk PHP saya akan menambahkan 1) menggunakan templat, jangan campur php & html (dalam aplikasi, setidaknya) 2) jangan gunakan mencakup () sebagai panggilan fungsi 3) menyimpan kode sebanyak mungkin di luar lingkup global.
GrandmasterB
siapa pun yang merekomendasikan CodeIgniter dan jQuery kehilangan integritas di mata saya.
mefisto
4
@teresko: Anda mengutuk tanpa memberikan alasan atau alternatif.
Josh K
+1. Daftar poin yang bisa diperdebatkan dan dapat diperdebatkan, tetapi daftar yang cukup bagus.
haylem
jQuery menghilangkan semua sakit kepala lintas-browser?
James Adam
3

Ada beberapa bacaan untuk inspirasi:

  • Zend Framework - gaya pengkodean php : Daftar praktik bagaimana menulis kode php yang dapat dikelola (Format File PHP, Konvensi Penamaan, Gaya Pengkodean: Array, String, Class, Method eg.).
  • Google - panduan gaya kode : Daftar praktik cara menulis kode javascript yang dapat dikelola (Aturan: Konstans, Titik Koma, Fungsi Bersarang ..., Gaya pengkodean: Penamaan, Cakupan, String, bidang Visibilitas, dll.).
tomascejka
sumber
maukah Anda menjelaskan lebih lanjut tentang apa yang dilakukan sumber daya ini dan mengapa Anda merekomendasikan ini sebagai jawaban atas pertanyaan yang diajukan? "Jawaban khusus tautan" tidak diterima di Stack Exchange
agung
1
@gnat edit / jawaban yang benar
tomascejka
2

Pisahkan 3. Kode yang paling tidak bisa dipelihara yang saya tangani adalah selalu ketika ada beberapa PHP yang menggemakan banyak HTML & JavaScript, mungkin dengan beberapa SQL yang dilemparkan untuk mengukur baik.

Menjaga semuanya sebagai terpisah akan membuat kode lebih mudah dipelihara, dan juga membuat banyak hal lebih efisien jika ada orang yang mengerjakan bagian aplikasi yang berbeda, seperti desainer yang hanya perlu bekerja dengan HTML / CSS.

GSto
sumber
2

Cara termudah untuk kode aplikasi web php tentu saja untuk menyatukan semuanya. Anda dengan cepat berakhir dengan kekacauan yang tidak dapat dipelihara jika Anda melakukan hal-hal seperti itu.

Berikut adalah beberapa praktik yang baik:

1) Masukkan JavaScript Anda di <head> dokumen (atau, lebih baik lagi, di file terpisah yang dirujuk di kepala). Pelajari cara mengikat pendengar acara dalam acara document.onload, daripada menyebarkannya melalui html Anda. (Lebih baik lagi, belajarlah menggunakan kerangka kerja seperti Jquery; itu akan membuat JavaScript Anda jauh, jauh lebih cantik).

2) Mencari pola desain seperti MVC. Anda ingin memisahkan logika bisnis Anda, yang ditulis dalam PHP, dari HTML Anda sebanyak mungkin. Idealnya, Anda akhirnya menggunakan bahasa templating yang bagus untuk menyusun halaman HTML Anda; paling tidak, PHP di HTML Anda harus singkat - terutama memanggil variabel dan memeriksa daftar yang dibuat di tempat lain.

3) Komentar, indentasi ... hal-hal itu hanyalah praktik dasar pemrograman terbaik. Saya cenderung membiarkan panjang baris saya melampaui 80 karakter ketika saya menulis HTML, hanya karena bahasanya sangat kasar, tapi itu satu-satunya praktik tradisional yang harus Anda lepaskan - jika seluruh tim sedang ceroboh, mereka perlu menyedotnya dan membentuknya.

Tambalan
sumber
Komentar yang bagus! Ada salah ketik: "Letakkan JavaScript Anda di dalam dokumen"
DL
Aduh. Terima kasih. (Lupa mengodekan dengan kurung sudut. Silly saya.)
Patch
1
Javascript harus ada di akhir halaman Anda karena alasan kinerja.
Toby
0

Berikut beberapa informasi penting:

Javascript: Gunakan varsaat menginisialisasi variabel.

HTML: Sertakan skrip di bagian bawah file sehingga mereka memuat terakhir.

PHP: Membagi file. Jangan menempatkan semua kelas Anda dalam satu file, sama seperti Anda tidak akan dalam pengembangan C ++ normal. Berikan komentar sebanyak mungkin dan tuliskan juga tujuan dari fungsi / kelas Anda.

Harry
sumber
Saya sudah mencoba mengikuti Panduan Gaya Javascript Google: google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
Fosco