Suscribete en nuestro Newsletter

Regístrate en nuestro Newsletter para estar al tanto de las noticias, talleres y podcast que tendremos próximamente
Suscríbete aqui

Coders Venezuela Podcast

Foto del autor Angel Cruz

Hablemos un poco sobre Composer

Composer

Composer es un gestor de dependencias para PHP, este proyecto inspirado en npm y Bundler y sirve para administrar librerías de terceros o propias en nuestros proyectos de PHP

Composer es capaz de:

  • Instalar las librerías que necesitamos en nuestro proyecto con las versiones más actuales posibles.
  • Si las librerías dependen de otras también es capaz de resolver esas dependencias y descargar todo lo que sea necesario para iniciar el trabajo.

Instalación de Composer

Usando Curl

                curl -sS https://getcomposer.org/installer | php

Sin curl

                php -r "readfile('https://getcomposer.org/installer');" | php

Si usas MAC, composer se encuentra en los repos de brew

                brew search composer
                composer homebrew/php/composer

Solo nos queda convertir composer en un ejecutable global para poder usarlo en cualquier proyecto sin necesidad de bajarlo nuevamente:

                # mv composer.phar /usr/local/bin/composer

Podemos ejecutar el siguiente comando:

                composer about

Y vamos a obtener algo como esto:

                Composer - Package Management for PHP
                Composer is a dependency manager tracking local dependencies of your projects and libraries.
                See https://getcomposer.org/ for more information.

Usando composer

El uso de esta herramienta es muy sencillo solo debemos tener encuenta que esta basado en Bundler y npm vamos a necesitar un archivo composer.json el cual debe tener más o menos esta forma:

                {
                    "require": {
                        "slim/slim": "2.6.2"
                    }
                }

Identifiquemos sus partes:

  • Require: esta palabra simplemente le dice a Composer que necesitamos la libreria que le indicamos dentro de los corchetes

  •                 {}
  • Nombre del paquete o libreria: está separado en dos partes vendedor/proyecto, normalmente estos dos son iguales como en este caso o pueden ser distintos por ejemplo.

  •                 vrana/notorm
  • Versiones del paquete: después de los dos puntos indicamos la versión que queremos de este paquete.

  •                 :

Instalando dependencias:

En mi caso, estaba haciendo unas pruebas con slim framework y notORM y este es mi archivo composer.json

                {
                    "require": {
                        "slim/slim": "2.6.2",
                        "vrana/notorm": "dev-master"
                    }
                }

Para instalar las dependencias escribo en la terminal:

                composer install

Y en la terminal voy a tener una salida parecida a esta:

                Loading composer repositories with package information
                Installing dependencies (including require-dev)
                  - Installing slim/slim (2.6.2)
                    Loading from cache
                
                  - Installing vrana/notorm (dev-master e49d5d2)
                    Cloning e49d5d2f1bfe440dc82b61f46172635dfcb6f6dd
                
                Writing lock file
                Generating autoload files

Ahora, vamos a nuestro directorio de trabajo y podemos ver que tenemos una carpeta llamada vendor que tiene todo lo que le solicitamos a composer.

Actualizar las librerías

Para actualizar las librerías solo debemos escribir:

                composer update

El archivo autoload.php

Composer, a parte de ser nuestro gestor de paquetes también nos prepara un archivo llamado autoload.php

El contenido de ese archivo es más o menos como el siguiente:

                <?php
                
                // autoload.php @generated by Composer
                
                require_once __DIR__ . '/composer' . '/autoload_real.php';
                
                return ComposerAutoloaderInit3482961feefada4e8b694f17687b4ce3::getLoader();

Composer tiene la particularidad de auto cargar todas las librerias que vamos instalando en nuestro proyecto y para usarlas solo debemos incluir la siguiente linea:

                require 'vendor/autoload.php';

La ayuda de composer

Al ejecutar composer --h vamos a obtener algo como esto:

                   ______
                  / ____/___  ____ ___  ____  ____  ________  _____
                 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
                / /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
                \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                                    /_/
                Composer version 1.0-dev (0ec86be5e988261e8b625ac696d566afa2c35faf) 2015-05-31 11:54:08
                
                Usage:
                 command [options] [arguments]
                
                Options:
                 --help (-h)           Display this help message
                 --quiet (-q)          Do not output any message
                 --verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
                 --version (-V)        Display this application version
                 --ansi                Force ANSI output
                 --no-ansi             Disable ANSI output
                 --no-interaction (-n) Do not ask any interactive question
                 --profile             Display timing and memory usage information
                 --working-dir (-d)    If specified, use the given directory as working directory.
                
                Available commands:
                 about            Short information about Composer
                 archive          Create an archive of this composer package
                 browse           Opens the package's repository URL or homepage in your browser.
                 clear-cache      Clears composer's internal package cache.
                 clearcache       Clears composer's internal package cache.
                 config           Set config options
                 create-project   Create new project from a package into given directory.
                 depends          Shows which packages depend on the given package
                 diagnose         Diagnoses the system to identify common errors.
                 dump-autoload    Dumps the autoloader
                 dumpautoload     Dumps the autoloader
                 global           Allows running commands in the global composer dir ($COMPOSER_HOME).
                 help             Displays help for a command
                 home             Opens the package's repository URL or homepage in your browser.
                 info             Show information about packages
                 init             Creates a basic composer.json file in current directory.
                 install          Installs the project dependencies from the composer.lock file if present, or falls back on the composer.json.
                 licenses         Show information about licenses of dependencies
                 list             Lists commands
                 remove           Removes a package from the require or require-dev
                 require          Adds required packages to your composer.json and installs them
                 run-script       Run the scripts defined in composer.json.
                 search           Search for packages
                 self-update      Updates composer.phar to the latest version.
                 selfupdate       Updates composer.phar to the latest version.
                 show             Show information about packages
                 status           Show a list of locally modified packages
                 update           Updates your dependencies to the latest version according to composer.json, and updates the composer.lock file.
                 validate         Validates a composer.json

Fuente de la información

Tags: php tutorial

Foto del autor Italo Morales

Bootstrap v3 (Components) Buttons, Button Groups

Recientemente hemos comenzado a utilizar el Framework para CSS llamado Bootstrap para diseñar páginas y aplicaciones Web.

Un Framework es un conjunto de código, herramientas, librerías, componentes, buenas prácticas y una serie de ventajas adicionales, con la intención de encapsular las diferentes actividades, tareas repetitivas en módulos o bloques fácilmente reutilizables, según mi punto de vista Bootstrap cumple con ello, es por esa razón que enseño a utilizarlo.

¿Qué es Bootstrap? un conjunto de hojas de estilos (documentos CSS), y buenas prácticas que te permitirán avanzar en el diseño de una manera bastante rápida y funcional, de esta manera podrás enfocarte en los elementos únicos de de tu producto final, y de esa manera darle tu toque personal, identidad corporativa y aportar valor.

Seguir leyendo...

Foto del autor Italo Morales

Bootstrap v3, Plantilla, Glyphicons, Buttons, Dropdowns

Anteriormente dije que con Bootstrap podemos crear interfaces limpias, intuitivas y simples, de fácil manejo para el usuario (excelente ventaja), tiene un apartado de componentes predefinidos como botones, formularios, dropdown o menú contextual, fuente de iconos, vídeos responsive, paneles, menús y barras de menús, mensajes de alerta, y créeme, muchos más, podrías aprender a usarlos aquí

Seguir leyendo...

Foto del autor Italo Morales

El Framework Bootstrap v3 | Qué es y un breve Workshop

Que amigos, como están, quiero hablarles de Bootstrap, comencemos:

Boostrap es un Framework CSS, tiene como objetivo crear estructuras, plantillas, interfaces para páginas y sistemas Web, tiene una función particular (y que ahora es muy común) que la hizo popular y es el responsive desing, esto quiere decir que nos facilita el trabajo para crear un único sistema pero que se visualice perfectamente en celulares, tablets, portátiles y pantallas HD, es decir, se trabaja una vez y se tiene cuatro (4) resultados, por cierto, existen muchos Framework y como siempre digo no quiero hacerles creer que este es el mejor, solo les digo que es excelente y ofrece muchas ventajas en cuanto a tiempo, rendimiento y calidad visual.

Después estudiamos otros Framework

Seguir leyendo...

Foto del autor Italo Morales

Pseudo elementos de CSS3

A mi me parece importante saber a fondo CSS, sin dejar de usar Framework para la proporción de estilos. Los Pseudo-Elementos nos permiten crear diseños web profesionales, con calidad internacional.

Saber a fondo CSS te permite extender o mejorar un Framework CSS...

Debes saber algo de CSS para comprender este Posts, si no conoces nada del tema, te invito a ver esta serie de vídeos (ver vídeos) y luego vuelve aquí, mucho éxito en tu formación.

Seguir leyendo...

Foto del autor Italo Morales

Por qué deberías usar un Framework PHP

Yo estaba en contra de esta idea, gracias a dios reflexione.

Estar en contra de los Framework es al mismo tiempo estar en contra de jQuery, Bootstrap, Angular y entre otras tecnologías, que usamos habitualmente pero cuando vamos a PHP y nos dicen Framework arrugamos la cara.

Te diré por qué es correcto y te diré cual debes aprender.

Seguir leyendo...