tài liệu hướng dẫn lập trình nukeviet, giúp cho những người mới lập trình có thể hiểu hơn về các quy định trong lập trình nukeviet, giúp các bạn sinh viên có thể có các hướng dẫn để làm đồ ántài liệu hướng dẫn lập trình nukeviet, giúp cho những người mới lập trình có thể hiểu hơn về các quy định trong lập trình nukeviet, giúp các bạn sinh viên có thể có các hướng dẫn để làm đồ ántài liệu hướng dẫn lập trình nukeviet, giúp cho những người mới lập trình có thể hiểu hơn về các quy định trong lập trình nukeviet, giúp các bạn sinh viên có thể có các hướng dẫn để làm đồ ántài liệu hướng dẫn lập trình nukeviet, giúp cho những người mới lập trình có thể hiểu hơn về các quy định trong lập trình nukeviet, giúp các bạn sinh viên có thể có các hướng dẫn để làm đồ án
Trang 1Các quy định & chuẩn
trong lập trình NukeViet
Trang 2Quy định và chuẩn lập trình
Javascript
NukeViet
CSS
HTML (tpl)
PHP
Trang 3Quy cách đặt tên tệp, thư mục
Tên file đặt bằng tiếng anh, không dùng tiếng việt.
Đặt tên dựa vào chức năng của file.
Tên file dùng chữ thường, bao gồm chữ cái (a-z), số (0-9), dấu gạch ngang (-) và dấu gạch dưới (_)
Tên file chỉ bắt đầu bằng chữ cái.
Trang 4Quy định đối với file php
Các file PHP thông thường được mã hóa dạng ANSI, các file PHP có chứa ngôn ngữ UTF-8 được mã hóa dạng UTF-8 without BOM hoặc UTF-8.
Các file PHP phải có định dạng UNIX
(UNIX format).
Trang 5Quy định đối với file php
Ví dụ
<?php
// Some code here
?>
File PHP mở đầu bằng <? php và kết thúc bằng ?>
Giữa chúng phân cách với nội dung bằng ít
nhất một dòng trống
Không được viết
<?php // Some code here
?>
Trang 6Quy định đối với file php
<?php
/**
* @Project NUKEVIET 3.x
* @Author VINADES.,JSC (contact@vinades.vn)
* @Copyright (C) 2010 VINADES.,JSC All rights reserved
* @Createdate 12/3/2012, 1:2
*/
// Some code here
?>
Sau <?php, mỗi file cần được bắt đầu bằng mô tả theo dạng chung:
Trang 7Quy định đối với file lang php
<?php
/**
* @Project NUKEVIET 3.0
* @Author VINADES.,JSC (contact@vinades.vn)
* @Copyright (C) 2010 VINADES.,JSC All rights reserved
* @Language Tiếng Việt
* @Createdate Jul 06, 2011, 04:38:01 PM
*/
// Some code here
?>
Ta thêm thông tin ngôn ngữ Language bên
dưới thông tin về bản quyền.
Trang 8Quy định đối với file php
Các khối code không liên quan đến nhau nên được phân cách bởi một dòng trống và chỉ phân cách bởi một dòng duy nhất
$array['score'] = $array['score'] ? $array['score'] : "";
$array['time'] = $array['time'] ? $array['time'] : "";
$array['size'] = $array['size'] ? $array['size'] : "";
$xtpl->assign( 'LANG', $lang_module );
$xtpl->assign( 'GLANG', $lang_global ); 1 dòng
Trang 9Quy định đối với file php
Thụt đầu dòng bằng tab, không được thụt đầu
dòng bằng kí tự trống hoặc bỏ qua thụt đầu dòng
foreach( $list_actor as $actor ) {
$xtpl->assign( 'actor', $actor );
$xtpl->parse( 'main.actor' );
}
1 Tab
Trang 10Khoảng cách giữa các kí tự
Đặt trước và sau kí tự = dấu cách
Đặt sau ( một dấu cách
Đặt sau dấu , một dấu cách
Sau if, else, while, foreach, for nên bắt đầu ngay với ( không nên đặt dấu cách
Trang 11Đặt tên biến
Các biến tạm nên bắt đầu bằng _ ví dụ $_tmp, $_title.
Tên biến không quá ngắn cũng không quá dài, mô tả
đúng chức năng của biến.
Sử dụng cùng tên biến đối với những câu lệnh cùng chức năng (nếu có thể) ví dụ truy vấn sql dùng
$sql = "SELECT COUNT(*) FROM `" NV_AUTHORS_GLOBALTABLE
"` WHERE `admin_id`=" $userid;
Hay
$result = $db->sql_query( $sql );
$row = $db->sql_fetchrow( $result );
Trang 12Nếu mảng ngắn từ một đến hai phần tử ta viết
$array = array( 'id' => $id, 'title' => $title );
Nếu dài hơn ta phải viết
$array = array(
'id' => $id, 'title' => $title );
Đối với mảng nhiều chiều ta viết
$array = array(
'id' => array(
'content' => array(
'sub' => $sub, 'cat' => $cat ),
), 'title' => $title );
Trang 13Các vòng lặp if, else, while, for…
Nếu sau if chỉ có một câu lệnh ngắn ta viết câu lệnh cùng
một dòng với if if( $i > 0 ) die( 'Error!!!' );
Nếu sau if có nhiều hơn một câu lệnh, câu lệnh quá dài hoặc sau đó có else ta phải xuống hàng bởi {
if( $title > 200 )
{
echo( 'Tieu de qua lon' );
}
else
{
echo( 'Tieu de hop le' );
}
Không được để kí tự { và } ngang hàng với if, else, for, while
Trang 14function, class
Một hàm phải có mô tả bên trên Tương tự cho một lớp (class)
/**
* nv_is_blocker_proxy()
*
* @param string $is_proxy
* @param integer $proxy_blocker
* @return
*/
function nv_is_blocker_proxy(
$is_proxy, $proxy_blocker )
/**
* NVbuffer
*
* @package NukeViet
* @author VINADES.,JSC
* @copyright 2012
* @version 3.3
* @access public
*/
Trang 15Ghi chú (comment)
Để đúng chuẩn cần viết ghi chú ngắn gọn cho mỗi dòng bằng // và không dùng /* */ hay #
Ví dụ: Dùng
// Ghi chú
Không dùng
# Ghi chú
Không dùng
/* Ghi chú */
Trang 16Đối với các file JS
Áp dụng chuẩn của các file php Đặt { ngay sau các lệnh.
if( a == 0 ){
a = 1;
}
Đặt else if ngay sau kí tự }
if( a == 0 ){
a = 1;
}else if( a == -1 ){
break;
}
Trang 17Đối với file CSS
Định dạng theo kiểu nhiều hàng.
#header #mainNav {
height: 35px; line-height: 35px; position: relative;
border-top: 1px solid #89cce1; border-bottom: 1px solid #89cce1; margin: 17px 0px 20px 0px;
background: #cde9f2;
}
Trang 18Đối với file html (tpl)
Các thẻ có nội dung ngắn nên để một dòng
Thẻ con được thụt đầu dòng 1 tab so với thẻ cha
Hạn chế tối đa viết trực tiếp CSS vào thẻ html.
<div class="booked-info">
<div class="t">{LANG.avaiable}</div>
<div class="i green"></div>
</div>
<span>{DATA.infomation}</span>
Trang 19Xin trân trọng cảm ơn!