Softway Tunisie créée depuis 1994, met à votre disposition ses années d’expérience à la fois dans la formation professionnelle en informatique et management, et dans l’intégration des logiciels Sage en Tunisie ainsi le développement des sites web et des logiciels sur mesure dans le but de satisfaire les besoins d'une clientèle de plus en plus critique et rigoureuse.

 

Développez votre activité sereinement et en toute sécurité avec la gamme de logiciels Sage 100 Cloud

 

 Découvrir nos solutions des logiciels Sage 100 Cloud

 

 

Découvrir

 


La mission première de Softway Tunisie est de proposer des formations en informatique et management en Tunisie basées sur des expériences du terrain avec des professeurs du terrain

Découvrir

 


Programmation pour Développeur Confirmé

 

Objectifs de la formation

  • seconde formation du cursus Java SE 8, cette formation java permet d'exploiter les concepts spécifiques au développement d’applications orientées objet avec Java (design patterns, best practices…), les API du noyau Java SE, JDBC pour l'accès aux bases de données et la programmation multi-thread

Contenu du cours

Point sur la plateforme Java

Rappel de syntaxe Java

Expressions arithmétiques et logiques simples, Instructions, tests et boucles
Utiliser les types énumérés

Programmation objet avec Java

Attributs, méthodes et constructeurs
Variables et méthodes de classe (static)
Surcharge de méthodes
L’attribut this
Encapsulation : getter et setter
Responsabilité, règles de visibilité, packages

Héritage

Sous-classe, spécialisation des méthodes
Polymorphisme, forçage de type
Opérateur instanceof
L’attribut super
La classe Object

Conception avancée

Classes abstraites
Conception avec des interfaces
Classes internes
Pattern singleton
Objets immuables
Composition et délégation

Programmation générique et collections

Notion de type paramétré
Exemple avec les collections
Catégories de collections : List, Set et Map
Itération sur une collection

Traitement des chaînes de caractères

Manipulation des chaines de caractères avec StringBuilder et StringBuffer
Recherches de caractères, formatage
Expressions régulières avec les classes Pattern et Matcher

Traitement des erreurs

Mécanisme de gestion des exceptions : clauses try, catch et finally
Utilisation de l'interface AutoCloseable
Catégories d'exceptions
Propagation des exceptions
Multi-catch
Créer des exceptions applicatives
Activer des assertions

Transférer des données en utilisant les flux d'E/S

Lire et écrire dans la console
Lire et écrire dans un fichier, sérialiser des objets

Accéder au système de fichiers avec les NIO 2

L’interface Path
La classe Files
Opérations sur les répertoires et fichiers
Lire et écrire dans des fichiers

Le multi-tâche

Lancer un thread en Java
Problématiques de la programmation multitâche (synchronisation…)
Créer des variables atomiques
Utiliser des Read-Write Locks
Collections Thread-safe
Concurrent Synchronizers (Semaphore, Phaser…)
Executors et ThreadPools

Accès aux bases de données avec JDBC

Utilisation de l'API JDBC, des pilotes JDBC
PreparedStatement et CallableStatement
Requêtes
Les transactions
Utilisation des RowSet
Le pattern DAO

Internationalisation d’une application

Définir la locale
Gérer des messages dans des ResourceBundle
Formater des dates et des nombres

Bases du langage de Programmation Java

 

Objectifs de la formation

L’apprenant sera capable de :

  • Installer le kit de développement JAVA (JDK 6)    Comprendre les atouts clés de la plateforme Java
  • Lire, écrire, compiler des classes Java (syntaxe, types de données, opérateurs, instructions)
  • Mettre en œuvre les concepts OO : polymorphisme, héritage, interface,…
  • Utiliser l’environnement de développement Eclipse

Contenu du cours

 

  • L’environnement de programmation Java
  • L’outil de développement : IDE Eclipse
  • Le langage Java et sa syntaxe
  • Qu’est-ce que la Programmation Orientée Objet?
  • La notion d’objet et de classe
  • La notion de message
  • Classes abstraites
  • Les interfaces
  • Encapsulation
  • Héritage
  • Polymorphisme
  • Gestion des exceptions
  • Les interfaces graphiques
  • Exercices

FORMATION Java 7 pour développeur Objet

Objectifs de la formation

 Java 7 apporte des simplifications de langage, des améliorations en termes de performance (java.io par exemple) et bien d'autres nouveautés. Cette formation, destinée aux développeurs ayant déjà une expérience de la programmation objet, permet de se familiariser à Java et insiste sur les apports de Java7. Après une présentation rapide des raisons du succès de Java et de ses domaines d'applications, le premier chapitre présente les caractéristiques objets du langage. Le second chapitre se concentre sur l'environnement de développement Eclipse et permet grâce au code source fourni de se familiariser avec les fonctionnalités avancées de l'IDE Les chapitres suivants résolument pratiques présentent les principales classes utilitaires nécessaires aux algorithmes de base, à la gestion des entrées/sorties, à la création d'interface ou à l'accès à une base de données. Enfin, les derniers chapitres fournissent une introduction à Java EE et aux outils de génie logiciel associés. A l'issue de cette formation JAVA 7, les participants sont capables de développer leurs premières applications java en toute autonomie

Contenu du cours

 

Java 7 et la programmation objet

Caractéristiques et particularités du langage Java, domaines d'application (Application, Applet, Développement Serveur, Androïd)
Portabilité des programmes Java à travers la JVM
Gestion de la mémoire
Encapsulation et modificateurs de visibilité
Java et l'héritage simple, le mot clé final
Import et packages
Java, interface et classes abstraites
Java un langage sûr et robuste, Modèle de sécurité, mécanismes des exceptions
Le multithreading
Exécution d'un programme Java, empaquetage et format et types d'exécutables
JDK, JRE, Les outils du développeur

Prise en main de l'IDE Eclipse

Arborescence et chemin d'accès
Principe des protections
Attributs des fichiers et des répertoires
Bien utiliser l'aide en ligne
Configuration des exécutions, fonctionnalités du debugger
ATELIERCréation d'un projet, importation de sources, génération et complétion de code, refactoring. Exécution à l'aide du debugger

API Java7

Présentation générale de l'API, différenciation JRE/JDK, JVM client/serveur
Librairies utilitaires (java.util, Collection, Logging, ...)
Librairies de base (java.io, java.net, Sérialisation, JMX, JNI)
Intégration (jdbc, jndi, rmi, ...)
Interface utilisateur (AWT, Swing, Java2D)
Applications internet riches (Applet et Java WebStart)
Les dernières nouveautés de Java7
Java7 et la licence GPL

La syntaxe du langage Java 7

Structure d'un fichier .java
Constructeur et processus d'instanciation, le mot clé static
Notion d'identité objet
Déclaration de variables et Initialisation
Types primitifs et classes du package java.lang
Opérateurs d'affectation, de comparaison, booléens, ...
Instruction de contrôles
Boucles et itérations
Tableaux et collections
Gestion des exceptions, blocs try, catch, finally
Simplifications Java7
ATELIERAlgorithme de tri d'une collection

Gestion des entrées sorties en Java 7

Présentation du package java.io
Format binaire ou format texte, jeu de caractères et encoding
Opérations de lecture
Opération d'écriture
Support pour XML et le parsing de fichiers
Sockets, protocoles et flux
Le package NIO.2
ATELIEROpération de lecture, parsing et écriture de fichiers

Construction d'interface avec Java 7

Présentation de SWING
Composants d'interface
Les différents conteneurs
Gestionnaire de mise en forme : les layouts
Gestionnaire des évènements et listeners
Rendu d'image, dessins vectoriels et modélisation 3D
ATELIER (FORMATION JAVA)Editeur de fichier HTML

Java 7 et les bases de données

Présentation de JDBC
Connexion à une base de données, gestion de pool de connexions, exécutions de requêtes SQL
Parcours de ResultSet, Requêtes paramétrées, procédures stockées
Le mapping objet/relationnel et JPA
ATELIERConnexion et exécution de requête sur une base MySQL, utilisation de JPA et du langage d'interrogation JPQL

Introduction à Java EE

Le standard Java EE et les architecture n-tiers
Services techniques des serveurs d'application et Les différentes APIs
Modèles de programmation distribuée
Plugins Eclipse pour le développement Java EE
Implémentation de la couche métier avec les EJB3.0
Composants de la couche de présentation, servlets, vues et Java Beans
Le pattern MVC
ATELIEREcriture d'une application Web, packaging et déploiement

Intégration d'outils de génie logiciel et IDE Eclipse

Gestion de Version avec svn, intégration dans Eclipse
Le plugin WTP
L'outil ant : automatisation déploiement,
Le build avec Maven, intégration des tests unitaires (Junit) et de conformité (Checkstyle)
Intégration continue avec Hudson
Gestion de projet et suivi des bugs avec Trac et JIRA
Test de charge et profiling (Jmeter et Jprofiler)

Java SE7 Fundamentals

 

Objectifs de la formation

  • Acquérir les connaissances de la technologie, du langage de programmation et du cycle de vie de Java
  • Savoir utiliser les variétés de constructions du langage de programmation pour créer des applications différentes avec la technologie Java
  • Savoir utiliser les structures de contrôle (décisions et répétitions) et les méthodes pour diriger le flux du programme
  • Savoir définir des concepts avancés de l'orientation objet dans des programmes Java avec la technologie Java.

Contenu du cours

 

  1. Introducing the Java Technology
    • Relating Java with Other Languages
    • Showing How to Download, Install, and Configure the Java Environment on a Windows System
    • Describing the Various Java Technologies Such as Java EE, Java ME, Embedded Java SE
    • Describing Key Features of the Technology and the Advantages of Using Java
    • Using an Integrated Development Environment (IDE)
  2. Thinking in Objects
    • Defining the Problem Domain
    • Identifying Objects and Recognizing the Criteria for Defining Objects
  3. Introducing the Java Language
    • Defining Classes
    • Identifying the Components of a Class
    • Creating and Using a Test Class
    • Compiling and Executing a Test Program
  4. Working with Primitive Variables
    • Declaring and Initializing Field Variables
    • Describing Primitive Data Types Such as Integral, Floating Point, Textual, and Logical
    • Declaring Variables and Assigning Values
    • Using Constants
    • Using Arithmetic Operators to Modify Values
  5. Working with Objects
    • Declaring and Initializing Objects
    • Storing Objects in Memory
    • Using Object References to Manipulate Data
    • Using Java SE Javadocs to Look up the Methods of a Class
    • Working with String and StringBuilder Objects
  6. Using Operators and Decision Constructs
    • Using Relational and Conditional Operators
    • Testing Equality between Strings
    • Evaluating Different Conditions in a Program and Determining the Algorithm
    • Creating if and if/else Constructs
    • Nesting and Chaining Conditional Statements
    • Using a switch Statement
  7. Creating and Using Arrays
    • Declaring, Instantiating, and Initializing a One-Dimensional Array
    • Declaring, Instantiating, and Initializing a Two-Dimensional Array
    • Using a for Loop to Process an Array
    • Creating and Initializing an ArrayList
    • Using the import Statement to Work with Existing Java APIs
    • Accessing a Value in an Array or an ArrayList
    • Using the args Array
  8. Using Loop Constructs
    • Creating while Loops and Nested while Loops
    • Developing a for Loop
    • Using ArrayList with for Loops
    • Developing a do while Loop
    • Understanding Variable Scope
  9. Working with Methods and Method Overloading
    • Creating and Invoking a Method
    • Passing Arguments and Returning Values
    • Creating Static Methods and Variables
    • Using Modifiers
    • Overloading a Method
  10. Using Encapsulation and Constructors
    • Creating Constructors
    • Implementing Encapsulation
  11. Introducing Advanced Object Oriented Concepts
    • Using Inheritance
    • Using Types of Polymorphism Such as Overloading, Overriding, and Dynamic Binding
    • Working with Superclasses and Subclasses
    • Adding Abstraction to Your Analysis and Design
    • Understanding the Purpose of Java Interfaces
    • Creating and Implementing a Java Interface
  12. Handling Errors
    • Understanding the Different Kinds of Errors That Can Occur and How They are Handled in Java
    • Understanding the Different Kinds of Exceptions in Java
    • Using Javadocs to Research the Exceptions Thrown by the Methods of Foundation Classes
    • Writing Code to Handle Exceptions
  13. The Big Picture
    • Creating Packages and JAR Files for Deployment Using Java
    • Two and Three Tier Architectures
    • Looking at Some Java Applications Examples

Java 8, découvrir par la pratique les nouveautés

 

 

Objectifs de la formation

Utiliser les expressions lambda

Exploiter les possibilités de la programmation fonctionnelle

Utiliser des codes JavaScript depuis Java 8

Connaître la nouvelle API de gestion des dates et du temps

 

Contenu du cours

» Synthèse des nouveautés de Java 8

Vue d'ensemble des ajouts : 195 nouvelles entités (classes, interfaces...).

Les expressions lambda.

Ecrire du code SQL dans un code Java 8.

Les implémentations par défaut des interfaces et @FunctionalInterface, les nouvelles annotations.

Les évolutions des streams.

La nouvelle API de gestion des dates et des heures.

Les évolutions d'API de java.lang, java.util, java.net...

La possibilité d'exécuter du code JavaScript avec Java 8 Nashorn.

Travaux pratiques 
Vérification de l'installation du JDK 8 (outils, javadoc...).

» Les expressions lambda

Notion de classe anonyme imbriquée, améliorations apportées par le concept d'expression lambda.

Les aspects syntaxiques (déclaration, implémentation, passage de paramètres, portée des variables...).

Le concept de "foncteur" à travers les interfaces "fonctionnelles" et le package java.util.function.

Utiliser les lambda-expressions pour manipuler les collections.

Apports dans l'écriture de code SQL Les Listeners...

Travaux pratiques 
Découverte des lambda-expressions.

» La programmation fonctionnelle avancée

L'usage de @FunctionalInterface.

Les interfaces fonctionnelles fournies par le JDK 8.

Predicate, Function, Supplier, Consuler...

Références aux méthodes et aux constructeurs.

Travaux pratiques 
Mise en oeuvre d'aspects avancés.

» Java 8 Nashorn

Du JavaScript au sein de Java ? De Rhino présent en Java 7 à Oracle Nashorn, moteur ECMAScript-262 de Java 8.

Utilisation de la ligne de commande jjs.

Appeler du code JavaScript depuis une application Java, soit directement soit à l'aide d'un fichier séparé .js.

Appeler du code Java depuis un script JavaScript.

Travaux pratiques 
Appels de JavaScript depuis Java.

» Nouvelle API Date et Time

Les difficultés engendrées par les API de Date et GregorianCalendar, l'alternative JodaTime et la JSR 310.

Les concepts de temps machine et temps humain, les principes de base de la nouvelle API.

La gestion du temps machine avec java.time.Instant et java.time.Duration.

Le temps humain avec java.time.LocalDate, java.time.LocalTime, java.time.LocalDateTime.

Travaux pratiques 
Utilisation de la nouvelle API de gestion des dates et temps.

Powered by Amazing-Templates.com 2014 - All Rights Reserved.