review amit shabtay. march 3rd, 2004 object oriented design course 2 review what have we done during...
Post on 20-Jan-2016
213 views
TRANSCRIPT
![Page 1: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/1.jpg)
Review
Amit Shabtay
![Page 2: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/2.jpg)
March 3rd, 2004 Object Oriented Design Course 2
Review
What have we done during the course?
Where to learn more? What is for the exam?
![Page 3: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/3.jpg)
March 3rd, 2004 Object Oriented Design Course 3
Common Mistakes and Basic Design
One page method is important. Do not neglect these basic rules.
Open Closed Principle Dependency Inversion Principle Interface Segregation Principle Acyclic Dependencies Principle Law of Demeter
![Page 4: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/4.jpg)
March 3rd, 2004 Object Oriented Design Course 4
Design Patterns
Use of highly tested patterns for general purposes•Language free
Forms a common jargon
Makes the design process easier and the code more modular.
![Page 5: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/5.jpg)
March 3rd, 2004 Object Oriented Design Course 5
Unit Tests, Ant as a Framework
TDD - Test Driven Development•Tests are per-functionality
•Tests check themselves
Ant as a framework•Cross-platform
•Defining new tasks
![Page 6: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/6.jpg)
March 3rd, 2004 Object Oriented Design Course 6
Typing Issues
Weak vs. Strong•Weak typing means that you can mix
types without an explicit conversion.
•Strong typing says you cannot. All types are known at compile time
Static vs. Dynamic•In dynamic typing a target may hold a
binding to any kind of object
![Page 7: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/7.jpg)
March 3rd, 2004 Object Oriented Design Course 7
LSP
Covariance, Contravariance and NoVariance
Liskov Substitution Principle•Functions that use pointers or
references to base classes must be able to use objects of derived classes without knowing it
![Page 8: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/8.jpg)
March 3rd, 2004 Object Oriented Design Course 8
Exceptions
An exception is a runtime event that may cause a routine to fail terminating in a state satisfying its contract.
Correct exception handling
•Exception neutrality
•Weak exception safety
•Strong exception safety “A False Sense Of Security”
![Page 9: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/9.jpg)
March 3rd, 2004 Object Oriented Design Course 9
Generic Programming
Write the code once, and worry about the type at compile time
Used mainly in containers and algorithms C++ templates, Java generics
Solves type safety:Map.put(“key”, “4”);
Integer i = (Integer)map.get(“key”);
![Page 10: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/10.jpg)
March 3rd, 2004 Object Oriented Design Course 10
Dynamic Proxies
Main idea:•The proxy wraps objects and adds functionality.
•All proxy methods invocations are dispatched to the invoke(...) method of the instance invocation handler.
Applications•Aspect-Oriented Programming: standard error
handling, log & debug for all objects
•Creating dynamic event handlers
![Page 11: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/11.jpg)
March 3rd, 2004 Object Oriented Design Course 11
AOP & AspectWerkz
Cross-cutting concerns
Terminology•Advices
•Pointcuts
•Aspects
![Page 12: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/12.jpg)
March 3rd, 2004 Object Oriented Design Course 12
Objects & Databases
Two widely used technologies
Most of the applications today are written using object oriented techniques and languages.
Persistence is the key of saving data
![Page 13: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/13.jpg)
March 3rd, 2004 Object Oriented Design Course 13
Frameworks and Components “A set of cooperating abstract and
concrete classes that makes a reusable design for a specific class of software”
Components vs. Framework Framework vs. Design Patterns
Domain knowledge, Architecture, Object oriented design
![Page 14: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/14.jpg)
March 3rd, 2004 Object Oriented Design Course 14
RUP and eXtreme Programming
Rational Unified Process is a commercial product for software development process.
eXtreme Programming•Small projects
•Embracing change
•12 principles
![Page 15: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/15.jpg)
March 3rd, 2004 Object Oriented Design Course 15
Technologies- Not to Memorize
Eclipse Ant
•The new build tool Java Generics O/R Mapping
•Problems
•Hibernate
![Page 16: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/16.jpg)
Not covered in the course
![Page 17: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/17.jpg)
March 3rd, 2004 Object Oriented Design Course 17
Distributed Applications
What happened when the application run on more than one computer?•Web server
•Application server
•Database SOA – Service Oriented Architecture
•a collection of services which communicate with each other
![Page 18: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/18.jpg)
March 3rd, 2004 Object Oriented Design Course 18
Web Applications
Many applications are written now with web interface•Why?
How to design scalable and maintainable web site?•MVC- model view controller
![Page 19: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/19.jpg)
To Learn more
![Page 20: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/20.jpg)
March 3rd, 2004 Object Oriented Design Course 20
Java & J2EE
http://www.java.net/ http://www.onjava.com/ http://www.javaworld.com/ http://www.theserverside.com/
![Page 21: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/21.jpg)
March 3rd, 2004 Object Oriented Design Course 21
.NET & Microsoft
http://msdn.microsoft.com http://msdn.microsoft.com/
msdnmag
![Page 22: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/22.jpg)
March 3rd, 2004 Object Oriented Design Course 22
Look out for the weblogs
http://www.jroller.com/ http://weblogs.java.net/ http://weblogs.asp.net/
![Page 23: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/23.jpg)
In the exam
![Page 24: Review Amit Shabtay. March 3rd, 2004 Object Oriented Design Course 2 Review What have we done during the course? Where to learn more? What is for the](https://reader035.vdocument.in/reader035/viewer/2022070415/56649d415503460f94a1c580/html5/thumbnails/24.jpg)
March 3rd, 2004 Object Oriented Design Course 24
Exam material
Theoretical exercises All the articles marked as
“required” All the exercise hour material NOT technologies
•Eclipse
•Ant
•Hibernate