filosofia_unix

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
Última revisiónAmbos lados, revisión siguiente
filosofia_unix [2021/12/12 02:39] peronfilosofia_unix [2021/12/12 04:46] peron
Línea 1: Línea 1:
 ====== Filosofía Unix ====== ====== Filosofía Unix ======
  
-Es una filosofía de programación orientada a buscar un entorno de trabajo interdependiente, en el cual se elaboran pequeñas aplicaciones capaces de operar en conjunto con otras.+Es una filosofía de programación ideada originalmente por los creadores del sistema operativo multiusuario [[Unix]], y orientada a buscar un entorno de trabajo cooperativo, en el cual se elaboran pequeñas aplicaciones capaces de operar en conjunto con otras.
  
 Fomenta el **concepto estético minimalista** según lo cual "lo simple es hermoso", e intenta transportarlo al arte de la programación y al diseño de sistemas de cómputo. Fomenta el **concepto estético minimalista** según lo cual "lo simple es hermoso", e intenta transportarlo al arte de la programación y al diseño de sistemas de cómputo.
Línea 17: Línea 17:
 Mas adelante se agregó el concepto [[cliente]]-[[servidor]]. Mas adelante se agregó el concepto [[cliente]]-[[servidor]].
  
-==== Reglas de Diseño de programación UNIX ==== +Ver: [[Reglas de Diseño UNIX]]
- +
-Consisten en algunas reglas técnicas concernientes a la elaboración de programas en sistemas similares a Unix. +
- +
-  - **Regla de Modularidad**: Escribir partes simples conectadas por interfaces limpias. +
-  - **Regla de Claridad**: Claridad es mejor que inteligencia. +
-  - **Regla de Composición**: Diseña programas que se conecten con otros programas. +
-  - **Regla de Separación**: separa políticas de mecanismos, interfases de motores. +
-  - **Reglas de Simplicidad**: diseña buscando simplicidad, agrega complejidad sólo cuando debas hacerlo. +
-  - **Regla de parsimonia**: Escribe programas grandes sólo cuando es claro por demostración que nada mas podrá resolverlo. +
-  - **Regla de Transparencia**: diseña para visibilidad, para hacer el depurado y la inspección muy fácil. +
-  - **regla de Robustez**. Robustez es la unión de transparencia y simplicidad. +
-  - **Regla de Representación**: Divide el conocimiento en datos, de modo que la lógica del programa pueda ser estúpida y robusta. +
-  - **Regla de la menor sorpresa**: Al diseñar interfases, siempre haz lo menos sorprendente. +
-  - **Regla de Silencio**: Cuando el programa no tiene nada que decir, que no diga nada. +
-  - **Regla de Reparación**. Cuando falle, que falle ruidosamente y tan rápido como sea posible. +
-  - **Regla de Economía**: Tiempo de programación es cado, ahorrala en preferencia al tiempo de procesamiento. +
-  - **Regla de generación**: Evita hacking a mano; escribe programas que escriban programas. +
-  - **Regla de optimización**: Prototipea antes de pulir. Haz que funcine antes de optimizarlo. +
-  - **Regla de Diversidad**: Desconfía de "la única manera verdadera"+
-  - **Regla de extensibilidad**: Diseña para el futuro, pero será más pronto que lo pensado. +
- +
-> "Cuando estés en duda, emplea la fuerza bruta". Ken Thomson.+
  • filosofia_unix.txt
  • Última modificación: 2022/03/28 16:29
  • por peron