coding
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| coding [2008/04/17 22:03] – fgm | coding [2020/11/23 17:23] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 45: | Line 45: | ||
| < | < | ||
| </tr> | </tr> | ||
| - | <tr style=" | + | <tr style=" |
| - | | + | |
| { | { | ||
| $ret = action; | $ret = action; | ||
| return $ret; | return $ret; | ||
| - | }</ | + | }</ |
| - | | + | |
| return action; | return action; | ||
| - | }</ | + | }</ |
| - | | + | |
| { | { | ||
| return action; | return action; | ||
| Line 89: | Line 86: | ||
| < | < | ||
| </tr> | </tr> | ||
| - | <tr style=" | + | <tr style=" |
| - | | + | |
| { | { | ||
| // members | // members | ||
| - | }</ | + | }</ |
| - | | + | |
| - | | + | |
| - | | + | |
| { | { | ||
| // members | // members | ||
| Line 115: | Line 108: | ||
| < | < | ||
| </tr> | </tr> | ||
| - | <tr style=" | + | <tr style=" |
| - | | + | |
| { | { | ||
| action1; | action1; | ||
| Line 127: | Line 119: | ||
| { | { | ||
| defaultaction; | defaultaction; | ||
| - | }</ | + | }</ |
| - | | + | |
| action1; | action1; | ||
| } | } | ||
| Line 136: | Line 127: | ||
| else { | else { | ||
| defaultaction; | defaultaction; | ||
| - | }</ | + | }</ |
| - | | + | |
| action1; | action1; | ||
| } elseif ((test3) && (test4)) { | } elseif ((test3) && (test4)) { | ||
| Line 143: | Line 133: | ||
| } else { | } else { | ||
| defaultaction; | defaultaction; | ||
| - | }</ | + | }</ |
| - | | + | |
| action1; | action1; | ||
| } else if (test3) { | } else if (test3) { | ||
| Line 150: | Line 139: | ||
| } else { | } else { | ||
| | | ||
| - | }</ | + | }</ |
| - | | + | |
| <tr> | <tr> | ||
| < | < | ||
| Line 175: | Line 163: | ||
| < | < | ||
| </tr> | </tr> | ||
| - | <tr style=" | + | <tr style=" |
| - | | + | |
| { | { | ||
| case 1: | case 1: | ||
| Line 189: | Line 176: | ||
| defaultaction; | defaultaction; | ||
| break; | break; | ||
| - | }</ | + | }</ |
| - | | + | |
| case 1: | case 1: | ||
| action1; | action1; | ||
| Line 202: | Line 188: | ||
| defaultaction; | defaultaction; | ||
| break; | break; | ||
| - | }</ | + | }</ |
| - | | + | |
| case 1: | case 1: | ||
| action1; | action1; | ||
| Line 215: | Line 200: | ||
| defaultaction; | defaultaction; | ||
| break; | break; | ||
| - | }</ | + | }</ |
| - | | + | |
| case 1: | case 1: | ||
| break; | break; | ||
| Line 225: | Line 209: | ||
| default: | default: | ||
| break; | break; | ||
| - | }</ | + | }</ |
| - | | + | |
| </ | </ | ||
| </ | </ | ||
| Line 429: | Line 412: | ||
| ====== Naming Conventions ====== | ====== Naming Conventions ====== | ||
| + | |||
| + | |||
| Line 451: | Line 436: | ||
| < | < | ||
| - | |||
| <table class=" | <table class=" | ||
| - | |||
| <col span=" | <col span=" | ||
| - | |||
| <tr> | <tr> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr style=" | <tr style=" | ||
| - | |||
| < | < | ||
| - | + | | |
| - | | + | |
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr style=" | <tr style=" | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr style=" | <tr style=" | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr style=" | <tr style=" | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr> | <tr> | ||
| - | |||
| < | < | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| { | { | ||
| - | |||
| const SOME_CONSTANT = ' | const SOME_CONSTANT = ' | ||
| - | |||
| }</ | }</ | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| const SOME_CONSTANT = ' | const SOME_CONSTANT = ' | ||
| - | |||
| }</ | }</ | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr> | <tr> | ||
| - | |||
| < | < | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| protected _someFieldTwo; | protected _someFieldTwo; | ||
| - | |||
| public | public | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| protected _someFieldTwo; | protected _someFieldTwo; | ||
| - | |||
| public someFieldThree;</ | public someFieldThree;</ | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr> | <tr> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr> | <tr> | ||
| - | |||
| < | < | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <ul> | <ul> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </ul> | </ul> | ||
| - | |||
| </td> | </td> | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <ul> | <ul> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| <ul> | <ul> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </ul> | </ul> | ||
| - | |||
| </li> | </li> | ||
| - | |||
| < | < | ||
| - | |||
| </ul> | </ul> | ||
| - | |||
| </td> | </td> | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <ul> | <ul> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </ul> | </ul> | ||
| - | |||
| </td> | </td> | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| <tr> | <tr> | ||
| - | |||
| < | < | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <ul> | <ul> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| <ul> | <ul> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| <ul> | <ul> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </ul> | </ul> | ||
| - | |||
| </li> | </li> | ||
| - | |||
| < | < | ||
| - | |||
| <ul> | <ul> | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| < | < | ||
| - | |||
| </ul> | </ul> | ||
| - | |||
| </li> | </li> | ||
| - | |||
| </ul> | </ul> | ||
| - | |||
| </li> | </li> | ||
| - | |||
| </ul> | </ul> | ||
| - | |||
| </td> | </td> | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| <td style=" | <td style=" | ||
| - | |||
| </tr> | </tr> | ||
| - | |||
| </ | </ | ||
| - | |||
| </ | </ | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| ===== Variables ===== | ===== Variables ===== | ||
| - | + | Variables naming following the rules for functions and methods. Exceptions: | |
| - | + | ||
| - | Variables naming following the rules for functions and methods. | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | Exceptions: | + | |
| - | + | ||
| * existing libraries or APIs are not renamed. Facade APIs may be used until existing libraries match the new format | * existing libraries or APIs are not renamed. Facade APIs may be used until existing libraries match the new format | ||
| - | |||
| * the standard variable $ret should be used for all return values. Always use it to return a value, instead of directly returning the latest instruction result. This helps with a typical debugger configuration: | * the standard variable $ret should be used for all return values. Always use it to return a value, instead of directly returning the latest instruction result. This helps with a typical debugger configuration: | ||
| - | |||
| * some Hungarian notation is used: | * some Hungarian notation is used: | ||
| - | |||
| * the name of " | * the name of " | ||
| - | |||
| * http:// | * http:// | ||
| - | |||
| * naming resulting from external objects applies the rule by pieces. Example: | * naming resulting from external objects applies the rule by pieces. Example: | ||
| - | |||
| * GTK widgets are named < | * GTK widgets are named < | ||
| - | |||
| * GTK signals are called < | * GTK signals are called < | ||
| - | |||
| * Related callbacks are called on_< | * Related callbacks are called on_< | ||
| - | |||
| * Example: on_fmMain_destroy is | * Example: on_fmMain_destroy is | ||
| - | |||
| * " | * " | ||
| - | |||
| * " | * " | ||
| - | |||
| * " | * " | ||
| - | |||
| * Rationale: forcing CamelCaps for the standard naming convention would result in onFmMainDestroy, | * Rationale: forcing CamelCaps for the standard naming convention would result in onFmMainDestroy, | ||
| - | |||
| - | |||
| - | |||
| ===== Functions and Methods ===== | ===== Functions and Methods ===== | ||
| - | |||
| - | |||
| * Since PHP4 support is not required, visibility (private, protected) settings on class members are recommended when using PHP5 class constructions. | * Since PHP4 support is not required, visibility (private, protected) settings on class members are recommended when using PHP5 class constructions. | ||
| - | |||
| * functions or methods returning unsafe values are prefixed by " | * functions or methods returning unsafe values are prefixed by " | ||
| - | |||
| * " | * " | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| ===== Constants ===== | ===== Constants ===== | ||
| - | |||
| - | |||
| As of 01/01/2007, see table above. Note that the PHP builtins " | As of 01/01/2007, see table above. Note that the PHP builtins " | ||
| - | |||
| - | |||
| Previously, the format was: | Previously, the format was: | ||
| - | |||
| <code php> | <code php> | ||
| - | |||
| define(' | define(' | ||
| - | |||
| </ | </ | ||
| - | |||
| - | |||
| This style of coding is now considered obsolete (even under Drupal conventions, | This style of coding is now considered obsolete (even under Drupal conventions, | ||
| <code php> | <code php> | ||
| - | |||
| class G2 | class G2 | ||
| - | |||
| { | { | ||
| - | |||
| // don't forget the PHPdoc here | // don't forget the PHPdoc here | ||
| - | |||
| const VERSION = ' | const VERSION = ' | ||
| - | |||
| } | } | ||
| - | |||
| </ | </ | ||
| - | |||
| ===== Drupal-specific: | ===== Drupal-specific: | ||
| - | |||
| - | |||
| * Drupal mandates some function names, notably, for module " | * Drupal mandates some function names, notably, for module " | ||
| - | |||
| * default theme functions must be named theme_mymodule_foo | * default theme functions must be named theme_mymodule_foo | ||
| - | |||
| * hook_foo implementations must be named mymodule_foo | * hook_foo implementations must be named mymodule_foo | ||
| - | |||
| * Beyond that, all other functions in a module should be defined as static public methods of a class named like the module, like: | * Beyond that, all other functions in a module should be defined as static public methods of a class named like the module, like: | ||
| - | |||
| <code php> | <code php> | ||
| - | |||
| // don't forget the PHPdoc comments here | // don't forget the PHPdoc comments here | ||
| - | |||
| class My_Module | class My_Module | ||
| - | |||
| { | { | ||
| - | |||
| // and here | // and here | ||
| - | |||
| const SOME_CONSTANT = ' | const SOME_CONSTANT = ' | ||
| - | |||
| - | |||
| // ... and here too | // ... and here too | ||
| - | |||
| static public function foo($op) | static public function foo($op) | ||
| - | |||
| { | { | ||
| - | |||
| // do something and return | // do something and return | ||
| - | |||
| } | } | ||
| - | |||
| } | } | ||
| - | |||
| - | |||
| // ..which can be invoked as: | // ..which can be invoked as: | ||
| - | |||
| My_Module:: | My_Module:: | ||
| - | |||
| </ | </ | ||
| - | |||
| - | |||
coding.1208469834.txt.gz · Last modified: (external edit)
