Suche senden
Hochladen
01 J2EE patrones
•
Als PPT, PDF herunterladen
•
0 gefällt mir
•
846 views
juani ruiz
Folgen
Technologie
Melden
Teilen
Melden
Teilen
1 von 27
Jetzt herunterladen
Empfohlen
Anarchist guide to titanium ui
Anarchist guide to titanium ui
Vincent Baskerville
Ghost
Ghost
ESUG
Design patterns
Design patterns
Prawesh Shrestha
Pattern making
Pattern making
13023901-016
Design patterns tutorials
Design patterns tutorials
University of Technology
Design Pattern For C# Part 1
Design Pattern For C# Part 1
Shahzad
Industrial pattern making
Industrial pattern making
Hindustan University
Pattern making
Pattern making
Devanand Gehlot
Empfohlen
Anarchist guide to titanium ui
Anarchist guide to titanium ui
Vincent Baskerville
Ghost
Ghost
ESUG
Design patterns
Design patterns
Prawesh Shrestha
Pattern making
Pattern making
13023901-016
Design patterns tutorials
Design patterns tutorials
University of Technology
Design Pattern For C# Part 1
Design Pattern For C# Part 1
Shahzad
Industrial pattern making
Industrial pattern making
Hindustan University
Pattern making
Pattern making
Devanand Gehlot
Clarity in Documentation
Clarity in Documentation
Radhika Puthiyetath
Prophecy Of Design Patterns
Prophecy Of Design Patterns
pradeepkothiyal
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur University
Shubham Narkhede
Testing method pptx
Testing method pptx
02LabiqaIslam
Design_Patterns_Dr.CM.ppt
Design_Patterns_Dr.CM.ppt
C Meenakshi Meyyappan
Design pattern in Symfony2 - Nanos gigantium humeris insidentes
Design pattern in Symfony2 - Nanos gigantium humeris insidentes
Giulio De Donato
Make Me an Eclipse View (with less Plumbing): The PTP External Tools Framewor...
Make Me an Eclipse View (with less Plumbing): The PTP External Tools Framewor...
bethtib
Design patterns
Design patterns
mudabbirwarsi
Jump start to OOP, OOAD, and Design Pattern
Jump start to OOP, OOAD, and Design Pattern
Nishith Shukla
Jump Start To Ooad And Design Patterns
Jump Start To Ooad And Design Patterns
Lalit Kale
Evolution of Patterns
Evolution of Patterns
Chris Eargle
Using design pattern for mobile
Using design pattern for mobile
luca mezzalira
Designing a Development Environment for Logic and Multi-Paradigm Programming
Designing a Development Environment for Logic and Multi-Paradigm Programming
gpiancastelli
NeOn Tool Support for Building Ontologies By Reuse - ICBO 09
NeOn Tool Support for Building Ontologies By Reuse - ICBO 09
Mathieu d'Aquin
Singleton Design Pattern - Creation Pattern
Singleton Design Pattern - Creation Pattern
Seerat Malik
Introduction to Design Patterns and Singleton
Introduction to Design Patterns and Singleton
Jonathan Simon
Lecture11
Lecture11
artgreen
Singleton Object Management
Singleton Object Management
ppd1961
Onion (clean) architecture
Onion (clean) architecture
Business incubator Novi Sad
Gof design patterns
Gof design patterns
Srikanth R Vaka
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
Kalema Edgar
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Alan Dix
Weitere ähnliche Inhalte
Ähnlich wie 01 J2EE patrones
Clarity in Documentation
Clarity in Documentation
Radhika Puthiyetath
Prophecy Of Design Patterns
Prophecy Of Design Patterns
pradeepkothiyal
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur University
Shubham Narkhede
Testing method pptx
Testing method pptx
02LabiqaIslam
Design_Patterns_Dr.CM.ppt
Design_Patterns_Dr.CM.ppt
C Meenakshi Meyyappan
Design pattern in Symfony2 - Nanos gigantium humeris insidentes
Design pattern in Symfony2 - Nanos gigantium humeris insidentes
Giulio De Donato
Make Me an Eclipse View (with less Plumbing): The PTP External Tools Framewor...
Make Me an Eclipse View (with less Plumbing): The PTP External Tools Framewor...
bethtib
Design patterns
Design patterns
mudabbirwarsi
Jump start to OOP, OOAD, and Design Pattern
Jump start to OOP, OOAD, and Design Pattern
Nishith Shukla
Jump Start To Ooad And Design Patterns
Jump Start To Ooad And Design Patterns
Lalit Kale
Evolution of Patterns
Evolution of Patterns
Chris Eargle
Using design pattern for mobile
Using design pattern for mobile
luca mezzalira
Designing a Development Environment for Logic and Multi-Paradigm Programming
Designing a Development Environment for Logic and Multi-Paradigm Programming
gpiancastelli
NeOn Tool Support for Building Ontologies By Reuse - ICBO 09
NeOn Tool Support for Building Ontologies By Reuse - ICBO 09
Mathieu d'Aquin
Singleton Design Pattern - Creation Pattern
Singleton Design Pattern - Creation Pattern
Seerat Malik
Introduction to Design Patterns and Singleton
Introduction to Design Patterns and Singleton
Jonathan Simon
Lecture11
Lecture11
artgreen
Singleton Object Management
Singleton Object Management
ppd1961
Onion (clean) architecture
Onion (clean) architecture
Business incubator Novi Sad
Gof design patterns
Gof design patterns
Srikanth R Vaka
Ähnlich wie 01 J2EE patrones
(20)
Clarity in Documentation
Clarity in Documentation
Prophecy Of Design Patterns
Prophecy Of Design Patterns
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur University
Testing method pptx
Testing method pptx
Design_Patterns_Dr.CM.ppt
Design_Patterns_Dr.CM.ppt
Design pattern in Symfony2 - Nanos gigantium humeris insidentes
Design pattern in Symfony2 - Nanos gigantium humeris insidentes
Make Me an Eclipse View (with less Plumbing): The PTP External Tools Framewor...
Make Me an Eclipse View (with less Plumbing): The PTP External Tools Framewor...
Design patterns
Design patterns
Jump start to OOP, OOAD, and Design Pattern
Jump start to OOP, OOAD, and Design Pattern
Jump Start To Ooad And Design Patterns
Jump Start To Ooad And Design Patterns
Evolution of Patterns
Evolution of Patterns
Using design pattern for mobile
Using design pattern for mobile
Designing a Development Environment for Logic and Multi-Paradigm Programming
Designing a Development Environment for Logic and Multi-Paradigm Programming
NeOn Tool Support for Building Ontologies By Reuse - ICBO 09
NeOn Tool Support for Building Ontologies By Reuse - ICBO 09
Singleton Design Pattern - Creation Pattern
Singleton Design Pattern - Creation Pattern
Introduction to Design Patterns and Singleton
Introduction to Design Patterns and Singleton
Lecture11
Lecture11
Singleton Object Management
Singleton Object Management
Onion (clean) architecture
Onion (clean) architecture
Gof design patterns
Gof design patterns
Kürzlich hochgeladen
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
Kalema Edgar
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Alan Dix
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
hariprasad279825
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
Sri Ambati
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
UiPathCommunity
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
Stephanie Beckett
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Lonnie McRorey
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
Lars Bell
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
DianaGray10
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
comworks
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Dubai Multi Commodity Centre
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
Florian Wilhelm
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Mattias Andersson
Kürzlich hochgeladen
(20)
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
01 J2EE patrones
1.
Conceptos básicos
Patrones © Copyright 2011. All rights reserved. Ernesto del Puerto. 1
2.
Patrones de diseño
y de arquitectura Un arquitecto planifica los sistemas utilizando un proceso de razonamiento basado en patrones. Un arquitecto debe estar familiarizado con una variedad de catálogos de patrones para ser efectivo. Tipos de patrones: Los patrones de diseño definen la estructura y el comportamiento de componentes OO de software reutilizables que permitan realizar los requerimientos funcionales. Los patrones de arquitectura definen la estructura y el comportamiento del sistema y de los subsistemas para cumplimentar los requerimientos no funcionales © Copyright 2011. All rights reserved. Ernesto del Puerto 2
3.
Patrones de diseño
A software pattern is a “description of communicating objects and classes that are customized to solve a general design problem in a particular context.” (Gamma, Helm, Johnson, and Vlissides page 3) Está inspirado en los patrones de la arquitectura tradicional (construcción de edificios) Los elementos esenciales de un patrón son: Nombre Problema Solución Consecuencias © Copyright 2011. All rights reserved. Ernesto del Puerto 3
4.
Nivel de los
patrones de software Patrones de arquitectura: Ponen en manifiesto las estructuras de alto nivel de software y hardware Usualmente soportan los NFRs Patrones de diseño: Ponen en manifiesto las estructuras de nivel medio de software Usualmente soportan los FRs Idioms: Ponen en manifiesto las estructuras de bajo nivel de software (clases y metodos) Usualmente soportan funcionalidades específicas del lenguaje © Copyright 2011. All rights reserved. Ernesto del Puerto 4
5.
Los GoFs © Copyright
2011. All rights reserved. Ernesto del Puerto 5
6.
Patrones JEE © Copyright
2011. All rights reserved. Ernesto del Puerto 6
7.
Principio en los
patrones Existen varios principios para los patrones: Open Closed Principle (OCP) Composite Reuse Principle (CRP) Dependency Inversion Principle (DIP) Veamos el siguiente ejemplo: © Copyright 2011. All rights reserved. Ernesto del Puerto 7
8.
OCP – Open
Close Principle “Classes should be open for extension but closed for modification.” (Knoernschild page 8) © Copyright 2011. All rights reserved. Ernesto del Puerto 8
9.
CRP – Composite
Reuse Principle … “Favor polymorphic composition of objects over inheritance.” (Knoernschild página 17) © Copyright 2011. All rights reserved. Ernesto del Puerto 9
10.
… CRP –
Composite Reuse Principle CRP leads to flexible reuse through delegation © Copyright 2011. All rights reserved. Ernesto del Puerto 10
11.
DIP – Dependency
Inversion Principle … “Depend on abstractions. Do not depend on concretions.” (Knoernschild page 12) Una abstracción puede ser una clase abstracta © Copyright 2011. All rights reserved. Ernesto del Puerto 11
12.
… DIP –
Dependency Inversion Principle Una abstracción puede ser una interface © Copyright 2011. All rights reserved. Ernesto del Puerto 12
13.
Patrón Composite, descripción
… “Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly.” (GoF page 163) © Copyright 2011. All rights reserved. Ernesto del Puerto 13
14.
… Patrón Composite,
descripción … Problem (caracteristicas del problema): You want to represent whole-part hierarchies of objects You want to use the same interface on the assemblies and the components in an assembly Solution (caracteristicas de la solucion) : Create an abstract class, Component, that acts as the superclass for concrete “leaf” and Composite classes. The Composite class can be treated as a component because it supports the Component class interface. © Copyright 2011. All rights reserved. Ernesto del Puerto 14
15.
… Patrón Composite,
descripción … El modelo del patrón Composite de GoF © Copyright 2011. All rights reserved. Ernesto del Puerto 15
16.
… Patrón Composite,
descripción … Modelo alternativo del patrón Composite de GoF © Copyright 2011. All rights reserved. Ernesto del Puerto 16
17.
… Patrón Composite,
descripción … Participantes: Component (Gráfico): Declares the interface for objects in the composition Implements default behavior for the interface common to all classes, as appropriate Declares an interface for accessing and managing its child components Leaf (Rectángulo, Línea, Texto, etc): Represents leaf of objects in the composition. A leaf has no children Defines behavior for primitive objects in the composition © Copyright 2011. All rights reserved. Ernesto del Puerto 17
18.
… Patrón Composite,
descripción … Composite (Dibujo): Defines behavior for components having children Stores child components Implements child-related operations in the Component interface Client: Manipulates objects in the composition through the Component interface © Copyright 2011. All rights reserved. Ernesto del Puerto 18
19.
… Patrón Composite,
descripción Consequences: Makes the client simple Makes it easier to add new kinds of components Can make the design model too general © Copyright 2011. All rights reserved. Ernesto del Puerto 19
20.
Patrón Strategy, descripción
“Define a family of algorithms, encapsulate each one, and make them interchangeable. Strategy lets the algorithm vary independently from clients that use it.” (GoF page 315) © Copyright 2011. All rights reserved. Ernesto del Puerto 20
21.
Introducing Creational Patterns
Creational patterns hide the details of object creation. Pattern Primary Function Factory Method Creates objects of a class or its subclasses through a method call Abstract Factory Creates a family of objects through a single interface Singleton Restricts a class to one globally accessible instance © Copyright 2011. All rights reserved. Ernesto del Puerto 21
22.
Applying the Singleton
Pattern Example Problem The hotel system uses a pool of threads to invoke processing There should only be one instance of the thread pool so that all parts of the application are borrowing threads from the same pool The thread pool must be easily accessible throughout the application Problem Forces There are some classes that are intended to only have a single instance The single instance of a class may need to be easily accessible to different parts of the application The only way to secure a constructor is to hide it © Copyright 2011. All rights reserved. Ernesto del Puerto 22
23.
Singleton Pattern Structure
Three steps are needed to create a Singleton class: 1. The Singleton class’ constructor is private or protected, hiding it from client view 2. The Singleton class has a private static reference to the only instance of itself 3. The Singleton class has a public static method that returns the single instance © Copyright 2011. All rights reserved. Ernesto del Puerto 23
24.
Singleton structure code
public class Singleton { private static Singleton uniqueInstance; public static Singleton getInstance( ) { if (uniqueInstance == null) { uniqueInstance = new Singleton(); } return uniqueInstance; } private Singleton( ) { } //Add attributes and methods for class functionality } © Copyright 2011. All rights reserved. Ernesto del Puerto 24
25.
Singleton Pattern Example
Solution © Copyright 2011. All rights reserved. Ernesto del Puerto 25
26.
Applying the Singleton
Pattern Consequences Advantages: A client can easily obtain a reference to the single object A singleton can construct the instance at the class loading time or on-demand Singleton can guard several instances at once, not just one Disadvantages: Singleton can replace global variables, but this hint is often misapplied Singleton must make on-demand instances thread-safe © Copyright 2011. All rights reserved. Ernesto del Puerto 26
27.
Bibliografía
Design Petterns. Elements of Reusable Object-Oriented Software. E. Gamma, R. Helm, R. Johnson y J. Vlissides. Addison-Wesley. 32nd. Printing. April 2005. ISBN: 0201663612. SL-500. J2EE Patterns. Student Guide. Sun Education. Revision C. 2003. Patterns of Enterprise Application Architecture. Martin Fowler. Addison-Wesley. Thirteenth Printing. October 2007. ISBN: 0-321-12742-0. Head First Design Patterns. Eric y Elisabeth Freeman. O’Reilly. First Edition. October 2004. ISBN: 0-596-00712- 4. © Copyright 2011. All rights reserved. Ernesto del Puerto 27
Hinweis der Redaktion
Este material fue preparado especialmente para los cursos que organizó la SCEU de la UTN FRBA en el Campus correspondientes al proyecto Becas Control F desde fines de 2010 hasta principios de 2011.
Jetzt herunterladen