Tải bản đầy đủ (.pdf) (19 trang)

Huong dan cac quy dinh chuan trong lap trinh nukeviet

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (10.22 MB, 19 trang )

Các quy định & chuẩn
trong lập trình NukeViet


Quy định và chuẩn lập trình

CSS

Javascript

NukeViet

PHP

HTML (tpl)


Quy 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.


Quy định đối với file php


Các file PHP phải có định dạng UNIX
(UNIX format).

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.


Quy định đối với file php
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
Ví dụ

Không được viết


// Some code here
?>

// Some code here

?>


Quy định đối với file php
Sau

theo dạng chung:
/**
* @Project NUKEVIET 3.x
* @Author VINADES.,JSC ()
* @Copyright (C) 2010 VINADES.,JSC. All rights reserved
* @Createdate 12/3/2012, 1:2
*/
// Some code here
?>


Quy định đối với file lang php
Ta thêm thông tin ngôn ngữ Language bên
dưới thông tin về bản quyền.
/**
* @Project NUKEVIET 3.0
* @Author VINADES.,JSC ()
* @Copyright (C) 2010 VINADES.,JSC. All rights reserved
* @Language Tiếng Việt
* @Createdate Jul 06, 2011, 04:38:01 PM
*/
// Some code here
?>


Quy đị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


Quy đị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

1 Tab

foreach( $list_actor as $actor )
{
$xtpl->assign( 'actor', $actor );
$xtpl->parse( 'main.actor' );
}


Khoả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


Đặ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 );


Array
Nế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
);


Cá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


function, 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
*/


Ghi 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ú */


Đố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;
}


Đố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;
}



Đối với file html (tpl)

Hạn chế tối đa viết trực tiếp CSS vào thẻ html.
Thẻ con được thụt đầu dòng 1 tab so với thẻ cha
<div class="booked-info">
<div class="t">{LANG.avaiable}</div>
<div class="i green"></div>
</div>

Các thẻ có nội dung ngắn nên để một dòng
<span>{DATA.infomation}</span>


Xin trân trọng cảm ơn!



×