solid is solid
play

SOLID is Solid Enterprise principles in OOP architectural - PowerPoint PPT Presentation

SOLID is Solid Enterprise principles in OOP architectural design-phase pattern-level constructs Hillel Wayne SOLID Single responsibility Openclosed principle Liskov substitution principle Interface segregation principle


  1. SOLID is Solid Enterprise principles in OOP architectural design-phase pattern-level constructs Hillel Wayne

  2. SOLID ◮ Single responsibility ◮ Open–closed principle ◮ Liskov substitution principle ◮ Interface segregation principle ◮ Dependency inversion principle @hillelogram

  3. Why SOLID? @hillelogram

  4. Why SOLID? @hillelogram

  5. Why SOLID? @hillelogram

  6. Why SOLID? @hillelogram

  7. Why SOLID? @hillelogram

  8. Why SOLID? @hillelogram

  9. What We Can Learn From Software History Hillel Wayne hillelwayne.com @hillelogram

  10. www.hillelwayne.com/talks/software-history @hillelogram

  11. When you create the new classes, make sure you properly test them and create them using SOLID principles so they will be easier to change in the future. If it’s too complex, it’s violating a ton of SOLID principles. Don’t be STUPID: GRASP SOLID! @hillelogram hillelwayne.com/talks/software-history

  12. The Process @hillelogram hillelwayne.com/talks/software-history

  13. @hillelogram hillelwayne.com/talks/software-history

  14. Do you know CS? @hillelogram hillelwayne.com/talks/software-history

  15. Do you know CS? Can you think quickly? @hillelogram hillelwayne.com/talks/software-history

  16. 1. When did it happen? @hillelogram hillelwayne.com/talks/software-history

  17. @hillelogram hillelwayne.com/talks/software-history

  18. 2. What was the context? @hillelogram hillelwayne.com/talks/software-history

  19. Primary Source Artifacts and information from that time Secondary Source Information produced after the fact @hillelogram hillelwayne.com/talks/software-history

  20. @hillelogram hillelwayne.com/talks/software-history

  21. @hillelogram hillelwayne.com/talks/software-history

  22. Do you know CS? Can you think quickly? @hillelogram hillelwayne.com/talks/software-history

  23. 3. What were the reasons? @hillelogram hillelwayne.com/talks/software-history

  24. Dynamic allocation @hillelogram hillelwayne.com/talks/software-history

  25. Dynamic allocation Fortran Nope @hillelogram hillelwayne.com/talks/software-history

  26. Dynamic allocation Fortran Nope Lisps just cons it Smalltalk copyWith: newElement @hillelogram hillelwayne.com/talks/software-history

  27. Dynamic allocation Fortran Nope Lisps just cons it Smalltalk copyWith: newElement C Manual memory manipulation @hillelogram hillelwayne.com/talks/software-history

  28. Do you know CS? @hillelogram hillelwayne.com/talks/software-history

  29. Do you know CS? Can you think quickly? @hillelogram hillelwayne.com/talks/software-history

  30. Do you know CS? Can you think quickly? Have you used C? @hillelogram hillelwayne.com/talks/software-history

  31. 4. What does this predict? @hillelogram hillelwayne.com/talks/software-history

  32. @hillelogram hillelwayne.com/talks/software-history

  33. Does anyone know of a version of Smalltalk that runs on Apollo workstations? [...] i’ve heard rumors that such a program exists at Utah or Brown but have no firm pointers. only full Smalltalk-80 please – not little Smalltalk. @hillelogram hillelwayne.com/talks/software-history

  34. Does anyone know of a version of Smalltalk that runs on Apollo workstations? [...] i’ve heard rumors that such a program exists at Utah or Brown but have no firm pointers. only full Smalltalk-80 please – not little Smalltalk. @hillelogram hillelwayne.com/talks/software-history

  35. @hillelogram hillelwayne.com/talks/software-history

  36. @hillelogram hillelwayne.com/talks/software-history

  37. @hillelogram hillelwayne.com/talks/software-history

  38. @hillelogram hillelwayne.com/talks/software-history

  39. 5. What are the loose ends? @hillelogram hillelwayne.com/talks/software-history

  40. @hillelogram hillelwayne.com/talks/software-history

  41. Pointers require a complex form of doubly-indirected thinking that some people just can’t do, and it’s pretty cru- cial to good programming. A lot of the “script jocks” who started programming by copying JavaScript snippets into their web pages and went on to learn Perl never learned about pointers, and they can never quite produce code of the quality you need. @hillelogram hillelwayne.com/talks/software-history

  42. Pointers require a complex form of doubly-indirected thinking that some people just can’t do, and it’s pretty cru- cial to good programming. A lot of the “script jocks” who started programming by copying JavaScript snippets into their web pages and went on to learn Perl never learned about pointers, and they can never quite produce code of the quality you need. That’s the source of all these famous interview ques- tions you hear about, like “reversing a linked list” or “de- tect loops in a tree structure.” @hillelogram hillelwayne.com/talks/software-history

  43. @hillelogram hillelwayne.com/talks/software-history

  44. Conclusion @hillelogram hillelwayne.com/talks/software-history

  45. www.hillelwayne.com/talks/software-history @hillelogram hillelwayne.com/talks/software-history

Recommend


More recommend