Derrière le site
Cette page est destinée à vous faire découvrir les technologies que j'ai mises en place pour construire ce site.

Technologies et langages utilisés :
- XHTML 1.0 Strict
- XHTML est un langage à balises dont la fonction est la même qu'HTML, mais conforme à la syntaxe XML. XHTML 1.0 Strict une amélioration du langage XHTML 1.0 Strict, implémentant la notion de modularité.
- XML
- XML est un métalangage destiné à créer des langages basés sur des balises. Je l'utilise pour le flux RSS du blog.
- CSS niveau 2
- CSS est un langage à feuille de style, utilisé pour décrire la présentation de documents écrits avec un langage à balises.
- JavaScript
- JavaScript est un langage de script utilisé pour le développement Web côté client. J'utilise peu de JavaScript natif sur ce site, mais plutôt jQuery (cf. ci-dessous)
- Flash
- Flash est une méthode populaire d'ajout d'animations à une page Web. Je l'utilise pour créer le titre "Pierrick Dautrement", en haut de chaque page du site. A noter que j'utilise Swfobject, qui rend compatible Flash avec tous les navigateurs.
Framework Zend
Zend Framework est un framework pour PHP créé par Zend Technologies. Il est distribué sous la New BSD license et a été développé dans le but de simplifier le développement PHP. Il recommande les bonnes pratiques et la conception orientée objets en offrant des outils puissants aux développeurs. Zend Framework est basé sur la modularité, contrairement à d'autres framework comme Symphony ou CakePHP. Il se présente plus comme un ensemble de librairies indépendantes, mais parfaitement intégrées les unes aux autres. Il correspondait donc parfaitement aux besoins de ce site.
Modules utilisés
- Zend_Acl
- Fournit une implémentation légère et flexible de listes de contrôle d'accès (ACL) pour la gestion de privilèges. Utilisé pour la partie d'administration.
- Zend_Auth
- Utilisé pour implémenter la persistance de la connexion à la partie d'administration.
- Zend_Cache
- Utilisé pour accélérer l'accès aux données de la base MySQL. Par exemple, les données du nuage de catégories ne sont rapatriées qu'une fois par jour.
- Zend_Config
- Utilisé pour configurer l'application.
- Zend_Controller
- Il est au cœur de l’implémentation MVC (Modèle-vue-contrôleur) du Framework. Il est utilisé sur tout le site, pour réaliser le lien entre les vues et les modèles.
- Zend_Db
- Une implémentation classique des design pattern "Table Data Gateway" et "Row Data Gateway", permettant un accès facile et intuitif aux tableaux et aux lignes des bases de données, ainsi qu’un point d’entrée pour la logique métier qui englobe les données.
- Zend_Exception
- Utilisé pour gérer toutes les exceptions.
- Zend_Feed
- Utilisé pour créer le flux RSS.
- Zend_Filter
- Utilisé pour filtrer les champs des formulaires.
- Zend_Form
- Utilisé pour créer tous les formulaires.
- Zend_Json
- Utilisé pour créer du jSON, renvoyé par de l'AJAX.
- Zend_Layout
- Implémentation du design pattern "Two Step View", permettant d'englober les vues du MVC dans une vue générale, appelée template du site.
- Zend_Loader
- Utilisé pour charger automatiquement certains fichiers ou classes PHP.
- Zend_Paginator
- Utilisé pour paginer les données, par exemple sur le blog.
- Zend_Search_Lucene
- Implémentation de l'algorithme d'indexation et de recherche Lucene, originaire de Java. Utilisé pour indexer les données, et pour la recherche du site.
- Zend_Session
- Utilisé pour manipuler des données de session (par exemple à l'authentification de la partie d'administration).
- Zend_Validate
- Utilisé pour valider les données rentrées dans les formulaires.
- Zend_View
- Implémentation de la partie vue du MVC. Il propose des aides de vue, des filtres d'affichage et d'échappement de variables.
- ZendX_JQuery
- Utilisé pour automatiser l'utilisation de jQuery (implémentation des scripts notamment).
jQuery
jQuery est une librairie JavaScript open-source qui simplifie l'utilisation du DOM, la gestion d'évènements, l'animation, AJAX, et bien plus encore. Je la considère à ce jour comme l'une des meilleures libraires JavaScript, pour sa légèreté, et sa simplicité d'utilisation.
jQuery et ses plugins sur ce site
- Effets slideDown et slideUp
- Pour cacher et afficher du code. Utilisé pour la partie blog notamment.
- jQuery.validate
- Permet de valider dynamiquement les données entrées dans un formulaire.
- jQuery.scrollTo & jquery.localScroll
- Permet aux utilisateurs de naviguer à travers le site grâce à des ancres internes et avec un effet de scroll plaisant.
- jQuery.serialScroll
- Utilisé pour présenter les projets phare du Portfolio.
- jQuery.elastic
- Permet à une textarea de grandir automatiquement lorsqu'on y insère du texte.
- jQuery.shadowBox
- Clone de LightBox, bien plus complet. Il permet d'afficher des éléments multimédia dans une boîte au centre de la page.



