FORMATION

MAÎTRISER LES NOUVEAUX CONCEPTS (J1 + J2)

warning: file_get_contents(http://www.telize.com/geoip/54.92.201.232) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /var/www/www.4d.com/docs/includes/common.inc(1762) : eval()'d code on line 4.
2 jours

Il s'agit de renouveler sa façon de penser, de concevoir de nouvelles analyses, d'appréhender de nouveaux concepts. Les priorités ont changé. Ce qui se basait sur une optimisation du code et de la mémoire, se fonde actuellement sur une optimisation de la lisibilité, sur une fiabilité accrue, et une modularité permettant la réutilisabilité du code. On doit à présent porter plus d'effort sur la réduction des temps (développement, maintenance, evolution) que sur celle des cycles CPU.

Il est capital d'acquérir la maîtrise de ce nouvel outil qui révolutionne la conception et le développement. Cette formation est destinée aussi bien aux développeurs 4D possédant une bonne maîtrise de la manière 'classique', qu'aux développeurs provenant d'autres 'mondes' (Javascript, Java, PHP) et qui désirent intégrer leurs connaissances au sein des applications 4D.

 

Elle traite des concepts et des stratégies, et apporte une connaissance approfondie des mécanismes internes, permettant au développeur d'appliquer des méthodes de programmation orientées objet et de s'adapter à l'utilisation des nouveaux outils actuels et futurs.

Jour 1 :


- Rapide rappel sur la structure interne des objets 4D

Enregistrements

Tables d'adresses

Ensembles et Clusters

Index

Sélections et Sélections Nommées

Collections

Objets volumineux sur disque (blobs, images, multimédia, objets, gros textes)

 

- Les Objets 4D en mémoire

Place utilisée : L'ancien et le moderne

Refcounting

Objets directs et Références

Utilisation correcte des Pointeurs et des Références

Objets type JSON

Objets type Collections

Opérations sur les Objets


 - Les objets pour doper votre code

Objets en programmation

Objets comme paramètres

Tableaux et fonctions de Hash

Tableaux associatifs

 

- Variables : Du Statique au Dynamique

Noms des Objets Formulaires

Objets Formulaires et sources de données

Utilisation étendue des Listboxes

Callbacks

Concepts sur les contextes


- Les Objets dans les Formulaires

Nom des Objets

Utilisation intensive des Noms d'Objets en programmation

Formulaires 100% dynamiques

Objet et Data Source

Utilisation du langage objet dans les Formulaires

Utilisation extensive des ListBoxes

Concepts sur les Contextes

- La programmation moderne de 4D (The Modern 4D Cookbook)

Approche de la programmation orientée objet (OOP) dans 4D

Les Données, encore les Données, toujours les Données...

Des Paramètres partout...

Optimiser la programmation

Optimiser la gestion des tableaux

Différences entre Collections et Tableaux d'Objets

Utilisation du langage objet (notation à points) et de ses subtilités

Chaînage des commandes

Programmation Indépendante de la structure

Objets réutilisables

Composants : Pourquoi et comment

Optimiser les recherches

Utilisation des champs de type Objets

Utilisation des Collections

 

Utilisation de la notation à Points dans le langage

Généraliser le concept de recherche

 

- Utilisation de PHP et Javascript dans 4D

Pourquoi, Quand, et Comment

Exemples pratiques et simples

Utilisation de scripts PHP

Exemple simple de greffage de PHP sur 4D

Exemple simple de greffage de Javascript sur 4D

Introduction aux échanges de données avec 4D

 

- Questions diverses



Jour 2 :


- La structure des données : du 'Schemaful' au 'Schemaflex'

Objets en tant que champs

Gérer les champs à structure variable

Ajouter en quelques clics, des champs librement paramétrables par l'utilisateur

Recherches, tris, et utilisation de ces champs : Aujourd'hui et demain

Les pièges des structures de données de type Key-Value Store

 

- Des nombres aux noms

Comment passer doucement des numéros de tables, de champs, de process, d'enregistrements, à des identifiants sous forme de noms : Pourquoi et comment ?

 

- Le Langage : du Classique à la NovLangue

Utilisation du langage Objet, et préparation aux futures évolutions.


- Du 32 bits au 64 bits

Pourquoi faut-il passer en 64 bits ?

Le nouveau gestionnaire de mémoire

Les problèmes liés aux ressources sur Mac et Windows : PICT, cicn, STR#

 

- Du CALL PROCESS au CALL FORM

Se débarrasser de l'événement Sur appel extérieur

Se débarrasser de l'événement Sur minuteur

Se débarrasser des Process de CallBack

Multiplier les fenêtres sans multiplier les process

 

- Des Process aux Workers

Similarités & différences entre Process et Worker

Avantages des Workers

 

- Du Coopératif au Préemptif

Se préparer au Multithreading v16

Programmation parallèle et asynchrone

Comprendre les contextes des process, des workers, des fenêtres, et des formulaires

Les techniques de Messaging, Slicing, Chunking, sans (trop) de casse-têtes

Comment survivre à l'absence de variables inter-process ?

Se préparer aux futures évolutions

 

 

- Questions diverses

Prix H.T. : 1200 €

Durée :
2 jours


Public :

Développeurs 4D ou venant d'autres horizons.



Pré-requis :

Bonne expérience du développement.


Prochaine(s) session(s) :

    Lieu : 4D SAS - Le Pecq

    Formateur(s) :
    • Jean-Pierre Ribreau
    Niveau de difficulténouveauManipulationPossible en intra