• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 3
  • 1
  • 1
  • Tagged with
  • 5
  • 5
  • 5
  • 4
  • 4
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Un cadre conceptuel pour la programmation par objets des architectures parallèles distribuées : application à l'algèbre linéaire

Guidec, Frédéric 02 June 1995 (has links) (PDF)
Les méthodes et les environnements de programmation adaptés aux machines mono-processeur traditionnelles s'avèrent inutilisables avec les machines parallèles à mémoire distribuée, car ils ne permettent pas d'en maîtriser le parallélisme. À ce jour, l'utilisation de ces machines demeure donc très limitée, car les programmeurs sont en général assez réticents à l'idée de devoir y porter manuellement leurs applications. De nombreuses recherches actuelles visent à simplifier le développement des applications parallèles pour ce type de machine. Le travail effectué au cours de cette thèse s'inscrit dans le cadre du développement et de l'expérimentation de l'environnement EPEE (Environnement Parallèle d'exécution de Eiffel). EPEE constitue un cadre conceptuel pour la conception et la mise en oeuvre de composants logiciels parallèles réutilisables à l'aide des mécanismes de la programmation par objets. Nous avons caractérisé les objets pouvant être distribués et exploités en parallèle dans lénvironnement EPEE, et proposé des schémas conceptuels permettant de développer de tels objets en insistant sur les points clés mis en avant dans les techniques modernes de génie logiciel, à savoir la maîtrise de la complexité (résolue par la modularisation, l'encapsulation, l'héritage), et la maintenabilité (corrective et évolutive). Nous avons ensuite appliqué ces schémas conceptuels pour développer une bibliothèque parallèle de démonstration. Cette bibliothèque expérimentale, baptisée Paladin, est dédiée au calcul d'algèbre linéaire sur machines parallèles à mémoire distribuée. Elle est en outre extensible, d'un emploi aisé, performante et portable. Ces caractéristiques confirment la viabilité de l'approche consistant à utiliser les mécanismes de la programmation par objets pour construire des bibliothèques pour machines parallèles.
2

Un modèle de programmation intégrant classes, événements et aspects

Núñez, Angel 29 June 2011 (has links) (PDF)
Le paradigme de la programmation par objets (PPO) est devenu le paradigme de programmation le plus utilisé. La programmation événementielle (PE) et la programmation par aspects (PPA) complètent la PPO en comblant certaines de ses lacunes lors de la construction de logiciels complexes. Les applications actuelles combinent ainsi les trois paradigmes. Toutefois, la POO, la PE et la POA ne sont pas encore bien intégrées. Leurs concepts sous-jacents sont en général fournis sous la forme de constructions syntaxiques spécifiques malgré leurs points communs. Ce manque d'intégration et d'orthogonalité complique les logiciels car il réduit leur compréhensibilité et leur composabilité, et augmente le code d'infrastructure. Cette thèse propose une intégration de la PPO, de la PE et de la PPA conduisant à un modèle de programmation simple et régulier. Ce modèle intègre les notions de classe et d'aspect, les notions d'événement et de point de jonction, et les notions d'action, de méthode et de gestionnaire d'événements. Il réduit le nombre de constructions tout en gardant l'expressivité initiale et en offrant même des options de programmation supplémentaires. Nous avons conçu et mis en œuvre deux langages de programmation basés sur ce modèle : EJava et ECaesarJ. EJava est une extension de Java implémentant le modèle. Nous avons validé l'expressivité de ce langage par la mise en œuvre d'un éditeur graphique bien connu, JHotDraw, en réduisant le code d'infrastructure nécessaire et en améliorant sa conception. ECaesarJ est une extension de CaesarJ qui combine notre modèle avec de la composition de mixins et un support linguistique des machines à états. Cette combinaison a grandement facilité la mise en œuvre d'une application de maison intelligente, une étude de cas d'origine industrielle dans le domaine de la domotique.
3

Etendre des interpréteurs par détournement, ou comment étendre des interpréteurs sans en modifier le code : avec une application à des analyses dynamiques pour un interpréteur de JavaScript / Extending interpreters by diverting, or how to extend interpreters without modifying their source code

Marchand De Kerchove, Florent 18 November 2016 (has links)
Afin de sécuriser les applications web, nous nous sommes intéressés à appliquer des analyses dynamiques de sécurité à des programmes JavaScript. Dansce contexte, pouvoir rapidement modifier l’interpréteur et composer des analyses à l’exécution est primordial. Une façon d’effectuer ces changements aurait été parrefactorisation. Mais la refactorisation peut être délicate et chronophage, car elle implique de réécrire des parties du code source, voire de réorganiser toute l’architecture du programme. La refactorisation est trop coûteuse lorsque prime la vitesse d’itération.Nous explorons une alternative économe à la refactorisation : le détournement. Détourner un programme c’est changer ses résultats sans directement modifierson code source. Pour détourner un programme, on exploite des techniques d’indirection, tels que la portée dynamique et la métaprogrammation.On commence par passer en revue les techniques utilisées pour des problèmes connexes d’extensibilité, et on applique ces techniques pour détourner des interpréteurs simples. Puis, on montre comment le détournement peut aider à construire un interpréteur par incréments, pour permettre d’activer dynamiquement des comportements alternatifs. Enfin, on applique ces techniques pour détourner un véritable interpréteur JavaScript par de multiples analyses dynamiques de sécurité.Au prix d’un potentiel impact en efficacité et en sûreté, détourner l’interpréteur est à la fois plus rapide et plus flexible que de le réécrire, ce qui fait du détournement une alternative légitime à la refactorisation. / For securing web applications, we were interested in applying dynamic security analyses to JavaScript programs. In this context, the ability to quickly modify the interpreter and to compose analyses at runtime is paramount. One way to effect these changes would have been through refactoring. But refactoring can be tricky and time-consuming, as it entails to rewrite parts of the source code, and even to reorganize the program’s whole architecture. Refactoring is too costly when rapid iteration is preferred.We explore a lightweight alternative to refactoring: diverting. To divert a program is to change its results without directly modifying its source code. To divert a program, we leverage indirection techniques such as dynamic scoping and metaprogramming.We first review the techniques used in related extensibility problems, like the Expression Problem, and apply these techniques to divert simple interpreters. We then show how diverting can help build interpreters incrementally in layers, allowing dynamic activation of alternative behavior. Finally, we apply those techniques to divert a full-blown JavaScript interpreter with multiple dynamic security analyses. We find that, with potential costs in efficiency and program safety, diverting is both faster and more flexible than rewriting the interpreter,thus making diverting a legitimate alternative to refactoring.
4

Plate-forme d'analyse morpho-syntaxique pour l'indexation automatique et la recherche d'information : de l'écrit vers la gestion des connaissances

Sidhom, Sahbi 11 March 2002 (has links) (PDF)
La contribution de ce travail de thèse s'inscrit au sein d'un domaine multidisciplinaire regroupant le traitement automatique du langage naturel, l'indexation dans un système d'information documentaire et l'organisation des connaissances autour de l'information écrite. Sa particularité consiste en la mise à disposition d'outils pour le traitement automatique de l'information.<br />L'objectif est de construire une Plate-forme d'analyse morpho-syntaxique pour l'indexation automatique et la recherche d'information. Elle est composée d'un noyau d'indexation automatique (processus d'indexation) qui utilise le modèle des syntagmes nominaux comme descripteurs de l'information textuelle. Ces syntagmes sont organisés selon une approche Logique Intensionnelle/Extensionnelle (processus de classification des connaissances) qui permet d'ordonner les objets d'une classe et de distinguer les classes de connaissances. A la base de cette dernière propriété, nous construisons notre approche pour la recherche d'information (processus de recherche d'information). <br />Cette Plate-forme d'analyse dans sa logique de fonctionnement sera un outil d'investigation orienté vers l'organisation et la gestion des connaissances écrites.<br />Dans notre recherche, cet aspect sur l'organisation des connaissances a été conduit dans le but de faire émerger les propriétés linguistiques et le traitement du langage dans une pratique expérimentale sur l'indexation automatique documentaire. Nous avons montré la nécessité de coordonner d'autres sources et stratégies dans l'exploration de ces propriétés. Il s'agit du mode de raisonnement et de la technique d'exploitation des objets du discours spécifiques à la gestion des connaissances (comme étape préalable à la recherche d'information).<br />Ces deux derniers aspects (mode et technique) intégrés dans le processus de la présentation et de l'organisation du syntagme nominal offrent des scénarii pertinents pour la recherche d'informations.
5

Génie logiciel pour le génie linguiciel

Lafourcade, Mathieu 01 December 1994 (has links) (PDF)
Cette thèse concerne l'étude de différentes techniques modernes de génie logiciel qui peuvent être mises en ¦uvre pour développer des systèmes de Traitement Automatique des Langues Naturelles de façon générique et extensible. La première partie fait le point sur l'état de l'art en TALN à propos des Langages Spécialisés pour la Programmation Linguistique et permet d'identifier l'intégrabilité, l'extensibilité et la généricité comme trois qualités qu'il est souhaitable de fournir aux systèmes de TALN. La définition d'un modèle à objets (LEAF) et l'affinage d'un modèle d'architecture (tableau blanc) constituent deux premiers éléments de réponse au problème de l'intégration. Une première approche de la généricité et de l'extensibilité est également présentée avec une expérience de réingéniérie du langage LT. La seconde partie approfondit les problèmes de généricité et les illustre avec la définition d'un langage original de représentation linguistique (DECOR). L'introduction de protocoles internes et externes permet de rendre ce langage particulièrement générique et dynamique. La troisième partie fait état de la réingériérie de deux langages spécialisés (ATEF et ROBRA). Cette expérience permet d'introduire une grande extensibilité dans les moteurs de ces langages par une programmation par objets et protocoles. Une question transverse à ces trois parties concerne l'identification des limites et des écueils liés à la recherche de l'intégrabilité, de l'extensibilité et de la généricité. Ces difficultés viennent principalement de la complexité croissante des protocoles adéquats, dont la maîtrise pourrait rapidement échapper au développeur si l'on n'y prend garde.

Page generated in 0.1713 seconds