|
30/04/2008
Tous les expliquez-moi
|
Décryptez le fonctionnement de l'informatique et des processus de développement. |
Applets et Servlets : deux modèles d'interaction client/serveur
Présentant chacun leurs avantages et inconvénients, applets et servlets s'exécutent respectivement côté client et côté serveur. Moins lourds qu'un langage de script, ils bénéficient de la richesse et de la portabilité de Java.
Assurer
la conformité d'un contenu Web avec une DTD
Avec pour objectif de mettre en conformité un site avec les standards (X)HTML
et CSS du W3C, la définition de document type offre un canevas pour séparer le
contenu de la présentation. Un mécanisme qui ne manque pas de souplesse.
Développer des applications RIA avec JavaFX
L'infrastructure de Sun est conçue pour développer des interfaces graphiques riches et interactives. Reposant sur Swing, ces applications s'intègrent à toutes les plates-formes utilisant la technologie Java.
Le framework : un socle de développement structurant
Le travail du développeur a considérablement changé depuis l'avènement des infrastructures logicielles. L'élaboration du squelette d'une application est simplifiée grâce aux éléments prêts à l'emploi.
Flex 3 et AIR enfin sortis, Silverlight 2 se dévoile
Adobe et Microsoft viennent de lancer coup sur coup les nouvelles versions de leur technologie respective d'applications Internet riches.
Décryptage des avancées de ces deux solutions.
Access-Key, les vidéos de l’accessibilité
Lancé par les universités de Nice Sophia-Antipolis et de Haute Alsace, le portail "Access-Key" propose une série de vidéos illustrant les difficultés des internautes handicapés. Objectif : sensibiliser les développeurs.
Support de CSS: de gros progrès pour Internet Explorer 8
La version de développement principale du navigateur de Microsoft a passé le test Acid2. Un signe qui tendrait à prouver qu'IE est sur une bonne voie en vue d'un support d'une partie des standards du W3C.
Mozilla Prism, ou la validation d'un concept
Exécuter une application en mode déconnecté. Tel est l'objectif de l'infrastructure dévoilée par la fondation. Une initiative qui se pose en concurrente d'Adobe AIR et de Microsoft WPF.
XHTML, CSS, accessibilité : confusions et amalgames
Exploiter les feuilles de style ne veut pas dire obligatoirement réaliser des contenus sémantiquement correctes ou accessibles, ou vouloir lutter contre les tableaux. Décryptage de certaines idées préconçues.
L'accessibilité des menus de navigation en cascade
Au survol de la souris, le menu en cascade se déploie en sous-menus sur plusieurs niveaux. Mal conçu, ce moyen de navigation pourra néanmoins gêner l'accessibilité de l'application pour les personnes handicapées.
La génération d'applications : mythe ou réalité ?
Le français Netfective commercialise un produit qu'il présente comme un environnement de développement automatisé. Manifestement plus évolué qu'un générateur de code, l'outil n'en présente moins certaines limites.
La
plate-forme de développement Mono
Projet Open Source basé sur les standards ECMA / ISO, Mono a pour objectif de
porter le framework .Net sous Linux.
VoiceXML
Dans le cadre de la nouvelle version VoiceXML 2.1, retour sur l'utilité et les
caractéristiques de ce langage pour la communication téléphonique homme /
machine.
Cookies et ASP.NET
Petits fichiers universellement connus, les cookies sont des agents indispensables à la convivialité de tout site. Il existe des bibliothèques ASP.NET qui permettent de les utiliser très simplement.
Flex
Outils et langages permettant de réaliser des applications Internet riches, l'environnement d'Adobe propose de combiner des interfaces en Flash à une logique applicative et transactionnelle.
Silverlight
Pilote .net implémenté en XAML, le composant client de Microsoft permet de visionner des animations multimédia pour le Web mais aussi des RIA, à la manière de Flash.
Les machines virtuelles
Elles créent au sein d'un système existant des environnements virtuels. Elles peuvent couvrir deux objectifs : porter plusieurs OS sur une même machine, faire tourner une application quel que soit le système d'exploitation sous-jacent.
Les Mashups
Reprendre le contenu d’un site pour le publier sur un autre via des interfaces de programmation. Une opportunité du Web 2.0.
Ajax
face à la sécurité
L'usage croissant d'Ajax dans les développements remet sur le devant de
la scène les risques de sécurité liés à l'exploitation
de codes JavaScript. Mais ce risque est-il suffisamment bien pris en compte dans
les projets ?
Java
officiellement sous licence Open Source
A l'occasion de la conférence JavaOne, Sun a dévoilé le premier
kit de développement Open Source de son langage. Un outil qui n'inclut pas l'ensemble
des briques de l'environnement.
Les OS Web
Le navigateur Web se fait système d'exploitation pour s'affranchir de la suprématie de Windows. Tirant parti des interfaces Web riches, une nouvelle catégorie d'OS est entrain de voir le jour.
Qu'est ce qu'une ontologie ?
Un terme compliqué pour évoquer une méthode plutôt simple conçue pour clarifier et organiser ses développements. Ses applications se situent, entre autres, sur le terrain des bases de connaissances et du Web sémantique.
L'analyse orientée objet
Dans le cadre de la programmation orienté objet, la méthodologie permet de décrypter les buts et besoins nécessaires d'un logiciel. Elle est utilisée au travers des processus de modélisation UML.
La
programmation en binôme
Avec pour objectif de rendre le travail collectif supérieur
à la somme des travaux individuels, cette méthode peut être
envisagée comme une revue de code permanente... mais peut
échouer pour des raisons relationnelles.
Pourquoi
il est préférable d'utiliser HTML plutôt
que XHTML
Dépendantes du type MIME, les pages XHTML sont de ce
fait traitées le plus souvent comme des pages HTML non valides.
Un contexte qui rend l'usage de HTML4 plus recommandé.
Le
support noté des navigateurs Web
A l'attention des développeurs de sites, Yahoo! propose
une table de notation conçue pour établir la liste
des navigateurs à tester, selon leur modernité, leur popularité
et leurs capacités.
L'intérêt
de FastCGI face à CGI
Apparu au milieu des années 90 mais resté dans l'obscurité,
le protocole FastCGI revient en force pour soulager les serveurs
Web écrasés sous le poids des requêtes HTTP.
L'identité
numérique avec OpenID
Découvrez ce système d'authentification personnelle. Parmi
ses principales caractéristiques, son modèle décentralisé
et l'utilisation d'une URL comme identifiant.
La
méthode agile Scrum : faire face au changement
La démarche propose un mode de pilotage itératif prenant en
compte les évolutions qu'un projet de développement
peut subir en cours de route. Découvrez-en les principes fondamentaux.
Le
fonctionnement d'une liaison client/serveur avec HTTP
Le voyage d'une page Web sur le réseau Internet est semé de
requêtes aux en-têtes abscons. Découvrez les étapes
de cette procédure, et apprenez à déchiffrer
les principales lignes de ses "headers".
L'intention
des méthodes de développement Agile
Extreme Programming n'est qu'une méthode agile parmi une dizaine
d'autres. Découvrez leurs points communs, leur but final,
et donc les raisons de leur popularité croissante.
La
normalisation d'une base de données
Organiser sa base SQL sans risquer de créer des sources d'anomalies
ou des problèmes logiques : le principe de la théorie de normalisation
s'applique à tout projet dynamique souhaitant grandir.
Les
liens entre ECMAScript, JavaScript, ActionScript, JScript...
Une spécification, beaucoup d'implémentations, pour au final
le langage de script le plus utilisé sur le Web. Débroussaillage
des correspondances entre standard et navigateurs.
RDFa,
la réponse du W3C aux microformats
La sémantique des données du Web devient une zone de combat
avec cette nouvelle méthode, basée sur RDF et disposant de
ses propres avantages, à commencer par la dispense de faire
appel à des formats prédéfinis.
GRDDL
: une syntaxe pour relier XHTML/XML et RDF
Comment faire entrer les données disponibles aux formats XHTML
et XML dans le monde de RDF et du Web Sémantique ? La réponse
du W3C : un mécanisme explicite liant l'espace de nom à son
algorithme de traitement.
Les
langages spécifiques : limiter pour optimiser
Les syntaxes HTML, SQL et Make appartiennent à un groupe de
langages bien particulier : ceux qui ciblent un seul domaine
d'utilisation, de la manière la plus optimisée possible.
Les
espaces de noms, pour lever les ambiguïtés
Les espaces de noms associent à des contextes les extensions
de nommage permises par les langages de nouvelle génération.
L'objectif de cette technique : éviter les conflits de
noms de classes ou de fonctions.
Les
paradigmes, pour une classification des langages de programmation
En définissant les limites de fonctionnement d'un langage,
un paradigme offre au programmeur une meilleure visualisation
de son comportement, et de sa logique de développement.
LaTeX
: faciliter la mise en forme scrupuleuse
Grâce au jeu de macro-commandes offert par LaTeX, la production
de fichiers TeX, standard de la composition typographique
de documents scientifiques complexes, devient enfin accessible
aux non-initiés.
Les
symboles du langage Ruby
Loin d'être seulement une amélioration cosmétique, les symboles
permettent de ne stocker en mémoire qu'une instance du nom
d'une variable, économisant cette dernière pour des
utilisations plus fondamentales.
Les
bases de données multidimensionnelles
Réservés aux entrepôts de données, les SGBD dimensionnels
agrègent des informations en provenance de sources hétérogènes
pour en tirer des tendances et soutenir les activités décisionnelles.
Le
duck typing : la valeur détermine le comportement
Nouvelle appellation dans le monde des typages alternatifs,
le duck typing est mis en avant par des langages comme Python
et Ruby, et cherche à libérer des contraintes du typage explicite.
Ce
qu'est une distribution Linux
Ubuntu, Mandriva, Red Hat, Debian, SuSE : pourquoi y'a-t-il
tant de distributions Linux, et quels sont les liens entre
elles ? La réponse.
ADO
et ADO.Net : une évolution en profondeur
Les différences entre ADO et ADO.Net ne sont pas forcément
perceptibles pour le développeur Win32 qui ne s'est pas encore
penché sur .Net. Elles sont pourtant notables, et modifient
substantiellement la manière d'accéder aux données.
Les
microformats, une méthode de qualification des données
Objectif de ces spécifications : donner du sens à un
contenu HTML de manière ciblée, en proposant par exemple des
informations sur l'auteur d'une page.
POJO,
le retour à la simplicité de Java
Utiliser des Plain Old Java Object afin de découpler son code
des interfaces invasives et complexes des frameworks et bibliothèques
à la mode.
Les
avantages de l'indexation plein texte dans SQL
Description du fonctionnement de cette technologie de recherche
rapide pour traiter de larges quantités de données.
Les
implications du passage de Java en Open Source
Bouleversement du monde Java, l'ouverture du langage est attendue
depuis longtemps. Clarification des conséquences possibles
d'une telle mutation, pour Sun comme pour les développeurs.
Les
injections SQL
Utilisées pour pirater les applications Web dynamiques, les
injections SQL compromettent les données stockées sur votre
base. Présentation des dangers potentiels et de quelques approches
pour les éviter.
Le
protocole NNTP
Inventé en 1986 et encore activement utilisé, Usenet utilise
ce protocole de transfert de données pour gérer la publication
et la propagation des messages qui lui sont envoyés.
L'apport
de PL/SQL
Extension propriétaire à SQL pour les systèmes Oracle, PL/SQL
ajoute au langage de requête les fonctionnalités qui le rapprochent
d'un véritable langage de programmation, dédié au traitement
des données.
Ce
qu'est un serveur VPS
Les hébergements en serveur virtuel proposent une palette
de possibilités proche de celle d'une offre sur serveur
dédié, sans en imposer les coûts.
Les
propriétés ACID d'une base de données
Atomicité, cohérence, isolation et durabilité sont les quatre
conditions d'une transaction réussie au sein d'une base de
données. Définition et raison d'être de chacune.
La
génération de code
Produire automatiquement une application, en réglant certaines
règles fondamentales... Un rêve qui se rapproche de la réalité
avec ces outils combinant métadonnées et contexte d'utilisation.
La
différence entre langages compilés et interprétés
Compilation ou interprétation ? Les clefs pour comprendre
l'importance de cette différence fondamentale entre les implémentations
de langages de programmation.
Le
CMMI
L'une des premières mises en oeuvre de bonnes pratiques du
développement logiciel, CMMI établit les aspects à surveiller
au sein d'une organisation et d'un projet pour en assurer
la bonne complétion.
Les
orchestrations BPEL
Cette spécification clé du monde des échanges métier propose
de gérer l'ensemble de la séquence d'interactions entre plusieurs
services Web. Mise en lumière.
Windows
Presentation Foundation
Vista arrive, et avec lui de toutes nouvelles briques de développement
à prendre en compte. WPF se charge de tout l'aspect relationnel
homme-machine, au travers de technologies comme XAML ou WPF/E.
Présentation et implications.
Ce
qu'apportera CSS3
Répondre aux attentes et anticiper les besoins des développeurs
Web : la tâche qui incombe à la prochaine version des feuilles
de style est considérable, et promet une véritable maîtrise
de la mise en forme des sites.
La
programmation orientée aspect
Elaboré en 1997 par Xerox, ce paradigme de programmation commence
à faire parler de lui en dehors des études académiques, et
les outils utilisables par les développeurs deviennent fiables.
Le
stockage de données sur CD
Extraire un fichier d'un morceau de plastique ? Clarification
des principes de la composition d'un CD-ROM, et du fonctionnement
d'un lecteur.
L'évolution
des langages informatiques
En 50 ans, l'informatique est passée du langage machine
à la programmation par contraintes en passant par l'assembleur
et les langages proposant une syntaxe lisible proche de l'anglais.
Bilan.
Le
fonctionnement d'un VPN
Extension du principe proposé par SSH, le réseau privé virtuel
repose sur des protocoles établis, renforçant le principe
de sécurité des transmissions.
Comment
simuler informatiquement le hasard ?
Nombre aléatoire ou pseudo-aléatoire ? En pratique, les ordinateurs
ne nous laissent pas beaucoup de choix. Voici pourquoi.
La différence entre trackback et pingback
Deux spécifications pour une utilisation : la notification
de lien. Décryptage de leurs fonctionnements respectifs.
Le
fonctionnement de l'interpréteur PHP
Comment les codes PHP se transforment-ils en code HTML ? Les
dessous du traitement des pages dynamiques.
Le
protocole XMPP
Evolution standardisée d'un système Open Source, XMPP représente
l'un des protocoles les plus prometteurs en matière d'interopérabilité
de la messagerie instantanée.
Le
système d'adressage d'IPv6
L'évolution du protocole IP doit pouvoir dépasser
les limitations d'IPv4. Comment ?
Les
monades
Nombreux sont les concepts auxquels se heurtent les programmeurs
qui découvrent les langages fonctionnels. Parmi eux, les monades,
moyen de construire et regrouper les traitements de manière
séquentielle, tiennent une place proéminente.
Le
lambda calcul
L'une des fondations des langages de programmation, ce modèle
mathématique de la calculabilité n'est pas pour autant connu
de tous. Éclaircissements sur son importance dans la paysage
informatique.
Le
fonctionnement de Google Maps
Gérer l'affichage dynamique de milliers d'images accolées,
par le seul biais de JavaScript et de scripts serveur bien
conçus : voici le défi technique relevé par Google pour Maps,
que nous étudions ici.
Le
fonctionnement du protocole BitTorrent
Grâce à une idée simple mais très bien pensée, ce logiciel
Open Source est devenu le protocole le plus utilisé pour la
diffusion efficace de fichiers lourds.
Les
closures, pour atteindre les variables inaccessibles
Présente dans de nombreux langages, mais rarement comprises,
les closures donnent à une fonction accès à variables autres
que celles comprises dans ses arguments.
Les
enregistrements DNS
MX, NS, CNAME, SOA : autant d'acronymes rattachés aux serveurs
de nom, dont on ignore souvent la signification ni ce qu'ils
impliquent. Explications.
Le
fonctionnement d'un système de grille
La grille de calcul, c'est l'idée de diviser le temps
nécessaire pour parvenir à un résultat en mutualisant les
ressources de très nombreuses machines. Comment cela
fonctionne-t-il ?
le
PageRank Google
Quels sont les différents critères pris en compte par le célèbre
moteur de recherche pour classer les sites Web ? Comprendre
pour mieux être référencé.
L'émulation
Jeux vidéo, virtualisation, tests logiciels et matériels :
l'émulation est utilisée dans tous ces domaines. Elle
consiste à imiter le fonctionnement interne d'un système.
Mais comment ?
Les
systèmes de fichiers
À la racine des systèmes d'exploitation, ils définissent les
principes d'accès aux fichiers et leur hiérarchisation.
Les
graphes
Méthode générale de rangement de données, qui s'applique autant
à des problèmes purement mathématiques qu'à des questions
de la vie de tous les jours.
La
notation n3
Destinée à faciliter l'utilisation de RDF et donc le Web sémantique,
n3 a été conçue par Tim Berners-Lee.
L'architecture
orientée service
Ce nouveau principe de conception d'application vise à libérer
les développeurs grâce un usage fort des services Web.
le
standard Unicode
Unicode est un codage, au même titre que le Morse ou l'ancêtre
ASCII : il vise à faciliter l'échange de données entre
différents pays.
Les
pointeurs
Compréhension et reconnaissance de cette fonctionnalité indispensable
de certains langages, en particulier C et C++.
Le
fonctionnement d'un compilateur
C'est l'outil indispensable pour la bonne compréhension d'un
programme par le processeur de l'ordinateur. Quels sont ses
principes ?
les
notations BNF et EBNF
Depuis plus de 40 ans, ces notations permettent de formaliser
clairement les syntaxes de nombre de langages. Par extension,
elles peuvent servir à en apprendre rapidement un nouveau.
Voici comment les décoder.
Le
fonctionnement de la machine virtuelle Java
La JVM émule un environnement d'exécution complet
et standard, afin d'assurer la portabilité des programmes.
Décomposition de ses éléments-clefs.
La
structure d'un message SOAP
Le Simple Object Access Protocol est un protocole destiné
à transporter des informations échangées
par deux applications. Décomposition d'un message-type,
pour mieux comprendre.
le
fonctionnement du W3C
Initiateur des évolutions XML, XHTML, CSS, SVG et bien d'autres
encore, le World Wide Web Consortium régit les technologies
du Web. Présentation de son organisation et de ses processus.
Le ramasse-miettes Java
Les principes de base du Garbage Collector, élement essentiel
de la machine virtuelle Java.
|