Download Fundamentals of the Java Programming Language (SL

Document related concepts
no text concepts found
Transcript
Certified Java Expert I
Certificación de Programador Java
Contenido:
Migrating to Object Oriented Programming with Java Technology
(SL-210)
Fundamentals of the Java Programming Language (SL-110-SE6)
Java Programming Language (SL-275-SE6)
Migrating to Object Oriented Programming
with Java Technology (SL-210)
Objetivo
Al finalizar este curso, el estudiante podrá:





Entender los conceptos básicos las tecnologías orientadas a objetos
Comprender de manera general que es un metodología orientada a objetos.
Identificar objetos en el dominio de un problema
Diseñar un diagrama de clases para el dominio de un problema.
Desarrollar clases básicas de la tecnología Java basadas en un diagrama de clases
Descripción
Este curso enseña conceptos básicos de Análisis y Diseño Orientado a Objetos (OO) y como se
relacionan con la tecnología Java, también es un curso introductorio al conocimiento de la
programación Java, sin embargo este no es un curso de programación, es más bien un curso
preparatorio para aquellos estudiantes que deseen conocer las tecnologias orientadas a objetos y
el lenguaje de programación Java.
A quién va dirigido
El curso resulta ser ideal para los interesados en aprender la programación orientada a objetos o a
desarrolladores que tengan experiencia en otros lenguajes de programación y que deseen migrar a
la programación orientada a objetos con Java.
Pre-requisitos


No se requiere experiencia expresa, pero si un interés por la programación
De preferencia haber programado en algún lenguaje estructurado.
Course Content
Module 1: Objects
Describe abstraction and how it is used in object orientation
Identify objects and non-objects from a problem domain
Describe object encapsulation
Module 2: Classes
Group objects with similar attributes and common operations in classes.
Explain how classes are used to define objects
Define inheritance and explain how it relates to software reuse
Define generalization and specialization and how they relate to inheritance
Define polymorphism and explain how inheritance promotes polymorphism
Define abstract classes
Module 3: Using Java Classes
Code class declarations
Define the primitive types
Declare class variables using primitive types
Declare class variables using reference variables
Use inheritance correctly
Use abstract classes
Use the import statement to include packaged classes in a program
Use the package statement to group classes in a class hierarchy
Understand the structure of a Java program Name Java classes and other identifiers according to Java programming language
guidelines
Module 4: Using Java Methods
Define class behavior using methods
Declare a public method for encapsulation
Pass arguments to a method
Describe a method's signature
Explain how method overloading works
Use a constructor to instantiate an object
Module 5: Object Interaction
Explain how objects interact with each other through object messaging
Define association and composiiton
Decide whether a relationship between two objects should be association or composition Define the lifetime of an object with regard
to association and composition
Define the custody of an object with regard to association and composition
Module 6: Object-Oriented Analysis and Design Using UML
Create a set of use cases to describe a problem domain
Create a sequence diagram for a use case
Create a class diagram for a problem domain
Create an activity diagram for a use case
Code class declarations for the class diagram
Fundamentals of the Java Programming
Language (SL-110-SE6)
Objetivo
Las personas que tomen el curso aprenderán a:

Explicar conceptos esenciales relacionados con la tecnología y la programación Java,
identificar los grupos de productos que tiene Java y enumerar las fases del ciclo de
desarrollo de aplicaciones.

Analizar un problema y diseñar clases que lo resuelvan.

Desarrollar y probar un programa Java.

Definir y utilizar variables tipo primitivas

Demostrar el principio de reutilización de la programación OO mediante el uso de
referencias a objetos.

Utilizar instrucciones de decisión.

Crear ciclos.

Desarrollar y usar métodos.

Implementar la encapsulación y constructores.

Crear y usar arreglos unidimensionales y multidimensionales.

Usar la herencia para extender el uso de las clases.
Descripción
Este curso proporciona los fundamentos de la programación Java(TM) y está dirigido a personas
con escasa o nula experiencia en programación. Durante el curso aprenderán la importancia de la
programación orientada a objetos, las palabras reservadas y las instrucciones de la programación
Java asi como los pasos necesarios para crear programas Java sencillos. A lo largo de las clases
se utilizará una excelente herramienta desarrollada por Sun para facilitar la comprensión de la
sintaxis y la semántica del lenguaje de programación. Los alumnos obtendrán así una base sólida
a partir de la cual continuar su trayectoria de formación en el lenguaje Java.
A quién va dirigido
Personas con conocimientos básicos de matemáticas, lógica y análisis de problemas que quieran
empezar a aprender el lenguaje de programación Java. Esto incluye redactores técnicos,
desarrolladores de aplicaciones Web, directores técnicos y personas con conocimientos técnicos
pero sin experiencia en programación, tales como los administradores de sistemas. También es
apropiado para programadores con poca experiencia o que quieran empezar a aprender el
lenguaje Java desde la base. Es conveniente tener alguna experiencia previa en programación con
lenguajes de scripts, como Perl, o de tercera generación, como Basic o C.
Pre-requisitos
Para obtener el máximo aprovechamiento del curso, los alumnos necesitan:

Conocer la terminología habitual de las computadoras.

Saber resolver problemas matemáticos o técnicos.

Entender el concepto de variable.

Saber ejecutar comandos desde la interfaz de línea de comandos.

Saber desarrollar scripts o programas sencillos con un lenguaje de scripts o de tercera
generación.
Course Content
Module 1 - Explaining Java Technology
Describe key concepts of the Java programming language
List the three Java technology product groups
Summarize each of the seven stages of the product life cycle
Module 2 - Analyzing a Problem and Designing a Solution
Analyze a problem using object-oriented analysis
Design classes from which objects will be created
Module 3 - Developing and Testing a Java Technology Program
Identify the four components of a class in the Java programming language
Use the main method in a test class to run a Java technology program from the command line
Compile and execute a Java technology program
Module 4 - Declaring, Initializing, and Using Variables
Identify the uses for variables and define the syntax for a variable
List the eight Java programming language primitive data types
Declare, initialize, and use variables and constants according to Java programming language guidelines and coding
standards
Modify variable values using operators
Use promotion and type casting
Module 5 - Creating and Using Objects
Declare, instantiate, and initialize object reference variables
Compare how object reference variables are stored in relation to primitive variables
Use a class (the String class) included in the Java Software Developer's Kit (JDK)
Use the Java 2 Platform, Standard Edition (J2SE) class library specification to learn about other classes in this application
programming interface (API)
Module 6 - Using Operators and Decision Constructs
Identify relational and conditional operators
Create if and if/else constructs
Use the switch construct
Module 7 - Using Loop Constructs
Create while loops
Develop for loops
Create do/while loops
Module 8 - Developing and Using Methods
Describe the advantages of methods and define worker and calling methods
Declare and invoke a method
Compare object and static methods
Use overloaded methods
Module 9 - Implementing Encapsulation and Constructors
Use encapsulation to protect data
Create constructors to initialize objects
Module 10 - Creating and Using Arrays
Code one-dimensional arrays
Set array values using the length attribute and a loop
Pass arguments to the main method for use in a program
Create two-dimensional arrays
Module 11 - Implementing Inheritance
Define and test your use of inheritance
Explain abstraction
Explicitly identify class libraries used in your code
Java Programming Language (SL-275-SE6)
Objetivo
Las personas que tomen el curso aprenderán a:

Crear aplicaciones Java que aprovechen funciones de programación orientada a objetos
de Java como son la encapsulación, la herencia y el polimorfismo.

Ejecutar una aplicación Java.

Usar tipos de datos y expresiones de Java.

Usar las instrucciones de control de flujo de Java.

Usar arreglos y otras colecciones de datos

Implementar técnicas de manejo de errores utilizando excepciones.

Crear interfaces gráficas de usuario (GUI) controladas por eventos utilizando componentes
gráficos de Java: paneles, botones, etiquetas, campos de texto y áreas de texto, etc.

Implementar la funcionalidad de E/S para leer y escribir datos o texto desde archivos.

Crear programas con threads (hilos de ejecución).

Crear clientes y servidores sencillos TCP/IP que se comunique mediante sockets.
Descripción
En este curso se enseña la sintaxis de la última versión de Java(TM), asi como la programación
orientada a objetos utilizando el lenguaje Java, en el curso se enseña la creación de interfaces
gráficas de usuario, el modelo de excepciones, los mecanismos de entrada y salida (E/S), la
programación concurrente con threads y la programación en red. Los programadores
familiarizados con los conceptos de la programación orientada a objetos pueden aprender a
desarrollar aplicaciones en Java. Durante el curso se utiliza el kit de desarrollo de software (JDK)
Java 2 de la última versión de SUN.
A quién va dirigido
Programadores interesados en añadir el lenguaje Java a su lista de conocimientos y personas que
se estén preparando para el examen de Programador Certificado en Plataforma Java 2.
Pre-requisitos
Para obtener el máximo aprovechamiento del curso, los alumnos necesitan:

Conocer los principios de la programación orientada a objetos.

Saber crear o compilar programas sencillos en un lenguaje como C o C++, o haber tomado
el curso SL-110: Fundamentos de Programación Java o haber creado y compilado
programas Java sencillos.

Saber crear y modificar archivos de texto con un editor de textos.

Saber usar un navegador como Netscape Navigator.
Course Content
Module 1 - Getting Started
Examine Java Technology
Analyze a simple Java Technology Application
Execute a Java technology application
Module 2 - 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
Module 3 - Identifiers, Keywords, and Types
Use comments in a source program
Distinguish between valid and invalid identifiers
Recognize Java technology keywords
List 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
Describe default initialization
Describe the significance of a reference variable
State the consequence of assigning variables of class type
Module 4 - 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
Module 5 - 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
Module 6 - 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
Module 7 - Advanced Class Feature
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
Module 8 - 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
Module 9 - 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
Use type parameters in generic classes
Refactor existing non-generic code
Write a program to iterate over a collection
Examine the enhanced for loop
Module 10 - 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
Module 11 - Console I/O and File I/O
Read data from the console
Write data to the console
Describe files and file I/O
Module 12 - Building Java GUIs Using the Swing API
Describe the JFC Swing technology
Define Swing
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
Module 13 - 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
Module 14 - 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
Module 15 - 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
Module 16 - Networking
Develop code to set up the network connection
Understand TCP/IP
Use ServerSocket and Socket classes to implement TCP/IP clients and servers