29/12/2008
Tous les expliquez-moi
|
Décryptez le fonctionnement de l'informatique et des processus de développement. |
Eclipse4SL
: le développement Silverlight dans Eclipse
Soutenu par Microsoft, le projet français a pour but de favoriser l'intégration
d'interfaces Web riches basées sur Silverlight à une couche applicative Java.
Riena
: le développement client/serveur dans Eclipse
Orientée services, la nouvelle plate-forme de développement et de déploiement
s'adosse à l'Eclipse Rich Client Platform et l'infrastructure Equinox : l'implémentation
OSGI de la fondation.
Eclipse
PDT 2.0 : l'orienté objet à l'honneur
Dans sa version 2.0, le plugin PHP de la fondation Eclipse se
veut plus performant. Il implémente notamment un nouveau moteur d'indexation
et de cache, et un environnement de travail refondu.
Google
Chrome 2.0 : un moteur de rendu optimisé
Le moteur de recherche a dévoilé le 13 janvier une pré-beta
de la version 2.0 de son navigateur, ciblant les développeurs. Au programme
: un meilleur support des CSS, et une implémentation "native" de HTTP.
Fusion
de Ruby on Rails et Merb : quelles implications ?
Les deux infrastructures de développement Ruby ne feront bientôt plus
qu'une. Suite à ce mariage, Ruby on Rails devrait gagner en souplesse et en
modularité.
WCAG
2.0 : une clarification des règles d'accessibilité
Dans leur nouvelle version, les règles recommandées par le W3C en matière
d'accessibilité Web ont été simplifiées. Objectif : faciliter l'appropriation
et la diffusion de ces bonnes pratiques
Blog
: pagination des commentaires en Ajax, avec Rails
Voici comment aboutir à une pagination des commentaires dans une application
Ruby on Rails. Exemple avec Typo : un outil de blogs basé sur cette infrastructure
de développement.
C#4
: un typage dynamique des objets
Décryptage avec codes à l'appui des principales nouveautés
des versions 4 et 5 du langage de développement orienté objets
de Microsoft, avec Didier Girard, directeur de l'innovation de Sfeir.
Windows
Azure : l'architecture cloud de Microsoft à la loupe
La plate-forme Azure permet de développer et déployer des applications
serveur, accessibles par Internet, et capables d'interagir avec d'autres systèmes.
Un produit qui répond aux initiatives d'Amazon et Google sur le cloud.
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.
HTML
5, des balises pour la recherche sémantique
Malgré l'apparition du XHTML comme nouveau standard de balisage pour le Web,
HTML 5 est en cours de développement. Le W3C a publié en janvier 2008 une
première version de travail.
Les
fichiers log, des indicateurs utiles
Les journaux d'évènements sont des fichiers textes enregistrant de manière
chronologique les évènements exécutés par un serveur ou une application informatique.
Un contenu qu'il faut savoir déchiffrer.
Les
ports, passerelles d'accès au réseau
Les flux applicatifs transitent sur les réseaux IP par le biais de protocoles.
A chaque protocole correspond une prise réseau unique sur le serveur ou la
machine cliente, une passerelle également appelée port.
Le
Bios, noyau de base d'un ordinateur
Elément essentiel d'un PC, le micrologiciel gère les composants matériels
de l'ordinateur. A chaque mise sous tension, il charge les périphériques de
base et teste leur bon fonctionnement.
Les
dossiers techniques en gestion de projet
De la phase d'analyse fonctionnelle à la mise en uvre en passant par
la réalisation, chaque étape d'un projet est validée par des livrables. Une
documentation qui sert de référence pour l'ensemble des intervenants.
Ruby
: l'absence de standardisation pointée du doigt
Le langage orienté objets dispose d'une syntaxe simple et efficace qui fait
son succès. A l'instar de Python, il tourne sur différentes plates-formes
applicatives, dont J2EE et Microsoft .Net.
Les
passerelles, points de liaison entre deux réseaux
Intervenant au niveau des couches de transport, les passerelles gèrent l'échange
de données entre univers IP. Plus les infrastructures et protocoles en présence
seront différents, plus leur fonctionnement sera complexe.
Python
: des implémentations non standards
Le langage orienté objets a été décliné pour de nombreux environnements. Des
implémentations qui ne sont pas compatibles entre elles, et qui présentent
des différences notables.
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.
|