Smarty Template Designer

Kata pengantar

Tidak diragukan lagi salah satu pertanyaan yang paling sering diajukan pada milis PHP: bagaimana saya membuat naskah PHP independen terhadap tata letak? Sementara PHP disebut sebagai "bahasa HTML embedded scripting", setelah menulis beberapa proyek yang mencampur PHP dan HTML secara bebas, datanglah satu ide yang memisahkan formulir dan isi adalah baik. Selain itu, dalam banyak perusahaan aturan pendesain tata letak dan pemrogram adalah terpisah. Konsekuensinya, pencarian solusi tata letak terjadi kemudian.

Dalam perusahaan kami contohnya, pengembangan aplikasi terjadi sebagai berikut: Setelah persyaratan dokumen selesai, pendesain interface membuat maket interface dan memberikannya ke pemrogram. Pemrogram mengimplementasikan logika bisnis dalam PHP dan menggunakan maket interface untuk membuat rangka template. Proyek ini kemudian diserahkan ke perancang HTML / tata letak halaman web orang yang membawa template sampai sempurna. Proyek mungkin bolak-balik diantara pemrogram / HTML beberapa kali. Dengan demikian, penting untuk mempunyai dukungan template karena pemrogram tidak ingin berurusan dengan HTML dan tidak menginginkan desainer penyia-nyiaan waktu HTML dengan kode PHP. Desainer memerlukan dukungan untuk file konfigurasi, blok dinamis dan hal antarmuka lainnya, tetapi mereka tidak mau harus berhadapan dengan kerumitan bahasa pemrograman PHP.

Melihat banyaknya solusi template untuk PHP hari ini, kebanyakan darinya menyediakan cara yang belum sempurna dari mengganti variabel ke dalam template dan melakukan bentuk terbatas dari fungsionalitas blok dinamis. Tapi kebutuhan kita memerlukan sedikit lebih dari itu. Kami tidak menginginkan pemrogram untuk berurusan dengan tata letak HTML SAMA SEKALI, tapi ini hampir tidak bisa dihindari.

Sebagai contoh, jika seorang desainer ingin warna latar belakang untuk berubah pada blok dinamis, ini harus dikerjakan dengan pemrogram terlebih dahulu. Kami juga membutuhkan pendesain untuk bisa menggunakan file konfigurasinya sendiri, dan menarik variabel darinya ke dalam template. Daftarnya akan bertambah terus

Kami mulai menulis spesifikasi untuk mesin template di akhir 1999. Setelah menyelesaikan spesifikasi, kami mulai bekerja pada mesin template yang ditulis dalam C yang diharapkan akan diterima untuk disertakan dengan PHP. Kami tidak hanya bertemu banyak hambatan teknis yang rumit, tapi juga ada debat panas mengenai apa mesin template harus dan tidak boleh lakukan. Dari pengalaman ini, kami memutuskan bahwa mesin template harus ditulis dalam PHP sebagai kelas, bagi siapa saja untuk digunakan sebagai mereka mau. Maka kami menulis mesin yang tidak hanya itu dan SmartTemplate muncul (catatan: kelas ini tidak pernah disampaikan kepada publik). Itu adalah kelas yang melakukan hampir segala sesuatu yang kita inginkan: substitusi variabel reguler, didukung termasuk template lain, integrasi dengan file konfigurasi, melekatkan kode PHP, fungsionalitas pernyataan terbatas 'jika' dan blok dinamis lebih kuat yang dapat berkembang biak bersarang. Ia melakukan ini semua dengan ekspresi reguler dan kode diubah menjadi, harus kami katakan, bisa dipahami.

Ia juga tercatat lambat dalam aplikasi besar dari semua penguraian dan ekspresi reguler pekerjaan itu harus dilakukan pada setiap permintaan.
Masalah terbesar dari titik pandang pemrogram adalah semua pekerjaan yang diperlukan dalam naskah PHP untuk menyiapkan dan memproses template dan blok dinamis. Bagaimana kami membuat ini lebih mudah?

Kemudian datang visi dari apa yang akhirnya menjadi Smarty. Kita tahu seberapa cepat kode PHP tanpa overhead parsing template. Kami juga mengetahui bagaimana teliti dan sombong bahasa PHP dapat melihat ke desainer rata-rata, dan ini bisa bertopeng dengan sintaks template yang lebih sederhana. Jadi bagaimana jika kami menggabungkan dua kekuatan? Dengan demikian, Smarty dilahirkan

Read Users' Comments (0)

0 Response to "Smarty Template Designer"