JAV06 Java, programmation avancée

Formation

À Tunis (Tunisie)

Prix sur demande

Appeler le centre

Avez-vous besoin d'un coach de formation?

Il vous aidera à comparer différents cours et à trouver la solution la plus abordable.

Description

  • Typologie

    Formation

  • Lieu

    Tunis (Tunisie)

Ce cours a un double objectif. D'une part, approfondir certains aspects avancés et parfois relativement complexes du langage (les inner classes, les types génériques, les annotations, le chargement des classes, la sécurité interne à la JVM). D'autre part, présenter un panorama synthétique des principales librairies concernant les thèmes suivants : la gestion des threads, les communications via le réseau, l'administration et la supervision des applications. Ce cours insiste par ailleurs sur les techniques associées à leur bonne utilisation.

Les sites et dates disponibles

Lieu

Date de début

Tunis (Tunisie)
Rue 8609 N°18 Z.I. Charguia 1, 1035

Date de début

Consulter

Questions / Réponses

Ajoutez votre question

Nos conseillers et autres utilisateurs pourront vous répondre

À qui souhaitez-vous addresser votre question?

Saisissez vos coordonnées pour recevoir une réponse

Nous ne publierons que votre nom et votre question

Les Avis

Le programme

  1. Quelques aspects avancés du langage
    • Les inner classes.
    • Les classes anonymes.
    • La redéfinition covariante des méthodes (jdk1.5).
    • Les nouvelles boucles for (jdk1.5).
    • Les import static (jdk1.5).
    • Les varargs (jdk1.5).
    • L'auto-boxing, auto-unboxing (jdk1.5).
    • Les types énumérés (jdk1.5).
    • Les types génériques (jdk1.5).
    • Les annotations (jdk1.5).
  2. La programmation concurrente
    • La programmation concurrente est un aspect important du langage : elle offre une solution élégante et efficace à de nombreux problèmes difficiles à résoudre autrement (en particulier la construction de serveurs performants). Cette forme de programmation comporte cependant des pièges. On étudie le plus courant d'entre eux : l'interblocage.
    • Définitions relatives à la programmation concurrente : les threads. La création/destruction des threads. Ordonnancement des threads
    • La synchronisation des threads. Le verrouillage des méthodes et des instructions (synchronized). Les moniteurs.
    • Principes méthodologiques pour la conception d'applications multithreadées
    • Les problèmes posés par la programmation multithread. Le problème de l'interblocage (caractérisation, évitement, prévention, détection). Le problème de la famine.
    • La librairie concurrente de JDK1.5. Les nouvelles collections. Les nouveaux outils de synchronisation : les verrous partagés/exclusifs, les sémaphores, les barrières cycliques,
  3. La programmation des communications distantes
    • Le langage propose de nombreuses librairies de communication. On présente les plus utilisées et représentatives en insistant sur leurs particularités et leurs domaines d'application.
  4. La communication par socket
    • Rappels sur les principaux concepts réseaux.
    • La programmation en mode non connecté (par datagram). Le modèle peer to peer
    • La communication en mode connecté (par stream). Le modèle client/serveur. Serveur séquentiel vs serveur concurrent. Utilisation de la sérialisation.
    • La librairie nio. Les buffers, channels. Les sélecteurs et leur utilisation.
  5. La communication par invocation de méthode distante : RMI
    • Les principes généraux.
    • Les classes de base.
    • Le service de nommage.
    • Le processus de développement du client et du serveur.
    • Les contraintes de sécurité et de chargement de classes.
  6. La communication par messages : JMS
    • Les principes généraux de la communication par messages.
    • Les concepts de JMS, les interfaces et les classes correspondantes.
    • Les différentes formes de messages.
    • La communication en mode point à point.
    • La communication en mode publish/subscribe.
  7. L'administration et la supervision
    • L'administration et la supervision des applications prennent une importance de plus en plus grande. JMX est le standard qui semble s'imposer aujourd'hui dans le monde Java, en particulier grâce à son modèle simple mais puissant mais aussi grâce à sa nature peu intrusive.
  8. Présentation de JMX (Java Management Extension)
    • La distinction entre l'application à administrer et l'application d'administration
    • .
    • Les concepts de JMX : MBean, MBeanServer, Agent, Connector.
    • Les API JMX.
    • La mise en oeuvre des différentes catégories de Mbeans (standard, dynamiques, model).
    • L'utilisation des adaptateurs et des connecteurs.
    • Les consoles d'administration.
  9. La sécurité et le chargement de classes
    • On aborde ici des aspects avancés et moins connus de la JVM.
    • Les mécanismes liés à la JVM pour assurer la sécurité. Le modèle de sécurité de Jdk1.2 : les permissions, les politiques, les domaines de sécurité. Le gestionnaire de sécurité et le contrôleur d'accès.
    • Les mécanismes de chargement de classes.
    • Le développement de chargeurs de classes spécifiques.

Appeler le centre

Avez-vous besoin d'un coach de formation?

Il vous aidera à comparer différents cours et à trouver la solution la plus abordable.

JAV06 Java, programmation avancée

Prix sur demande