Unlock the potential of generative AI across all your managerial functions.
Log in
Or create your account
You have just added to your selection
Your cart is empty, See our trainings

Description

This training has a dual objective. On the one hand, delve deeper into certain advanced aspects of the language (generic types, annotations, reflective programming, class loading). On the other hand, present a synthetic overview of the main libraries concerning the following themes: Thread management, communications via the network, administration and supervision of applications. This course also emphasizes associated architectural techniques.

Who is this training for ?

For whom ?

Developers, engineers, project managers close to development.

Prerequisites

Good knowledge of the Java language. Experience required in Java programming.

Training objectives

  • Master the advanced aspects of the Java language
  • Implement concurrent programming based on Threads
  • Implement different communication techniques (Socket, RMI, JMS)
  • Understand the security model and loading of Java classes
  • Administer a Java application via JMX, monitor the JVM
  • Implement reflective programming
  • Training program

      • The Inner Classes.
      • Anonymous classes.
      • The covariant redefinition of methods (jdk1.
      • 5).
      • The new for loops (jdk1.
      • 5).
      • The Import Static (jdk1.
      • 5).
      • Auto-boxing, auto-unboxing (jdk1.
      • 5).
      • The varargs (jdk1.
      • 5).
      • Enumerated types (jdk1.
      • 5).
      • Usage and definition.
      • Generic types (jdk1.
      • 5) .
      • The use and definition of simple generic types.
      • Genericity and the subtyping relationship.
      • Generic types at runtime , generic types and instantiation, generic types and arrays.
      • Generic methods.
      • The simultaneous use of generic and non-generic types.
      • Annotations (jdk1.
      • 5 and jdk1.
      • 6).
      • Principles.
      • Predefined annotations (
      • override,
      • deprecated,
      • generated.
      • ).
      • The definition of new annotations.
      • Meta-annotations (
      • Retention,
      • Target,
      • Documented,
      • Inherited).
      • Reflexive use of annotations.
      • .
      • Wildcard support in the classpath (jdk1.
      • 6).
      • New features on collections (jdk1.
      • 5 and jdk1.
      • 6): Queues, ConcurrentMap.
      • Practical work Using types generics and annotations.
      • Definitions relating to concurrent programming: Threads.
      • The creation/destruction of Threads.
      • Scheduling of Threads.
      • The synchronization of Threads.
      • The locking of methods and instructions (synchronized).
      • Monitors.
      • Methodological principles for the design of multithreaded applications.
      • The problems posed by multithreaded programming.
      • The deadlock problem (characterization, avoidance, prevention, detection).
      • The starvation problem.
      • The JDK1 competing library.
      • 5.
      • The new collections.
      • The new synchronization tools: shared locks /exclusives, semaphores, cyclic barriers.
      • Practical work rnConstruction of a concurrent application with synchronization and deadlock resolution.
      • Reminders of the main network concepts.
      • Programming in non-connected mode (by datagram).
      • The Peer to Peer model.
      • Communication in connected mode (by stream).
      • The client/server model.
      • Sequential server vs concurrent server.
      • Use of serialization.
      • The nio library.
      • Buffers, channels.
      • Selectors and their use.
      • Practical work Programming of the case study in client-server mode (sequential and concurrent).
      • The general principles.
      • The base classes.
      • The naming service.
      • The client and server development process .
      • Security and class loading constraints.
      • Practical work Programming the case study using RMI.
      • The general principles of communication by messages.
      • The concepts of JMS, the interfaces and the corresponding classes.
      • The different forms of messages.
      • Communication in point-to-point mode.
      • Communication in publish/subscribe mode.
      • Practical work Programming from the case study to the JMS help.
      • The advanced and lesser-known aspects of the JVM.
      • The mechanisms related to the JVM to ensure security.
      • The security model of Jdk1.
      • 2: permissions, policies, security domains.
      • The security manager and the access controller.
      • The class loading mechanisms.
      • The development of specific class loaders.
      • The distinction between the application to be administered and the administration application.
      • The concepts of JMX: MBean, MBeanServer, Agent, Connector.
      • The JMX API.
      • The implementation of the different categories of Mbeans (standard, dynamic, model).
      • The use of adapters and connectors.
      • Administration consoles.
      • Practical work Setting up an administration-supervision layer for the case study.
      • Objectives and principles.
      • Class loading.
      • The Class object.
      • Dynamic discovery of information (properties and methods) relating to a class or an object.
      • Dynamic instantiation.
      • Invoke a method.
      • The reflexivity of annotations in Java 5.
    • 1052
    • 35 h

    Submit your review

    Translated By Google Translate