Ahora KumbiaPHP está en Slack!!

Si deseas contactar con nosotros y de forma rápida, estamos en Slack:

http://slack.kumbiaphp.com/

Estandarización del Codigo

Hola

Abro este link para empezar a debatir crear una lista de estandarizacion del codigo.:

Comentarios

  • edited noviembre -1
    La idea es listar los estandares que deben seguir los desarrolladores para escribir codigo en el framework.

    Por ejemplo:

    Las variables:

    Deben ser usadas usando la siguiente nemotecnia:

    $variable
    $variable_mas

    Las variables deben tener nombres humanos (cuando el caso lo permita), es decir evitar abreviaciones para hacerlo más entendible.

    Deben ir en minuscula y separar las letras con _ (underscore).
  • edited noviembre -1
    Jajajaj, vale!! Mea culpa!!! Lo entendí mal.
  • edited noviembre -1
    -
    Es innegable que en cualquier proyecto es sumamente importante que sus integrantes establezcan acuerdos en la forma de hacer las cosas; más aun cuando la cantidad de esos integrantes es elevada y la mayoría colaboran desde diferentes lugares. Es ese el caso de Kumbia, un Prometedor Proyecto que está siendo forjado por diversas personas a lo largo y ancho de todo el planeta.


    CONVENCIONES DE CODIFICACIÓN

    Razones:

    • El 70% al 80% del coste del código de un programa va a su mantenimiento.
    • Las convenciones de código mejoran la lectura del software, permitiendo comprender el código nuevo más rápidamente y más a fondo.
    • Si distribuyes tu código fuente como un producto, necesitas asegurarte de que esté bien hecho.
    • Cada cabeza es un mundo!, fijar estándares mejora el entendimiento mutuo.
    • Las convenciones no funcionan por arte de magia, cada desarrollador debe seguirlas y procurar que los demás también las sigan.


    Ítems:

    • Evitar (en lo posible) poner más de un return en una misma función.
    • Todas las sentencias de control (if,for,while,if-else,etc.) deben poseer sus correspondientes llaves de apertura y de cierre ({}).
    • Separar con un espacio en blanco las condiciones en una sentencia de control.

    Evitar (en lo posible) poner más de un return en una misma función:

    // EVITAR!!!

    if(condicion) {
    return $algo.“cosa”;
    } else(otra_condicion){
    return $algo.“otra cosa”;
    }


    // MEJOR!

    if(condicion) {
    $algo.= “cosa”;
    } else(otra_condicion){
    $algo.= “otra cosa”;
    }
    return $algo;


    // MEJOR! OPERADORES TERNARIOS (cuando sea posible)!

    return condicion ? $algo.“cosa” : $algo.“otra cosa”;



    Separar con un espacio en blanco las condiciones en una sentencia de control:

    // EVITAR!!!
    if (condicion1&&condicion2||condicion3){…

    // MEJOR!
    if (condicion1 && condicion2 || condicion3){…


    Todas las sentencias de control (if,for,while,if-else,etc.) deben poseer sus correspondientes llaves de cierre y de apertura:

    // EVITAR!!!
    if (condición)
    una línea de código;
    otras líneas de código;

    // MEJOR!
    if (condición){
    línea de código;
    }
    otras líneas de código;


    PD: Creo que el titulo de este tema deberia ser "CONVENCIONES DE CODIFICACION".

    Adapted with permission from JAVA CODE CONVENTIONS.
    Copyright 1995-2007 Sun Microsystems, All rights reserved
    .
  • edited noviembre -1
    Porque consideras que es mejor usar operadores ternarios?
  • edited noviembre -1
    Voy a crear una pagina en el wiki del trac para colocar las CONVENCIONES DE CODIFICACION que sean aprobadas aqui:

    http://tools.assembla.com/kumbia/wiki/C ... dificacion

    Saludos
  • edited noviembre -1
    NOMBRES

    Yo diria diferenciar entre nombres de variables y funciones, así como de clases.

    Funciones o métodos:

    mostrar_nombre() {}

    Nombres en minusculas y si hay más de dos palabras separadas por _

    Variables:


    miVariable

    Diferenciación dentro del nombre de la variable de las partes por una mayuscula.

    Clases:

    class Personas

    Nombre en mayusculas y si son mas de dos, en mayusculas y separadas por _



    Uso de operador ternario

    Lo limitaria, única y simplement al uso de asignar valores a variables y nunca como condicionales de acciones, es decir, nunca:

    $accion = (isset($_GET['nombre'])) ? mostrar_nombre() : pedir_nombre();

    $variable = (isset($_GET['nombre'])) ? $_GET['variable'] : 'vacio';
  • edited noviembre -1
    Creo que en la wki se deberian añadir la información sobre como escribir correctamente el código de condicionales, operador ternario y retorno de valores.
  • edited noviembre -1
    Los estandares de codificacion se estan agregando al wiki del trac
  • edited noviembre -1
    Se que se estan añadiendo, pero prefiero comentar el tema del operador ternario y su uso para su posible adiccion en las convenciones de codigo.

    Operador ternario solo se usara como asignador de variables y nunca de acciones.

    Mal:

    $accion = (isset($_GET['id']) ? add_reg($_GET['id']) : fail_reg();



    Bien

    $id = (isset($_GET['id'])) ? $_GET['id'] : <valor deseado si id vacio>;
  • edited noviembre -1
    Buen Día...

    Considero que sería de mucha utilidad para todos que en el wiki se incluya el tema. Hace algún tiempo vi algo cuando el proyecto estaba alojado en assembla:

    http://tools.assembla.com/kumbia/wiki/ConvencionesDeCodificacion.

    Saludos

    PD: Para el momento de la edición de este mensaje el link se encuentra activo el link.
Sign In or Register to comment.