Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Objects: The Misunderstood Paradigm

Talk at Regional Scrum Gethering Ecuador 2015

  • Login to see the comments

Objects: The Misunderstood Paradigm

  1. 1. agile software development & services Objects: the Misunderstood Paradigm Hernán Wilkinson Twitter: @HernanWilkinson Blog: objectmodels.blogspot.com www.10pines.com
  2. 2. Why a talk about the Object Paradigm?
  3. 3. Some examples - Arrays - IllegalFormatException/NoSuchElement Exception - Cloneable/Serializable - Calendar - Calendar/Timer
  4. 4. There must be another way!!
  5. 5. Paradigm
  6. 6. Object Oriented Paradigm • Mainly Two Definitions • Founding one (pure) • Not Founding one  (not pure)
  7. 7. Little bit of History - Simula 67  Software as a Model!  Organization of Knowledge  History tip:  Goto Considered Harmfull – 68  Structured Programming – 71 (using Simula 67 as prog. lang.!!)
  8. 8. Smalltalk (70s)  Xerox Parc - LRG Alan Kay Dan Ingalls Adele Goldberg
  9. 9. Smalltalk (70s) Lisp Simula 67 Flex Machine DynaBook Augment Children Comprehention Smalltalk (72,74,76,78,80) GUI - IDE Object Oriented VM http://www.youtube.com/watch?v=AuXCc7WSczM
  10. 10. C++ (78 starts with C with Classes)
  11. 11. Xerox Parc & Steve Jobs
  12. 12. OO Goals • Augment human intelect • Help in Education
  13. 13. Principles • Simplicity • Consistency • Inmediate Feedbak • Direct Manipulation • Open • Software as a Model (based on Brunner’s/Piaget’s ideas)
  14. 14. Rules • Everything is an Object • Everything is done sending Messages • Sintax: object message
  15. 15. What’s an Object? (example)
  16. 16. What’s a Message? (example)
  17. 17. What’s a Class then? (example)
  18. 18. What’s Data? (example)
  19. 19. What’s Code? (example)
  20. 20. What’s a good Model? (example)
  21. 21. What’s Inmediate Feedback? Why? What’s Direct Manipulation? Why? (we saw many examples already )
  22. 22. Real life examples • Web application • Persistence
  23. 23. What do we loose without these characteristics?
  24. 24. What can we do? • Learn other languages • Read more than what the “market” uses • Get freed from the language! • Get freed from the frameworks! • Look for your own experiences
  25. 25. You are advised! No complaints accepted!
  26. 26. Questions?
  27. 27. agile software development & services Muchas gracias! info@10pines.com www.10Pines.com twitter: @10Pines Argentina Tel.: +54 (11) 6091-3125 Alem 693, 5B (1001) Buenos Aires

×