You are on page 1of 4

C'est

quoi

les

principaux

points

dans

la

programmation

objet

- Encapsulation : Les attributs (ou plus exactement leur reprsentation informatique) et les mthodes sont cachs ; ils forment une bote noire. C'est le principe d'encapsulation. Son avantage principal rside dans la capacit pouvoir modifier la structure interne des objets ou les mthodes associes aux messages sans impact sur les utilisateurs des objets. - Le typage et le polymorphisme : Un objet peut appartenir plus d'un type. C'est ce que l'on appelle le polymorphisme. Ceci permet d'utiliser des objets de types diffrents l o est attendue une valeur d'un type prcis, ds que ceux-ci satisfont le type requis. Une faon de raliser le polymorphisme est le soustypage (appel aussi hritage de type) : mcanisme par lequel est raffin un type pre en un autre type, le sous-type ; c'est un mcanisme de restrictions des espaces de valeurs du type. Les objets de ce soustype sont conformes aussi au type pre, ces objets sont donc d'au moins deux types. ---> typage dynamique, typage statique, typage par infrence La redfinition

- La programmation objet permet un sous-type de raffiner la mise en uvre d'un message dfini dans le type pre, autrement dit de redfinir la mthode associe au message : c'est le principe de redfinition des messages (ou overriding en anglais). Classe et prototype

Connaissais vous les design pattern ? c'est quoi leurs catgories ? Donner quelques exemples pertinents ! Un patron de conception (design pattern en anglais) est un concept de gnie logiciel destin rsoudre les problmes rcurrents suivant le paradigme objet. En franais on utilise aussi le terme motif de conception qui est une traduction alternative de design pattern, perue comme incorrecte par certains. Les patrons de conception dcrivent des solutions standard pour rpondre des problmes d'architecture et de conception des logiciels. la diffrence d'un algorithme qui s'attache dcrire d'une manire formelle comment rsoudre un problme particulier, les patrons de conception dcrivent des procds de conception gnraux. On peut considrer un patron de conception comme une formalisation de bonnes pratiques, ce qui signifie qu'on privilgie les solutions prouves. IL EXISTE 3 TYPES DE DESIGN PATTERN :

1) de construction : ils dfinissent comment faire l'instanciation et la configuration des classes et des objets. * Fabrique abstraite (Abstract Factory) * Monteur (Builder) * Fabrique (Factory Method) * Prototype (Prototype) * Singleton (Singleton) vous devez connaitre la dfinition de chaque design

2) structuraux : ils dfinissent comment organiser les classes d'un programme dans une structure plus large (sparant l'interface de l'implmentation). * * * * * * * Adaptateur Pont Dcorateur Faade ou Proxy (Adapter) (Bridge) (Composite) (Decorator) (Facade) (Flyweight) (Proxy)

Objet Poids-mouche

composite poids-plume

3) comportementaux : ils dfinissent comment organiser les objets pour que ceux-ci collaborent (distribution des responsabilits) et expliquent le fonctionnement des algorithmes impliqus. * * * * Chane de responsabilit Commande Interprteur Itrateur (Chain of responsibility) (Command) (Interpreter) (Iterator)

* * * * * * * C'est

Patron quoi

de

Mdiateur Mmento Observateur tat Stratgie mthode Visiteur le modles

(Template MVC

(Mediator) (Memento) (Observer) (State) (Strategy) Method) (Visitor) ?

L'organisation globale d'une interface graphique est souvent dlicate. L'architecture MVC ne rsout pas tous les problmes. Elle fournit souvent une premire approche qui peut ensuite tre adapte. Elle offre aussi un cadre pour structurer une application. Ce modle d'architecture impose la sparation entre les donnes, la prsentation et les traitements, ce qui donne trois parties fondamentales dans l'application finale : le modle, la vue et le contrleur. C'est quoi la diffrence entre MVC et couches 3 tiers ?

L'architecture trois tiers est un modle en couches, c'est dire, que chaque couche communique seulement avec ses couches adjacentes (suprieures et infrieures) et le flux de contrle traverse le systme de haut en bas; les couches suprieures contrlent les couches infrieures, c'est--dire, que les couches suprieures sont toujours sources d'interaction (clients) alors que les couches infrieures ne font que rpondre des requtes (serveurs). Dans le modle MVC, il est gnralement admis que la vue puisse consulter directement le modle (lecture) sans passer par le contrleur. Par contre, elle doit ncessairement passer par le contrleur pour effectuer une modification (criture). Ici, le flux de contrle est invers par rapport au modle en couche, le contrleur peut alors envoyer des requtes toutes les vues de manire ce qu'elles se mettent jour. Dans l'architecture 3-tiers, si une vue modifie les donnes, toutes les vues concernes par la modification doivent tre mises jour, d'o l'utilit de l'utilisation du MVC au niveau de la couche de prsentation. La couche de prsentation permet donc d'tablir des rgles du type "mettre jour les vues concernant X si Y ou Z sont modifis". Mais ces rgles deviennent rapidement trop nombreuses et ingrables si les relations logiques sont trop leves. Dans ce cas, un simple rafrachissement des vues intervalle rgulier permet de surmonter aisment ce problme. Il s'agit d'ailleurs de la solution la plus rpandue en architecture 3-tiers, l'utilisation du MVC tant trs moderne et encore marginale. Donner un exemple d'implmentation de modle MVC ?

L'utilisation du MVC est native en Swing. La plupart des composants Swing (hormis les conteneurs) utilisent une classe spcifique pour contenir leurs donnes. * Les boutons (JButton) utilisent un objet de classe ButtonModel pour les donnes. * Les curseurs (JSlider) utilisent un objet de classe BoundedRangeModel pour les donnes. * Les listes (JList) utilisent un objet de classe ListModel pour les donnes et un objet de classe ListSelectionModel pour grer les slections. * Les arbres (JTree) utilisent un objet de classe TreeModel pour les donnes et un objet de classe TreeSelectionModel pour grer les slections. * Les tables (JTable) utilisent des objets de classe TableModel et TableColumnModel pour les donnes et un objet de classe ListSelectionModel pour grer les slections. * Les composants de texte (JTextComponent et les classes drives JEditorPane, JTextArea et JTextField) utilisent un objet de classe Document pour grer le texte. C'est quoi la diffrence entre le mot cl virtual et overide en C#.NET ?

Le mot virtual permet de dfinir une mthode dans une classe mre qui peut tre chang dans la classe fille l'aide du mot cl override. quoi sert le mot cl Delegue en C#.NET ?

Un dlgu est un type qui rfrence une mthode. Une fois qu'une mthode est assigne un dlgu, ce dernier se comporte exactement comme cette mthode. La mthode du dlgu peut tre utilise comme n'importe quelle autre mthode, avec des paramtres et une valeur de retour On peut l'assimiler aux pointeurs fonction C++, mais sont de type scuris.

Quand

utiliser

des

dlgus

au

lieu

d'interfaces

les dlgus et les interfaces permettent un Concepteur de classes de sparer les dclarations de type et l'implmentation. Une interface donne peut tre hrite et implmente par n'importe quelle classe ou struct. Un dlgu peut tre cr pour une mthode de n'importe quelle classe, tant que la mthode convient la signature de mthode pour le dlgu. Une rfrence d'interface ou un dlgu peut tre utilis par un objet sans connaissance de la classe qui implmente l'interface ou la mthode dlgue. tant donn ces ressemblances, quand un Concepteur de classes doit-il utiliser un dlgu et quand doitil utiliser une interface ? Utilisez un dlgu quand :

* un modle de design d'vnement est utilis. * il est souhaitable d'encapsuler une mthode statique. * l'appelant n'a aucun besoin d'accs aux autres proprits, mthodes ou interfaces sur l'objet qui implmente la mthode. * une facilit de composition est souhaite. * une classe peut avoir besoin de plusieurs implmentations de la mthode. Utilisez une interface quand :

* Il existe un groupe de mthodes connexes pouvant tre appel. * Une classe a besoin d'une seule implmentation de la mthode. * La classe qui utilise l'interface souhaite effectuer un cast de cette interface vers d'autres types d'interfaces ou de classes. * La mthode qui est implmente est lie au type ou l'identit de la classe : par exemple, les mthodes de comparaison. C'est quoi un thread en C# ?

En programmation pure, on ne parle plus de tches, mais de threads ou de processus. Il existe une diffrence entre ces dfinitions mais l'expliquer nous conduirait nous loigner de l'objectif de ce cours. Par la suite, je parlerai donc de threads. En C# et dans tous les autres langages du framework .NET, la classe Thread se trouve dans l'espace de noms System.Threading. Pour simplifier, un objet de la classe Thread symbolise une tche. L'utilisation des threads avec .NET a t fortement simplifie compare aux mthodes natives Win32. Nous allons dans ce cours voir comment crer, utiliser et dtruire des threads manags, ainsi que quelques mcanismes de protection de ressources critiques. Comment PS : je utiliser conseille de un voir thread ce tuto ? :

http://emerica.developpez.com/csharp/threads/ C'est quoi un Reapeter en ASP.NET ?

le contrle Repeater va nous permettre l'instar d'un DataGrid, par exemple, de faire un listing de donnes issu d'une requte SQL en suivant, cette fois ci, un template dfini par nos propres soins plutt qu'un tableau bte et mchant. C'est quoi un index, une vue, un curseur, une transaction, un journal de transaction ? vous devez revoir ces notions une par une, il n'est pas indispensable de les maitriser mais juste de les connaitre. Quel model relationnel utilisez vous pour interfrer avec une base de donne ? donner un exemple et dcrivez les tapes et outils employs. vous devez voir si vous avez dj travailler avec Ibernate ou bien LINQ to SQL sinon une simple connaissance d'ADO.NET et des traitement en mode connect et mode non connect suffisent. il existe aussi d'autre exercice de programmation et de dtction de bug dans un programme, ils ne sont pas trs compliqu mais j'ai pas la liste sur moi, en + il les changent souvent. mais pour la plupart des questions que je viens de citer en haut, ils ne sont pas spcifique une

societ, mais presque toutes les socits posent les mmes parce que y a pas dix mille test technique...connaitre toutes ces rponses garantie le passage de l'tape de test technique

You might also like