C'est quoi un framework?



C'est quoi un framework?

Un framework permet de réduire les temps de développement des applications en répondant de façon efficace aux problèmes les plus courants rencontrés par les développeurs. Il inclut généralement de
nombreuses fonctionnalités prêtes à l’emploi dont les implémentations sont bien rodées et utilisent des modèles de conceptions standard et bien implémentés. Le temps ainsi gagné sur les questions génériques
pourra être mis à profit pour les parties spécifiques de l’application.
De plus, l’utilisation d’un même framework dans différents projets contribue à l’industrialisation du
processus de développement : la structure de l’application et les méthodes de programmation sont standardisées, les compétences des développeurs sont réutilisables dans chaque projet.
Un framework est le fruit du travail de dizaines de personnes qui s’appliquent à corriger les problèmes ou les failles de sécurité découverts par l’ensemble des utilisateurs et à proposer de nouvelles fonctionnalités. C’est pourquoi les programmes d’un framework sont en général mieux conçus et mieux codés, mais aussi mieux débugués et donc plus robustes, que ce que pourrait produire un unique programmeur. Outre le gain de temps, on obtient un important gain en termes de qualité.
L’utilisation d’un framework est très fortement recommandée, afin de ne pas avoir à réinventer la roue et d’éviter les erreurs de conception classiques qui créent des problèmes de sécurité ou tout simplement des bugs.

Performances des logiciel en rapport avec le framework:
Beaucoup de développeur pensent que l’utilisation d’un framework ne peut que dégrader les performances d’une application. Ce n’est pas tout à fait exact.
Il est vrai qu’il existe en informatique un compromis très ancien et très habituel entre la qualité de l’architecture logicielle et des outils de développement d’une part, et les performances d’autre part. Avec le
temps, ce compromis finit toujours par être tranché en faveur des outils de développement, car la CPU coûte de moins en moins cher, tandis que l’heure de programmeur coûte de plus en plus cher. C’est cette logique
qui veut que nous ne développions plus en assembleur, bien que cela puisse être plus performant.
Par cette analyse, on pourrait dire : oui, un développement basé sur un framework sera peut-être moins performant, mais ça n’est pas grave, car les gains attendus en termes de productivité, de qualité, de robustesse et de maintenabilité sont tellement plus importants au final.

Mais il faut souligner aussi qu’un framework peut, bien souvent, faire gagner aussi sur le plan des performances. Cela simplement parce qu’il met à disposition du développeur des structures de code plus
complexes et plus optimisées que ce qu’il aurait produit seul. L’exemple le plus parlant est bien sûr celui d’un bon gestionnaire de cache, que ce soit sur des objets obtenus d’une base de données, ou bien sur des
fragments de page Html : là où un programmeur sans framework aurait eu du mal à réaliser son propre cache de manière complète et fiable, il dispose de classes prêtes à l’emploi qui amélioreront de manière
extraordinaire les performances de son application.
Avec PHP, le principal facteur de dégradation des performances vient de ce qu’il faut, à chaque requête, déclarer les différents modules, charger la configuration ou convertir en PHP des templates qui utilisent une
syntaxe spécifique.
Les frameworks utilisent plusieurs mécanismes pour minimiser cet impact sur les performances :
• Sélection des modules : le développeur peut définir les modules à utiliser dans une requête en fonction de la page concernée.
.

• Autoload : utilisation des nouvelles fonctionnalités de PHP5 qui permettent de déclarer des classes ou des modules uniquement au moment de leur utilisation.
• Cache : les fichiers de configuration et les templates non PHP sont traités et convertis dans leur équivalent PHP afin d’être ensuite intégrés de façon beaucoup plus performante lors de chaque requête.
Au final, l’impact est donc faible dans la plupart des cas.

Messages les plus consultés

Dépannage Informatique

Dépannage Informatique
Dépannage Informatique

Libellés

windows Explication Coups de coeur actu Astuces - trucs et bidules chrome securite photos optimisations Assistance informatique à domicile Tarifs informatique réparation de votre ordinateur chez vous Carte Graphique Logiciel sécurité astuces Tutorial firefox Boitier Périphérique OS Windows OS Mac Tutoriels Windows ressources retouche mobile reseaux videos Dépannage informatique à domicile bureautiques sauvegarde Actualité Alimentation Pré-histoire ICT Gimp DigiScrap OS Linux Windows 8 tutoriel Aircooling Gimp création Monitoring server Windows 7 Word astuce Carte Mère Pilotes-drivers-PC captures design divers langage Html navigateurs pdf Acer Aspire Android Réparer clé usb USB 2 Unix Linux hardware informations logiciel loisirs sciences Cours C Geek Vintage HP Pavilion Internet SSD microsoft Gimp retouche image Lan Management Stockage Watercooling XnView conversion définition explication video google reseaux sociaux Configurations Complètes Curseurs souris Imprimer Samsung Notebook NP USB bootable Usb 3 WinXP Windows Seven Wordpress XPI iPhone icones résolution Développement Fujitsu Amilo Linux Logiciel USB Objets connectés Optimiser Probleme USB Processeur RAM Tutoriels iPhone/iPad/iPod bureautique clé usb exercice windows feature internet java mise à jour optimiser Windows 7 recadrer resaux et material templates vie privée Administration Apple Asus Eeepad Asus G Asus X Bidouille Défragmentation Dépannage Electronique Facebook Gadget Windows 7 Gimp ressources IOS (iPhone / Ipad) JPG LaPoste Licence Windows MSE Malwarebytes Migration Optimisation Packard Bell Easynote Photoshop Product key Récupérer fichiers Réparer Sécurity Theme Windows 7 Thunderbird Toshiba Satellite Tutoriels Divers Tutoriels Photoshop Tutoriels Spécial Windows 8 Ubuntu Windev Windows Update Windows XP Zend affichage anti-virus antivirus clavier et souris comment enlever les yeux rouges framework games gestion des images installation le materiel informatique linux mode sans échec musiques métadonnée nettoyer ordinateur pixel poids smartphone solution informatique taille telechargement tutorial téléphone virus 0x80244019 11x20 14 juillet 2015 16/9ème 7z 80070490 8E5E03FA 8E5E03FB ABC de la sécurité Accélérer le démarrage Acer Aspire One Acer Extensa Acer Iconia Alarme Alt key status Anonymat Anti Yeux rouges Arduino Astuces Jeux iPhone/iPad/iPod Asus Memo Pad Asus Transformer Book Asus Transformer Pad Asus VivoBook Authentification Automatisation Autorisation d'accès BF3 Batterie PC BattleField 2 Bioshock BranchCache C CS6 Caps Lock status Ccleaner Cheval de Trois Classic Shell CookieViz Ctrl key status Cube DOS DPI Dossier partagé Démarrage Ecran Bleu Windows 7 Ecran Bleu mort Excel Explorateur Windows Fin Windows XP Fond ecran Fujitsu Lifebook Gateway Gimp Gimp installation Gimp suggestions Google Hard Drive activité Hardware Horloges Windows 7 IBM Lenovo 3000 IBM Thinkpad ISO Windows 8 ISO Windows 8.1 Internet Explorer Internet Explorer 8 Jeu Jeux Jeux-video Live USB Livres Lubuntu Ma Musique Mac Menu Mes Documents Mes Images Mes Vidéos Microsoft Microsoft Office Microsoft Security Essentials Num Lock status OEM PC grande marque Pare-feu Partage SMB Patrice A. BONNEFOY PicPick Polaroid Probleme mise a jour ProductKey Publicité Quota RAW Recovery Ressource partagée Restauration Réinitialiser Mot de Passe Windows 7 Rôles et fonctionnalités Samsung Série 3 Scroll Lock status SevenZip Shift key status Site Web Spyboot TIF Taux de panne Taux de retour Toshiba Qosmio TrayStatus Trojan Tutoriels Office USB-RS232 UTC Virtualisation WinTools Windows 10 Windows 8.1 Windows Defender Windows Embedded Industry Windows Embedded POSReady Windows Server 2003 Windows Server 2015 Windows Update impossible Windows XP SP3 Windows key status Windows n'est pas authentique WindowsUpdateAgent WindowsUpdateAgent30-x86.exe WpKey XP jusqu'au 9 avril 2019 Xubuntu activation activation Windows activer Windows ads adware android arrêt des mise à jour de Windows XP assemblage PC barre des charmes base de donnée bleu de Windows 7 blog booster bouton démarrer capture écran choix distribution Linux classement chronologique clavier clé produit code malicieux commande Exécuter comment réinitialiser mot de passe compatibilité des applications compte local cookies cookies Chrome cookies Firefox cookies Internet Explorer cookies Opera cookies Safari cours Vb crack date de prise de vue disques durs drive-by dual-boot décalage heure défragmentation Windows 7 défragmentation du disque démarrer en mode normal déplacer déplacer Ma Musique déplacer Mes Documents déplacer Mes Images déplacer Mes Vidéos exif exploit facebook faille de sécurité fiabilité des composants format argentique format d'image format numérique grandes marques hacker heure GMT heure système hi-tech humour iPod infographie insolite interface graphique animée intranet joke joomla lancer programme au démarrage langages licence OEM logiciels malveillants mac maintenance malware meilleurs composants informatiques mises à jour mode détails mode normal mode sans echec mode sans echec windows 7 moniteur montage PC mort Windows XP msconfig navigateur nettoyage news optimiser son pc panoramique partitionner pas de son phishing php piratage prolonger mises à jour promo raccourcis rapport recadrer par lot redimensionner restaurant riskwares rootkit récupérer clé produit récupérer product key réparation windows 7 réparer réparer windows 7 sans le formater sauvegarde Windows 7 sauvegarde des données sauvegarder screenshot site web MS spam speeddial spyware supprimer cookies toujours en mode sans échec ubunto un disque dur utiliser utilitaires vbs vignettes windows7 économiseur d'écran écran