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

 


Développer pour le web en Java avec le framework JBoss Seam

Objectifs de la formation

 Comprendre ce qu'apporte JBoss Seam et pourquoi il a été créé. Maîtriser les différents concepts de Seam. Savoir concevoir, développer et déployer une application web avec JBoss Seam.

Contenu du cours

 

Introduction et rappels

Ce chapitre introduit le stage en rappelant les concepts fondamentaux des technologies utilisées par le framework SeamArchitecture Java EE5Architecture multi-tiers distribuées, comparatif J2EE 1.4 et Java EE 5
Rappels sur conteneurs et composants
Apports de JEE5 (Annotation, injection de dépendance, ...)
Le standard JSFModèle MVC et composants d'interfaces
Le cycle JSF et ses différentes phases
Facelets et JSP
Ajax et JSF
EJB 3.0Le modèle EJB et la distribution
Les apports du container d'EJB, transaction, sécurité, sclability
Les différents types d'EJB et leurs rôles, la persistence API

Premiers pas avec Seam

Ce chapitre présente le minimum à savoir pour commencer à coder une application avec Seam. Le premier TP permet aux stagiaires de ce familiariser avec l'IDE et d'implémenter une architecture simple mettant en oeuvre les différents composants d'une application SeamPrésentation du projet Seam et de ses objectifs
Architecture des projets Seam
Mise en place de l'IDE. Plug-ins Eclipse. SeamGen
Composants Seam et contextes
Bijection et injection de dépendances
Seam et les phases JSF
Méthodes de call-back
Factory et composants métier
Composants implicites
Seam et le test
Configuration et packaging d'application seam
Travaux PratiquesMise en oeuvre d'un cas d'utilisation simple. (Enregistrement d'utilisateur)

Navigation avec jPDL

Un des intérêts du modèle MVC est de pouvoir centraliser la cinématique d'une application web dans des fichiers de configuration. Seam améliore les modèles navigationnels classiques (Struts, JSP) en proposant l'utilisation de jPDLPrésentation des deux modèles de navigation
Gestion du bouton « back »
Utilisation de jPDL
Le moteur de règle Drools
Gestion des erreurs
Travaux PratiquesUtilisation de jPdl pour gérer la navigation d'une application web..

Modèle conversationnel

Les applications web utilisent généralement la notion de session utilisateur pour préserver des données d'état entre les différentes requêtes http. Cependant, certaines données devraient avoir une durée de vie plus courte : celle du cas d'utilisation. Seam en introduisant la notion de conversation permet de pallier ce manquePrésentation, conversation et cas d'utilisation
Gestion des onglets du navigateur
Rôle des EJB session stateful
Délimitation des conversations
Les conversations imbriquées
Concurrence des contextes de conversation et la notion de workspace
Travaux PratiquesMise en place de workspaces dans une application web complète

Seam et la persistance

L'objectif de ce chapitre est de présenter la gestion des transactions avec Hibernate ainsi que des design patterns reconnus pour l'utilisation du frameworkRappels sur la persistance API de Java EE. Implémentation avec Hibernate
Rappel sur la notion de transaction, Transaction et concurrence d'accès, transactions utilisateurs
Attributs des contextes de persistance
Gestions des transactions par Seam. Les transactions dans les phases JSF
Framework de validation
Travaux PratiquesCas d'utilisation complet classique d'une application web

Seam et les interfaces riches

Ce chapitre aborde l'aspect présentation des applications Seam. En s'appuyant sur la technologie facelet et des taglibs additionnels, Seam permet de facilement introduire des composants Ajax et de modulariser les composants d'interfaceComparatif JSP et facelet
La Taglib Seam
Extensions de l'expression language
Ajax et JSF
Accès aux composants métier via Javascript
La taglib Ajax4jsf
Support pour les thèmes
Travaux PratiquesMise en place de composants Ajax classique (validation de données, auto-complétion, polling)

Autres fonctionnalités

Un des objectifs du framework est d'apporter des solutions simples à mettre en oeuvre à toute les problématiques classique des applications web. Ce dernier chapitre parcourt l'ensemble des apports de Seam dans ce domaineSécurité
Internationalisation
Support pour l'envoi et la réception d'email
iText et la génération PDF
Texte enrichi
Asynchronisme
Travaux PratiquesMise en oeuvre d'une application de type blog

Développement d'Applications pour la plateforme Java EE

Objectifs de la formation

 Cette formation Java EE fournit une présentation concise mais exhaustive du développement d'applications Web sur une plateforme Java EE. Elle permet aux participants d'avoir une vision d'ensemble de Java EE mais également une compréhension claire des technologies prenant part à la construction d'interfaces web. À l'issue de cette formation Java Web, les stagiaires seront capables d'approfondir en toute autonomie les différents sujets abordés et disposeront comme base référence des exemples de code respectant les patterns classiques du développement Web Java EE . Après une brève introduction explicitant les concepts fondateurs de cette spécification, les services coeurs de la couche de présentation de Java EE (servlet, filtres, listeners) sont abordés. Vient ensuite un chapitre sur la technologie de présentation JSP et JSTL qui se conclut par un atelier permettant de se familiariser avec les balises JSP les plus utiles. Le chapitre suivant aborde la logique métier et insiste sur l'interface métier mise à disposition de la couche de présentation. Enfin, le dernier chapitre démontre la simplicité des services web dans un contexte Java EE.

Contenu du cours

Présentation Développement d'applications Web avec Java EE

JAVA EE : une spécification des implémentations, domaine d'application, l'aspect distribué et transactionnelLes finalités et les apports de JAVA EE, évolutivité des applications, portabilité, montée en charge, sûreté de fonctionnement, indépendance vis-à-vis des éditeursComposant et conteneurs. Services techniques de conteneurs, L'architecture n-tiers et les composants associésLe packaging d'application, structure d'une archive .ear, descripteurs de déploiementDéfinition des technologies et APIs disponibles : Servlet, EJB 3.0, JSF, JPA, JMS, JNDI, JAAS, JAX-WS, ...Panorama des serveurs applicatifs

Applications Web - Java EE

Classification des applications : orientées présentation ou service, Modèle requête/réponse, rappels sur le protocole HTTPPartage d'information et notion de périmètre (requête, session, etc.), Gestion de session utilisateurLes servlets : rôle, cycle de vie , récupération de paramètre, construction de réponseLes filtres de requête ou de réponses, propagation de requête, délégation, les listenersTechnologies de présentation, Architecture MVC, comparaison JSP, JSF, Facelets. Ajax et JSFLes JavaBeansDéfinition d'un module web, packaging, le descripteur de déploiement web.xmlAtelierMise au point d'un contrôleur MVC

Couche de présentation

Présentation des technologies disponibles JSP, JSF, Facelets et frameworks dérivésLe pattern MVCMécanismes de JSP, transformation/compilationElements de syntaxes JSPExtensions du langage de balises avec JSTLLe standard JSF, ses objectifsLes différrents modèles de JSF : composant, validation, conversion, évènements, navigationJSF et Ajax, présentation des bibliothèques Ajax disponiblesJSF 2.0 et CDIAtelierMise au point d'un gestionnaire de commande web avec les différentes technologies

Présentation des  EJB 3.0

Les différents types d'EJBs et leur cycle de vie, les classes entitésServices techniques du conteneur : transaction et sécuritéEJBs Session stateless ou stateful, Accès distant ou localMise en place d'une API métier pour la couche de présentationEJB Session et HTTP Session

L'injection de dépendances avec CDI

Introduction à l'injection de dépendancesl'injection de dépendances dans les différents tiers Java EELes méthodes de call-backConfiguration via beans.xmlProducteurs et destructeursModèle évènementiel des applicationsIntecepteurs, décorateurs et stéréotypes

Web services

Définition et cas d'utilisation, Architecture SOA et technologies RESTLe format XML, Le protocole SOAP, Les formats WSDL et UDDIConstruire des services Web avec JAX-WSWeb service et EJB stateless

WordPress développeur

Objectifs de la formation

 À l’issue de cette formation WordPress avancé, les participants seront en mesure de :

  • Maîtriser les bonnes pratiques de développement PHP liés au CMS WordPress,
  • Utiliser les différents outils disponibles sur WordPress,
  • Créer des thèmes WordPress à partir de rien,
  • Créer un plugin WordPress.

Contenu du cours

 Présentation de WordPress
Qu’est-ce que WordPress ?
Quels sont les avantages et les inconvénients de WordPress ?
Où trouver des informations pratiques à propos de WordPress ?

Installation de WordPress sur un serveur local
Télécharger et installer WordPress
Configuration du fichier wp-config.php
Apprendre à installer WordPress en 1 clic avec WP Quick Install

Déclaration d’un thème WordPress
Qu’est­-ce qu’un thème ?
Déclaration d’un thème WordPress
Différences entre un thème parent et un thème enfant

Les templates
Définition et fonctionnement
Étude de la hiérarchie des templates

Les hooks WordPress
Définition et fonctionnement
Les actions et les filtres
Le fichier functions.php

La Boucle WordPress
Définition et fonctionnement
Personnaliser une boucle avec query_posts() ou WP_Query()

Les marqueurs conditionnels
Définition et fonctionnement
Les marqueurs les plus utilisés

Les sidebars
Déclaration d’une sidebar
Récupérer le contenu d’une sidebar sur un template

PROGRAMME DE LA 2NDE JOURNEE DE FORMATION
Les Custom Post Types
Définition et fonctionnement
Déclaration d’un Custom Post Type
Récupérer les derniers articles d’un Custom Post Type

Les taxonomies
Définition et fonctionnement
Déclaration d’une taxonomy
Récupérer les derniers articles d’une Taxonomy

Les champs personnalisés
Définition et fonctionnement
Afficher/Editer/Supprimer la valeur d’un champ personnalisé

Créer une Custom MetaBox
Définition et fonctionnement
Déclaration des champs dans l'administration
Enregistrement des données

Les images
Ajouter des nouveaux formats d’images
Récupérer les images liées à un article
Créer une galerie photos avec un effet de zoom

Créer une page Contactavec WordPress

Sécurité
Les fonctions de sécurité fournies par WordPress
Comment choisir et installer une extension en toute sécurité ?
Quelques extensions indispensables pour protéger son site

Optimisation
Temps de chargement des pages
Base de données
Réduction du poids des images

PROGRAMME DE LA 3EME JOURNEE DE FORMATION
Créer une page d'options à partir d'un plugin
Définition et fonctionnement
Déclaration d’un plugin
Les Settings API

AJAX
Les bonnes pratiques de l'AJAX
Les principes fondamentaux de l'AJAX avec WordPress
Cas pratique : création d'un formulaire de contact en AJAX

Les shortcodes
Définition et fonctionnement
Déclarer un shortcode basique
Déclarer un shortcode avancé
Utiliser un shortcode dans un template ou un widget

Les transients API
Définition et fonctionnement
Ajouter/Modifier/Supprimer un transient

Les tâches planifiées (cron)
Définition et fonctionnement
Programmer une tâche récursive
Programmer une tâche unique
Déprogrammer une tâche
Créer son propre intervalle de temps

Internationalisation
Les fonctions de traduction
Apprendre à traduire un thème
Apprendre à traduire un plugin

Drupal 8 Développeur

 

Objectifs de la formation

  • Créer son propre module qui sera capable d'interagir avec Drupal 8.
  • Utiliser Drupal comme un framework pour accélérer ses développements maison, en s'appuyant sur ses APIs.
  • Comprendre le fonctionnement global de Drupal 8 et le container (Symfony 2).
  • Adapter le fonctionnement du coeur de Drupal 8 ou de modules communautaires sans toucher à leur code source.

Contenu du cours

 

1) Introduction

  • Présentation rapide de Drupal et de son jargon (node, taxonomie...).
  • Présentation et installation des outils de développement (WAMP, Editeur PHP).
  • Téléchargement et installation de Drupal 8.
  • Les outils du développeur : Firebug, module "devel".
  • PHP objet : les concepts de base (classes, interfaces, injection de dépendance, PSR4, annotations...).

2) Création d'un module

  • Les fichiers nécessaires.
  • Structures des fichiers (autoloading).
  • PSR-0 et PSR-4.
  • Concepts hérités de Symfony 2 : container, services et injection de dépendance.

3) Plugins

  • Qu'est-ce qu'un plugin ?
  • Mécanisme de découverte (annotation PHP).
  • Exemple de plugin et implémentation.

4) Le système de routing

  • Comment Drupal gère le routing.
  • Comment faire correspondre une URL à une page.
  • Utilisation des méthodes create() et __construct().
  • Créer des URLs dynamiques.
  • Ajout de liens de menu, de liens contextuels, de liens d'action et d'onglet.

5) Le système de bloc

  • Gestion des blocs avec Drupal 8.
  • Introduction aux types de bloc.
  • Comment créer un bloc avec Bloc Plugin.

6) La base de données

  • Comprendre la couche d'abstraction BDD de Drupal.
  • Entity API : gestion des entités de contenu et de configuration (EntityTypeManager et EntityQuery).
  • Se connecter à la base et effectuer des requêtes simples avec la Database API.
  • Enregistrer ses propres données en base avec la Schema API : fichier d'installation.

7) Les noeuds (exemple d'entité de contenu)

  • Qu'est-ce qu'un noeud ?
  • Créer un "node module".
  • Manipuler les noeuds programmatiquement.
  • Intercepter les actions effectuées sur les noeuds avec les hook_entity_XXX().
  • Ajout d'onglet sur chaque page de noeud.

8) Système de templating

  • Principes de la couche de thème : séparation fonctionnel/présentation.
  • TWIG.
  • Render Arrays.
  • Déclarer son propre formattage sous forme de template.

9) Les formulaires

  • Créer ses propres formulaires programmatiquement (Form API).
  • Gérer la validation et la soumission d'un formulaire.
  • Formulaires AJAX. *
  • Changer la présentation d'un formulaire. *
  • Modifier un formulaire généré par Drupal ou un autre module sans toucher au code source de ce formulaire (hook_form_alter). *

10) Config API

  • Principe du Configuration Management : fichiers YAML, import/export.
  • Créer un formulaire dans le back-office de Drupal.
  • Ajouter sa propre configuration : manipulation de l'objet Config.
  • Traduction de configuration.

11) Sécurité

  • Protéger l'accès à un bloc.
  • Protéger l'accès à une page.
  • Créer son propre système de contrôle d'accès sous forme de service.

WordPress : Gestion de contenu et administration avec WordPress

Objectifs de la formation

 Durant cette formation WordPress, vous allez apprendre à installer et gérer le contenu d'un site Internet sans aucune connaissance informatique. WordPress est actuellement le système de gestion de contenu le plus utilisé. Il est facile à installer (seulement 3 étapes) et son interface d'administration est conviviale et rapide de prise en main pour les utilisateurs débutants.

Concrètement, à l'issue de cette formation WordPress, vous serez capable de :
- Appréhender les fondamentaux du CMS WordPress,
- Maitriser et configurer WordPress pour gérer leur propre contenu,
- Optimiser leur site en mettant en place de nouveaux outils.

Contenu du cours

 

Présentation de WordPress

Qu’est-ce que WordPress ?Quels sont les avantages et les inconvénients de WordPress ?Où trouver des informations pratiques à propos de WordPress



Téléchargement et installation de WordPress sur un serveur local

Découverte de l’interface d’administration de WordPress

Le tableau de bordLes articlesLes médiasLes liensLes pagesLes commentairesLes utilisateurs



Configuration et paramétrage de WordPress

Apprendre à gérer le contenu de son siteGestion des articles et des pages : ajout, édition, suppressionGestion et paramétrage des commentairesGestion des liensGestion des menus de navigation

Gestion des différents médias

Configuration et paramétrages des différents formats d’imagesOptimiser les images pour le référencement

Apprendre à gérer l’apparence de son site avec WordPress

Installer et configurer son thèmeUtilisation des Sidebars et des Widgets

Installer et configurer des extensions

Qu’est-ce qu’une extension WordPress ?Comment choisir une extension ?Quelles sont les meilleures extensions ?Télécharger et installer des extensions



Gestion des utilisateurs et des droits d’accès avec WordPress

Ajouter/éditer un utilisateurGérer de nouveaux rôles et de nouvelles permissionsGérer les accès aux différents menus selon les rôles



Optimiser et sécuriser son site

Installer et configurer les extensions WordPress SEO et WP Super CacheEffectuer une sauvegarde du site et de la base de donnéesLes bonnes pratiques pour protéger son site des pirates

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