Description
How to approach object-oriented design? How to move from a functional approach to an Object approach? How to write an Object-oriented program with real scalability and reusability capabilities? This course offers you concrete and practical training in Object design.
Who is this training for ?
For whom ?
Developers, project managers wishing to train in Object-oriented design.
Prerequisites
- Basic knowledge of application design and software development.
Training objectives
Training program
- What to expect from the Object approach?
- Why use object-based technologies? The challenges of new IT: modularity (Plug-Ins), reusability, scalability.
- The use of component libraries.
- How does the object approach respond to these challenges? In what state of mind should you approach an object problem? Learning from other areas of computer science and other disciplines.
- The basic concepts of the Object approach
- Objects: a procedure/data duality.
- Classes as models of structure and behavior of objects, instances as representatives of classes.
- The methods, procedures defined in classes and used by instances.
- Interactions between objects by sending messages.
- How are messages interpreted by objects? L 'inheritance.
- Inheritance and typing of variables in strongly typed languages (C++, Java).
- Diagrams and representation of objects using UML
- The main diagrams (class diagrams, sequence diagrams) and their use for Object design.
- Object notation and representation tools: getting started with a modeler of the walk.
- The main principles of object design
- What do we put in the form of an object? Principle of reification.
- Criteria to apply to decide what should be put in the form of Object.
- Mistakes to avoid.
- How to structure object software? Principle of modularity and domain decomposition.
- How to structure a set of classes? Principle of abstraction and classification.
- How to think about the interaction between objects? Principle of encapsulation and autonomy.
- Analyze complex systems in terms of communications.
- The general approach .
- Mistakes to avoid.
- Criteria to apply to have "good" class hierarchies.
- Mistakes to avoid.
- How to approach object software?
- Development principles.
- From spiral development to incremental development.
- Identification of domain entities and description of interactions.
- Reuse and scalability of programs.
- Designing by objects is not using an Object tool! Mistakes to avoid.
- From design to implementation
- How to translate UML class diagrams into programming languages and databases?rnThe principles of implementing object applications.
- The importance of distributed.
- Generalized client-server models.
- The major current object platforms: technologies.
- NET from Microsoft and JEE from SUN.
- The importance of distributed.
- Class libraries.
- Programming languages and 'use of components.'}
- The approach by frameworks and components
- The software life cycle problem.
- Evolution and maintenance problems require a software approach that allows evolution.
- The software approach frameworks and components, which is based on Object thinking, is a response to this need.
- How to design and build applications quickly using frameworks and reusable components? How to integrate software components in an existing framework? How to build frameworks? Know how to take an existing application to transform it into a framework and thus make it scalable.
- Major classes of frameworks.
- Models of current components.
- Les Design Patterns
- How to reuse experience when designing and developing object applications? Design Patterns or "design patterns" as software solutions resulting from recurring general problems.
- The different types of Design Patterns.
- Example of Design Patterns.
- Advantages and limitations of Design Patterns.
- How to use Design Patterns practically ?Learn to implement Design Patterns through practice.