Développement d'un client FTP graphique



Documents pareils
XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

Manuel d intégration API FTP SMS ALLMYSMS.COM

Internet et Programmation!

SPT Description du cours NORAMSOFT SPT2013. SharePoint 2013 pour développeurs

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

DotNet. Plan. Les outils de développement

Les outils de création de sites web

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

Armand PY-PATINEC 2010

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP

VTX FTP. Transfert de fichiers business par FTP - Manuel de l'utilisateur. Informations complémentaires : info@vtx.

Programmation Internet Cours 4

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

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

< Atelier 1 /> Démarrer une application web

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

Introduction à Microsoft InfoPath 2010

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

CQP Développeur Nouvelles Technologies (DNT)

Accès distant Freebox v6 Configuration

Le Framework.Net. Introduction. Pourquoi.Net?

Les services usuels de l Internet

Accéder à ZeCoffre via FTP

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

Le service FTP. M.BOUABID, Page 1 sur 5

Petite définition : Présentation :

Association UNIFORES 23, Rue du Cercler LIMOGES

Comment se connecter au dossier partagé?

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)

Internet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall

SQL Server Installation Center et SQL Server Management Studio

1. Considérations sur le développement rapide d'application et les méthodes agiles

RAPPORT DE CONCEPTION UML :

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

Serveurs de noms Protocoles HTTP et FTP

UE 8 Systèmes d information de gestion Le programme

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

BTS SIO option SISR Lycée Godefroy de Bouillon Clermont-Ferrand

WEBMESTRE : CONCEPTION DE SITES ET ADMINISTRATION DE SERVEURS WEB

SQL Server, MySQL, Toad (client MySQL), PowerAMC (modélisation) Proxy SLIS

OPC Factory Server- Réglage des paramètres de communication

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Présentation Internet

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

Installation du transfert de fichier sécurisé sur le serveur orphanet

Atelier Le gestionnaire de fichier

4. SERVICES WEB REST 46

Architecte Logiciel. Unité de formation 1 : Développer en s appuyant sur les modèles et les frameworks 7 semaines

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

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

CAHIER DES CHARGES D IMPLANTATION

BES WEBDEVELOPER ACTIVITÉ RÔLE

Assurances & Mutuelles, Industrie, Santé, Énergie, Transport, Médias / Multimédias, Télécoms, Services

Notre Catalogue des Formations IT / 2015

Les Services Web. Jean-Pierre BORG EFORT

Les Architectures Orientées Services (SOA)

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet

Manuel du logiciel PrestaTest.

Manuel d'installation de Joomla 1.7

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

Le réseau Internet.

Déploiement d application Silverlight

BTS Services informatiques aux organisations Session E4 Conception et maintenance de solutions informatiques Coefficient 4

Formateur.NET expérimenté Forte expertise dans la conception et le développement d applications.net, associée à une grande pédagogie

UTILISATION DU RESEAU INFORMATIQUE Comment utiliser le réseau

Créer un site Web : mode d emploi Sous SPIP, avec le squelette «établissement» de l académie de Versailles

sécurisé de l ENSMM Accès au serveur FTP - Microsoft Windows 7 École Nationale Supérieure de Mécanique et des Microtechniques

Introduction aux «Services Web»

Reporting Services - Administration

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Connexion à SQL server

TP 6 Installation et configuration d une site internet avec un CMS Illustration avec Wordpress

Introduction au protocole FTP. Guy Labasse

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

Activités professionnelle N 2

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Solutions informatiques (SI) Semestre 1

SQL SERVER 2008, BUSINESS INTELLIGENCE

Utilisez Thunderbird 2! La messagerie intelligente et performante. Introduction

Hébergement et configuration de services WCF. Version 1.0

1. Comment accéder à mon panneau de configuration VPS?

Générer du code à partir d une description de haut niveau

SPIP 1.9. Créer son site avec des outils libres. Michel-Marie Maudet Anne-Laure Quatravaux Dominique Quatravaux. Avec la contribution de Perline

Terminal Server RemoteAPP pour Windows Server 2008

Information utiles. webpage : Google+ : digiusto/

ECLIPSE ET PDT (Php development tools)

L3 informatique TP n o 2 : Les applications réseau

Bien architecturer une application REST

FileMaker Server 12. publication Web personnalisée avec XML

Patrons de Conception (Design Patterns)

Formation Webmaster : Création de site Web Initiation + Approfondissement

Catalogue des Formations Techniques

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

Notes pour l utilisation d Expression Web

À qui s adresse cet ouvrage?

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

Transcription:

BTS INFORMATIQUE DE GESTION Option Administrateur de réseaux Développeur d applications COMPTE RENDU D ACTIVITE ACTIVITE N 3 Nom et Prénom : BUISSON Pierre-Adrien EPSI Lyon 107 rue de Marseille 69 007 LYON Identification (objectif) de l'activité Développement d'un client FTP graphique Contexte dans lequel le projet s'inscrit Développement d'un client FTP avec une interface graphique en utilisant un langage du framework dotnet 1.1 Utilisation de fichiers XML pour la sauvegarde des profils FTP Conditions de réalisation Travail effectué : Travail effectué dans : Type d'intervention : Individuellement un service utilisateur nouvelle application En groupe un service d'études SSII maintenance Cadre scolaire (EPSI) Autres contraintes Développement en C# au moyen de l'ide Visual Studio 2003 Utilisation et intégration d'un composant permettant la mise en oeuvre des principales commandes de FTP Sauvegarde des profils de connexion au moyen d un fichier *.xml Compétences couvertes No Compétence couverte Intitulé C33 PRODUIRE - DEVELOPPER Maquetter une application, la développer à l aide d un langage de programmation événementielle C34 PRODUIRE DEVELOPPER Développer à l aide d un langage de programmation à objets C39 PRODUIRE - DEVELOPPER Maîtriser le poste de développement et son environnement Pierre-Adrien BUISSON BTS IG, Session 2006 Page 1 sur 5

1. PRÉSENTATION DE L ACTIVITÉ Cette application a été développée en C# au moyen de l environnement de développement Microsoft Visual Studio.NET, et s appuie sur le framework.net, version 1.1. Cet environnement de développement permet d associer la facilité de développement en RAD à la programmation orientée objet apportée par le langage C#. Le premier objectif de ce projet était d implémenter la majorité des fonctions «basiques» d un client FTP (download et upload de fichiers notamment). Une fois cette base mise en place, l intérêt principal de cette application était la mise en place d un système de sauvegarde des profils de connexion au moyen de fichiers XML. 2. IMPLÉMENTATION DES FONCTIONS DE FTP Le FTP (File Transfer Protocol) est, comme son nom l indique, un protocole permettant le transfert de fichiers, dont les spécifications sont définies dans la RFC 959 (les RFC, ou Request For Comments, sont une série de documents et normes concernant les standards du réseau et de l Internet). Les fonctionnalités du FTP auraient pu être implémentées simplement par l utilisation de sockets, mais le but premier de cette application était essentiellement la manipulation de sauvegardes au format XML. Par conséquent, j ai choisi de m appuyer sur un composant déjà existant, aux capacités limitées mais permettant la mise en place des fonctionnalités FTP basiques (upload/download de fichiers, navigation sur le serveur FTP, suppression et «renommage» des fichiers distants). Ce composant, nommé FTPCom, est mis à disposition sur le site codeproject.com par Jérôme Lacaille. L utilisation de ce composant dans le projet se limite à la création d un objet FTPCom.FTPC, attribut de la classe FrmMain, et à partir duquel toutes les fonctionnalités FTP pourront être appelées par la suite. 3. DIAGRAMME DE CLASSES En plus des classes créées par l IDE lors de la création de chaque nouvelle «form», j ai procédé à la création de deux classes supplémentaires pour la gestion des profils de connexion. La première de ces deux classes, cprofil, comporte les informations et méthodes permettant la gestion d un profil de connexion FTP. Elle comporte notamment en attributs les informations nécessaires à la connexion à un serveur FTP : - adresse du serveur - identifiant sur le serveur (login) - mot de passe associé à l identifiant En outre, un alias est associé à chacun des profils et permet à l utilisateur d identifier rapidement chacun des profils de connexion en le nommant à sa guise. La seconde de ces deux classes, cgestionprofil, permet la gestion d une collection de profils. Elle comprend donc un tableau d objets de la classe cprofils. Une méthode permet Pierre-Adrien BUISSON BTS IG, Session 2006 Page 2 sur 5

de lire ces profils à partir du fichier XML de sauvegarde, tandis qu une seconde méthode permet de sauvegarder dans ce même fichier XML les profils modifiés ou ajoutés. 4. SAUVEGARDE EN XML 4.1.QU EST-CE QUE XML? XML (Extensible Markup Language ou langage de balisage extensible), est un standard du W3C (World Wide Web Consortium). Il s agit d un langage de description de données, qui tend depuis quelques années à s imposer comme un nouveau standard pour l échange d informations. Pierre-Adrien BUISSON BTS IG, Session 2006 Page 3 sur 5

4.2.STRUCTURE DU FICHIER XML UTILISÉ La première ligne correspond à la déclaration de la version de XML utilisée (actuellement, il s agit de la version 1.0, la version 1.1 étant en préparation par le W3C). Cette déclaration permet également de préciser l encodage utilisé, en l occurrence l UTF-8. La seconde ligne est simplement un commentaire permettant d identifier le rôle du fichier créé. Enfin, une première balise apparaît : il s agit de la balise <profils>, qui va servir de balise conteneur pour tout le reste du document. Pour faire un parallèle avec le diagramme UML précédent, elle correspond à la classe cgestionprofil puisqu elle va contenir chacun des profils. Par la suite chaque profil est lui introduit par la balise <profil> (sans S), contenant ensuite les balises : - <alias> - <host> - <login> - <password> 4.3.UTILISATION DE XML EN C# Le framework.net met à disposition des développeurs un namespace dédié à l utilisation de XML : «System.xml». Une fois ce namespace rajouté grâce à la directive «using System.xml», nous avons à notre disposition tout le nécessaire pour lire ou écrire un fichier XML. 4.3.1.Lecture d un fichier XML Pour lire un fichier XML, il faut tout d abord instancier un objet XmlDocument, qui servira ensuite de base pour toutes les actions. On utilisera ensuite la méthode Load(chemin) pour indiquer quel fichier XML va être traité (ici, le chemin du fichier XML est contenu dans l attribut cheminfichier de la classe au sein de laquelle nous nous situons. // Création de l'objet document XmlDocument doc = new XmlDocument(); doc.load(this.cheminfichier); Ensuite, nous allons lister chacune des balises <profil> grâce à la méthode GetElementsByTagName, et pour chacune d elle, traiter les informations contenues dans les 4 balises <alias>, <host>, <login> et <password>. 4.3.2.Ecriture d un fichier XML De même que la classe XmlDocument permettait la lecture d un fichier XML, une classe de System.Xml regroupe les opérations permettant l écriture de données dans un Pierre-Adrien BUISSON BTS IG, Session 2006 Page 4 sur 5

fichier XML : il s agit de la classe XmlTextWriter. Le constructeur de XmlTextWriter demande en paramètres le chemin du fichier qui va être créé, ainsi que l encodage utilisé. La méthode WriteStartDocument() permet d écrire la ligne de déclaration du fichier XML. Ensuite, trois méthodes vont être utilisées pour écrire les balises ouvrantes, leur contenu et les balises fermantes. - WriteStartElement(balise) : Permet d écrire une balise ouvrante <balise> - WriteString(contenu) : Permet d écrire la chaîne contenue entre deux balises - WriteEndElement(balise) : Permet de fermer la balise <balise> 5. CONCLUSION Cette activité fut très intéressante à développer car elle a constitué pour moi une première expérience dans deux technologies actuellement très utilisées : le développement.net en C#, ainsi que le fonctionnement et l utilité du XML. Cela m a également permis de concevoir et d implémenter un diagramme de classes simple pour la gestion de la collection de profils, démontrant l avantage de travailler avec des collections d objets, notamment au niveau de la clarté du code produit. Pierre-Adrien BUISSON BTS IG, Session 2006 Page 5 sur 5