Les principales compétences dont tout développeur Web a besoin sont les techniques suivantes.
La technologie de développement d'applications Web est devenue plus mature et complexe. Désormais, la création d’une application Web nécessite plus que de simples techniques HTML. L'accès aux bases de données, les langages de script et la gestion sont autant de compétences qu'un programmeur Web doit posséder. Jetons un coup d'œil aux compétences requises pour devenir un développeur Web populaire sur le marché.
Depuis que le CERN (Institut européen de physique des particules), un centre de recherche en physique des hautes énergies près de Genève, a lancé le Web en 1991, la technologie Web a évolué du contenu statique et de l'interface de passerelle commune (CGI) à la technologie des servlets et des pages JavaServer. Cependant, dans cette société plus compétitive, un programmeur Web a besoin de plus de connaissances. Par exemple, si dans l'entretien vous mentionnez que vous êtes familier avec XML et avez une certaine expérience avec JNDI (deux technologies qui à première vue peuvent ne pas sembler étroitement liées à la programmation Web), alors vous laisserez une impression plus profonde sur votre futur patron. impression. En supposant que vous connaissez déjà le langage de programmation Java et la programmation orientée objet, voici deux ensembles de technologies dont un développeur web a besoin dans son travail quotidien. Le premier groupe comprend les techniques que tout programmeur Web doit posséder. Le deuxième groupe contient les techniques que vous devez maîtriser pour devenir un programmeur avancé.
Compétences de base Si vous souhaitez vous qualifier de développeur Web, voici les compétences que vous devez posséder.
HTML (langage de balisage hypertexte)
HTML est le langage de presque tout ce qui est affiché sur votre navigateur. Il n'est pas étonnant que HTML soit comme l'instinct de survie d'un programmeur Web. Si vous avez encore besoin de trouver <tr> ou <b> dans votre HTML, alors vous devez vraiment améliorer vos compétences HTML. La version actuelle de HTML est la 4.01, vous pouvez en savoir plus sur http://www.w3.org/TR/1999/REC-html401-19991224/ .
Servlets et JSP
La technologie des servlets Java est la principale technologie de développement d'applications Web Java. Il a été développé par Sun Microsystems en 1996 et la version actuelle est la 2.3, mais les gens se préparent pour la version 2.4.
JSP est une extension de la technologie servlet, et la version actuelle est la 1.2 (la version 2.0 sera bientôt finalisée). Certaines personnes pensent que JSP remplace les servlets, mais ce n’est pas le cas. Les servlets et JSP sont utilisés ensemble pour des applications Web complexes.
Un bon début pour la programmation Web en Java consiste à apprendre la technologie des servlets. Même si vous envisagez d'utiliser uniquement des pages JSP dans votre application Web, vous devez toujours apprendre la technologie des servlets. Dans les applications Web plus complexes, les pages JSP sont utilisées uniquement à des fins d'affichage, tandis que les JavaBeans et les bibliothèques de balises personnalisées sont utilisées pour intégrer la logique métier. Autrement dit : vous devez également maîtriser les JavaBeans et les bibliothèques de balises personnalisées.
Javascript
JavaScript est un langage de script qui s'exécute dans tous les principaux navigateurs. Vous utilisez JavaScript pour la programmation côté client. La tâche la plus importante dans la programmation côté client consiste à valider les entrées de l'utilisateur. L'avantage de l'utilisation de la validation des entrées côté client est de réduire la charge de travail du serveur et d'améliorer le temps de réponse. De plus, JavaScript peut être utilisé pour les redirections, la gestion des cookies, le contrôle des applets, la création d'arborescences de navigation, l'ouverture d'une nouvelle instance d'un navigateur, etc.
SQL (Structured Query Language) et JDBC (Java Database Connectivity)
Aujourd'hui, la plupart des applications Web incluent l'accès aux données des bases de données relationnelles. En tant que programmeur Web, vous devez savoir comment stocker, récupérer et manipuler des données dans une base de données. Parfois, vous devez également concevoir la base de données et créer des tables et autres structures dans la base de données. SQL est le langage utilisé pour manipuler les données de la base de données. Vous devez généralement écrire des instructions SQL (souvent de manière dynamique), les transmettre au serveur de base de données et récupérer les données (le cas échéant).
En utilisant le langage Java, vous devez utiliser JDBC pour aider l'application Web à communiquer avec le serveur de base de données. JDBC comprend deux parties : l'API JDBC Core (interface de programmation d'application) et l'API du package optionnel JDBC. Le premier groupe est utilisé pour effectuer des opérations de base sur les données, telles que la création d'une connexion ou la lecture, la mise à jour et la suppression d'enregistrements dans une table. Le deuxième groupe fournit des fonctionnalités de connexion à une base de données plus avancées telles que le regroupement de connexions, les transactions et RowSet. La version actuelle de JDBC est la 3.0 et l'API est incluse dans J2SE v. 1.4.
Gestion des conteneurs Web et déploiement d'applications Vos servlets et pages JSP s'exécutent dans un moteur appelé conteneur servlet/JSP ou conteneur Web. Vous devez au moins savoir comment déployer vos ressources Web pour les tests ainsi que pour les exécutions en production. Par exemple, si vous utilisez Tomcat, vous devez savoir comment mapper l'application dans le fichier de configuration (server.xml) afin que Tomcat sache comment appeler votre page JSP. De plus, vous devez savoir où enregistrer vos bibliothèques et comment créer des descripteurs de déploiement d'applications.
XML (langage de balisage extensible)
XML est une étoile montante à succès dans le domaine informatique. Développé par le World Wide Web Consortium en 1996, XML est désormais une norme largement reconnue pour l'échange de données et les structures de données extensibles. XML joue un rôle important dans le développement Web Java. Par exemple, le descripteur de déploiement de chaque application est au format XML. De plus, si vous développez des services Web, vous utiliserez SOAP (Simple Object Access Protocol), qui repose principalement sur HTTP et XML.
De plus, dans les applications Web, XML peut également être utilisé pour stocker des données hiérarchiques.
L'architecture modèle 2 est la technologie la plus avancée de sa catégorie. Cette structure est recommandée pour créer des applications Web Java assez complexes. La structure du modèle 2 est basée sur le paradigme de conception Modèle-Vue-Contrôleur.
Techniques avancées Les techniques suivantes vous distingueront des débutants.
JSTL (JSP Standard Tag Libraries), projet Jakarta Taglibs et autres bibliothèques Pour accélérer le développement d'applications, vous devez souvent réutiliser le code. En termes simples, la réutilisation du code signifie que si quelqu'un a déjà écrit du code pour exécuter certaines fonctions, il est préférable d'utiliser ce code plutôt que de l'écrire vous-même. Par conséquent, JSP vous permet d'utiliser des balises personnalisées. Il existe plusieurs bibliothèques que vous pouvez utiliser, les plus populaires étant celles du projet Jakarta Taglibs d'Apache. Ce package peut être téléchargé depuis http://jakarta.apache.org/taglibs/index.html , et vous pouvez utiliser tout ce que vous trouvez prêt à l'emploi dans ce package avant de commencer à créer de nouvelles classes.
JSTL est récemment devenu un standard. D'autres bibliothèques de balises sont disponibles gratuitement ou dans le commerce.
Projet Apache Struts
Struts est un projet de ressources publiques parrainé par Apache qui fournit un cadre pour la création d'applications Web Java modèle 2. Struts fournit son propre composant Controller pour la structure MVC, utilise EJB, JDBC et JNDI pour le modèle et utilise JSP et d'autres technologies pour View. Vous pouvez trouver des informations plus détaillées sur ce projet sur son site Web : http://jakarta.apache.org/struts/index.html .
XHTML (langage de balisage hypertexte extensible)
XHTML est une technologie qui s'efforce de combiner HTML et XML. Vous pouvez considérer XHTML comme la prochaine génération de HTML. Sa version actuelle est la 1.0 (la deuxième version a été publiée le 1er août 2002). XHTML n'est pas aussi populaire que HTML, mais il jouera un rôle plus important à l'avenir. Selon Molly Holzschlag, experte en conception Web, la principale raison qui pousse les entreprises à passer au XHTML réside dans les lois américaines sur l'accès public (accessibilité). Pour plus d'informations sur XHTML, voir l'interview de Holzschlag.
DHTML (HTML dynamique)
DHTML permet aux gens d'interagir davantage sur votre site Web. Par exemple, en utilisant DHTML, vous pouvez facilement créer et afficher un sous-menu lorsque l'utilisateur déplace la souris sur un lien. Le plus grand défi lié à l’utilisation du DHTML est la création de pages multi-navigateurs. En effet, en théorie, la conception des pages devrait être gérée par des artistes, où le HTML dynamique est généré à l'aide d'un outil. Cependant, un programmeur Web est généralement responsable de l'intégration de tous les éléments, et si le code généré dans la page est défectueux, vous devrez comprendre le DHTML pour le réparer.
Programmation d'applets
Les applets étaient autrefois importants pour assurer l'interactivité, surtout avant l'avènement du DHTML. Désormais, le rôle des applets a été réduit et de plus en plus de programmeurs n'utilisent plus d'applets. La décision de Microsoft de ne pas fournir de support par défaut pour les applets dans son nouveau navigateur réduit considérablement le rôle des applets dans les applications Web. Toutefois, les applets ne sont pas morts. Pour certaines tâches, telles que l'affichage des titres d'actualité, les applets restent irremplaçables et les applets ne créent pas le casse-tête de la compatibilité entre navigateurs.
Protocole HTTP
Les programmeurs Web Java utilisent souvent des protocoles supérieurs à HTTP, tels que l'utilisation de servlets et d'API JSP. Ces API cachent la complexité du protocole HTTP. Par conséquent, vous pouvez toujours créer des applications importantes sans beaucoup connaître le protocole HTTP. Ce n'est que si vous devez traiter des données brutes, telles que le téléchargement ou la transmission de fichiers sous forme de pièces jointes, que vous avez besoin de plus de connaissances sur le protocole.
EJB (Enterprise JavaBeans)
EJB fait partie de J2EE et est important lorsque l'évolutivité et la puissance sont les principales exigences de votre application Web. Il existe trois types d'EJB dans la spécification actuelle (EJB 2.0) : les EJB de session, les EJB d'entité et les EJB pilotés par message. Une nouvelle spécification, version 2.1, est en cours de conception.
JNDI (interface de nommage et d'annuaire Java)
JNDI est important lorsque vous développez des beans entreprise car l'accès à un EJB se fait via le service de noms JNDI. Utilisez un service de noms pour rechercher un objet associé à un nom spécifique. Dans un contexte EJB, un service de nommage trouve un bean entreprise, à partir de son nom. Par conséquent, comprendre JNDI est crucial dans le développement d’une application EJB. De plus, JDBC peut utiliser JNDI pour accéder à une base de données relationnelle.
Autres outils Savoir où trouver des outils d'assistance spécifiques peut souvent aider votre carrière à évoluer. Par exemple, si vous êtes chargé d'effectuer une tâche d'analyse comparative, vous serez heureux de savoir que vous pouvez télécharger Jmeter à partir du projet Jakarta d'Apache. De plus, si vous devez envoyer les résultats de sortie au format PDF, il est recommandé d'utiliser la bibliothèque Java-PDF, téléchargeable gratuitement sur http://www.lowagie.com/iText/ . La technologie Internet est vaste et se développe rapidement. Cela signifie qu'en tant que programmeur Web, vous devez toujours prêter attention aux nouvelles technologies qui émergent dans l'industrie et aux événements majeurs qui se produisent. Il n’existe pas de plus grande ressource à cet égard qu’Internet lui-même.
À propos de l'auteur :
Java pour le Web
avec Servlet, JSP et EJB
Budi Kurniawan est un consultant informatique spécialisé dans la programmation Internet et orientée objet et enseigne les technologies Java et Microsoft. Il est l'auteur du best-seller Java pour le Web avec servlets, JSP et EJB : un guide du développeur pour les solutions évolutives (nouveaux pilotes), et a développé le Java Upload Bean le plus populaire, que vous pouvez télécharger sur BrainySoftware com. et de nombreuses entreprises importantes l'ont autorisé et l'ont utilisé dans leurs projets. Budi peut être contacté à [email protected] .