Skip to content
Browse files

Propuesta de correcciones final

  • Loading branch information...
1 parent 14a3652 commit 3d9a679b17cfcdbc1d150d3f8fe57e86fbbb3e1b @aferrandini aferrandini committed
View
11 accepted/es/PSR-0.md
@@ -6,8 +6,8 @@ Obligatorio
* Un espacio de nombres y clase completamente cualificada debe tener la siguiente estructura `\<Nombre del proveedor>\(<Paquete>\)<Nombre de clase>`. [^1]
* Cada espacio de nombres debe tener un espacio de nombres de nivel superior ("Nombre del proveedor").
* Cada espacio de nombres puede tener tantos sub-espacios de nombres como sea necesario.
-* Cada separador de espacio de nombres se convierte en un `DIRECTORY_SEPARATOR` cuando se carga desde el sistema de archivos. [^2]
-* Cada carácter `_` en el nombre de la clase se convierte en un `DIRECTORY_SEPARATOR`. El carácter `_` no tiene ningún significado especial en el espacio de nombres.
+* Cada separador de espacio de nombres se convierte en la constante `DIRECTORY_SEPARATOR` cuando se carga desde el sistema de archivos. [^2]
+* Cada carácter `_` en el nombre de la clase se convierte en la constante `DIRECTORY_SEPARATOR`. El carácter `_` no tiene ningún significado especial en el espacio de nombres.
* Al espacio de nombres y la clase completamente cualificada se le añade el sufijo `.php` cuando se cargue desde el sistema de archivos.
* Los caracteres alfabéticos en los nombres de proveedor, espacios de nombres y nombres de clase pueden contener cualquier combinación de mayúsculas y minúsculas.
@@ -25,12 +25,12 @@ Guiones bajos en Espacios de nombres y nombres de Clase
* `\espacio_de_nombres\paquete\Nombre_De_Clase` => `/directorio/del/proyecto/lib/proveedor/espacio_de_nombres/paquete/Nombre/De/Clase.php`
* `\espacio_de_nombres\nombre_de_paquete\Nombre_De_Clase` => `/directorio/del/proyecto/lib/proveedor/espacio_de_nombres/nombre_de_paquete/Nombre/De/Clase.php`
-El estándar aquí descrito debe ser el mínimo común denominador para la interoperabilidad del autoloader. Puede comprobar que sigue estas normas mediante la utilización del la implementación de ejemplo de autoloader SplClassLoader, capaz de cargar clases de PHP 5.3.
+El estándar aquí descrito, debe ser el mínimo común denominador para la interoperabilidad del autoloader. Puede comprobar que sigue estas normas mediante la utilización del la implementación de ejemplo de autoloader SplClassLoader, capaz de cargar clases de PHP 5.3.
Ejemplo de implementación
----------------------------
-A continuación se muestra una función de ejemplo para demostrar de forma sencilla cómo se cargan de automáticamente las clases con la propuesta anterior.
+A continuación, se muestra una función de ejemplo para demostrar de forma sencilla cómo se cargan de automáticamente las clases con la propuesta anterior.
```php
<?php
@@ -54,7 +54,8 @@ function autoload($nombreDeClase)
Implementación de SplClassLoader
------------------------------------
-El siguiente *gist* es un ejemplo de implementación de SplClassLoader, que puede cargar sus clases si ha seguido el estándar anteriormente expuesto. Este es el método recomendado para que la carga de clases de PHP 5.3 que siga estas normas.
+El siguiente *gist*, es un ejemplo de implementación de SplClassLoader, que puede cargar sus clases si ha seguido el estándar anteriormente expuesto. Este es el método recomendado para
+la carga de clases de PHP 5.3 que siga estas normas.
* [http://gist.github.com/221634](http://gist.github.com/221634)
View
10 accepted/es/PSR-1-codificacion-estandar-basica.md
@@ -43,9 +43,9 @@ El código PHP sólo debe utilizar codificación UTF-8 sin BOM.
### 2.3. Efectos secundarios
-Un archivo DEBERÍA declarar estructuras (clases, funciones, constantes, etc,...) y no causar efectos secundarios o DEBERÍA ejecutar partes de la lógica de negocio, pero NO DEBERÍA hacer las dos cosas.
+Un archivo DEBERÍA declarar estructuras (clases, funciones, constantes, etc,...) y no causar efectos secundarios, o DEBERÍA ejecutar partes de la lógica de negocio, pero NO DEBERÍA hacer las dos cosas.
-La frase "efectos secundarios" significa que la ejecución de la lógica de negocio no está directamente relacionado con declarar clases, funciones, constantes, etc, *simplemente la de incluir el archivo*.
+La frase "efectos secundarios" significa: que la ejecución de la lógica de negocio no está directamente relacionado con declarar clases, funciones, constantes, etc, *simplemente la de incluir el archivo*.
"Efectos secundarios" incluyen, pero no se limitan a: generar salidas, uso explícito de `requiere` o `include`, conexiones a servicios externos, modificación de configuraciones iniciales, enviar errores o excepciones, modificar variables globales o estáticas, leer o escribir un archivo, etc.
@@ -53,7 +53,7 @@ El siguiente ejemplo muestra un archivo que incluye las dos: declaraciones y efe
```php
<?php
-// efecto secundario: cambiar configuracion ini
+// efecto secundario: cambiar configuracion inicial
ini_set('error_reporting', E_ALL);
// efecto secundario: cargar ficheros
@@ -155,6 +155,6 @@ Los nombres de los métodos TIENEN QUE declararse en notación `camelCase()`. [^
Notas
------
-[^1] `StudlyCaps`, nombres en minúsculas sin espacios y con la primera letra de cada palabra en mayúsculas.
+[^1] `StudlyCaps`, es una forma de notación de texto que sigue el patrón de palabras en minúscula sin espacios y con la primera letra de cada palabra en mayúscula.
-[^2] `camelCase`, nombres en minúculas sin espacios y con la primera letra de cada palabra en mayúsculas exceptuando la primera palabra.
+[^2] `camelCase`, es una forma de notación de texto que sigue el patrón de palabras en minúscula sin espacios y con la primera letra de cada palabra en mayúsculas exceptuando la primera palabra.
View
28 accepted/es/PSR-2-guia-de-estilo-de-codificacion.md
@@ -5,7 +5,7 @@ Esta guía amplía y extiende el estándar de codificación básica [PSR-1][].
La objetivo de esta guía es la de reducir la dificultad cuando se lee código de diferentes autores. Lo realiza mediante la enumeración de una serie de reglas común y expresiones sobre cómo dar formato al código PHP.
-Las reglas de estilo de este documento se derivan de los puntos comunes de los diferentes proyectos miembros. Cuando varios autores colaboran a lo largo de múltiples proyectos, ayuda el hecho de tener una serie directrices que se para utilizarlas en todos esos proyectos. Por tanto, el beneficio de esta guía no está en las reglas en sí, sino en el hecho de compartir de esas reglas.
+Las reglas de estilo de este documento se derivan de los puntos comunes de los diferentes proyectos miembros. Cuando varios autores colaboran a lo largo de múltiples proyectos, ayuda el hecho de tener una serie directrices para utilizarlas en todos los proyectos. Por tanto, el beneficio de esta guía no está en las reglas en sí, sino en el hecho de compartir estas reglas.
Las palabras claves "TIENE QUE" ("MUST"/"SHALL"), "NO TIENE QUE" ("MUST NOT"/"SHALL NOT"), "NECESARIO" ("REQUIRED"), "DEBERÍA" ("SHOULD"), "NO DEBERÍA" ("SHOULD NOT"), "RECOMENDADO" ("RECOMMENDED"), "PUEDE" ("MAY") y "OPCIONAL" ("OPTIONAL") de este documento son una traducción de las palabras inglesas descritas en [RFC 2119][] y deben ser interpretadas de la siguiente manera:
- TIENE QUE o REQUERIDO implica que es un requisito absoluto de la especificación.
@@ -36,7 +36,7 @@ Las palabras claves "TIENE QUE" ("MUST"/"SHALL"), "NO TIENE QUE" ("MUST NOT"/"SH
- La visibilidad TIENE QUE estar declarada en todas las propiedades y métodos; `abstract` y `final` TIENEN QUE estar declaradas antes de la visibilidad; `static` TIENE QUE estar declaradas después de la visibilidad.
-- Las palabras clave de las estructuras de control TIENEN QUE tener un espacio después de ellas, las llamadas los métodos y las funciones NO TIENEN QUE tenerlo.
+- Las palabras clave de las estructuras de control TIENEN QUE tener un espacio después de ellas, las llamadas a los métodos y las funciones NO TIENEN QUE tenerlo.
- Las llaves de apertura de las estructuras de control TIENEN QUE estar en la misma línea, y las de cierre TIENEN QUE ir en la línea siguiente al cuerpo.
@@ -94,7 +94,7 @@ contengan código PHP.
NO TIENE QUE haber un límite estricto en la longitud de la línea.
-El límite flexible de la línea TIENE QUE ser de 120 caracteres; los correctores de estilo automáticos TIENEN QUE advertir de ésto, pero NO TIENE que producir errores.
+El límite flexible de la línea TIENE QUE ser de 120 caracteres; los correctores de estilo automáticos TIENEN QUE advertir de ésto, pero NO TIENEN que producir errores.
Las líneas NO DEBERÍAN ser más largas de 80 caracteres; las líneas más largas de estos 80 caracteres DEBERÍAN dividirse en múltiples líneas de no más de 80 caracteres cada una.
@@ -108,7 +108,7 @@ NO TIENE QUE haber más de una sentencia por línea.
El código TIENE QUE usar una indentación de 4 espacios, y NO TIENE QUE usar tabuladores para la indentación.
-> Nota: Utilizar sólo los espacios, y no mezclar espacios con tabuladores, ayuda a evitar problemas con diffs, parches, historiales y anotaciones. El uso de los espacios también facilita afinar la alineación entre líneas.
+> Nota: Utilizar sólo los espacios, y no mezclar espacios con tabuladores, ayuda a evitar problemas con diffs, parches, historiales y anotaciones. El uso de los espacios también facilita a ajustar la alineación entre líneas.
### 2.5. Palabras clave y `true`/`false`/`null`.
@@ -119,7 +119,7 @@ Las constantes de PHP `true`, `false` y `null` TIENEN QUE estar en minúsculas.
[Palabras clave]: http://php.net/manual/es/reserved.keywords.php
-3. Espacio de nombres y declaraciones `use`
+3. Espacio de nombre y declaraciones `use`
------------------------------------------
Cuando esté presente, TIENE QUE haber una línea en blanco después de la declación del `namespace`.
@@ -154,7 +154,7 @@ El término "clase" hace referencia a todas las clases, interfaces o traits.
Las palabras clave `extends` e `implements` TIENEN QUE declararse en la misma línea del nombre de la clase.
-La llave de apertura de la clase TIENE QUE ir en la línea siguiente; la llave de cierre TIENEN QUE ir en la línea siguiente al cuerpo de la clase.
+La llave de apertura de la clase TIENE QUE ir en la línea siguiente; la llave de cierre TIENE QUE ir en la línea siguiente al cuerpo de la clase.
```php
<?php
@@ -253,7 +253,7 @@ class NombreDeClase
}
```
-La lista de argumentos PUEDE dividirse en múltiples líneas, donde cada línea será indentada un vez. Cuando se dividan de esta forma, el primer argumento TIENE QUE estar en la línea siguiente, y TIENE QUE haber sólo un argumento por línea.
+La lista de argumentos PUEDE dividirse en múltiples líneas, donde cada línea será indentada una vez. Cuando se dividan de esta forma, el primer argumento TIENE QUE estar en la línea siguiente, y TIENE QUE haber sólo un argumento por línea.
Cuando la lista de argumentos se divide en varias líneas, el paréntesis de cierre y la llave de apertura TIENEN QUE estar juntos en su propia línea separados por un espacio.
@@ -275,9 +275,9 @@ class NombreDeClase
### 4.5. `abstract`, `final`, y `static`
-Cuando estén presentes, las declaraciones `abstract` y `final` TIENEN QUE preceder a la declaración de visibilidad.
+Cuando estén presentes las declaraciones `abstract` y `final`, TIENEN QUE preceder a la declaración de visibilidad.
-Cuando esté presente, la declaración `static` TIENE QUE ir después de la declaración de visibilidad.
+Cuando esté presente la declaración `static`, TIENE QUE ir después de la declaración de visibilidad.
```php
<?php
@@ -348,7 +348,7 @@ if ($expr1) {
}
```
-La palabra clave `elseif` DEBERÍA ser usada en lugar de `else if` de forma que todas las palabras clave de la estructura estén compuesta por palabras de un solo término.
+La palabra clave `elseif` DEBERÍA ser usada en lugar de `else if` de forma que todas las palabras clave de la estructura estén compuestas por palabras de un solo término.
### 5.2. `switch`, `case`
@@ -441,11 +441,11 @@ Las closures TIENEN QUE declararse con un espacio después de la palabra clave `
La llave de apertura TIENE QUE ir en la misma línea, y la llave de cierre TIENE QUE ir en la línea siguiente al final del cuerpo.
-NO TIENE QUE haber un espacio después del paréntesis de apertura de la lista de argumentos o la lista de variables y NO TIENE QUE haber un espacio antes del paréntesis de cierre de la lista de argumentos o la lista de variables.
+NO TIENE QUE haber un espacio después del paréntesis de apertura de la lista de argumentos o la lista de variables, y NO TIENE QUE haber un espacio antes del paréntesis de cierre de la lista de argumentos o la lista de variables.
-En la lista de argumentos y la lista variables NO TIENE QUE haber un espacio antes de cada coma y TIENE QUE haber un espacio después de cada coma.
+En la lista de argumentos y la lista variables, NO TIENE QUE haber un espacio antes de cada coma, y TIENE QUE haber un espacio después de cada coma.
-Los argumentos de las closures con valores por defecto TIENEN QUE ir al final de la lista de argumentos.
+Los argumentos de las closures con valores por defecto, TIENEN QUE ir al final de la lista de argumentos.
Una declaración de una closure tendrá el siguiente aspecto. Fíjese en el lugar donde aparecen los paréntesis, las comas, los espacios y las llaves.
@@ -462,7 +462,7 @@ $closureConArgumentosYVariables = function ($arg1, $arg2) use ($var1, $var2) {
La lista de argumetos y la lista de variables PUEDEN ser divididas en múltiples líneas, donde cada nueva línea se indentará una vez. Cuando esto suceda, el primer elemento de la lista TIENE QUE ir en una nueva línea y TIENE QUE haber sólo un argumento o variable por línea.
-Cuando la lista (de argumentos o variables) se divide en varias líneas, el paréntesis de cierre y la llave de apertura TIENEN QUE estar juntos en su propia línea separados por un espacio.
+Cuando la lista de argumentos o variables se divide en varias líneas, el paréntesis de cierre y la llave de apertura TIENEN QUE estar juntos en su propia línea separados por un espacio.
A continuación se muestran ejemplos de closures con y sin lista de argumentos y variables, así como con listas de argumentos y variables en múltiples líneas.
View
16 accepted/es/PSR-3-interfaz-de-logger.md
@@ -12,7 +12,7 @@ Las palabras claves "TIENE QUE" ("MUST"/"SHALL"), "NO TIENE QUE" ("MUST NOT"/"SH
- NO DEBERÍA implica que pueden existir razones bajo ciertas circunstancias cuando el comportamiento es aceptable o incluso útil, pero todas las implicaciones deben ser entendidas cuidadosamente y sopesadas antes de implementar algún comportamiento descrito por esta etiqueta para ignorar dicho comportamiento.
- PUEDE u OPCIONAL implica que el elemento es puramente opcional. Cualquier proveedor puede elegir incluir dicho elemento porque crea que conlleva mejoras en su producto mientras otro puede elegir obviarlas. Una implementación que no incluya un opción particular TIENE QUE estar preparada para operar con otra implementación que incluya dicha opción, aunque implique limitar la funcionalidad. De la misma manera, una implementación que incluya una opción particular TIENE QUE estar preparada para otra que no la incluya (excepto, por supuesto, para la característica que la opción provea).
-La palabra `implementación` en este documento tiene que ser interpretada como un objeto que implementa el `LoggerInterface`
+La palabra `implementación` en este documento tiene que ser interpretada como un objeto que implementa la interfaz `LoggerInterface`
en una librería de logs relacionada o un framework. Los usuarios de los logs son referidos como `usuario`.
[RFC 2119]: http://tools.ietf.org/html/rfc2119
@@ -22,9 +22,9 @@ en una librería de logs relacionada o un framework. Los usuarios de los logs so
### 1.1 Fundamental
-- El `LoggerInterface` expone ocho métodos para la escritura de logs en los ocho niveles niveles definidos en el [RFC 5424][] (debug, info, notice, warning, error, critical, alert, emergency). [^1]
+- El `LoggerInterface` expone ocho métodos para la escritura de logs en los ocho niveles definidos en el [RFC 5424][] (debug, info, notice, warning, error, critical, alert, emergency). [^1]
-- Un noveno método, `log`, acepta un nivel de log como primer parámetro. La llamada a este método con alguna de las constantes de nivel de log TIENE QUE tener el mismo resultado que la llamada al método específico de dicho nivel. Las llamadas a este método con un nivel no definido por esta norma TIENEN QUE lanzar una `Psr\Log\InvalidArgumentException` si la implementación no conoce el nivel. Los usuarios NO DEBERÍAN usar niveles específicos sin conocer de manera precisa que la implementación en uso lo soporta.
+- Un noveno método, `log`, acepta un nivel de log como primer parámetro. La llamada a este método con alguna de las constantes de nivel de log, TIENE QUE tener el mismo resultado que la llamada al método específico de dicho nivel. Las llamadas a este método con un nivel no definido por esta norma TIENEN QUE lanzar una excepción de tipo `Psr\Log\InvalidArgumentException` si la implementación no conoce el nivel. Los usuarios NO DEBERÍAN usar niveles específicos sin conocer de manera precisa que la implementación en uso lo soporta.
[RFC 5424]: http://tools.ietf.org/html/rfc5424
@@ -42,7 +42,7 @@ en una librería de logs relacionada o un framework. Los usuarios de los logs so
Los nombres de los marcadores DEBERÍAN estar compuestos sólo por los caracteres `A-Z`, `a-z`, `0-9`, guión bajo `_`, y punto `.`. El uso de otros caracteres está reservado para futuras modificaciones en los nombres de los marcadores en la norma.
Las implementaciones PUEDEN usar marcadores para implementar varias estrategias de escape y traducción para mostrar en los logs.
- Los usuarios NO DEBERÍAN pre-escapar valores de marcadores dado que no podrían conocer en qué contexto serían mostrados los datos.
+ Los usuarios NO DEBERÍAN pre-escapar valores de marcadores, dado que no podrían conocer en qué contexto serían mostrados los datos.
El siguiente código es un ejemplo de implementación de interpolación de marcadores únicamente a modo de referencia:
@@ -75,13 +75,13 @@ en una librería de logs relacionada o un framework. Los usuarios de los logs so
### 1.3 Contexto
-- Cada método acepta un array de datos contextual. Esto se usa para contener cualquier información extraña que no encaje bien en una cadena de texto. El array puede contener cualquier cosa. Las implementaciones TIENEN QUE asegurar que el tratamiento de los datos de contexto se hace con la mayor claridad posible. Un valor dado en el contexto NO TIENE QUE lanzar ninguna excepción ni error, warning o notice de PHP.
+- Cada método acepta un array de datos contextual. Esto se usa para contener cualquier información extraña que no encaje bien en una cadena de texto. El array puede contener cualquier cosa. Las implementaciones TIENEN QUE asegurar que el tratamiento de los datos de contexto se hace con la mayor claridad posible. Un valor dado en el contexto NO TIENE QUE lanzar ninguna excepción, error, warning o notice de PHP.
- Si un objecto `Exception` es pasado en el array contextual, TIENE QUE ir en la clave `'exception'`. Mostrar excepciones en el log es un patrón común y permite a las implementaciones extraer la traza de la pila del error cuando la aplicación de log lo soporte. Las implementaciones TIENEN QUE verificar que la clave `'exception'` contiene una `Exception` antes de usarla como tal, dado que PUEDE contener cualquier cosa.
### 1.4 Clases de ayuda e Interfaces
-- La clase `Psr\Log\AbstractLogger` permite implementar la `LoggerInterface` de manera sencilla extendiéndola e implementado el método genérico `log`. Los otros ocho métodos realizan una llamada con el mensaje y el array contextual a este método.
+- La clase `Psr\Log\AbstractLogger` permite implementar la interfaz `LoggerInterface` de manera sencilla extendiéndola e implementado el método genérico `log`. Los otros ocho métodos realizan una llamada con el mensaje y el array contextual a este método.
- De manera similar, usando `Psr\Log\LoggerTrait` sólo necesita implementar el método genérico `log`. Tenga en cuenta que los traits no permiten implementar interfaces, en ese caso tendrá que hacer un `implement LoggerInterface`.
@@ -96,8 +96,8 @@ en una librería de logs relacionada o un framework. Los usuarios de los logs so
2. Paquete
----------
-La interfaces y clases descritas, las clases de excepción relevantes y una serie de test para comprobar el funcionamiento de su
-implementación se proveen como parte de paquete [psr/log](https://packagist.org/packages/psr/log)
+Las interfaces y clases descritas, las clases de excepción relevantes y una serie de test para comprobar el funcionamiento de su
+implementación se proveen como parte del paquete [psr/log](https://packagist.org/packages/psr/log)
3. `Psr\Log\LoggerInterface`
View
4 bylaws/es/001-protocolo-de-votacion.md
@@ -9,7 +9,7 @@ Protocolo de votación
4. Los votos pueden ser +1 ("A favor"), -1 ("En contra") o 0 ("Abstención").
-5. Un tercio o más de los miembros con derecho a voto deben votar dentro del límite de tiempo establecido para que la votación sea válida. Esto es equivalente a establecer un *quorum*. Por ejemplo:
+5. Un tercio o más de los miembros con derecho a voto deben votar dentro del límite de tiempo establecido para que la votación sea válida. Esto es equivalente a establecer un *quórum*. Por ejemplo:
- Si hay 20, 21 o 22 miembros, entonces 7 o más miembros tienen que emitir el voto antes del tiempo límite para que la votación sea válida.
@@ -31,4 +31,4 @@ Protocolo de votación
* * *
-Nota: Los votos de "Abstención" se cuentan únicamente para el *quorum* y no contarán para calcular la mayoría.
+Nota: Los votos de "Abstención" se cuentan únicamente para el *quórum* y no contarán para calcular la mayoría.
View
2 bylaws/es/002-convenciones-de-nombres-psr.md
@@ -1,7 +1,7 @@
Convención de nombres para el código liberado bajo PHP-FIG
===============================================
-1. Los interfaces TIENEN QUE tener el sufijo `Interface`: p.ej. `Psr\Foo\BarInterface`.
+1. Las interfaces TIENEN QUE tener el sufijo `Interface`: p.ej. `Psr\Foo\BarInterface`.
2. Las clases abstractas TIENEN QUE llevar el prefijo `Abstract`: p.ej. `Psr\Foo\AbstractBar`.
3. Los traits TIENEN QUE tener el sufijo `Trait`: p.ej. `Psr\Foo\BarTrait`.
4. PSR-0, 1 y 2 TIENEN QUE cumplirse.

0 comments on commit 3d9a679

Please sign in to comment.
Something went wrong with that request. Please try again.