From: Honza M. <hon...@ec...> - 2003-01-18 21:35:57
|
Hello, I think now is the time to define some coding standards for ActionApps. It help us to have the code as readable as possible for everyone. Most of the following rules comes from php PEAR standard: http://pear.php.net/manual/en/standards.php Most important rules on tne top: - use UNIX end of lines (use \n and never windows \r\n) If we mix both modes, the CVS diffs are unusefull - Indent 4 spaces, with no tabs Do not use Tabs or use 'insert Tabs as spaces' option of your text editor. Most of the editors (like Jedit or HomeSite) allows it. Then the code will look good in any editor. - use <?php open tag Do not use any other shorted version like <?, .. There are some problems on some Apache configurations with <?... - comments should follow phpDoc standard See http://phpdocu.sourceforge.net/ Use /* */ and // for comments, not # - control structures should look like if ((condition1) || (condition2)) { commands; } else { commands; } Open brace at the end of line if, while, ... separated by space (it is not function call) - function($var1, $var2=true) No space between function name and open brace allow us easier find the function in the code - 80 characters wide Try to write the code 80 characters wide, if possible - quote strings in indexes Allways qoute strings like 'name' in $arr['name'] or $db->f('name') although current PHP do not need it - use $_GET, $POST, and $_SERVER Use mentioned superglobal arrays to access variables from forms ... - use return true; instead of return(true); Return is the statement, not a function - When you commiting changes into CVS, allways update CHANGES file and send a note to apc...@so... - Document new feature in the FAQ (http://apc-aa.sourceforge.net/faq/) and in the code - If it is possible, create an example of new feature on Sourceforge installation of AA - If you changing database structure (adding table, ...), you should update doc/aadb.sql as well as sqlupdate.php3 script - Before you are going to code some new feature, let us know about, please (apc...@so...) ------------- I know the current code do not strictly follows mentioned rules, but from this time it will ....... hopefully Honza |