• Like
Principios de diseño oo
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Principios de diseño oo

  • 675 views
Published

Presentation about SOLID principles and others object-oriented programming principles

Presentation about SOLID principles and others object-oriented programming principles

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
675
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
19
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Principios de Diseño en OO Diseño al cubo : Plan TDD Donostia, 03/06/2011
  • 2. Plan TDD Principios de diseño en OO
    • Agenda :
      • Principios SOLID
      • Otros principios
      • Bulego-lanak
  • 3. Plan TDD SOLID
      • S rp
      • O cp
      • L sp
      • I sp
      • D ip
    Single Responsibility Principle Open Close Principle Liskov Substitution Principle Interface Segregation Principle Dependency Injection Principle
  • 4. Plan TDD
    • No debe haber más de un
    • motivo para que cambie una clase
    SOLID
    • S ingle R esponsibility P rinciple
    • Se favorece el desacoplamiento de las clases
    • Primera solución: una interface por cada responsabilidad
  • 5. Plan TDD SOLID
  • 6. Plan TDD SOLID ReportPrinter
    • print()
    Report
    • print()
    ReportFormatter
    • formatReport()
    DataAccess
    • getData()
  • 7. Plan TDD
    • Cerrado a la modificación
    SOLID
    • O pen C lose P rinciple
    • Abierto a la extensión
    • Abstracción
    • Previene introducir bugs
  • 8. Plan TDD SOLID
  • 9. Plan TDD SOLID
  • 10. Plan TDD
    • Diferenciar entre sub-tipo y sub-clase, Barbara Liskov
    SOLID
    • L ivcov S ubstitution P rinciple
    • Previene abusar de la herencia y
    • el polimorfismo
    • Respetar las pre-condiciones y las post-condiciones
  • 11. Plan TDD SOLID
  • 12. Plan TDD SOLID
  • 13. Plan TDD SOLID
  • 14. Plan TDD SOLID
  • 15. Plan TDD
    • No forzar a implementar métodos que no se utilizan
    SOLID
    • I nterface S egregation P rinciple
    • Evitar las interfaces “gordas”
    • Solución: separar las interfaces en varias “finitas”
  • 16. Plan TDD SOLID
  • 17. Plan TDD SOLID
  • 18. Plan TDD SOLID
  • 19. Plan TDD SOLID
  • 20. Plan TDD
    • Los módulos superiores no deben
    • depender de los módulos de los
    • niveles inferiores
    SOLID D ependency I njection P rinciple
    • Las abstracciones no deben depender
    • de detalles, los detalles deben depender
    • de las abstracciones
  • 21. Plan TDD SOLID
  • 22. Plan TDD SOLID
  • 23. Plan TDD SOLID
  • 24. Plan TDD
    • Agenda :
      • Principios SOLID
      • Otros principios
      • Bulego-lanak
    Principios de diseño en OO
  • 25. Plan TDD Otros principios DRY KISS
  • 26. Plan TDD YAGNI Otros principios
  • 27. Plan TDD
    • Agenda :
      • Principios SOLID
      • Otros principios
      • Bulego-lanak
    Principios de diseño en OO
  • 28. Bulego-lanak
    • Tarea:
      • Refactorizar “ encryptor ”
      • Aplicar los principios de diseño
    Plan TDD
  • 29. ¡Nos vemos en 15 días! Bulego-lanak Plan TDD
  • 30. Ruben Egiluz Software Engineer Donewtech Solutions, S.L. Zubiberri Bidea 31 Edificio Urumea 20018 Donostia – San Sebastián +34 943 223 031 www.donewtech.com ¡¡Gracias!!