Bonnes Pratiques de Développement PHP. Pascal MARTIN SQLI Forum PHP 2009, Paris

Dimension: px
Commencer à balayer dès la page:

Download "Bonnes Pratiques de Développement PHP. Pascal MARTIN SQLI Forum PHP 2009, Paris"

Transcription

1 Bonnes Pratiques de Développement PHP Pascal MARTIN SQLI Forum PHP 2009, Paris

2 Quelques mots Environnement de travail Contrôle de source Développer [en PHP] Normes de codage Tests Automatisés Documentation Intégration continue Déploiement Encore un peu?

3 Bonnes pratiques de développement PHP Pascal MARTIN 3 A Propos de moi Pascal MARTIN Expert Technique PHP chez SQLI Membre de la Cellule Architecture PHP Capitalisation Veille Technologique Interventions au lancement de projets Blog Perso

4 Bonnes pratiques de développement PHP Pascal MARTIN 4 A Propos de vous? Développeurs PHP Curieux / Passionnés Voulant / pouvant améliorer les processus Vos / Nos Projets? Maintenables? Organisés? Documentés? Et si vous partez en vacances?

5 Bonnes pratiques de développement PHP Pascal MARTIN 5 A Propos de cette présentation Quelques notes Expérience pro / perso Retours d'autres projets Pas une vérité absolue! Ni un ensemble de solutions toute prêtes! Plein d'autres choses fantastiques à découvrir ;-)

6 Bonnes pratiques de développement PHP Pascal MARTIN 6 Plusieurs niveaux Bonnes pratiques : plusieurs niveaux Sur tout le projet Relation avec le client Configuration des serveurs Code PHP Processus de développement Environnement de travail

7 Environnement de travail

8 «Ton fichier PHP est pourri, notepad m'affiche tout sur une seule ligne!»

9 Bonnes pratiques de développement PHP Pascal MARTIN 9 Utiliser un IDE 1 J'admets Machine puissante Temps d'adaptation / prise en main «Trop» dans certains cas

10 Bonnes pratiques de développement PHP Pascal MARTIN 10 Utiliser un IDE 2 Mais Gros projet, en équipe Framework / bibliothèques Plein de code peu connu Quels IDE? Eclipse PDT / Zend Studio Netbeans Débugger intégré ;-)

11 Bonnes pratiques de développement PHP Pascal MARTIN 11 Linux 1 LAMP => Linux Serveurs de production Ligne de commande «Heu... Je clique où???» «WTF???» Différences de comportement de PHP!

12 Bonnes pratiques de développement PHP Pascal MARTIN 12 Linux «Heu??? Au secours!»

13 Bonnes pratiques de développement PHP Pascal MARTIN 13 Linux 3 Quelques notions Peut être salvateur Incident sur un serveur de production «Gars qui connait» absent? Mais aussi pour du développement Suivi logs Notions de configuration Solution possible : Virtualisation Développement sous Windows Serveur LAMP : machine virtuelle

14 Contrôle de source

15 «Quand quelqu'un veut commencer à modifier un fichier, il le «réserve» sur MSN»

16 Bonnes pratiques de développement PHP Pascal MARTIN 16 Contrôle de source Quelques questions Est-ce que quelqu'un a modifié quelque chose? Comment synchroniser entre développeurs? Comment obtenir la version du 14 avril 2008? Qu'est-ce qui a changé entre le 19 mai et le 23 juillet? Deux types de contrôles de source Centralisés Distribués

17 Bonnes pratiques de développement PHP Pascal MARTIN 17 VCS Centralisé Subversion SVN Principe Travail local sur checkout du repository Automatisations basées sur les commits Mais Serveur nécessaire! Peu de travail sans connexion Excellent support! Forte intégration

18 Bonnes pratiques de développement PHP Pascal MARTIN 18 VCS Décentralisé Git, Bazaar, Mercurial, Darcs, Principe Travail sur une branche / copie locale Partage des modifications entre repositories Quelques avantages Pas besoin de serveur centralisé Facilite le fork local Moins intégré? Moins répandu? Moins de processus d'automatisation?

19 Développer [en PHP]

20 «Votre citation, ici ;-)»

21 Bonnes pratiques de développement PHP Pascal MARTIN 21 Ne développez pas! Utilisez ce qui existe déjà Vous n'êtes pas le seul à vouloir une application qui fasse X, Y, et Z Applications entières CMS, CRM, E-Commerce, Libres? Adaptez Ne développez que des modules Là où vos besoins sont spécifiques

22 Bonnes pratiques de développement PHP Pascal MARTIN 22 Framework Grand sujet de débat Ne pas réinventer la roue Framework perso Zend Framework, symfony, Cake,... Bibliothèques Composants de Frameworks PEAR Ou pas?

23 Normes de codage

24 «Il est illisible, son code, je comprends rien!»

25 Bonnes pratiques de développement PHP Pascal MARTIN 25 Pourquoi une norme de codage? Uniformité Consistance Lisibilité Se concentrer sur le code Ne pas perdre du temps à le formater mentalement Facilite la collaboration

26 Bonnes pratiques de développement PHP Pascal MARTIN 26 Quoi? Comment? Indentation Position des parenthèses / accolades Retours à la ligne Nommage de variables / classes / méthodes Nommages / organisation des fichiers Longueurs de lignes Documentation...

27 Bonnes pratiques de développement PHP Pascal MARTIN 27 Quelques exemples 1 Classes MonNomDeClasse Méthodes, variables, propriétés monnomdemethode Propriétés privées / protégées _monnomdepropriete Constantes MA_CONSTANTE

28 Bonnes pratiques de développement PHP Pascal MARTIN 28 Quelques exemples 2 Fichiers et répertoires Classe Societe_Generateur_Document_Pdf Répertoires / Fichier Societe/Generateur/Document/Pdf.php Une classe par fichier Conversion des «_» en «/» Facilite l'autoload PHP 5.3 : Généralisable aux namespaces

29 Bonnes pratiques de développement PHP Pascal MARTIN 29 Quelques exemples 3 Indentation Espaces vs tabulations 2 ou 4 espaces Position des accolades? public static function delete($idaccount) { try { $db->begintransaction(); if (...) { throw new Exception("..."); } //... $db->commit(); } catch (Exception $e) { $db->rollback(); } } // delete

30 Bonnes pratiques de développement PHP Pascal MARTIN 30 Quelques plus qu'exemples Soyons raisonnables Classes : méthodes Méthodes : lignes Fichiers : pas lignes! Respect de la structuration MVC : ne pas mélanger les couches Pas de requête SQL dans les templates

31 Bonnes pratiques de développement PHP Pascal MARTIN 31 Standards connus et reconnus N'inventez pas votre propre standard Utilisez un standard connu, répandu, accepté Celui de votre Framework / Application Normes de codage PEAR Configurez votre IDE

32 Bonnes pratiques de développement PHP Pascal MARTIN 32 Moyen de contrôle? Une norme de codage C'est bien Qu'elle soit respectée C'est mieux! Toute l'équipe doit utiliser le même standard Moyen de contrôle nécessaire (semi) Automatisé

33 Bonnes pratiques de développement PHP Pascal MARTIN 33 PHP_CodeSniffer PHP_CodeSniffer Analyse d'un code source + rapport $ phpcs -s /path/to/code/myfile.php FILE: /path/to/code/myfile.php FOUND 5 ERROR(S) AND 1 WARNING(S) AFFECTING 5 LINE(S) ERROR Missing file doc comment (PEAR.Commenting.FileComment) 20 ERROR PHP keywords must be lowercase; expected "false" but found "FALSE" (Generic.PHP.LowerCaseConstant) 47 ERROR Line not indented correctly; expected 4 spaces but found 1 (PEAR.WhiteSpace.ScopeIndent) 47 WARNING Equals sign not aligned with surrounding assignments (Generic.Formatting.MultipleStatementAlignment) 51 ERROR Missing function doc comment (PEAR.Commenting.FunctionComment) 88 ERROR Line not indented correctly; expected 9 spaces but found 6 (PEAR.WhiteSpace.ScopeIndent)

34 Bonnes pratiques de développement PHP Pascal MARTIN 34 Mise en place Dès le début du projet Sinon : énormément de travail Accepté / reconnu Par toute l'équipe Y compris le management Qualité! Et si le code est horrible?

35 Tests Automatisés

36 «On a testé il y a 6 mois, quand on a mis en prod ; depuis, on n'a pas le temps» «Des fois, ça plante»

37 Bonnes pratiques de développement PHP Pascal MARTIN 37 Fatal Error on line X Code peut casser Changement dans un fichier... Quel impact sur le reste de l'application? Nécessité de tester! «Pas le temps» Tester manuellement = long! Rarement fait Uniquement sur quelques pages Tests automatiques

38 Bonnes pratiques de développement PHP Pascal MARTIN 38 Tests Unitaires Tester une «unité» Un module / Une classe / Une méthode Indépendamment de tout le reste Tests Automatisés Détection de régressions Joués après chaque modification Rapides quelques secondes Code Coverage

39 Bonnes pratiques de développement PHP Pascal MARTIN 39 Tests Unitaires PHPUnit Framework de Tests Unitaires Difficultés? Temps / coût Code existant «non testable» Avantages Facilite le rework, les évolutions Confiance!

40 Bonnes pratiques de développement PHP Pascal MARTIN 40 Test Driven Development Écriture d'un test qui échoue Car implémentation non écrite Définit le comportement attendu Puis, écriture du code Qui passe le test Éventuellement Rework du code Sécurité : il est testé

41 Bonnes pratiques de développement PHP Pascal MARTIN 41 Tests d'intégration Tester Non plus des composants unitaires Mais l'assemblage des briques Voire toutes les couches de l'application Deux possibilités «Pseudo» requêtes HTTP Rapide, facile à mettre en place Utilisation d'un «vrai» navigateur Teste aussi l'interface utilisateur Support Javascript

42 Bonnes pratiques de développement PHP Pascal MARTIN 42 Zend_Test Classe Zend Framework Test via le MVC sans navigateur public function testlogginginshouldbeok() { $this->dispatch('/login/login'); $csrf = $this->_getloginformcsrf(); $this->resetresponse(); $this->request->setpost(array( 'login' => 'pmartin', 'password' => '123456', 'csrflogin' => $csrf, 'ok' => 'Login', )); $this->request->setmethod('post'); $this->dispatch('/login/login'); $this->assertredirectto('/'); $this->asserttrue(zend_auth::getinstance()->hasidentity()); }

43 Bonnes pratiques de développement PHP Pascal MARTIN 43 Selenium RC Pilotage d'un navigateur Intégré à PHPUnit! class functionnal_front_selenium_archivetest extends functionnal_testsutils_seleniumtestcase { public function testnavigationarchive() { $this->open("/"); $this- $this->waitforpagetoload("30000"); $this->assertequals("juin Mon premier blog", $this->gettitle()); $this->asserttrue($this->istextpresent("septième post")); $this- $this->waitforpagetoload("30000"); $this->asserttrue($this->iselementpresent("link=troisième post")); } }

44 Bonnes pratiques de développement PHP Pascal MARTIN 44 Quoi tester? Écrire des tests prend du temps Tout ne peut pas être testé Il n'est pas utile / indispensable de tout tester Ne pas (re-) tester le Framework! Tester Ce qui est important Ce qui risque de casser Ce qu'on modifie souvent? Ce que l'on va re-worker?

45 Bonnes pratiques de développement PHP Pascal MARTIN 45 Maintenir les Tests Suivre le déroulement des tests Tests non maintenus Inutiles Dangereux : «fausse sécurité» Maintenance Au fil de l'eau Quand modifications du comportement Requiert du temps

46 Documentation

47 «Comment ça marche?» «Heu...Vas voir dans le code»

48 Bonnes pratiques de développement PHP Pascal MARTIN 48 Plusieurs documentations Documentation d'api Technique : comment développer Classes, méthodes, paramètres, retours,... Documentation d'application Fonctionnel : comment utiliser l'application Scénarios d'utilisation, captures d'écrans,... Procédures Comment déployer en production Reprise sur incident

49 Bonnes pratiques de développement PHP Pascal MARTIN 49 Documentation d'api Docblocks Fichiers, Classes, Méthodes Quelques Génération PhpDocumentor Doxygen

50 Bonnes pratiques de développement PHP Pascal MARTIN 50 Exemple code /** * Some description here * Service Pascal MARTIN Use some real templating mecanism */ class Service_User { /** * Sends an to the user to inform him that his informations * have been created or updated * boolean $iscreate int $iduser string $password optionnal ; if not null, the new password of the user void */ public static function sendmailuserhasbeenmodified($iscreate, $iduser, $password=null) { //... } // sendmailuserhasbeenmodified }

51 Bonnes pratiques de développement PHP Pascal MARTIN 51 Exemple doc générée

52 Bonnes pratiques de développement PHP Pascal MARTIN 52 Pourquoi une doc d'api? Intégration IDE Documentation Technique Utilisable en PHP Mais N'empêche pas d'écrire du code «autodocumenté» Noms de méthodes / classes / variables clairs Significatifs Facilite la compréhension

53 Bonnes pratiques de développement PHP Pascal MARTIN 53 Doc d'api et IDE

54 Bonnes pratiques de développement PHP Pascal MARTIN 54 Documentation utilisateurs Pensez-y! Dépend Du type d'application Du public visé Comment est-ce que votre logiciel sera utilisé, sinon? Vous êtes aussi utilisateurs ;-)

55 Bonnes pratiques de développement PHP Pascal MARTIN 55 Doc utilisateur : Docbook Format XML Fréquemment utilisé pour les logiciels OSS Documentation de PHP! Plusieurs formats de sortie HTML, PDF, WYSIWYG XMLmind XML Editor Gratuit en version personnelle

56 Bonnes pratiques de développement PHP Pascal MARTIN 56 Docbook exemple <?xml version="1.0" encoding="utf-8"?> <chapter xml:id="language.functions" xmlns="http://docbook.org/ns/docbook"> <title>les fonctions</title> <sect1 xml:id="functions.user-defined"> <title>les fonctions définies par l'utilisateur</title> <para> Une fonction peut être définie en utilisant la syntaxe suivante : </para> <para> <example> <title>pseudo code pour illustrer l'usage d'une fonction</title> <programlisting role="php"> <![CDATA[ <?php function foo($arg_1, $arg_2, /*..., */ $arg_n) { echo "Exemple de fonction.\n"; return $retval; }?> ]]> </programlisting> </example> </para>

57 Bonnes pratiques de développement PHP Pascal MARTIN 57 Procédures Documentation «technique» Procédure d'installation Procédure de mise à jour Doivent être Connues de tous Maintenues à jour! Quelle forme? Fiches wiki?

58 Intégration continue

59 «Ça fait une semaine qu'on essaye de scotcher les composants ensemble ; y'a rien qui marche ;-(»

60 Bonnes pratiques de développement PHP Pascal MARTIN 60 Intégration Continue? Intégration fréquente Du travail de tous les membres de l'équipe Au moins une fois par jour Build automatique Tests Automatisés Vérifications Normes de codage Construction Documentation Archives

61 Bonnes pratiques de développement PHP Pascal MARTIN 61 Pourquoi de l'ic? Environnement stable Savoir où en est le projet Qualité / Quantité Composants développés Diminution des risques liés à l'intégration Devient un «non-événement» Détection de régressions Facilitée par les Tests Automatisés

62 Bonnes pratiques de développement PHP Pascal MARTIN 62 Plateforme d'ic Outil réalisant le build Interface «user-friendly» Historisation De tous les builds Y compris documentation, rapports,... Reporting Via l'interface Par mails Pas besoin de «tout» mettre en place!

63 Bonnes pratiques de développement PHP Pascal MARTIN 63 phpundercontrol phpundercontrol Basé sur CruiseControl / Ant Intégration des outils communs en PHP SVN PHPUnit + Xdebug PhpDocumentor PHP_CodeSniffer

64 Bonnes pratiques de développement PHP Pascal MARTIN 64 phpuc screenshot

65 Bonnes pratiques de développement PHP Pascal MARTIN 65 phpuc screenshot

66 Bonnes pratiques de développement PHP Pascal MARTIN 66 phpuc screenshot

67 Bonnes pratiques de développement PHP Pascal MARTIN 67 phpuc screenshot

68 Bonnes pratiques de développement PHP Pascal MARTIN 68 PIC chez SQLI Un des projets présentés au Forum cette année Allez faire un tour sur le stand! Basée sur phpundercontrol Avec plus de fonctionnalités Intégration des rapports de Zend Platform Utilisée sur les projets au Forfait à Paris Et composants utilisés sur certains projets dans d'autres agences

69 Bonnes pratiques de développement PHP Pascal MARTIN 69 Autres solutions? Liberté de choix ;-) Xinc Hudson Sismo

70 Déploiement

71 «Pierre est en vacances ; on ne peut pas livrer, on ne sait pas comment il fait d'habitude»

72 Bonnes pratiques de développement PHP Pascal MARTIN 72 Avant de commencer Suivez une procédure de déploiement clairement définie Ne bossez pas directement en production! Utilisez un serveur de tests, proche de la production Mêmes versions de logiciels, Même OS. Gardez trace de ce que vous livrez Contrôle de sources : «tag»

73 Bonnes pratiques de développement PHP Pascal MARTIN 73 Exemple de processus Développements Tests interne sur serveur d'intégration Tests + Validation interne Tag «production» Déploiement sur serveur de tests client Tests + Validation client Déploiement sur serveur de production Tests

74 Bonnes pratiques de développement PHP Pascal MARTIN 74 Automatiser le déploiement Déploiement automatique Moins de risque d'erreur de manipulation Genre «oubli d'une étape» Réalisable par n'importe qui Évite d'être bloqué en cas d'absence Documenté! Tests Automatiques aussi! Simples, rapides mais nécessaires

75 Bonnes pratiques de développement PHP Pascal MARTIN 75 Outils? Simples shell-scripts Ant / phing Package pear.deb /.rpm Lien symbolique Qui pointe sur la version actuelle Objectif : retour arrière facilité Ne pas écraser l'ancienne version

76 Bonnes pratiques de développement PHP Pascal MARTIN 76 Et après? Application en production Mais ce n'est pas fini! Monitorer Les serveurs Le fonctionnement de l'application Les logs

77 Encore un peu?

78 «WTF???»

79 Bonnes pratiques de développement PHP Pascal MARTIN 79 Veille Techno / curiosité Nous ne sommes pas seuls au monde Suivre l'actualité De PHP Des composants / logiciels Internet = source de savoir Flux RSS Twitter Événements Participez!

80 Bonnes pratiques de développement PHP Pascal MARTIN 80 Formation / Explications Plein de bonnes pratique C'est bien! Expliquer comment / pourquoi C'est mieux! Malgré «la crise» Investissement Qualité des projets Gain à moyen / long terme

81 Bonnes pratiques de développement PHP Pascal MARTIN 81 A Vous! Qualité processus continu Mise en place : progressive! Quelques bases Puis d'autres Et encore d'autres Laisser le temps De se familiariser D'apprécier

82 Pascal MARTIN SQLI Merci!

Les forges logicielles et leurs outils. Avec SourceSup en exemple

Les forges logicielles et leurs outils. Avec SourceSup en exemple Les forges logicielles et leurs outils Avec SourceSup en exemple 1 Naissance des forges Avant Chacun installait les outils dont il avait besoin Peu de mutualisation des outils et technologies Collaboration

Plus en détail

PLAN. I. Pourquoi : les besoins, les types d applications

PLAN. I. Pourquoi : les besoins, les types d applications PLAN I. Pourquoi : les besoins, les types d applications II. Comment : les technos et pratiques dont on dispose pour mettre en œuvre les applications III. Avec quels outils III.1 Introduction aux IDE III.2

Plus en détail

ULCO-L3Info-Projets-CM2

ULCO-L3Info-Projets-CM2 ULCO-L3Info-Projets-CM2 Arnaud Lewandowski, Eric Ramat, Julien Dehos Université du Littoral Côte d Opale 18 juin 2015 A Lewandowski, E Ramat, J Dehos ULCO-L3Info-Projets-CM2 1/44 Sommaire 1 Conception

Plus en détail

Scub Foundation. Socle technique Java Open Source http://www.scub-foundation.org

Scub Foundation. Socle technique Java Open Source http://www.scub-foundation.org Scub Foundation Socle technique Java Open Source http://www.scub-foundation.org Présentation de Scub Présentation de Scub Scub est une société de service en informatique qui a pour but de fournir du conseil

Plus en détail

Projet de développement

Projet de développement Projet de développement Documentation, Eclipse, Soutenance Philippe Collet Licence 3 Informatique 2013-2014 Plan r Documentation : principes et outils r Eclipse r Modalités de soutenance Ph. Collet 2 Pourquoi

Plus en détail

Zend Framework 2 Industrialisez vos développements PHP

Zend Framework 2 Industrialisez vos développements PHP Avant-propos 1. Lectorat 15 2. Contenu du livre 15 3. Pré-requis 17 Introduction 1. Un peu d histoire 19 1.1 Petite histoire de l informatique 19 1.2 Petite histoire des langages informatiques 20 1.3 Petite

Plus en détail

Industrialiser ses développements PHP RMLL 2010

Industrialiser ses développements PHP RMLL 2010 Industrialiser ses développements PHP RMLL 2010 Qui suis-je? Jean-Marc Fontaine Consultant pour Alter Way Consulting Responsable du centre de compétences PHP pour Alter Way Solutions Formateur pour Alter

Plus en détail

COMPÉTENCES TECHNIQUES

COMPÉTENCES TECHNIQUES André RIHANI, 43 ans DEUG A (MPM), 1993 Anglais courant 06.15.30.08.31 andre@rihani.fr DÉVELOPPEUR PHP ORANGE: Développeur LAMP (Linux, Apache, MySql, Php) durant 7 ans, tests unitaires et fonctionnels,

Plus en détail

Introduction MOSS 2007

Introduction MOSS 2007 Introduction MOSS 2007 Z 2 Chapitre 01 Introduction à MOSS 2007 v. 1.0 Sommaire 1 SharePoint : Découverte... 3 1.1 Introduction... 3 1.2 Ce que vous gagnez à utiliser SharePoint... 3 1.3 Dans quel cas

Plus en détail

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes Symfony 2 Sommaire : 1.Définition de symfony 2 2.Installation 3.Structure 4.Symfony et les commandes 5.Le fonctionnement : le routeur (les url), les bundles, twig(templates) 6.L architecture de symfony2

Plus en détail

INF2015 Développement de logiciels dans un environnement Agile. Examen final 24 avril 2014 17:30 à 20:30

INF2015 Développement de logiciels dans un environnement Agile. Examen final 24 avril 2014 17:30 à 20:30 Examen final 24 avril 2014 17:30 à 20:30 Nom, prénom : Code permanent : Répondez directement sur le questionnaire. Question #1 5% Qu'est-ce qu'un test de régression? Question #2 5% Selon extreme Programming,

Plus en détail

TD1. Installation de Symfony 2 et Netbeans

TD1. Installation de Symfony 2 et Netbeans I - Introduction : TD1 Installation de Symfony 2 et Netbeans L objet de ce TP est d installer l environnement de travail. Nous commençons par définir des notions de base nécessaires pour comprendre la

Plus en détail

Tests unitaires et fonctionnels avec Symfony 1.2

Tests unitaires et fonctionnels avec Symfony 1.2 Tests unitaires et fonctionnels avec Symfony 1.2 Geoffrey Bachelet - Hugo Hamon Titre présentation Conférencier Qui sommes-nous? Geoffrey Bachelet Hugo Hamon Au sommaire... Introduction aux tests automatisés

Plus en détail

Génie logiciel, conduite de projets... Mémo. Utilisation de subversion et de forge. Bruno Zanuttini, Jean-Luc Lambert, François Rioult

Génie logiciel, conduite de projets... Mémo. Utilisation de subversion et de forge. Bruno Zanuttini, Jean-Luc Lambert, François Rioult Université de Caen Basse-Normandie Département d informatique Tous diplômes, 2012 2013 Unité : N/A Génie logiciel, conduite de projets... Mémo. Utilisation de subversion et de forge Bruno Zanuttini, Jean-Luc

Plus en détail

Périmètre de la solution

Périmètre de la solution Périmètre de la solution Tests unitaires : Pouvoir créer rapidement un nouveau cas de test à la suite de l ajout ou de l évolution d une règle de gestion. Ne pas avoir à coder chaque nouveau cas de test.

Plus en détail

Architecture Orientée Service, JSON et API REST

Architecture Orientée Service, JSON et API REST UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API

Plus en détail

Projet M1 : Application P2P Hybride avec RMI

Projet M1 : Application P2P Hybride avec RMI Projet M1 : Application P2P Hybride avec RMI Applications Réparties 2008-2009 Université Paris VIII / Parcours SRM / M1 Sujet : Le but de ce projet est d'implémenter une application de partage de fichiers

Plus en détail

Pouvez-vous expliquer pourquoi «ok!» ne s'affichera-t-il pas dans ces conditions? Proposez un morceau de code qui corrige le problème. (coef.

Pouvez-vous expliquer pourquoi «ok!» ne s'affichera-t-il pas dans ces conditions? Proposez un morceau de code qui corrige le problème. (coef. 1 Citez au moins une des nouveautés introduites par PHP 5.3. (coef. 2) Réponse attendue : namespace, closure, objet DateTime... bref n'importe quoi de neuf dans PHP 5.3 Objectif : mesurer la culture G

Plus en détail

Bonnes pratiques PHP. Forum PHP 2005 - http://www.afup.org

Bonnes pratiques PHP. Forum PHP 2005 - http://www.afup.org Bonnes pratiques PHP 1 Plan de la présentation 0 Comment aborder cette présentation? Développement 1 2 3 4 Exploitation S'organiser et choisir ses outils Gagner performances et fiabilité Améliorer sa compétitivité

Plus en détail

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30 Examen intra 20 février 2014 17:30 à 20:30 Nom, prénom : Code permanent : Répondez directement sur le questionnaire. Question #1 5% Quelle influence peut avoir le typage dynamique sur la maintenabilité

Plus en détail

Automatisation en génie logiciel

Automatisation en génie logiciel Automatisation en génie logiciel Plan: Pourquoi et quoi automatiser? Gestion de configuration logicielle. Intégration continue. Traçabilité des changements. Tests unitaires automatisés. 1 Automatisation

Plus en détail

Offre FlowUnit by CGI Tests automatisés de flux de données inter-applicatifs

Offre FlowUnit by CGI Tests automatisés de flux de données inter-applicatifs Offre FlowUnit by CGI Tests automatisés de flux de données inter-applicatifs CGI Group Inc. 2013 Agenda 1 2 3 4 5 6 7 Problématiques et enjeux Solutions et fonctionnalités Concepts Exécution et rapport

Plus en détail

Plan. Initiation au Génie Logiciel. Cours 4. Quelques outils pour le Génie Logiciel

Plan. Initiation au Génie Logiciel. Cours 4. Quelques outils pour le Génie Logiciel Plan Initiation au Génie Logiciel Cours 4 Quelques outils pour le Génie Logiciel 1 Gestion de version 2 Tests unitaires 3 Couverture de tests 4 Génération de documentation T. Genet (genet@irisa.fr) (ISTIC/IRISA)

Plus en détail

Projet de développement. Gestion de projet avec Redmine. Philippe Collet. Organisation. Cours 1 : principes généraux - svn

Projet de développement. Gestion de projet avec Redmine. Philippe Collet. Organisation. Cours 1 : principes généraux - svn 1 Organisation Projet de développement Gestion de projet avec Redmine Philippe Collet Cours 1 : principes généraux - svn Cours 2 : Redmine et gestion de projet Cours 3 : Introduction à Eclipse Cours 4

Plus en détail

Les Systèmes de Gestion de Version

Les Systèmes de Gestion de Version Les Systèmes de Gestion de Version Journées Mathrice - Mars 2011 - Dijon-Besançon F. Langrognet F. Langrognet () Les Systèmes de Gestion de Version Mars 2011 1 / 49 PLAN 1 Objectifs d un Système de Gestion

Plus en détail

développeur web principal

développeur web principal FRANCIS McGUIRE développeur web principal A: 103 rue Hyman, Dollard-des-Ormeaux, Qc C: fr@ncismcguire.com T: +1.5144675737 W: www.guire.ca À PROPOS DE MOI Mon nom est Francis McGuire et je suis un passionné

Plus en détail

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

Joomla! Création et administration d'un site web - Version numérique Avant-propos 1. Objectifs du livre 15 1.1 Orientation 15 1.2 À qui s adresse ce livre? 16 2. Contenu de l ouvrage 17 3. Conclusion 18 Introduction 1. Un peu d histoire pour commencer... 19 1.1 Du web statique

Plus en détail

Services Web SOAP & REST avec symfony

Services Web SOAP & REST avec symfony Services Web SOAP & REST avec symfony RMLL - 6 juillet 2010 Qui suis-je? Hugo HAMON Responsable des formations chez Sensio Labs Coauteur et contributeur d ouvrages Secrétaire Général de l AFUP Webmaster

Plus en détail

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5 Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5 Machine virtuelle Machine virtuelle Machine virtuelle VMware ESX Network Shutdown Module

Plus en détail

Profil. Formations Certifications. Etienne de LONGEAUX Architecte logiciel/ Lead développeur PHP5/SYMFONY2/ZEND 13 ans d expérience.

Profil. Formations Certifications. Etienne de LONGEAUX Architecte logiciel/ Lead développeur PHP5/SYMFONY2/ZEND 13 ans d expérience. Etienne de LONGEAUX Architecte logiciel/ Lead développeur PHP5/SYMFONY2/ZEND 13 ans d expérience Profil Expert SYMFONY 2 / ZEND Etude et modélisation UML Montée en charge / Compétence Sécurité / Authentification

Plus en détail

NICOLAS BLAUDEZ DOSSIER DE COMPETENCES

NICOLAS BLAUDEZ DOSSIER DE COMPETENCES NICOLAS BLAUDEZ DOSSIER DE COMPETENCES Developpeur web senior Nicolas Blaudez 8 ans d expérience blaudez@free.fr 06 89 64 79 37 COMPÉTENCES COMPÉTENCES TECHNIQUES Language Framework Librairies PHP5, PHP4,

Plus en détail

DEVELOPPEMENT LOGICIEL

DEVELOPPEMENT LOGICIEL 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

Plus en détail

Utiliser la forge de l'ubp pour gérer un projet avec SVN - Les bases -

Utiliser la forge de l'ubp pour gérer un projet avec SVN - Les bases - Utiliser la forge de l'ubp pour gérer un projet avec SVN - Les bases - Hélène Toussaint, 27 novembre 2012 But du document : Le but de ce document est de découvrir la gestion de projets à l'aide des outils

Plus en détail

Introduction à Maven dimanche 29 janvier 2012 10:13

Introduction à Maven dimanche 29 janvier 2012 10:13 Introduction à Maven dimanche 29 janvier 2012 10:13 Vous avez certainement entendu parler de maven, beaucoup ont une idée vague de ce que c'est et d'autres bien qu'ayant une idée claire n'ont jamais expérimenté

Plus en détail

Unité de formation 1 : Structurer une application. Durée : 3 semaines

Unité de formation 1 : Structurer une application. Durée : 3 semaines PROGRAMME «DEVELOPPEUR LOGICIEL» Titre professionnel : «Développeur Logiciel» Inscrit au RNCP de niveau III (Bac+2) (JO du 23 Octobre 2007) (32 semaines) Unité de formation 1 : Structurer une application

Plus en détail

Boostez vos développements Symfony avec PHPEdit

Boostez vos développements Symfony avec PHPEdit Boostez vos développements Symfony avec PHPEdit Sébastien Hordeaux, WaterProof http://www.phpedit.com A propos de moi Créateur de PHPEdit en 1999 Fondateur de WaterProof en 2004 Tous nos projets internes

Plus en détail

Chapitre 4 Le framework et les API de Joomla

Chapitre 4 Le framework et les API de Joomla Chapitre 4 Le framework et les API de Joomla 1. Les bases du framework Le framework et les API de Joomla 1.1 Notions de framework «Framework» se traduit littéralement par «cadre de travail». C'est un ensemble

Plus en détail

KDevelop Tour d horizon et retour d expériences (C++)

KDevelop Tour d horizon et retour d expériences (C++) KDevelop Tour d horizon et retour d expériences (C++) 2e rencontre DevelopR6 25 mars 2010 F. Langrognet F. Langrognet () KDevelop Mars 2010 1 / 27 PLAN 1 Introduction 2 Principales fonctionnalités 3 KDevelop

Plus en détail

Contextualisation Le projet! De la conception A la réalisation Un bilan positif!

Contextualisation Le projet! De la conception A la réalisation Un bilan positif! CDI 2 2013-2015 1 0. 0 5. 1 5 SOMMAIRE Contextualisation Le projet! De la conception A la réalisation Un bilan positif! D O C U M E N T I O 3 D O C U M E N T I O 4 UNE CLASSE DE CDI Concepteur Développeur

Plus en détail

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

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Modernisation IBM i Nouveautés 2014-2015 IBM Power Systems - IBM i 19 et 20 mai 2015 IBM Client Center, Bois-Colombes S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Mardi

Plus en détail

TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian

TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian TP Projet Informatique : Persistance en Php et prise en main GIT / Atlassian Objectif : faire un site pour gérer des articles par catégorie. Chaque catégorie a un nom, chaque catégorie est constitué d

Plus en détail

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

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS Avant de commencer 1. Introduction 15 2. HTML5 oui, mais pas que... 15 2.1 HTML5 16 2.2 JavaScript 17 2.3 CSS 18 3. Les outils 18 Préparation des outils et création du projet 1. Introduction 21 2. Team

Plus en détail

Le farming dans DokuWiki, intérêt et mise en œuvre

Le farming dans DokuWiki, intérêt et mise en œuvre Le farming dans DokuWiki, intérêt et mise en œuvre Etienne MELEARD Comité Réseau des Universités Université de Rennes 1, Campus Beaulieu 35042 Rennes Cedex Résumé DokuWiki est une plateforme de Wiki souple

Plus en détail

Industrialisation des développements

Industrialisation des développements Industrialisation des développements NovaForge, l usine de développement logiciel de Bull Emmanuel Rias emmanuel.rias@bull.net 1 Agenda Introduction NovaForge Processus d un projet dans NovaForge et Fonctionnalités

Plus en détail

Note explicative pour la réalisation des TPs avec le Serveur Web IIS 7

Note explicative pour la réalisation des TPs avec le Serveur Web IIS 7 Note explicative pour la réalisation des TPs avec le Serveur Web IIS 7 Installation du service IIS Fermer toutes les applications ouvertes (par précaution) Ouvrir le panneau de configuration, Programmes,

Plus en détail

Outils d automatisation de tests d interfaces Web. David GERBAULT Ingénieurs 2000 Xposé 2010-2011

Outils d automatisation de tests d interfaces Web. David GERBAULT Ingénieurs 2000 Xposé 2010-2011 Outils d automatisation de tests d interfaces Web 1 David GERBAULT Ingénieurs 2000 Xposé 2010-2011 WEBOGRAPHIE http://seleniumhq.org/ http://www.clever-age.com/ http://watir.com/ 2 Pourquoi ce sujet? 3

Plus en détail

Serveur d'archivage 2007 Planning réel du projet serveur d'archivage

Serveur d'archivage 2007 Planning réel du projet serveur d'archivage Type du document Auteur(s) Planning Danielle Drillon Date de création 20/02/2007 Domaine de diffusion Validé par Interne Équipe Versions Auteur(s) Modifications 1.0 Danielle Drillon Création 1.1 Danielle

Plus en détail

Cet ouvrage a bénéficié des relectures attentives des zcorrecteurs.

Cet ouvrage a bénéficié des relectures attentives des zcorrecteurs. Cet ouvrage a bénéficié des relectures attentives des zcorrecteurs. Sauf mention contraire, le contenu de cet ouvrage est publié sous la licence : Creative Commons BY-NC-SA 2.0 La copie de cet ouvrage

Plus en détail

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

Environnements de développement (intégrés) Environnements de développement (intégrés) Introduction aux EDI, la plateforme Eclipse Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure

Plus en détail

Zend Framework 2 Développez des applications web mobiles (PHP, HTML5, JavaScript, NoSQL)

Zend Framework 2 Développez des applications web mobiles (PHP, HTML5, JavaScript, NoSQL) Avant-propos 1. À qui s adresse ce livre? 13 2. Comment cet ouvrage est-il structuré? 15 Premiers pas avec Zend 1. Objectif 19 2. Quoi de neuf chez Zend? 20 2.1 Zend Framework 2 20 2.2 Les nouveaux composants

Plus en détail

Refonte du site de Richelieu Finance à l'aide du framework Symfony Retour d'expérience

Refonte du site de Richelieu Finance à l'aide du framework Symfony Retour d'expérience Refonte du site de Richelieu Finance à l'aide du framework Symfony Retour d'expérience Hervé Schmitt - coordinateur e-buisiness Richelieu Finance Tristan Rivoallan consultant technique Clever Age Xavier

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/8 Titre professionnel : Inscrit au RNCP de Niveau III (Bac + 2) (J.O. du 19/02/13) 24 semaines + 8 semaines de stage (uniquement en formation continue) Développer une application orientée objet

Plus en détail

Les Bonnes PRATIQUES DU TEST LOGICIEL

Les Bonnes PRATIQUES DU TEST LOGICIEL Les Bonnes PRATIQUES DU TEST LOGICIEL SOMMAIRE Qu est-ce que le test logiciel? Pourquoi le test est-il un maillon crucial de l ingénierie logicielle? Quels sont les différents types de tests? Qu est-ce

Plus en détail

LEADER T ECHNIQUE - DÉVELOPPEUR SENIOR PHP - HT ML - CSS. 32 ans - 8 ans d'expérience

LEADER T ECHNIQUE - DÉVELOPPEUR SENIOR PHP - HT ML - CSS. 32 ans - 8 ans d'expérience C0094 LEADER T ECHNIQUE - DÉVELOPPEUR SENIOR PHP - HT ML - CSS 32 ans - 8 ans d'expérience Expert ises mét iers : Langues : Editeur de logiciels Roumain (Langue maternelle), Anglais (Avancé), Français

Plus en détail

Création d'un convertisseur SQL SiTools

Création d'un convertisseur SQL SiTools Création d'un convertisseur SQL SiTools 1 - Introduction Un convertisseur permet de transformer la requête SQL, envoyé par la webapp SiTools à la webapp catalog ou l'inverse. C'est à dire que cette conversion

Plus en détail

Tutoriel Drupal version 6 :

Tutoriel Drupal version 6 : 1 Tutoriel Drupal version 6 : Installation en local sous Windows et traduction 2 1. Installation de Drupal en local (sur votre pc) 1.1. Logiciels nécessaires Drupal fonctionne dans un environnement nécessitant

Plus en détail

Une (petite) introduction à Spring

Une (petite) introduction à Spring Une (petite) introduction à Spring 1 Introduction Le framework Spring 1 est une boite à outils très riche permettant de structurer, d améliorer et de simplifier l écriture d application JEE. Spring est

Plus en détail

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée Virtual Server de Microsoft

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée Virtual Server de Microsoft Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée Virtual Server de Microsoft Virtual Server 2005 R2 Network Shutdown Module Système Principal (hôte) Virtual Server

Plus en détail

Cahier de Charge. Master I Informatique parcours Ingénierie Logiciels. E-Service Système d information web «Gestion des services ensignants

Cahier de Charge. Master I Informatique parcours Ingénierie Logiciels. E-Service Système d information web «Gestion des services ensignants Master I Informatique parcours Ingénierie Logiciels Projet : E-Service Gestions des Enseignements Groupe 06 Cahier de Charge E-Service Système d information web «Gestion des services ensignants 2011-2012

Plus en détail

STAGE2 STAGIAIRE / NIKOLAOS TSOLAKIS. 16/02/2015 : choix des outils nécessités pour l application : Didier Kolb, le maitre de stage

STAGE2 STAGIAIRE / NIKOLAOS TSOLAKIS. 16/02/2015 : choix des outils nécessités pour l application : Didier Kolb, le maitre de stage STAGE2 STAGIAIRE / NIKOLAOS TSOLAKIS 16/02/2015 : choix des outils nécessités pour l application : Didier Kolb, le maitre de stage m invite à faire une étude sur les outils qui seraient utilisés. Sites

Plus en détail

SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8

SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8 SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8 INTRODUCTION Bonjour à tous; Aujourd hui je publie une nouvelle version de l adaptation de la Sync Framework Toolkit,

Plus en détail

Programmation Avancée pour le Web

Programmation Avancée pour le Web L3 Informatique Option : ISIL Programmation Avancée pour le Web RAMDANI Med U Bouira 1 Contenu du module Introduction aux applications Web Rappels sur les sites Web Conception d une application Web Notion

Plus en détail

TD4 : Wikis, Servlets & Projet

TD4 : Wikis, Servlets & Projet Université Bordeaux 1 T.D. License 3 Informatique 2007 2008 TD4 : Wikis, Servlets & Projet L objet de cette séance est de vous familiariser avec les sockets et les servlets, et d introduire le projet.

Plus en détail

Arouna WATT 25 ans Analyste Développeur Certifié ZEND PHP5, MySQL. Formation. Certifications. Connaissances

Arouna WATT 25 ans Analyste Développeur Certifié ZEND PHP5, MySQL. Formation. Certifications. Connaissances Arouna WATT 25 ans Analyste Développeur Certifié ZEND PHP5, MySQL Formation 2010-2011 Formation IT-SI Pantin 2009-2010 Licence Conception et Intégration Web et Multimédia (CIWM) Paris XIII 2007-2009 DUT

Plus en détail

file:///d:/wd/ens/in413/0708/les_tp/tp6_reseau/index.html TP6 Thèmes du TP : Serveurs de type "sessions"

file:///d:/wd/ens/in413/0708/les_tp/tp6_reseau/index.html TP6 Thèmes du TP : Serveurs de type sessions 1 sur 8 12/10/2007 15:50 TP6 Thèmes du TP : Serveurs de type "sessions" Architecture web et déploiement : une introduction httpunit : première utilisation Préambule : Les classes de tests unitaires présentes

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Familiarisation avec Eclipse / Netbeans

Familiarisation avec Eclipse / Netbeans Institut Galilée LEE Année 011-01 Master T.P. 0 Familiarisation avec Eclipse / Netbeans Lien important contenant le pdf du cours et du TP, et ensuite des sources : http://www-lipn.univ-paris13.fr/~fouquere/mpls

Plus en détail

Gestion de version et de configuration : de svn à git

Gestion de version et de configuration : de svn à git Projet Informatique Gestion de version et de configuration : de svn à git Philippe Collet Licence 3 Informatique S5 2014-2015 http://deptinfo.unice.fr/twiki/bin/view/linfo/projetinfo201415 Motivations

Plus en détail

Utiliser le Zend Framework avec Symfony

Utiliser le Zend Framework avec Symfony Utiliser le Zend Framework avec Symfony Xavier Gorse ELAO A partir du support de Matthew Weier O'Phinney Chef de Projet, Zend Framework Xavier Gorse - xavier.gorse@elao.com Gérant de la société ELAO Expertise,

Plus en détail

Visual Studio 2013 Concevoir et développer des projets Web, les gérer avec TFS 2013

Visual Studio 2013 Concevoir et développer des projets Web, les gérer avec TFS 2013 Introduction 1. Présentation du cas d étude 13 1.1 Présentation générale 13 1.2 Présentation des applications 13 2. Déroulement du projet 14 3. Pré-requis et fondamentaux techniques à connaître 15 3.1

Plus en détail

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

Environnements de développement (intégrés) Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure

Plus en détail

I. Récapitulatif S1... 3 II. Fonctionnalités à réaliser... 3 III. Fonctionnalités réalisées... 5 1. Utilisateurs... 5 2. Wiks... 5 3. Itinéraires...

I. Récapitulatif S1... 3 II. Fonctionnalités à réaliser... 3 III. Fonctionnalités réalisées... 5 1. Utilisateurs... 5 2. Wiks... 5 3. Itinéraires... IUP GMI Master 1ere année Projet Wikiroute Etudiants : Mustapha FODIL Valentin FAÏSSE Tuteurs : Corinne FREDOUILLE, Frédéric DUVERT 09 I. Récapitulatif S1... 3 II. Fonctionnalités à réaliser... 3 III.

Plus en détail

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Intro Projet FOO Gestion des sources Fin La banquise... La Banquise http://labanquise.insa-rouen.fr Sébtien Bonnegent, Administrateur système Qu'est ce que c'est? un ensemble

Plus en détail

Créer un formulaire de contact pour votre site gratuitement (6 méthodes)!

Créer un formulaire de contact pour votre site gratuitement (6 méthodes)! Créer un formulaire de contact pour votre site gratuitement (6 méthodes)! Author : soufiane Bonjour, Cherchez-vous depuis des jours comment insérer un formulaire de contact sur votre site web? Gratuitement

Plus en détail

Projet de développement

Projet de développement Projet de développement Introduction à Eclipse Philippe Collet Licence 3 MIAGE S6 2012-2013 http://miageprojet2.unice.fr/index.php?title=user:philippecollet/projet_de_développement_2012-2013 Plan r Application

Plus en détail

Formation développement Java, Spring et Hibernate

Formation développement Java, Spring et Hibernate L institut de formation continue des professionnels du Web Formation développement Java, Spring et Hibernate Référence formation : Durée : Prix conseillé : DJSH 10 jours (70 heures) 4 500 HT (hors promotion

Plus en détail

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server Machine virtuelle Machine virtuelle Machine virtuelle VMware ESX 3 Network Shutdown Module Network

Plus en détail

Reporting Services - Administration

Reporting Services - Administration Reporting Services - Administration Comment administrer SQL Server Reporting Services Cet article a pour but de présenter comment gérer le serveur depuis le "portail" de Reporting Services. Nous verrons

Plus en détail

Gestion de versions avec Git

Gestion de versions avec Git Gestion de versions avec Git Lucas Nussbaum lucas.nussbaum@univ-lorraine.fr Lucas Nussbaum Gestion de versions avec Git 1 / 17 Logiciels de gestion de versions Ou Version Control System (VCS) ou RCS :

Plus en détail

Projet de développement. Introduction à Eclipse. Philippe Collet. Licence 3 Informatique 2012-2013

Projet de développement. Introduction à Eclipse. Philippe Collet. Licence 3 Informatique 2012-2013 Projet de développement Introduction à Eclipse Philippe Collet Licence 3 Informatique 2012-2013 Plan r Application de redmine à votre projet r Eclipse : Introduction et historique r Architecture d Eclipse

Plus en détail

Compte-Rendu SDL. «Reprise de l application de gestion de listes de présences des alternants»

Compte-Rendu SDL. «Reprise de l application de gestion de listes de présences des alternants» Compte-Rendu SDL Auteurs : BOUTROUILLE Alexis BAILLEUL Pierre Tuteur : Ioan Marius Bilasco «Reprise de l application de gestion de listes de présences des alternants» Master MIAGE 1 Année 2012/2013 1 Remerciements

Plus en détail

TP1. Outils Java Eléments de correction

TP1. Outils Java Eléments de correction c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par

Plus en détail

ANNEXE CV : Liste des sites web (internet et intranet)

ANNEXE CV : Liste des sites web (internet et intranet) ANNEXE CV : Liste des sites web (internet et intranet) 1. Créations professionnelles Code des couleurs Bleu : la dernière version en ligne est celle que j'ai crée, le site est toujours en ligne. Bleu clair

Plus en détail

Documentation UpdatEngine Installation et migration version 2.1.0 stable

Documentation UpdatEngine Installation et migration version 2.1.0 stable Documentation UpdatEngine Installation et migration version 2.1.0 stable Version de la documentation : doc-2.1.0-stable-4 Auteur: Yves Guimard Référence internet : http://www.updatengine.com Licence Creative

Plus en détail

Gestion intégrée de contenus avec une solution libre, Alfresco. Nicolas Bélisle, MBA Conseiller DocuLibre http://www.doculibre.com

Gestion intégrée de contenus avec une solution libre, Alfresco. Nicolas Bélisle, MBA Conseiller DocuLibre http://www.doculibre.com Gestion intégrée de contenus avec une solution libre, Alfresco Nicolas Bélisle, MBA Conseiller DocuLibre http://www.doculibre.com Gestion de contenu d'entreprise (ECM) Quatre volets principaux: Gestion

Plus en détail

Développement d une application java de bureau pour la gestion des rapports de visite GSB

Développement d une application java de bureau pour la gestion des rapports de visite GSB Développement d une application java de bureau pour la gestion des rapports de visite GSB CAHIER DES CHARGES Définition du besoin Définition de l'objet Les rapports de visite sont actuellement gérés à

Plus en détail

Créer un rapport pour Reporting Services

Créer un rapport pour Reporting Services Créer un rapport pour Reporting Services Comment créer des rapports pour SSRS Maintenant que nous avons vu que la version de SQL Server 2005 Express Edition with Advanced Services intègre SQL Server Reporting

Plus en détail

Historique. Eclipse et ses concurrents. Logiciels libres : Préhistoire : 1980 : environnement graphique et premiers EDI (1981 Turbo Pascal)

Historique. Eclipse et ses concurrents. Logiciels libres : Préhistoire : 1980 : environnement graphique et premiers EDI (1981 Turbo Pascal) 1 Organisation Projet de développement Introduction à Eclipse Philippe Collet Licence 3 Informatique Cours 1 : principes généraux - svn Cours 2 : TRAC et gestion de projet Cours 3 : Introduction à Eclipse

Plus en détail

Test et couverture de code Java avec JUnit et SonarQube

Test et couverture de code Java avec JUnit et SonarQube avec JUnit et SonarQube Test en Java avec JUnit 4.x Application au programme Graphab Intégration dans la chaîne de développement Couverture de code avec JaCoCo et SonarQube Test en Java avec JUnit 4.x

Plus en détail

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis

Plus en détail

Téléchargement d OCS Inventory Serveur et Agent. Sommaire

Téléchargement d OCS Inventory Serveur et Agent. Sommaire Téléchargement d OCS Inventory Serveur et Agent Tout d abord, Connectez-vous sur le site suivant : http://www.ocsinventory-ng.org/ Sélectionner le langage Français en cliquant sur le drapeau France Cliquer

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 1 : Eclipse

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 1 : Eclipse iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 1 : Eclipse Nom(s) : Groupe : Date : Objectifs : Apprendre à se servir du logiciel Eclipse pour le développement d

Plus en détail

Tests unitaires avec Visual Studio

Tests unitaires avec Visual Studio Tests unitaires avec Visual Studio (source MSDN) Rappels (initiation aux tests unitaires SI6 Tp6) Les tests unitaires offrent aux développeurs une méthode rapide pour rechercher des erreurs de logique

Plus en détail

Plateforme Applicative Zend PHP Cloud

Plateforme Applicative Zend PHP Cloud Plateforme Applicative Zend PHP Cloud Kevin Schroeder Évangéliste Présenté par Maurice Kherlakian Consultant services professionnels À propos de Kevin Passé : Programmation/Admin. réseau Actuellement :

Plus en détail

Java pour le Web. Cours Java - F. Michel

Java pour le Web. Cours Java - F. Michel Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications

Plus en détail

Interface De Service AIDL. Android Interface Definition Language

Interface De Service AIDL. Android Interface Definition Language Client Interface De Service Serviteur AIDL Android Interface Definition Language Client Serviteur Service Process Process IPC IPC Inter Process Communication... mais sur une même machine. pas entre plusieurs

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Systèmes de gestion de code source

Systèmes de gestion de code source Systèmes de gestion de code source Matthieu Herrb CNRS-LAAS Envol, 22 octobre 2008 http://www.laas.fr/~matthieu/talks/envol08-sgv.pdf Agenda 1 Introduction 2 Concepts d un système de gestion de version

Plus en détail

L utilisation d outils intelligents pour écrire du code valide

L utilisation d outils intelligents pour écrire du code valide B L utilisation d outils intelligents pour écrire du code valide Toutes les méthodes de développement, sans exception, incluent au moins une étape de test du code. C est parce que le code écrit par la

Plus en détail