DEVELOPPEMENT LOGICIEL



Documents pareils
Devenez un véritable développeur web en 3 mois!

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme ASI Développeur

les techniques d'extraction, les formulaires et intégration dans un site WEB

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Joomla! Création et administration d'un site web - Version numérique

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

ASP.NET MVC 4 Développement d'applications Web en C# - Concepts et bonnes pratiques

Introduction à. Oracle Application Express

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

BES WEBDEVELOPER ACTIVITÉ RÔLE

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

SIO Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault

Point sur les solutions de développement d apps pour les périphériques mobiles

RESUME DE CARRIERE. Alice JULIENNE. 23 ans Nationalité Française Développeur Web Front-End. Compétences

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Application web de gestion de comptes en banques

Formation : WEbMaster

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

PHP 5.4 Développez un site web dynamique et interactif

Programmation Web. Madalina Croitoru IUT Montpellier

THÉMATIQUES. Comprendre les frameworks productifs. Découvrir leurs usages. Synthèse

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

EXTENSION de Microsoft Dynamics CRM Réf FR 80452

ANALYSTE PROGRAMMEUR DIPLÔME D ÉTABLISSEMENT

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Réalisation d une application de soumission de cours en ligne de l Université Virtuelle de Tunis

Table des matières L INTEGRATION DE SAS AVEC JMP. Les échanges de données entre SAS et JMP, en mode déconnecté. Dans JMP

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

Nouveautés de Drupal 8. Léon

CQP Développeur Nouvelles Technologies (DNT)

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Technologies Web avancées. ING1 SIGL Technologies Web avancées

DEVELOPPEMENT MOBILE - ETAT DE L ART DES SOLUTIONS

Java c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/ Vue générale 2 - Mon premier programme 3 - Types de Programme Java

Chapitre 1 Windows Server

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

Bonnes pratiques de développement JavaScript

GOOGLE, OUTILS EN LIGNE

Formation SharePoint Server 2013

//////////////////////////////////////////////////////////////////// Administration bases de données

Hébergement de site web Damien Nouvel

Du 10 Fév. au 14 Mars 2014

et Groupe Eyrolles, 2006, ISBN :

Catalogue des formations Edition 2015

Internet Information Services (versions 7 et 7.5) Installation, configuration et maintenance du serveur Web de Microsoft

Dispositif sur budget fédéral

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

application Chouette -

Plan de notre intervention 1. Pourquoi le test de charge? 2. Les différents types de tests de charge 1.1. Le test de performance 1.2.

Environnements de développement (intégrés)

E-TRANSACTIONS. Guide du programmeur API Plug-in. Version 1.1

CATALOGUE DE FORMATIONS SAP BUSINESS OBJECTS. Edition 2012

Formation en Logiciels Libres. Fiche d inscription

Construire un réseau social avec Symfony Xavier Lacot Clever Age. Symfony Live 11 et 12 juin 2009 Clever Age Xavier Lacot

Drupal un CMS orienté mé2er. Romain JARRAUD Mathieu GROS

SharePoint 2013 Développez en.net pour personnaliser SharePoint (Apps, REST, CSOM et Azure)

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Compte Rendu d intégration d application

SOMMAIRE Thématique : Systèmes d'information et d'exploitation

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Introduction au développement SharePoint. Version 1.0

Du 23 Janvier au 3 Février2012 Tunis (Tunisie)

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Fiche Produit Desktop Popup

PostgreSQL. Formations. SQL avancé Calendrier... 18

Le stockage local de données en HTML5

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Messagerie & Groupeware. augmentez l expertise de votre capital humain

Bureautique Initiation Excel-Powerpoint

INGÉNIEUR - DÉVELOPPEUR SENIOR PHP. 28 ans - 8 ans d'expérience

Documentation de conception

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

Offre Décisionnel / CONSEIL, SOLUTIONS DE TRANSFORMATION ET SERVICES IT. Offre Décisionnel

INFRASTRUCTURES & RESEAUX

Webmaster / Webdesigner / Wordpress

Alfstore workflow framework Spécification technique

Bien architecturer une application REST

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Auteur LARDOUX Guillaume Contact Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

CAHIER DES CHARGES D IMPLANTATION

Refonte front-office / back-office - Architecture & Conception -

METIERS DU MARKETING ET DE LA COMMUNICATION

PROGRAMME DE LA 1ERE JOURNEE DE FORMATION : QUALITE WEB ET REFERENCEMENT NATUREL

Transcription:

DEVELOPPEMENT LOGICIEL LE FRAMEWORK WEB RUBY ON RAIL REF : WELA010 DUREE : 4 JOURS TARIF : 2 060 HT Public Développeurs d applications web, Chefs de projet techniques, Architectes. Pré-requis Programmation orientée objet et expérience en développement web. Rails, également appelé Ruby on Rails (RoR), est un framework de développement Web basé sur le langage Ruby, qui apporte aux développeurs une productivité accrue, un code concis et un accèss aux bases de données simplifiée. Cette formation très complète sur Ruby On Rails, vous permettra d'acquérir les fondamentaux du développement web avec Ruby on Rails et d'appréhender l'apport de ce framework pour une mise en oeuvre immédiate dans vos projets. Objectifs pédagogiques Comprendre et écrire du code Ruby, Maîtriser les bonnes pratiques de construction d'une application Ruby on Rails, Utiliser quelques bibliothèques (gems) populaires, Déployer leur application sur le cloud..

Programme PROGRAMME DE LA 1ERE JOURNEE DE FORMATION PRESENTATION GENERALE DE RUBY Présentation et historique du langage Ruby Qu est-ce que Ruby on Rails? Quelles sont les avantages du langage Ruby et du framework Ruby on Rails? Retour d expérience sur un projet développé avec Ruby on Rails INSTALLER UN ENVIRONNEMENT DE DEVELOPPEMENT RUBY SUR SA MACHINE Installation de Git, SQLite, RBenv / RVM, Ruby, Bundler et Rails selon son système (Mac OS, Windows, Linux) Comment faire cohabiter plusieurs interpréteurs Ruby avec RBenv et RVM? Présentation des IDE et éditeurs (RubyMine, SublimeText, TextMate, Vim, etc.) COMPRENDRE ET ECRIRE DU CODE RUBY Introduction au langage Ruby : syntaxe, convention, Duck Typing, etc. Les principaux types de données : chaines de caractères, entiers, tableaux, dictionnaires, symboles, expressions booléennes Structure de contrôle : conditions, boucles, ect. Définition de méthodes La notion de bloc Les Lambdas et les Procs Définition de classes : constructeurs, variables d instance, accesseurs, méthodes d instance, variables de classe, méthodes de classe, contrôle des accès. Manipulation des objets Présentation de method_missing Héritage de classes : visibilité, super-classes et sous-classes, redéfinition de méthodes, appel de constructeurs de super-classes Les modules : packages, mixins

Gestion des exceptions TP avec l'interpréteur en ligne de commande «irb» PROGRAMME DE LA 2NDE JOURNEE DE FORMATION CONSTRUIRE UNE APPLICATION RUBY ON RAILS Présentation et historique de Ruby on Rails Création d une application Présentation de la structure d un projet Rails L'architecture MVC (Modèle-Vue-Contrôleur) Les environnements : test, development, production Configuration d une application : initialisation, connexion à la base de données Installation et gestion des gems La ligne de commande et Rails Exécution du serveur web Cheminement d une requête HTTP Savoir lire et configurer les logs TP : Génération d un CRUD (create, read, update, delete) sur une ressource de notes, Versionner son code avec Git LE MODELE Comprendre la correspondance entre modèle objet et base de données relationnelle Interagir avec la base de données à l'aide d'active Record : création, mise à jour, lecture et suppression d'enregistrements Générer, écrire et exécuter des migrations TP avec «rails console» LA VUE Présentation des langages de templating ERB et HAML Utilisation des helpers de vue : link_to, image_tag, etc.

Création de helpers de vue personnalisés Construction de formulaires Explication du système de Layout TP : Installation et utilisation de la gem simple_form LE CONTROLEUR Présentation de l architecture REST Le rôle du contrôleur Génération de contrôleurs Le déroulement d une action dans un contrôleur : récupérer les paramètres HTTP, gestion du rendu, passage de paramètres à la vue, etc. LE ROUTAGE Les règles de routage Correspondance entre URL et actions de contrôleur Correspondance entre URL et helpers d URL Les règles de routage des ressources Les règles personnalisées Vérifier ces règles de routage avec «rake routes» TP : METTRE EN PLACE UNE RECHERCHE SUR LES NOTES (PARTIE MODELE) Trouver la bonne requête à l aide de «rails console» Implémenter la recherche dans son modèle TESTER SON APPLICATION RUBY ON RAILS Qu'est-ce qu'un test? A quoi cela sert-il de tester son code? Que peut-on tester? (modèles, vues, contrôleurs, etc.)

Les fixtures Les différents types de tests : unitaires, fonctionnels, d intégration, de performance TP : tester l implémentation de sa recherche de notes TP : METTRE EN PLACE UNE RECHERCHE SUR LES NOTES (PARTIE CONTROLEUR / VUE) Ajouter une action au contrôleur Ajouter une règle de routage Modifier la vue pour ajouter un formulaire de recherche de notes PROGRAMME DE LA 3EME JOURNEE DE FORMATION DEPLOYER SON APPLICATION SUR HEROKU Création d un compte Heroku Création d une application Cedar Configuration de son application pour le déploiement Procédure de déploiement et environnement de production Les différentes commandes pour interagir avec son application en production Les add-ons Heroku TP : déploiement de son application sur Heroku CYCLE DE VIE ET INTEGRITE DES MODELES Cycle de vie d un objet Active Record Méthodes de «call-back» Mécanisme de validation d un objet Active Record Utilisation de règles de validation Création de règles de validation personnalisées TP : Ajouter des règles de validation sur le modèle Note OPTIMISER ET GERER VOS RESSOURCES STATIQUES AVEC L'ASSET PIPELINE

Qu est-ce que l Asset Pipeline? Comment utiliser l Asset Pipeline (en développement, en production)? Présentation de SASS et CoffeeScript TRAVAUX PRATIQUES Mise en place du framework CSS : Bootstrap Twitter Mise en place d une pagination Installation et configuration de la gem will_paginate Utilisation de la gem pour paginer les notes sans AJAX Pagination des notes avec AJAX CREER UNE API REST Contrôleur et architecture REST Sérialisation JSON et XML Création d une API REST simple Présentation de RABL pour définir le format de sérialisation de la réponse Solution pour protéger une API REST PROGRAMME DE LA 4EME JOURNEE DE FORMATION ASSOCIATIONS ENTRE MODÈLES Association «one to many» Association «many to many» Association «many to many» avec table de jointure valuée Mise à jour de la structure de la base de données Manipulation de grappes d objets TP : création d un modèle User et de l association «one to many» entre les modèles User et Note

LE MODELE AVANCE DE RUBY ON RAILS Création d un scope Gestion du cache au niveau d Active Record Les méthodes «find» dynamiques Les différentes utilisations de la méthode «where» Active Record et la génération de requêtes avancées : jointure externe, sous-requête, etc. Les pièges à éviter ENVOI D'EMAILS Envoi d'emails basiques avec Active Mailer Configuration de Active Mailer Mails HTML SESSION, COOKIES ET AUTHENTIFICATION Où stocker la session? (cookies, base de données, etc.) Manipulation de la session Manipulation des cookies Affichage de messages Flash Exemple d'utilisation de la session avec un système authentification TP : mise en place d un système authentification avec la gem Devise et d une interface d'administration avec la gem Active Admin