simply — OOP — simply Let's talk about  concepts .
Thomas Bahn [email_address] +49/4307/900-401 assono GmbH http://www.assono.de http://www.assono.de/blog
You can  use  a pocket watch.
The manufacturer must know how to  build  the clock.
A concept called  information hiding . Reduce complexity  by hiding details beneath the surface.
This is the  power  of  OOP .
Everything is an  object . Everything  consists of  objects.
There are  many  objects. Concurrently . Objects  interact .
OOP maps  real world  objects to  software  objects.
A concept called  encapsulation . Object =  state  +  behavior  +  identity
„Think of an object as a  fancy variable; it stores data,  but you can „make requests“ to that object, asking it to do ope...
Models  of an office chair
A concept called  abstraction . Reduce complexity  by ignoring unnecessary details.
This is the  power  of  OOP .
A concept called  class .
Divide  and  conquer : Software design class for class
This is the  power  of  OOP .
A concept called  inheritance .
This is the  power  of  OOP .
A concept called  polymorphism .
Change behavior  without changing code.
This is the  power  of  OOP .
Everyone has his  responsibilities . Every object, too.
A concept called  delegation .
This is the  power  of  OOP .
Construction  and  destruction of objects
Let's talk about  principles . Keep it  simple .
The  public interface  of a class  is a  contract .
Make the  public  interface as small  as possible. You can always  add  later, but never  remove , nor  modify .
Remember: You can  always  change the  private  internals .
Reduce  coupling  between  objects.
Test  your classes separately first. A concept called  Unit Testing .
Let's talk about OOP in  LotusScript .
Demo of the  Watch  class.
Demo of the  Email  class.
The end Ask questions now — or later Blog:   www.assono.de/blog Email: [email_address] Phone: +49/4307/900-401
Upcoming SlideShare
Loading in …5
×

Simply - OOP - Simply

1,793
-1

Published on

Session from ILUG 2008, see http://www.ilug2008.org for details

Description:
Do you have objections to objects?
Haven't you visited classes about classes?
Is abstraction still too abstract for you?
Don't you use methodic methods and proper properties?
Then come to this introductory session about object-oriented programming (OOP) in LotusScript, where you can learn:
- why delegation might be better then inheritance,
- why hiding information can be helpful sometimes and
- how you can use polymorphism to teach old dogs new tricks.

Published in: Technology, Business
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,793
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
249
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide
  • I'll mainly talk about the what is and the why of OOP. The how — i. e. the syntax — is relatively easy to look up, when you've understood the concepts. Image: http://www.sxc.hu/photo/998467
  • Simply - OOP - Simply

    1. 1. simply — OOP — simply Let's talk about concepts .
    2. 2. Thomas Bahn [email_address] +49/4307/900-401 assono GmbH http://www.assono.de http://www.assono.de/blog
    3. 3. You can use a pocket watch.
    4. 4. The manufacturer must know how to build the clock.
    5. 5. A concept called information hiding . Reduce complexity by hiding details beneath the surface.
    6. 6. This is the power of OOP .
    7. 7. Everything is an object . Everything consists of objects.
    8. 8. There are many objects. Concurrently . Objects interact .
    9. 9. OOP maps real world objects to software objects.
    10. 10. A concept called encapsulation . Object = state + behavior + identity
    11. 11. „Think of an object as a fancy variable; it stores data, but you can „make requests“ to that object, asking it to do operations on itself.“ Bruce Eckel, Thinking in Java
    12. 12. Models of an office chair
    13. 13. A concept called abstraction . Reduce complexity by ignoring unnecessary details.
    14. 14. This is the power of OOP .
    15. 15. A concept called class .
    16. 16. Divide and conquer : Software design class for class
    17. 17. This is the power of OOP .
    18. 18. A concept called inheritance .
    19. 19. This is the power of OOP .
    20. 20. A concept called polymorphism .
    21. 21. Change behavior without changing code.
    22. 22. This is the power of OOP .
    23. 23. Everyone has his responsibilities . Every object, too.
    24. 24. A concept called delegation .
    25. 25. This is the power of OOP .
    26. 26. Construction and destruction of objects
    27. 27. Let's talk about principles . Keep it simple .
    28. 28. The public interface of a class is a contract .
    29. 29. Make the public interface as small as possible. You can always add later, but never remove , nor modify .
    30. 30. Remember: You can always change the private internals .
    31. 31. Reduce coupling between objects.
    32. 32. Test your classes separately first. A concept called Unit Testing .
    33. 33. Let's talk about OOP in LotusScript .
    34. 34. Demo of the Watch class.
    35. 35. Demo of the Email class.
    36. 36. The end Ask questions now — or later Blog: www.assono.de/blog Email: [email_address] Phone: +49/4307/900-401
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×