el arte de ser vago: clean code

Post on 16-Feb-2017

564 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

El arte de ser vagoCLEAN CODECamilo GalianaMADRID · NOV 27-28 · 2015

MADRID · NOV 27-28 · 2015

Qué es ser vago?

MADRID · NOV 27-28 · 2015

Qué es ser vago?

MADRID · NOV 27-28 · 2015

“I will always choose a lazy person to do a difficult job… because he will find an easy way to do it”- Bill Gates

MADRID · NOV 27-28 · 2015

Three great virtues of a programmer1. Laziness2. Impatience3. Hubris

- Larry Wall

MADRID · NOV 27-28 · 2015

Code for humans “Any fool can write code that a computer can

understand. Good programmers write code that humans can understand”

- Martin Fowler

MADRID · NOV 27-28 · 2015

Code for humans Compilers Developers

MADRID · NOV 27-28 · 2015

MADRID · NOV 27-28 · 2015

Keep It Simple, Stupid!

MADRID · NOV 27-28 · 2015

Keep It Simple, Stupid!

MADRID · NOV 27-28 · 2015

Keep It Simple, Stupid!

MADRID · NOV 27-28 · 2015

YAGNI - You aren't gonna need it“Always implement things when you actually need them, never when you just foresee that you need them.“

- Ron Jeffries

MADRID · NOV 27-28 · 2015

DRY – Don’t Repeat Yourselft

MADRID · NOV 27-28 · 2015

DRY – Don’t Repeat Yourselft “Rule of three” Software libraries Design patterns

MADRID · NOV 27-28 · 2015

SOLID

MADRID · NOV 27-28 · 2015

SOLID

MADRID · NOV 27-28 · 2015

SOLID

MADRID · NOV 27-28 · 2015

SOLIDS Single responsibility principle

A class should have only a single resposability (only one potential change in the software’s specification should be able to affect the specification of the class)

O Open/closed principle“Software entities should be open for extension, but closed for modification”

L Liskov substitution principle“objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program”

I Interface segregation principle“many client-specific interfaces are better that one general-purpose interface”

D Dependency inversion principle“one should Depend upon abstractions. Do not depend upon concretions”

MADRID · NOV 27-28 · 2015

Know your tools“For a lazy programmer to be a good programmer, he (or she) also must be incredibly unlazy when it comes to learning how to stay lazy”

- Philipp Lenssen

MADRID · NOV 27-28 · 2015

Know your tools

MADRID · NOV 27-28 · 2015

MADRID · NOV 27-28 · 2015

“No programes como si el que tuviese que mantener tu código fuera un psicopata que sabe donde vives. Programa como si el que tuviese que mantener el código fueras tu mismo”

- Algún developer vago

MADRID · NOV 27-28 · 2015

The boy scout rule "Always leave the code

you're editing a little better than you found it"

- Robert C. Martin (Uncle Bob)

MADRID · NOV 27-28 · 2015

Lo más importante es…. … sentido común!!

MADRID · NOV 27-28 · 2015

Lecturas recomendadas

MADRID · NOV 27-28 · 2015

Preguntas

@cjgaliana

cjgaliana@gmail.com

MADRID · NOV 27-28 · 2015

Gracias!

top related