Facebook Google+


Wiki Glosario básico de programación web en PHP
#1
[Imagen: 1482980239_V86BKq3Wpe2kJjn.gif]


A

Abstracción: cuando se habla de abstraer es separar el problema en componentes más pequeños que permitan resolverlo de forma mucho más simple: "divide y reinaras"

Abstracto/a: se suele hablar de "clases abstractas" y "métodos abstractos" en programación orientada a objetos (POO), siendo aquellas clases no-instanciables (no puedes hacerse un new de ellas) y cualquier clase que la herede debe implementar obligadamente aquellos métodos que estén marcados como abstractos en dicha clase.

Código PHP:
<?php

// No se puede instanciar!
abstract class     Abstracta
{    
    
// Se fuerza la implementacion de estos metodos en clases derivadas
    
public abstract function foo();
    protected abstract function 
bar();

    
// Método no-abstracto
    
public function hacerAlgo() {
        
// ...
    
}
}

class 
Concreta extends Abstracta
{
    public function 
foo(){
        
// ...
    
}    
    
    public function 
bar(){
        
// ...
    
}    
    


El modificador 'abstract' sobre los métodos puede combinarse con modifiadores de visibilidad (public, private y protected).

Arreglo: del inglés "array" es un contenedor básico, en PHP los arrays son asociativos lo que permite que la clave de indexación pueda ser alfanumérica (además de numérica). Ejemplo:

Código PHP:
$saludos = ['buenos dias''buenas tardes''buenas noches']; 

O con la vieja sintaxis de array() así:

Código PHP:
$saludos = array('buenos dias''buenas tardes''buenas noches'); 

Una arreglo se puede "iterar" o recorrer de muchas formas, una de ellas con foreach()

Código PHP:
<?php

$saludos 
= array('buenos dias''buenas tardes''buenas noches');

foreach (
$saludos as $saludo)
    echo 
$saludo, ";
    
# salida: buenos dias, buenas tardes, buenas noches, 

B

Base64: es un sistema de numeración posicional que usa base de numeración 64, tiene aplicaciones por ejemplo en el protocolo SMTP

Bucle: también llamado "loop", es un mecanismo de repetición de un bloque de instrucciones y se realiza con instrucciones de control de flujo como for() foreach() o while()

Ejemplo de for-loop:

Código PHP:
<?php

$saludos 
= array('buenos dias''buenas tardes''buenas noches');

for (
$i=0;$i<count($saludos);$i++)
    echo 
"{$saludos[$i]}, " 

C

Cache: es un mecanismo por el cual la información en lugar de ser re-generada cada vez que se la necesita, o accedida de un "medio" de almacenaje lento o distante, se puede entregar mucho más rápido.

Case: instrucción que forma parte de switch-case, un ejemplo:

Código PHP:
<?php

$i
=10;

switch (
gettype($i))
{    
        case 
"string":                    
            print 
"El tipo es string";
            break;            
            
        case 
"integer":            
            print 
"El tipo es entero";
            break;
            
            
        case 
"object":            
            print 
"El tipo es object";
            break;        
            
        default:
            print 
"Tipo desconocido";            
}    
    
# Salida: El tipo es entero 

Control de flujo: se refiere poder controlar hacia donde irá el programa y en PHP se realiza con instrucciones como if(), switch-case y las de loops (ver bucles)



D

Date: en PHP la función date() sirve para formato a la fecha/hora local

Depredicar: dejar sin efecto por obsoleto/a

E

Else significa "sino" y es parte de un bloque if-else: "SI (tal cosa), hacer tal otra SINO hacer otra cosa". Ejemplo:

Código PHP:
if (md5($password)==md5($password_db))
    echo 
"Bienvenido";
else
    echo 
"Acceso no autorizado!"

Sino sabes que es md5() es una función que se utiliza para encriptar (proteger) por ejemplo contraseñas y se utiliza como en el ejemplo.

En el ejemplo al usuario se le hubiera pedido una contraseña de acceso en un un forumulario (para simplificar digamos la tenemos en $password pero vendría como $_POST['password'] en un caso real) y entonces se trae de la base de datos una contraseña para ese usuario y se hace la comparación.

Encriptación: es un mecanismo para proteger datos y en PHP existen varias funciones para esto como md5(), password_hash(), crypt(), etc.

F

For: es una instrucción de control de flujo que permite repetir un bloque de instrucciones una cantidad de veces dependiendo de las condiciones especificadas.

Un for-loop o bluce for() tiene 3 partes :

- La condición de inicio, Ej: $i=0
- La condición de salida. Ej: $i<100
- Una expresión que se ejecuta después de cada ciclado. Ej: $i++

Código PHP:
<?php

for ($i=0;;$i++)
    echo 
"{$i} ";

# salida: 1 2 3 4 5 .... INF 

En el ejemplo no se ha especificado nada como condición de salida así que será lo que se conoce como un "bucle infinito".

G

H

Herencia. En la programación orientada a objetos, la herencia es uno de los mecanismos básicos y define la relación entre una clase general y otra clase más específica que "hereda" atributos y/o métodos de la clase general (su ancestro).

I

If (si) es un condicional: "SI (tal cosa), hacer tal otra" y puede estar asociado a else.

Código PHP:
<?php

if (isset($alguna_variable))
    echo 
$alguna_variable

En el ejemplo anterior nos cuidamos de que la variable tenga un valor asignado antes de intentar accederla. La función isset chequea "si esta seteada" o sea si la variable fue inicializada y por tanto la podemos utilizar.

Indice: el índice de un arreglo (array) es un valor que permite accederlo y recuperar un dato. Ejemplo:

Código PHP:
$colores = [0=>'blanco'1=>'azul',  2=>'rojo']; 

En el arreglo $colores si quiero recuperar el color azul debo acceder por el valor de su índice que es 1.

Código PHP:
$colores = [0=>'blanco'1=>'azul',  2=>'rojo']; 
echo 
$colores[1];

# salida: azul 


J

K

Key en español "llave" es un índice de arreglos asociativos. Ejemplo:

Código PHP:
$persona = ['nombre'=>'Juan''apellido'=>'Perez''edad'=23]; 

L

Laravel es uno de los frameworks de PHP más populares y mejor conceptuados.

M

Módulo: suele llamarse así a un "componente" de un programa, una pequeña parte con funcionalidad.

Modularización: es la estrategia de dividir un programa en "módulos" para poder abordar un problema de una forma mucho más sencilla. Se relaciona con el concepto de "abstracción".

MySQL: motor de base de datos para base de datos relacionales originalmente de Oracle, muy utilizado en el ámbito de PHP.

MariaDB: otra implementación de MySQL.

MongoDB: es un motor de base de datos (DDBM) no-relacional que permite trabajar con grandes volúmenes de datos. Se caracteriza por permitir consultas muy rápidas.

N

O

Ofuscación así como los datos pueden encriptarse, el código se puede ofuscar y significa oscurecer o complicar la comprensión en este caso del código. La ofuscación no es tan efectiva como la encriptación de datos.

Operador los operadores son símbolos que indican las operaciones a realizarse, por ejemplo en 3*6, '*' es el operador multiplicación

P

Página web: una página es un componente del sitio, cada página tiene su propia URL

Paginar se refiere a crear navegación por páginas de resultados ya sea con atrás y siguiente, primero y último o bien con números (página 1, página 2,..).

Q

Query: en español "consulta", es un término utilizado en el contexto de base de datos relacionales, una query puede ser por ejemplo:

Código:
"SELECT * FROM productos

R

Redirección: es cambiar automáticamente (sin intervención del usuario) una url por otra (dirigirse a otra página del sitio). Hay varios tipos de redirecciones y pueden lograrse de muchas formas: via HTML, Javascript o con PHP.

En PHP una redirección es así:

Código PHP:
<?php
header 
("Location: http://www.hardforo.com"); 

S

SQL lenguaje utilizado para escribir consultas (queries) contra una base de datos. Creado por IBM, es un lenguaje declarativo.

T

U

Unit testing. Una prueba unitaria (unit testing) es un framework para realizar distintas pruebas sobre funciones y asegurar así que cumplen los requisitos funcionales (trabajan correctamente).

Lo interesante es que las pruebas se pueden correr periódicamente y así asegurarnos nuestras librerias no se han corrompido por alguna torpeza.

Además si las pruebas unitarias se realizan antes de crear nuestras clases entonces podemos hablar de "desarrollo guiado por pruebas" o TDD. Una metodología de "desarrollo ágil".

En PHP las prueabs unitarias se realizan con PHPUnit.

V

Variable. Las variables representan dados que pueden cambiar en tiempo de ejecución o sea durante la vida del programa. Los identificadores de las variables en PHP siempre comienzan con el signo pesos ($), por ejemplo: $contador, $instancia, $nombres etc

Hay distintos "tipos" de variables: numéricas (integer, float), booleanas (bool), de cadena (string), array, objeto (object), nula (null) y recurso (resource), lo bueno es que son automáticas.

Código PHP:
<?php
  
$nombre 
"Juan";  // tipo string
$edad 32// tipo integer
$es_hombre true// tipo bool
$hijos  null;  // tipo nulo 

Variables variables. Una variable-variable en PHP es aquella variable que contiene el nombre de otra variable y la referencia de esa forma, se simbolizan con el doble signo peso ($$) como prefijo del indentificador de la variable. Ejemplo:

Código PHP:
<?php

$forum 
"HardForo.com";
$site  "forum";

echo 
$site// forum
echo $$site// HardForo.com 

W

Warning en castellano "advertencia" es un error que no detiene al intérprete pero indica que algo no es del todo correcto o es ambiguo. En PHP se suele generar warnings cuando se utilizan funciones que están por se depredicadas.

While. La sentencia while() permite crear un bloque que será repetido mientras se cumpla la condición del while. Ejemplo:

Código PHP:
<?php

$i 
5;

while (
$i>0)
{
    echo 
$i.' ';    
    
$i--;
}

# salida: 5 4 3 2 1 

X

Xml es un formato de documentos muy parecido a HTML formado por etiquetas.

Y

Yii nombre de un framework de PHP

Z

Zend es el nombre de la empresa que desarrolla y mantiene PHP y también del framework que produce la misma empresa.
 
Reply
#2
master veo haz avanzado bastante con ese glosario, excelente!!!!!!
 
Reply
#3
¡Perfecto!  Cool

Lo dejo pendiente para pegarle un repaso y de camino ver si puedo añadir algo más.
[Imagen: 1489128820_fbsnVWR5Pg5WrzX.png]
 
Reply
  


Salto de foro:


Browsing: 1 invitado(s)