jueves, marzo 17, 2016

GIT cambiar el editor por defecto a VIM

A veces cuando usamos git en consola unix / linux queda con un editor por defecto que puede no ser de nuestro agrado. Si vienes usando vim, puedes aplicar esta sintaxis:

git config --global core.editor "vim"

viernes, febrero 12, 2016

GIT: colorear el diff en consola


 

Estás trabajando remoto desde la consola de comandos, quieres ver la diferencia de tus fuentes con respecto a los cambios que estás haciendo, y los cambios se presentan en blanco y negro.

$ git diff

Para poder ver el diff con colores y clarificar mejor las diferencias en el código modificado, debes cambiar la configuración de GIT:

La preferencia es

color.ui


Y todas las funciones se pueden habilitar o deshabilitar con TRUE o FALSE

ejemplo:

$ git config --global color.ui true

Aquí dejamos habilitado para que el diff al ejecutar git diff se muestre en distintos colores para facilitar su lectura.

Existen muchas variaciones que se pueden aplicar, para más info, ver manual de referencia.

color.branch
color.diff
color.interactive
color.status

Saludos!


Netbeans: cómo agregar soporte para editar bash / scripts




Probado en Netbeans 8 en adelante:
  1. Instalar plugin C/C++
  2. Instalar plugin nb-noext-mime-resolver
  3. Cambiar configuración en tools/options/editor/spellchecker y desmarcar 'Script and make comments'


martes, enero 05, 2016

Checklist para crear tu paquete PHP (composer)

Es un buen recurso para revisar a la hora de crear un paquete PHP que quieras distribuir por composer, una lista de puntos a tener en cuenta que deberías cumplir antes de publicarlo:



Cito algunos puntos:
  1. Elige un nombre sabiamente: revisa antes que no exista el nombre en el listado de paquetes, no uses tu nombre o apellido para usarlo en el nombre. 
  2.  Autoloader friendly: usa el estándar PSR-4 para hacer funcionar el autoloader en tu paquete, y coloca el código en la carpeta /src/
  3. Distribuye via Composer: si vas a hace un paquete, y quieres que sea público y lo puedan usar en otros proyectos, utiliza Composer.
  4. Sé Framework Agnostico: no limites tu proyecto / paquete a un solo framework.
  5. Sigue un estilo al codificar: utiliza estándares como PSR-2, donde especifican un estilo de codificación aprobado por la PHP-FIG (The PHP Framework Interop Group).
La lista completa sigue, hace referencia a que escribas test unitarios, no te olvides de la documentación en el código con DocBlock, agrega documentación extra, también un changelog, incluir un tipo de licencia, etc.


viernes, diciembre 25, 2015

Frase: "Para algunos autores, la herencia o las clases no son conceptos esenciales para la paradigma de POO"


Frase leída en Wikipedia sobre el lenguaje "Go" de Google:


Resultado de imagen para alan kay
Alan Kay
"Para algunos autores, la herencia o las clases no son conceptos esenciales para la paradigma de POO, sino más bien un medio de implementación. Existen desde hace tiempo lenguajes orientados a objetos que no admiten clases, sino que se basan en prototipos, como Javascript o Self. Según declaraciones de Alan Kay, creador de Smaltalk, lo esencial del paradigma es el paso de mensajes.6



Lenguaje Go
Go tiene tipos y métodos y permite un estilo de programación orientado a objetos, pero no admite construir jerarquías, es decir, no admite la herencia, que para otros autores sí es un mecanismo esencial de la POO. En Go, el concepto de “interfaz“ es similar al usado en Java: cualquier objeto (value) que cumpla el contrato especificado por una interfaz (sin necesidad de una declaración explícita) obtiene ese tipo. También existen formas de embeber tipos dentro de otros tipos para obtener algo análogo a las subclases. Los métodos de Go son más generales que los de C++ o Java, pueden ser definidos para cualquier tipo de datos no sólo para los registros."

Para los que estamos en la POO desde hace muchos años, da para pensar, no? 

martes, diciembre 01, 2015

Disponible PHP 7.0.0 RC 8

Desde el 26 de Nov pasado está disponible oficinalmente un nuevo Release Candidate, lo que deja ver que en breve tendremos la versión final disponible.

Cito el anuncio:

PHP 7.0.0 viene con una nueva versión del motor Zend con características tales como (lista incompleta):


  • Rendimiento mejorado: PHP 7 es hasta dos veces más rápido que PHP 5.6
  • Soporte consistente de 64 bits 
  • Muchos errores fatales son ahora Excepciones 
  • Se remueven SAPIs y extensiones antiguas y no compatibles 
  • Se agrega el operador "null coalescing" (??) 
  • Se agrega el operador "comparación combinada" (<=>) 
  • Se agrega tipo de retorno "Declarations"
  • Se agrega "Scalar Type Declarations" 
  • Clases anónimas
Saludos! 

Más info


lunes, julio 13, 2015

Jugar con PHP7, el camino facil

Para quienes ya quieren empezar a probar PHP7 sin grandes complicaciones y de forma segura, a través de koding.com






martes, marzo 05, 2013

El GOTO en PHP

En sí, hace muchos años que dejé de usar un goto cuando se prohibieron (hace casi 25 años aprendí a programar usando BASIC y GOTO, y posteriormente viví la evolución que llevó la prohibición del GOTO) y me sorprendió cuando lo revivieron de forma reciente en PHP 5.3.0, pero bueno, sigo la "vieja escuela", aún me parece innecesario y muy peligroso usar un goto... de todas formas no es tu culpa que ahora lo uses (aunque como regla, no todo lo que exista en el lenguaje, necesariamente es 100% recomendable usar para un buen diseño general o para POO en concreto).


Agrego más info sobre el GOTO, de casualidad llegué hoy leyendo otros temas: 
Cito biografía de un grán científico de la computación: "Respecto a su carácter árido y ácido, conocidas son su oposición a la instrucción GOTO y al lenguaje BASIC ("mutila la mente más allá de toda recuperación")."
Cito: "A diferencia de la llamada a una función, no se requiere ningún tipo de preparación o estructura de código para utilizar un GOTO. Como resultado, es más sencillo obtener código inconsistente, incompleto o complicado de mantener. Justamente por ello en los años 60 y 70, cuando surgió la programación estructurada, la comunidad informática se expresó a favor de otras instrucciones de control (if ó bucles for y do/while) en lugar de GOTO.
Tal creencia está tan arraigada que el GOTO es muy criticado por los dedicados a la enseñanza de la programación, que lo suelen desaconsejar."
Esto es otra demostración el caos que en muchos sentidos existe en el lenguaje PHP, que luego de tantos años, ahora, agreguen otra vez el GOTO!!! ;-) 
Saludos!