POEI Lazarus

Formation longue Lazarus : apprendre la programmation dans un langage prometteur Formation pour devenir développeur junior sur une technologie aisément abordable

Lazarus est un langage de programmation objet, proche du Pascal et fluide dans ses apprentissages.

Nous proposons ici aux entreprises recherchant des compétences Lazarus de former de nouveaux développeurs.

Dans un marché où le client lourd a tendance a être délaissé, nous vous proposons au contraire de pouvoir développer ce type d’application dans un environnement multi-plateforme.

L’IDE Lazarus, après un temps d’apprentissage relativement aisé, permet de concevoir rapidement des applications graphiques à haute valeur ajoutée.

Résumé

Langages : Pascal, SQL, UML
Logiciels : Lazarus EDI, Git, AnalyseSI, Papyrus
Durée : 57 jours, 399 heures sur 3 mois
Objectifs :
- Conduire un projet logiciel du cahier des charges au cahier de recettes.
- Développer des applications de type clients lourds Lazarus.
- Développer des applications autour des bases de données.
- Comprendre les enjeux des logiciels communautaires et le développement de solutions sur le marché du logiciel libre.
- Collaborer et participer à des projets communautaires.
Pré-requis : Réussite au test d’entrée. Avoir des besoins métier.
Public : Tout public, reconversion professionnelle possible
Tarif : Nous consulter.
Méthodes mobilisées : Alternance d’apports théoriques et d’exercices de mise en application pratique : Cours magistraux, travaux dirigés, travaux pratiques en autonomie
Modalités et délais d’accès : Sur inscription préalable au minimum 1 semaine avant le début de la formation selon disponibilité du formateur.
Modalités d’évaluations : Une évaluation du niveau des stagiaires est réalisée avant l’entrée en formation par téléphone ou au moyen d’un questionnaire. Évaluation des acquis et de la satisfaction en fin de formation.
Accessibilité aux personnes en situation de handicap ou présentant des difficultés d’apprentissage : toutes nos formations sont accessibles aux personnes en situation de handicap, qu’il soit moteur, visuel, auditif ou cognitif ; quelles qu’en soient les particularités.
Nous pouvons proposer des solutions de compensation de nos prestations en adaptant les moyens pédagogiques, techniques et d’encadrement. Nos locaux sont en rez-de-chaussée avec des places de parkings extérieures juste devant l’entrée du bâtiment. Aussi, merci de nous informer de vos besoins d’adaptation ; les échanges peuvent se faire et rester en toute confidentialité.
Taux de satisfaction 2i2L : en cours de montage.

Présentation

Lazarus est un RAD/EDI multiplateforme développé en Free Pascal pour Free Pascal. Son objectif est de fournir aux programmeurs Pascal Objet un environnement de développement facile à utiliser s’approchant le plus possible de Delphi.

Free Pascal est un compilateur sous licence GPL fonctionnant sous Linux, Windows, OS/2, Mac OS X, BSD, iOS, Android, etc. Il est conçu pour interpréter et compiler le Pascal Objet de Delphi. À la différence de Java dont le slogan est « write once run anywhere » (écrire une fois, exécuter partout), celui de Lazarus et Free Pascal est « write once compile anywhere » (écrire une fois, compiler partout). Ainsi, Lazarus lui-même a été écrit en Pascal et fonctionne avec une seule base de code. [1]

Programme

- Présentation et principes généraux de la modélisation UML : 2 jours
- Outils collaboratifs : 2 + 2 jours
- Algorithmie et programmation structurée : 4 jours
- Conception de bases de données et de SGBD : 3 + 2 jours
- Interrogation d’une base de données en langage SQL : 3 + 2 jours
- Aspects communautaires du logiciel libre : 1 jour
- Présentation et principes généraux de l’approche orientée objet : 2 jours
- Programmation sous l’EDI Lazarus : 13 + 9 jours
- Conversion d’un programme Lazarus vers Android : 3 + 1 jours
- Aspect juridique du logiciel libre : 1 jour
- Lazarus et les tests unitaires : 1 jour
- Projet final : 5 jours
- Soutenance : 1 jour

Présentation et principes généraux de la modélisation UML

- 2 jours d’apprentissage.

UML
- Présentation de la qualité en génie logiciel
- Historique de la modélisation UML
- Les différentes vues représentées en UML
- Les différents diagrammes existants en UML

Modélisation fonctionnelle
- Le diagramme de cas d’utilisation
- La description du scénario
- Exercices

Modélisation statique du modèle
- Représentation statique du modèle : le diagramme de classes
- L’héritage et le polymorphisme
- L’association et l’agrégation
- Les Modificateurs d’accès
- L’interface
- Le package

Modélisation dynamique du modèle
- Diagramme d’états/transition
- Diagramme d’activité
- Diagramme de séquence
- Diagramme de collaboration

Méthodologie UML pour le développeur
- Rédaction du cahier des charges
- Analyse (niveau besoin)
- Analyse (niveau conception)
- Codage de la solution
- Recette de l’application


Outils collaboratifs

- 2 jours d’apprentissage et 2 journées de travaux pratiques

Utiliser Git
- historique et utilisations de Git
- développer un projet communautaire avec Git

Utiliser etherpad
- découvrir et utiliser collaborativement un pad
- simplisme !

Utiliser une gestion de projet
- les outils de gestion de projet
- les Post-IT et la méthode Agile

Utiliser Moodle
- se connecter et utiliser le LMS de formation en ligne
- les documents des stagiaires

Travaux pratiques
- projet libre en commun


Algorithmie et programmation structurée

- 4 jours d’apprentissage

Présentation et structure d’un algorithme
- Les variables
- Les opérateurs
- La lecture et l’écriture
- Le fonctionnement et l’utilisation des conditions
- Le fonctionnement et l’utilisation des boucles
- Les tableaux
- Les tableaux multi-dimensionnels
- Les structures
- Les appels de fonction
- Les fonctions et procédures


Conception de bases de données et de SGBD

- 3 jours d’apprentissage et 2 journées de travaux pratiques

Les bases de données et les SGBD
- Utilité d’une base de données
- Gestion des bases de données
- Définitions

Les SGBD
- Définition
- Types de SGBD

L’étude du système d’information
- Introduction
- Vocabulaire
- Principes du recueil des informations

Du fonctionnement du descriptif de document à la création du dictionnaire de données
- Les explications
- Les données manipulées
- Les données calculées
- Le dictionnaire de données

Le Modèle Conceptuel de données
- Définition
- Vocabulaire
- Types de relations

Passage du dictionnaire des données au MCD
- Démarche

Le Modèle Logique de données
- Définition

Passage du MCD au MLD
- Passage de la relation binaire aux cardinalités (x,1) - (x,n) à la création d’une clé étrangère
- Passage de la relation binaire aux cardinalités (x,n) – (x,n) à la création d’une entité
- Passage de la relation ternaire aux cardinalités (x,n) – (x,n) à la création d’une entité
- Passage de la relation récursive (x,1) - (x,n) à la création d’une clé étrangère

Travaux pratiques


Interrogation d’une base de données en langage SQL

- 3 jours d’apprentissage et 2 journées de travaux pratiques

Le SQL
- Définition
- Historique
- Subdivisions du SQL

La subdivision DCL plus en détail
- La création de table
- Les jointures
- La modification de table
- La suppression de table

La subdivision DML plus en détail
- L’insertion d’enregistrement
- La modification d’enregistrement
- La suppression d’enregistrement
- La sélection

La sélection approfondissement
- La clause where
- Le mot clé between
- Le mot clé distinct
- La clause in, not in
- La clause is null, is not null
- Le mot clé like
- La clause order by

La sélection suite
- Les opérateurs arithmétiques
- L’alias
- Les fonctions
- La clause group by
- La clause having

Les jointures en SQL 2
- Les jointures internes
- Les jointures externe

Les sous-requêtes
- Exemples


Aspects communautaires du logiciel libre

- 1 jour d’apprentissage

Les bonnes pratiques LL
- Les outils
- Les forges

Les aspects juridiques du logiciel libre
- Les licences libres
- Les pratiques commerciales


Présentation et principes généraux de l’approche orientée objet

- 2 jours d’apprentissage

L’approche Objet
- Présentation
- Principes généraux
- Historique de la programmation orientée objet

Comparaison de la programmation orientée objet et de la programmation procédurale
- Au niveau de la programmation procédurale
- Différences et points communs entre l’approche objet et l’approche procédurale
- Les avantages de l’approche objet

Les éléments de la programmation orientée objet
- Notions d’objet et de classe
- Les messages et les événements
- Abstraction et encapsulation de données
- Implémentation : définition des méthodes
- Les Constructeurs
- Les membres statiques (membres de classe)

Les éléments de la programmation orientée objet
- Représentation statique du modèle : le diagramme de classes
- L’héritage et le polymorphisme
- L’association et l’agrégation
- Les Modificateurs d’accès
- L’interface
- Le package


La programmation sous l’EDI Lazarus

- 13 jours d’apprentissage + 9 journées de travaux pratiques

L’interface de l’environnement de Lazarus
- la compilation, l’exécution d’une application graphique
- la différence entre fiches et unités
- les points d’arrêt et la mise en place de témoin

Les principes de base du Pascal Objet
- maîtriser la déclaration et la définition des variables
- maîtriser les opérateurs
- écrire les commentaires
- réaliser des tableaux

Le fonctionnement des conditions
- utiliser les conditions si / sinon
- utiliser le selon si

Le fonctionnement des boucles
- utiliser la boucle pour
- utiliser la boucle tant que

Les composants de base de la palette Lazarus
- créer un composant sur une fiche et y faire référence
- utiliser l’inspecteur d’objet

Savoir utiliser les composants
- liés aux fichiers et aux boîtes de dialogues
- liés au temps et au système
- liés aux bases de données
- liés aux générateurs de scripts et de langages
- savoir installer et dés-installer des composants supplémentaires (exemple avec l’installation d’un composant de type générateur de pdf et avec un générateur de carte)

Les autres éléments de l’environnement Lazarus
- application console
- librairie
- paquet


La conversion d’un programme Lazarus vers Androïd

- 3 jours d’apprentissage + 1 jours de travaux pratiques

- Historique de la programmation mobile
- Programmation mobile avec Lazarus


Lazarus et les tests unitaires

- 1 jour d’apprentissage

- Les étapes d’un projet
- Définition de la recette d’un projet
- mise en place des tests unitaires sous Lazarus


Projet final

- 5 jours


Soutenance

- Soutenance sur le projet final
- 1 jour