The Way to Architect

更新时间:2023-10-10 12:05:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

The Way to Architect

This certification is for enterprise architects responsible for architecting and designing Java EE compliant applications with an emphasis on making the best use of Java EE features to create flexible, scalable, secure designs. Formerly Sun Certified Enterprise Architect (SCEA).

STEP 1 – COMPLETE TRAINING

o Java Programming Language, Java SE 6 o Object-Oriented Analysis and Design Using UML o Developing Applications for the Java EE 6 Platform o Developing Applications for the Java EE 5 Platform o Architect Enterprise applications with Java EE o Building Database Driven Applications with JPA o Business Component Development with EJB Technology, Java EE o Business Component Development with EJB Technology, Java EE 6 o Creating Web Services Using Java(TM) Technology o Java SE 7 Fundamentals o Developing Web Applications using JSF Technologies o Developing Web Services Using Java Technology o Java Design Patterns o Java EE5 Patterns o Web Component Development with Servlets & JSPs, Java EE 5 o Web Component Development with Servlets & JSPs, Java EE 6

? Java Programming Language, Java SE 6

?

? ? ? ? ?

Object-Oriented Analysis and Design Using UML

Architect Enterprise applications with Java EE Building Database Driven Applications Business Component Development

Web Services Using Java(TM) Technology JSF Technologies

? Java Design Patterns ? Java EE5 Patterns

? Web Component Development with Servlets & JSPs, Java EE 5

STEP 2 – PASS THIS EXAM

Java EE 5 Enterprise Architect Certified Master Exam

Oracle University Training and Preparation

? ?

Developing Applications for the Java EE 5 Platform Developing Architectures for Enterprise Java Applications

STEP 3 – COMPLETE THIS ASSIGNMENT

Java Enterprise Architect Certified Master Assignment

Oracle University Training and Preparation

Object-Oriented Analysis and Design Using UML ? Developing Applications for the Java EE 5 Platform

? Developing Architectures for Enterprise Java Applications ? ?

JavaBeans 3.0 Expert-to-Engineer

STEP 4 – COMPLETE THIS ESSAY

Oracle University Training and Preparation

Helpful resources to prepare for this certification exam:

? ? ? ?

Object-Oriented Analysis and Design Using UML Developing Applications for the Java EE 5 Platform Developing Architectures for Enterprise Java Applications Additional Study: Java EE 5 Platform /JavaBeans 3.0 Expert-to-Engineer

STEP 5 - COMPLETE THIS FORM

1. Java Programming Language, Java SE 6

What you will learn

The Java Programming Language course gives you a solid foundation for programming with Java. This course is ideal for programmers interested in adding the Java programming

language to their list of skills, as well as those preparing for the Oracle Certified Professional, Java SE 6 Programmer examination. Learn To:

Understand the syntax of the Java programming language.

Use object-oriented programming with the Java programming language.

Create graphical user interfaces (GUIs), exceptions, file input/output (I/O), threads and networking.

? Develop Java technology applications.

? ? ?

Benefits to You:

Boost the productivity, communication and collaboration of your organization. At the same time, reduce the cost of application ownership through more efficient development and deployment techniques. Maintain your edge by staying current with the global standard for developing networked applications. Java SE 6

This course features the Java Platform, Standard Edition 6 (Java SE 6) platform, and utilizes the Java SE Development Kit 6 (JDK 6) product. The students perform the course lab exercises using the NetBeans Integrated Development Environment (IDE). Training Requirements

This course counts towards the Hands-on course requirement for the Java SE 6 Developer Certification. Only instructor-led inclass or instructor-led online formats of this course will meet the Certification Hands-on Requirement. Self Study and Knowledge Center courses do not meet the Hands-on Requirement.

Objectives

? ? ? ? ? ? ? ? ? ?

Create Java technology applications that leverage the object-oriented features of the Java language, such as encapsulation, inheritance, and polymorphism Execute a Java technology application from the command line Use Java technology data types and expressions Use Java technology flow control constructs Use arrays and other data collections

Implement error-handling techniques using exception handling

Create an event-driven graphical user interface (GUI) using Swing components: panels, buttons, labels, text fields, and text areas

Implement input/output (I/O) functionality to read from and write to data and text files and understand advanced I/O streams

Create a simple Transmission Control Protocol/Internet Protocol (TCP/IP) networked client that communicates with a server through sockets Create multithreaded programs

Topics

Getting Started

? ? ?

Examine Java technology

Analyze a simple Java technology application Execute a Java technology application

Object-Oriented Programming

? ? ? ? ? ?

Define modeling concepts: abstraction, encapsulation, and packages Discuss Java technology application code reuse

Define class, member, attribute, method, constructor, and package

Use the access modifiers private and public as appropriate for the guidelines of encapsulation Invoke a method on a particular object

Use the Java technology API online documentation

Identifiers, Keywords, and Types

? ? ? ? ? ? ? ?

Use comments in a source program

Distinguish between valid and invalid identifiers Use the eight primitive types

Define literal values for numeric and textual types Define the terms primitive variable and reference variable Declare variables of class type

Construct an object using new and describe default initialization Describe the significance of a reference variable

Expressions and Flow Control

? ? ? ? ? ? ?

Distinguish between instance and local variables Describe how to initialize instance variables

Recognize, describe, and use Java software operators

Distinguish between legal and illegal assignments of primitive types Identify boolean expressions and their requirements in control constructs Recognize assignment compatibility and required casts in fundamental types

Use if, switch, for, while, and do constructions and the labeled forms of break and continue as flow control structures in a program

Arrays

? ? ? ? ? ?

Declare and create arrays of primitive, class, or array types Explain why elements of an array are initialized Explain how to initialize the elements of an array Determine the number of elements in an array Create a multidimensional array

Write code to copy array values from one array to another

Class Design

? ? ? ?

Define inheritance, polymorphism, overloading, overriding, and virtual method invocation Use the access modifiers protected and the default (package-friendly) Describe the concepts of constructor and method overloading Describe the complete object construction and initialization operation

Advanced Class Features

? ? ? ? ? ?

Create static variables, methods, and initializers Create final classes, methods, and variables Create and use enumerated types Use the static import statement Create abstract classes and methods Create and use an interface

Exceptions and Assertions

? ? ? ? ? ? ?

Define exceptions

Use try, catch, and finally statements Describe exception categories Identify common exceptions

Develop programs to handle your own exceptions Use assertions

Distinguish appropriate and inappropriate uses of assertions

? Enable assertions at runtime

Collections and Generics Framework

? ? ? ? ? ? ? ?

Describe the general purpose implementations of the core interfaces in the Collections framework Examine the Map interface

Examine the legacy collection classes

Create natural and custom ordering by implementing the Comparable and Comparator interfaces Use generic collections and type parameters in generic classes Refactor existing non-generic code Write a program to iterate over a collection Examine the enhanced for loop

I/O Fundamentals

? ? ? ? ?

Write a program that uses command-line arguments and system properties Examine the Properties class

Construct node and processing streams, and use them appropriately Serialize and deserialize objects

Distinguish readers and writers from streams, and select appropriately between them

Console I/ O and File I/O

? ? ?

Read data from the console Write data to the console Describe files and file I/O

Building Java GUIs Using the Swing API

? ? ? ? ? ? ? ?

Describe the JFC Swing technology Identify the Swing packages

Describe the GUI building blocks: containers, components, and layout managers Examine top-level, general-purpose, and special-purpose properties of container Examine components Examine layout managers

Describe the Swing single-threaded model Build a GUI using Swing components

Handling GUI-Generated Events

? ? ? ? ?

Define events and event handling Examine the Java SE event model Describe GUI behavior

Determine the user action that originated an event Develop event listeners

? Describe concurrency in Swing-based GUIs and describe the features of the SwingWorker class

GUI-Based Applications

? ?

Describe how to construct a menu bar, menu, and menu items in a Java GUI Understand how to change the color and font of a component

Threads

? ? ? ? ? ?

Define a thread

Create separate threads in a Java technology program, controlling the code and data that are used by that thread

Control the execution of a thread and write platform-independent code with threads Describe the difficulties that might arise when multiple threads share data Use wait and notify to communicate between threads Use synchronized to protect data from corruption

Networking

? ? ?

Develop code to set up the network connection Understand TCP/IP

Use ServerSocket and Socket classes to implement TCP/IP clients and servers

2. Object-Oriented Analysis and Design Using UML

What you will learn

In this course, you'll learn development processes, object-oriented technologies and the Unified Modeling Language. Explore OOAD practices and more through hands-on training. Learn To:

Use object-oriented technologies.

Perform object-oriented analysis and design.

Follow a software development process using an OO software project.

Use the widely adopted graphical modeling language - the Unified Modeling Language (UML) version 2.2.

? Manage complexity of artifacts; describe the problem and proposed solution.

? Understand patterns and frameworks that can facilitate building more flexible and

re-usable software components.

? ? ? ?

Key Concepts

This course combines instruction with practical experience. It focuses on effectively using object-oriented technologies and the use of software modeling, as applied to a software development process.

Through lectures, group discussions and facilitator-led activities, you'll learn to present one practical & complete object-oriented analysis and design (OOAD) roadmap. Get hands-on experience, from requirements gathering to system design. Course Structure

The course follows a generic software development process. Instructors focus on analysis and design aspects that apply to an OO software project. This generic process can be easily adapted to specific processes, which are discussed later in the course.

Furthermore, this course takes a pragmatic approach to object-oriented (OO) software

development. It follows proven OO technologies, principles and patterns as applicable to OO languages like the Java(TM) programming language.

Objectives

? ? ? ? ?

Describe the object-oriented software development process, including object-oriented methodologies and workflows

Gather system requirements through interviews with stakeholders

Analyze system requirements to determine the use cases and domain model of the problem domain (the Requirements model)

Create a system architecture (the Architecture model) supporting the nonfunctional requirements (NFRs) and development constraints

Create a system design (the Solution model) supporting the functional requirements (FRs)

Topics

Examining Object-Oriented Concepts and Terminology

? ?

Describe the important object-oriented (OO) concepts Describe the fundamental OO terminology

Introducing Modeling and the Software Development Process

? ? ? ?

Describe the Object-Oriented Software Development (OOSD) process Describe how modeling supports the OOSD process Describe the benefits of modeling software

Explain the purpose, activities, and artifacts of the following OOSD workflows

(disciplines): Requirements Gathering, Requirements Analysis, Architecture, Design, Implementation, Testing & Deployment

Creating Use Case Diagrams

Justify the need for a Use Case diagram

Identify and describe the essential elements in a UML Use Case diagram

Develop a Use Case diagram for a software system based on the goals of the business owner

? Develop elaborated Use Case diagrams based on the goals of all the stakeholders ? Recognize and document use case dependencies using UML notation for extends,

includes, and generalization

? Describe how to manage the complexity of Use Case diagrams by creating UML

packaged views

? ? ?

Creating Use Case Scenarios and Forms

Identify and document scenarios for a use case

Create a Use Case form describing a summary of the scenarios in the main and alternate flows

? Describe how to reference included and extending use cases.

? Identify and document non-functional requirements (NFRs), business rules, risks, and

priorities for a use case

? Identify the purpose of a Supplementary Specification Document

? ?

Creating Activity Diagrams

? ?

Identify the essential elements in an Activity diagram

Model a Use Case flow of events using an Activity diagram

Determining the Key Abstractions

? ?

Identify a set of candidate key abstractions Identify the key abstractions using CRC analysis

Constructing the Problem Domain Model

? ? ? ?

Identify the essential elements in a UML Class diagram Construct a Domain model using a Class diagram

Identify the essential elements in a UML Object diagram

Validate the Domain model with one or more Object diagrams

Transitioning from Analysis to Design using Interaction Diagrams

? ? ? ? ?

Explain the purpose and elements of the Design model

Identify the essential elements of a UML Communication diagram Create a Communication diagram view of the Design model Identify the essential elements of a UML Sequence diagram Create a Sequence diagram view of the Design model

Modeling Object State Using State Machine Diagrams

? ?

Model object state

Describe the essential elements of a UML State Machine diagram

Applying Design Patterns to the Design Model

? ? ? ? ?

Define the essential elements of a software pattern Describe the Composite pattern Describe the Strategy pattern Describe the Observer pattern

Describe the Abstract Factory pattern

Introducing Architectural Concepts and Diagrams

? ? ? ? ? ?

Distinguish between architecture and design Describe tiers, layers, and systemic qualities Describe the Architecture workflow

Describe the diagrams of the key architecture views Select the Architecture type

Create the Architecture workflow artifacts

Introducing the Architectural Tiers

? ? ? ?

Describe the concepts of the Client and Presentation tiers Describe the concepts of the Business tier

Describe the concepts of the Resource and Integration tiers Describe the concepts of the Solution model

Refining the Class Design Model

? ? ? ? ? ?

Refine the attributes of the Domain model Refine the relationships of the Domain model Refine the methods of the Domain model Declare the constructors of the Domain model Annotate method behavior

Create components with interfaces

Overview of Software Development Processes

? ? ? ?

Explain the best practices for OOSD methodologies

Describe the features of several common methodologies Choose a methodology that best suits your project Develop an iteration plan

Overview of Frameworks

? ? ? ?

Define a framework

Describe the advantages and disadvantages of using frameworks Identify several common frameworks

Understand the concept of creating your own business domain frameworks

Course Review

? ? ?

Review the key features of object orientation Review the key UML diagrams

Review the Requirements Analysis (Analysis) and Design workflows

3. Java Design Patterns

What you will learn

This Java Patterns course reviews common and emerging patterns specific to Java SDK and EE development. You'll learn the depth and evolution of pattern-based techniques in Java, with particular emphasis on Java EE 6 conventions. Learn To:

? ? ? ? ? ?

Dinstinguish between Java EE 5 and Java EE 6 pattern-based features. Implement relevant patterns in each tier of the Java EE environment. Re-factor code to improve inter-tier communications.

Relate pattern-based development to an implementation architecture. Apply object-oriented pronciples and design guidelines.

Implement well-known patterns to Java-specific code problems.

Lab Exercises

The lab exercises show you how to identify, apply and re-factor selected patterns into code, using a NetBeans or Eclipse IDE and the GlassFish Application Server v3. You'll also learn a subset of UML notation to expedite communicating through design instead of code.

Java Design Patterns

In design patterns, the responsibility of each component is identified by role. The

conventions of design pattern documentation make it easier for development teams to communicate their programming intentions and provide a reference point for the entire Java development community. Java-Based Frameworks

The Java language and popular Java-based frameworks incorporate more proven

development practices into their programming interfaces with each major release. These practices, referred to as design patterns, document well-known names, code

implementation and re-factoring techniques, and the risks and trade-offs associated with using them.

Objectives

? ? ? ? ? ? ? ?

Identify key design principles of object-oriented development

Apply Java-specific implementation techniques to well-known patterns Use patterns to complete a Java application design Use patterns to complete a web-tier application design Use patterns to complete a business-tier application design Use patterns to improve communication between Java EE tiers Identify and refactor anti-patterns in working code

Using part of a sample architecture scheme, select design patterns for implementing the scheme

Topics

Reviewing Object-Oriented Principles in Java

? ? ? ? ?

Describe how OO concepts apply to Java Describe how OO principles apply to Java List the goals of an OO language

Interpret Unified Modeling Language (UML) notation and create UML diagrams Identify selected design patterns

Reviewing Gang of Four Patterns

? ? ? ? ? ?

List key behavioral, creational and structural patterns Apply the Facade pattern Apply the Strategy pattern Apply the Observer pattern Apply the Composite pattern

Review the Model-View-Controller (MVC) patterns

Implementing Patterns in Java

? ? ?

Use implementation patterns designed for Java

List forces affecting class, state, and behavioral patterns

Describe how patterns, idioms and refactoring differ from each other

Exploring Changes in Java EE Technology

? ?

Describe the design goals of the Java EE model Describe improvements in the Java EE 6 model

Implementing Integration Patterns

? ? ?

Describe design patterns for the integration tier

Review Java EE integration changes that apply design patterns Identify use cases for applying integration tier patterns

Implementing Patterns in Business Components

? ?

Describe the role of an enterprise bean

Describe design patterns for the business tier

Implementing Infrastructural Patterns in Java EE

? ? ? ? ?

Describe the role of infrastructural Java EE patterns Describe the Service Starter pattern Describe the Singleton pattern Describe the Bean Locator pattern Describe the Resource Binder pattern

Implementing More Infrastructure Patterns

? ? ? ? ?

Describe how Java EE interceptors work

Describe the Dependency Injection Extender pattern Describe the Payload Extractor pattern Describe the Context Holder pattern Describe the Thread Tracker pattern

Exploring Anti-Patterns

? ? ? ? ?

Describe the Law of Leaky Abstractions Define AntiPatterns

Describe Integration Tier AntiPatterns Describe Business Tier AntiPatterns Describe Presentation Tier AntiPatterns

Selecting Patterns for Architecture

? ? ?

Define the roles of architect, designer, and developer

Describe the relationship between design patterns and architecture List guidelines for applying patterns to an architectural solution

4. Java EE 5 Patterns

What you will learn

The Patterns course provides students with a thorough description of software design patterns that can be used with the Java Platform, Enterprise Edition (Java EE platform) technology to effectively solve complex business problems. Studying design patterns, such as the patterns presented in this course, assists developers in learning tried and proven techniques for solving specific types of common design problems. The design patterns described in this course help developers design enterprise applications that are more flexible, maintainable, reliable, and efficient.

This course describes the Java EE patterns, which were created by the Professional Services organization and the Java EE Blueprints group of Sun Microsystems, Inc. These patterns are based on these groups' many years of experience with a wide range of enterprise

applications. Development teams can leverage this industry experience and avoid many costly and time-consuming project roadblocks by understanding and implementing these patterns.

This course also describes many of the Gang of Four object-oriented design patterns that provide the basis for the Java EE patterns and also provide the basis for good object-oriented design. Understanding these patterns is critical to the effective use of the Java EE patterns and valuable in the design of any object-oriented system.

Students learn how to create effective software designs for Java EE technology applications through a series of lectures and exercises. Students who can benefit from this course:

? ? ?

Individuals responsible for the design of distributed software applications. Java technology programmers

Java EE software developers * Enterprise architects

Objectives

? ? ?

Select an appropriate Gang of Four or Java EE pattern to solve a specific problem. Apply a Gang of Four or Java EE pattern to an architecture and implementation. Design and implement more effective Java EE applications.

Topics

Exploring Object-Oriented Design Principles and Design Patterns

? ? ?

Describe the fundamental object-oriented design concepts Describe the fundamental object-oriented design principles Describe the characteristics of design patterns

Using Gang of Four Behavioral Patterns

? ? ? ? ?

Describe the basic characteristics of the Behavioral patterns Apply the Strategy pattern Apply the Command pattern Apply the Iterator pattern Apply the Observer pattern

Using Gang of Four Creational Patterns

? ? ? ?

Describe the basic characteristics of the Creational patterns Apply the Factory Method pattern Apply the Abstract Factory pattern Apply the Singleton pattern

Using Gang of Four Structural Patterns

? ? ? ? ? ?

Describe the basic characteristics of the Structural patterns Apply the Facade pattern Apply the Proxy pattern Apply the Adapter pattern Apply the Composite pattern Apply the Decorator pattern

Using Architectural Building Blocks

? ? ? ?

Compare architectural patterns to design patterns Apply the Model View Controller pattern Apply the Layers pattern

Explain tiers and layers in Java EE platform applications

Introducing Java EE Patterns

? ?

Describe the Java EE pattern philosophy

Describe the Java EE patterns and tiers in the Java EE pattern catalog

Using Integration Tier Patterns

? ? ? ? ?

List the features and purpose of the Integration Tier patterns Apply the Service Activator pattern

Apply the Data Access Object (DAO) pattern Apply the Domain Store pattern

Apply the Web Service Broker pattern

Using Presentation-to-Business Tier Patterns

? ? ? ? ?

Describe basic characteristics of the business tier Java EE patterns that facilitate communication with the presentation tier Apply the Service Locator pattern Apply the Session Facade pattern Apply the Business Delegate pattern Apply the Transfer Object pattern

Using Intra-Business Tier Patterns

? ? ? ? ? ?

Describe the basic characteristics of the Intra-Business Tier patterns Apply the Application Service pattern Apply the Business Object pattern

Apply the Transfer Object Assembler pattern Apply the Composite Entity pattern Apply the Value List Handler pattern

Using Presentation Tier Patterns

? ? ? ? ? ?

Describe basic characteristics of the Presentation Tier Java EE patterns Describe the Model 2 Architecture and the Apache Struts Framework Apply the Intercepting Filter pattern Apply the Front Controller pattern

Apply the Application Controller pattern Apply the Context Object pattern

More Presentation Tier Patterns

? ? ? ?

Apply the View Helper pattern Apply the Composite View pattern Apply the Dispatcher View pattern Apply the Service to Worker pattern

Exploring AntiPatterns

? ? ? ?

Define AntiPatterns

Describe Integration Tier AntiPatterns Describe Business Tier AntiPatterns Describe Presentation Tier AntiPatterns

Applying Java EE BluePrints Design Guidelines

? ? ?

Describe the Java EE BluePrints design guidelines Describe the Java Pet Store demo software

Describe the Java EE patterns used in the Java Pet Store demo software

本文来源:https://www.bwwdw.com/article/ea0f.html

Top