Topics to do lunch and learn on OOP



  • I was asked to come up with some topic involving OOP. However, I don't have a formality to why I do what I do, other than topics that have already been picked up like SOLID and such.

    Any recommendations?


  • kills Dumbledore

    @xaade do you have a pluralsight subscription? There's an interesting module on there about making your code more object oriented, focusing on things like getting rid of conditionals and loops in favour of OOP based state engines


  • Discourse touched me in a no-no place

    @xaade said in Topics to do lunch and learn on OOP:

    Any recommendations?

    Depends on the audience. Here's some ideas.

    1. For a high-level audience, expanding on how to choose what objects should exist and how they should interact can be interesting. The key concepts here are OOD (OO Design) and OOA (OO Analysis): OOA is about identifying the business concepts that map to classes and instances, and OOD is about the more detailed looking at exactly what sort of pattern of calls should be done. WARNING: it's easy to end up having to look at UML when in this space, because that's the main way of doing visualisation of concepts in this area, but you don't have to stick to doing it all with class diagrams; UML is broader than that (thank God!)

    2. For a low-level audience, looking at how the compiler actually implements things like methods and (virtual) method calls can be interesting. This is particularly true if you're using a language other than C++; the dispatch mechanism used by Swift and Obj-C is actually really interesting, for example, and much more sophisticated than the boring stuff that C++ does normally.


Log in to reply