lunes, 31 de marzo de 2008

Mejores Practicas ZEND.

La gente de Zend ha dado una documentacion para que los programadores de php sigamos un standar de sintaxis de codigo. La idea que tiene esta documentacion es que podamos unviersalizar la sintaxis para que si otra persona lee nuestro codigo pueda leerlo y no complicarse.

Convencion de nombres:

* Para los nombres de las clases vamos a usar el sistema CamelCased, que se basa en que un nombre no contenga espacios, y cada palabra empieze con Mayuscula.
* Usar underscores (_) para separar paquetes logicos.

Ejemplos:

Spreadsheet_Excel_Writer

Services_Google_AdWords

* El nombre de la clase determinara el nombre del archivo.
* Tendra el sufijo .php
* El nombre de la clase determinara el directorio en el que tiene que estar el archivo.
Ejemplo:

Class Spreadsheet_Excel_Writer
var/www/public/Spreadsheet/Excel/Writer.php

* Una Clase por archivo.
* Las variables usan el sistema camelCased, con la primer letra en minuscula.
* Las constantes se escriben totalmente en mayusculas, y se separan las palabras con un undersocre.
* Los metodos privados y propiedades del metodos tiene el prefijo underscore en su nombre.

Ejemplos:
private function _getElement(){}
private $element;


* En las funciones y clases la llave se ingresa en la linea siguiente de la declaracion a la misma altura que la declaracion
Ejemplo:
protected function _getElement()
{
}

* En las estructuras de control las llaves se ingresan en la misma linea de la declaracion
Ejemplo:
while($true){
}

* No se pueden usar tabs para separar codigo, solo espacios
* Son 4 espacios por nivel de identacion

Los editores generalmente tienen la opcion para configurar esto, y reemplazar un tab por 4 espacios.

Ejemplo general:

1  
<?php
2  
class    Zend_Foo_Bar Extends    Zend_Foo
3  
{
4      const 
BAZ    =    0;
5      public    
$fooVar;
6      private   
$_barVar;
7      public    function     
sayHello($name)
8      {
9          if (
$name == 'Matthew') {
10          }
11      }
12  }
13  
?>



* Todas las estructuras usan llaves.
Ejemplo de mal uso:
if($name == 'Mathew')
echo $name;


* Una linea puede tener como maximo entre 75 y 85 caracteres.
* No pueden haber comentrarios con #

viernes, 28 de marzo de 2008

PROXIMAMENTE!

Proximamente voy a ir subiendo informes

La idea es por lo menos una vez por semana realizar algun informe relacionado con Zend, y PHP.

Veremos que sale de todo esto.