background preloader

Tuto

Facebook Twitter

Abstract Factory Design Pattern. Intent Provide an interface for creating families of related or dependent objects without specifying their concrete classes.A hierarchy that encapsulates: many possible "platforms", and the construction of a suite of "products".The new operator considered harmful. Problem If an application is to be portable, it needs to encapsulate platform dependencies. These "platforms" might include: windowing system, operating system, database, etc. Too often, this encapsulatation is not engineered in advance, and lots of #ifdef case statements with options for all currently supported platforms begin to procreate like rabbits throughout the code. Discussion Provide a level of indirection that abstracts the creation of families of related or dependent objects without directly specifying their concrete classes.

This mechanism makes exchanging product families easy because the specific class of the factory object appears only once in the application - where it is instantiated. Structure Example Check list. Learning JavaScript Design Patterns. Essential JavaScript Design Patterns For Beginners. Design patterns are reusable solutions to commonly occurring problems in software design. They are both exciting and a fascinating topic to explore in any programming language. One reason for this is that they help us build upon the combined experience of many developers that came before us and ensure we structure our code in an optimized way, meeting the needs of problems we're attempting to solve.

Design patterns also provide us a common vocabulary to describe solutions. This can be significantly simpler than describing syntax and semantics when we're attempting to convey a way of structuring a solution in code form to others. In this book we will explore applying both classical and modern design patterns to the JavaScript programming language. Target Audience This book is targeted at professional developers wishing to improve their knowledge of design patterns and how they can be applied to the JavaScript programming language.

Acknowledgments Credits Reading We already use patterns everyday. Design pattern Décorateur en Java : vente de desserts | Design-patterns.fr. Implémentation du pattern Décorateur en Java sur le thème de la vente de desserts. Description du problème Afin de mettre en pratique le pattern Décorateur, nous allons concevoir une application qui permet de gérer la vente de desserts. Celle-ci doit permettre d’afficher dans la console le nom complet du dessert choisi et son prix. Les clients ont le choix entre deux desserts : crêpe ou gaufre. Sur chaque dessert ils peuvent ajouter un nombre quelconque d’ingrédients afin de faire leurs propres assortiments. Voyons comment concevoir cette application. Une deuxième solution consiste à garder la classe Dessert en la modifiant légèrement. Voyons ce qu’apporte le pattern décorateur à notre problématique.

Implémentation d’une solution basée sur Décorateur La solution consiste à utiliser à la fois l’héritage et la composition. Implémentation de la classe abstraite Dessert La classe abstraite Dessert possède deux attributs que sont libelle et prix. Implémentation des classes Gaufre et Crepe. Programmation par composant avec la technologie OSGi (1ère partie) Ce premier article a pour objectif de fournir une introduction à la technologie OSGi (Open Service Gateway Initiative), technologie qui après avoir été longtemps utilisée dans le monde de l'embarqué est de plus en plus mise en oeuvre dans les applications classiques et serveurs.

Nous verrons dans un premier temps les différents concepts relatifs à OSGi et détaillerons à quelles problématiques cette technologie s'adresse tout en soulignant ses apports en terme d'architecture et de structuration des applications. Nous rentrerons par la suite dans les aspects techniques d'OSGi afin de détailler ses caractéristiques et de voir concrètement comment mettre en oeuvre cette technologie au sein d'applications Java. Nous laisserons le soin à un prochain article de décrire la manière d'utiliser OSGi dans des applications Java EE tout en se fondant sur des bibliothèques et frameworks Java EE. Ainsi, cet aspect peut devenir très problématique lors de la mise en oeuvre de réseaux complexes d'objets. Tutoriel sur la cr ation d'une application CRUD avec JSF2 (partie 1) : mise en uvre de Spring et Hibernate. Tout au long de ce tutoriel, nous utiliserons : Eclipse JUNO, jdk-7u13, Maven 3, JSF 2.1.4, Spring, Primefaces, PrettyFaces, Junit, Mockito.

Commençons par créer un projet Maven et ajoutons toutes ses dépendances afin d'intégrer toutes les bibliothèques tierces nécessaires. Avant tout, nous allons créer une entité Personne qui nous servira d'exemple tout au long de ce tutoriel. Comme vous le voyez, nous avons utilisé une approche de génération des identifiants (ID). Ainsi, lors de l'enregistrement, les identifiants seront automatiquement générés. Une fois notre entité créée, nous passerons à la configuration de la connexion de la base de données. Db-config.xml Sélectionnez <? Avant de passer à la partie DAO, faisons des tests unitaires afin de nous assurer que notre configuration est correcte. PersonTest.java Dans la plupart des tutoriels que j'ai consultés, les tests se font seulement au niveau des DAO. Une fois la partie mapping testée, nous allons maintenant créer la classe DAO. Tutoriel AngularJS : validation d'un formulaire. Cette série de tutoriel décrit un lecteur de flux RSS, donc ça tombe bien qu'un des valideurs du HTML5 sert à vérifier une URL.

Il peut être utilisé en ajoutant l'attribut type="url" à un input. AngularJS prend en charge cela via la directive url de input. Elle prend diverses options. Celles qui nous intéressent sont required et ng-model. La directive de ng-model permet à l'input d'être lié à un modèle, mais n'importe quelle expression AngularJS peut être utilisée. La directive de form permet aux formulaires d'être gérés avec AngularJS et d'être liés aux contrôleurs. Le simple fait d'ajouter un form et un input avec type="url" va se traduire par le support d'une validation de base (dans app/views/main.html) : Toutefois, cela ne fonctionnera pas tout à fait avec le code du contrôleur que j'ai écrit dans les parties précédentes parce que addFeed n'est pas mis en place pour surveiller la validation.

$scope.addFeed = function(feed) { if (feed. $scope.addFeed = function(feed) { if (feed. PhoneJS - HTML5 JavaScript Mobile Development Framework. As you know, there are many frameworks for mobile app development and a growing number of them are based on HTML5. These next-generation tools help developers create mobile apps for phones and tablets without the steep learning curve associated with native SDKs and other programming languages like Objective-C or Java.

For countless developers throughout the world, HTML5 represents the future for cross-platform mobile app development. But the question is why? Why has HTML5 become so popular? The widespread adoption of HTML5 involves the emergence of the bring your own device (BYOD) movement. BYOD means that developers can no longer limit application usage to a single platform because consumers want their apps to run on the devices they use every day. Multiple platform support, time to market and lower maintenance costs are just a few of the advantages inherent in HTML/JavaScript. Is there a price? PhoneJS for Your Next Mobile Project PhoneJS Application Layout and Routing 1. 12. default: 4.