UML (Unified Modeling Language) is a modeling language for specifying, visualizing, constructing, and documenting artifacts of software systems. It provides graphical notation techniques to create visual models of object-oriented software-intensive systems. The document discusses UML and object-oriented concepts like classes, objects, inheritance, and design patterns. It uses examples like books and IP addresses to illustrate class diagrams and object instantiation.
This is a Introduction to Object Oriented (OO) Concepts, Java Programming Language and leveraging Eclipse (IBM WebSphere) to develop Java applications.
This is based on JDK 1.4 concepts/features. A newer version maybe provided at a future date.
This is a Introduction to Object Oriented (OO) Concepts, Java Programming Language and leveraging Eclipse (IBM WebSphere) to develop Java applications.
This is based on JDK 1.4 concepts/features. A newer version maybe provided at a future date.
Managing dependencies in OSGi using the Apache Felix Dependency Manager gives you some powerful tools for expressing and managing all kinds of dependencies between components. This presentation shows you how to use them, and explains what design patterns are available for building applications. It also shows how to extend this system with custom types of dependencies.
What does OOP stand for?
When Object Oriented Programming(OOP) is taught so extensively, do computer programmers, specifically within games development, realise what it's possibly doing to productivity and performance? I explain my own view from experience in personal projects and professional work.
This talk was given to the Edinburgh meet of IGDA Scotland, on 2011/07/27.
Lightning talk at the Plone conference 2009. Describing an approach, where you model your site using Plone content and generate lots of code using Plone templating mechanisms.
Managing dependencies in OSGi using the Apache Felix Dependency Manager gives you some powerful tools for expressing and managing all kinds of dependencies between components. This presentation shows you how to use them, and explains what design patterns are available for building applications. It also shows how to extend this system with custom types of dependencies.
What does OOP stand for?
When Object Oriented Programming(OOP) is taught so extensively, do computer programmers, specifically within games development, realise what it's possibly doing to productivity and performance? I explain my own view from experience in personal projects and professional work.
This talk was given to the Edinburgh meet of IGDA Scotland, on 2011/07/27.
Lightning talk at the Plone conference 2009. Describing an approach, where you model your site using Plone content and generate lots of code using Plone templating mechanisms.
Solid Principles Of Design (Design Series 01)Heartin Jacob
Learn about the solid principles of design along with some additional useful principles and practices and also few important considerations to avoid in your design. Introduction is also provided to the Design Patterns. This is usually taken as a hands on session with design and refactoring exercises.
1. UML and OO
System design
2010 Autumn
Morten Bo Nielsen
Mon@eal.dk
2. UML and OO
● What is UML?
● Who defines it?
● What does “object oriented” mean?
● What is an object?
● What is a class?
● Why use objects?
System design - Mon@eal.dk 2
3. UML
● UML is all about modelling
● And communicating ideas
● Collection of diagrams
● Functional modelling: Use case diagrams
● Structural modelling: Class diagrams
● Behavioural modelling: State machine, sequence
diagrams, communication diagrams.
● A lot more exists
example project
System design - Mon@eal.dk 3
5. OOP words
● Class, Object, Instance, Method/Properties,
(Message passing), Inheritance, Abstraction,
Encapsulation, Decoupling, Polymorphism
System design - Mon@eal.dk 5
6. Why classes?
● Encapsulation
● Code reuse
● Use standardized patterns
● Abstraction
● Modularisation of the code
Note that much of this is
possible without OOP
System design - Mon@eal.dk 6
7. Software example
- IP addresses
Class
Objects
IpAddress* IpAddressOfPc1
= new IpAddress( 192.168.1.100, 255.255.255.0 );
IpAddress* IpAddressOfPc2
= new IpAddress( 192.168.1.101, 255.255.255.0 );
System design - Mon@eal.dk 7
8. Physical world - Books
Class
“Book” covers everything we would call a “book”
Which to use
depends on context
Objects
1. Books as defined by ISBN
2. Books as in “every book is unique”
My copy is different from yours
8 SD3 - mon@sde.dk 25-10-2009
System design - Mon@eal.dk 8
9. Inheritance design problem
Book type is most Book content is most
impor tant impor tant
Book Book
System Analysis and Design
Paperback Hardcover
with UML version 2.0
book book
by A. Dennis et al.
ISBN: 978-0-471- Paperback Hardcover
65920-4 book book
System design - Mon@eal.dk 9
10. UML use case diagrams
● User ← admin actors example.
System design - Mon@eal.dk 10