El Principio Abierto/Cerrado
El Principio Abierto Cerrado es responsable de la ‘O’ de los principios S.O.L.I.D. Originalmente acuñado por Bertrand Meyer, establece que:
Las entidades de software (clases, módulos, funciones, …) deben estar abiertas para extensión pero cerradas para modificación
Parece un principio increíblemente simple, pero está detrás de la mayoría d...
4 hábitos poco saludables de los desarrolladores y qué hacer al respecto
Todas las profesiones tienen riesgos y peligros ocupacionales, y el desarrollo de software no es la excepción. Aunque es cierto que rara vez tenemos que lidiar con tiburones devoradores de hombres o explosiones, ignorar algunos de los desafíos de nuestra profesión puede causarnos muchos problemas.
La buena noticia es que la mayoría de nuestros ...
Módulos de Ruby en profundidad
Los módulos son elementos increíblemente flexibles y poderosos que te ayudan a organizar tu código de una manera más… modular. Te permiten empaquetar funcionalidad relacionada en una unidad cohesiva que puedes usar para extender el comportamiento de objetos y clases.
Usando módulos para agrupar comportamiento relacionado
Ruby te da dos opciones...
Servicios RESTful: qué son y qué no son
REST es uno de los conceptos más importantes en los círculos de desarrollo centrados en la web de hoy. Probablemente hayas escuchado sobre él incluso si tu enfoque principal no es el desarrollo web. A pesar de su popularidad, hay mucha confusión sobre lo que realmente es. Echemos un vistazo a algunos conceptos para entender mejor qué significa s...
Cosas que me hubiese gustado saber cuando empecé a programar, Parte 3
Sí, más Cosas que me hubiese gustado saber cuando empecé a programar, tercera edición.
Puedes encontrar el primer artículo de la serie aquí.
Y el artículo anterior aquí
Cuidado con la trampa de la arrogancia
La arrogancia es uno de los peores rasgos que puede desarrollar un profesional.
No se trata solo de cómo afecta nuestras relaciones co...
El Principio de Responsabilidad Única
El Principio de Responsabilidad Única es probablemente el más confuso de todos los 5 principios S.O.L.I.D. Me tomó bastante tiempo entender por qué es importante y dónde aplicarlo. La redacción ha cambiado a través de los años, pero en la mayoría de lugares encontrarás una variante de la siguiente idea:
Un módulo debe tener una, y solo una r...
Fundamentos de Programación Defensiva
Cuando tu programa comience a ejecutarse en producción, las condiciones y casos que creías imposibles sucederán, punto. En realidad, es imposible asegurar que tu código tendrá condiciones de ejecución óptimas todo el tiempo. Como desarrollador, te gustaría asegurar que tus proyectos puedan hacer frente a las imperfecciones del mundo real. Por es...
Escribiendo buenos nombres de variables
Solo hay dos cosas difíciles en Ciencias de la Computación: invalidación de caché y nombrar cosas
_Phil Karlton
A pesar de ser una de las formas más fáciles de mejorar la calidad del código, escribir buenos nombres de variables es quizás la habilidad más pasada por alto en la caja de herramientas de un desarrollador. Afilar tus habilidades ...
Cosas que me hubiese gustado saber cuando empecé a programar, Parte 2
Echemos un vistazo a algunas otras Cosas que me hubiese gustado saber cuando comencé mi carrera.
Puedes encontrar el primer artículo de la serie aquí.
Escribe tus propios proyectos personales
¿Sabes cuál es una de las mejores formas de pulir tus habilidades de escritura de software?
Sentarse y escribir tus propios proyectos de software. Impa...
Duck typing y la importancia de buenas interfaces públicas
Si camina como un pato y grazna como un pato, entonces debe ser un pato
Vimos en un artículo anterior que es mucho mejor depender de abstracciones que de clases concretas. Las entidades concretas son más propensas a cambiar que las abstracciones, y esos cambios se propagarán por nuestro código fuente afectando todas las clases que dependen de ...
Cosas que me hubiese gustado saber cuando empecé a programar, Parte 1
Aprender a programar es un viaje largo, y puede tomar años de esfuerzo constante volverse bueno en ello.
Cuando empecé a escribir mis primeras líneas de código, me sentí súper emocionado de poder hacer que una máquina hiciera cosas. Claro, eran cosas muy simples, pero sentí que podía lograr cualquier cosa con esta nueva habilidad. Después de un...
Inyección de Dependencias y el famoso DIP
La inyección de dependencias es una de esas técnicas que tienen mala reputación por ser demasiado complicadas y difíciles de entender. En realidad, DI (ya adivinaste, dependency injection) no necesita ningún framework complejo o librería sofisticada para ser útil, puedes comenzar a usarla muy fácilmente.
Empecemos con una clase de ejemplo Robot...
Bienvenido a Brains To Bytes
¡Hola!, y bienvenido a Brains To Bytes.
El desarrollo de software es un campo increíblemente emocionante lleno de oportunidades e ideas geniales. También es diferente a muchos otros oficios en un sentido importante: el producto final, en lugar de ser algo tangible, es pensamiento materializado ejecutándose dentro de un chip.
Esta noción de la ...
103 artículos, 6 páginas.