L'interface native de Nit, un langage de programmation à objets

L'interface native permet à un logiciel de profiter des avantages des langages natifs ainsi que de ceux du langage de haut niveau. Elle intervient entre les différents langages pour permettre les appels de méthodes et la conversion des données. Son utilisation amène cependant généralement une p...

Full description

Bibliographic Details
Main Author: Laferrière, Alexis
Format: Others
Published: 2012
Subjects:
Online Access:http://www.archipel.uqam.ca/5138/1/M12465.pdf
id ndltd-LACETR-oai-collectionscanada.gc.ca-QMUQ.5138
record_format oai_dc
spelling ndltd-LACETR-oai-collectionscanada.gc.ca-QMUQ.51382013-10-04T04:05:18Z L'interface native de Nit, un langage de programmation à objets Laferrière, Alexis Interface (Informatique) Langage orienté objets Langage Nit L'interface native permet à un logiciel de profiter des avantages des langages natifs ainsi que de ceux du langage de haut niveau. Elle intervient entre les différents langages pour permettre les appels de méthodes et la conversion des données. Son utilisation amène cependant généralement une perte de sûreté à l'exécution du logiciel et son emploi est souvent complexe. Dans le cadre de cette recherche, nous développons l'interface native du langage de programmation à objets Nit. Notre recherche vise à résoudre au mieux les problèmes soulevés par l'utilisation d'une interface native, et ce, par une analyse rigoureuse des différents détails de conception d'une interface. Notre intention est donc de concevoir, selon des objectifs précis, l'interface native idéale pour le langage Nit. Pour mettre à l'épreuve notre proposition, nous avons conçu et implémenté l'interface native du compilateur Nit. La conception de cette interface native s'appuie donc sur des objectifs que nous considérons garants d'une interface native de qualité. Ces objectifs consistent à préserver la sûreté d'exécution du logiciel, maintenir une connaissance du flot d'appels, utiliser le langage Nit de façon expressive et selon ses forces, conserver une syntaxe naturelle en C ainsi qu'offrir une interface native versatile et d'utilisation rapide par tout autre moyen. Pour atteindre ces objectifs, nous proposons quatre grandes approches clés : la forme des modules hybrides pour gérer la coexistence de deux langages; une déclaration explicite des appels de méthodes réalisées depuis le langage C pour conserver la connaissance du flot d'appels; une représentation symétrique des types et méthodes Nit en C pour en permettre une utilisation naturelle et vérifiée statiquement; les classes natives qui représentent les types C en Nit et leur appliquent les forces du paradigme de programmation à objets, dont le polymorphisme. Enfin, pour valider l'interface native proposée et implémentée, nous présentons comment nous avons utilisé cette interface pour réaliser des modules et des logiciels Nit. Nous démontrons également que cette interface peut être utilisée dans le développement d'autres interfaces spécialisées en fonction de besoins spécifiques. ______________________________________________________________________________ MOTS-CLÉS DE L’AUTEUR : interface native, interface de fonctions étrangères, compilation, langages de programmation à objets 2012-03 Mémoire accepté NonPeerReviewed application/pdf http://www.archipel.uqam.ca/5138/1/M12465.pdf Laferrière, Alexis (2012). « L'interface native de Nit, un langage de programmation à objets » Mémoire. Montréal (Québec, Canada), Université du Québec à Montréal, Maîtrise en informatique. http://www.archipel.uqam.ca/5138/
collection NDLTD
format Others
sources NDLTD
topic Interface (Informatique)
Langage orienté objets
Langage Nit
spellingShingle Interface (Informatique)
Langage orienté objets
Langage Nit
Laferrière, Alexis
L'interface native de Nit, un langage de programmation à objets
description L'interface native permet à un logiciel de profiter des avantages des langages natifs ainsi que de ceux du langage de haut niveau. Elle intervient entre les différents langages pour permettre les appels de méthodes et la conversion des données. Son utilisation amène cependant généralement une perte de sûreté à l'exécution du logiciel et son emploi est souvent complexe. Dans le cadre de cette recherche, nous développons l'interface native du langage de programmation à objets Nit. Notre recherche vise à résoudre au mieux les problèmes soulevés par l'utilisation d'une interface native, et ce, par une analyse rigoureuse des différents détails de conception d'une interface. Notre intention est donc de concevoir, selon des objectifs précis, l'interface native idéale pour le langage Nit. Pour mettre à l'épreuve notre proposition, nous avons conçu et implémenté l'interface native du compilateur Nit. La conception de cette interface native s'appuie donc sur des objectifs que nous considérons garants d'une interface native de qualité. Ces objectifs consistent à préserver la sûreté d'exécution du logiciel, maintenir une connaissance du flot d'appels, utiliser le langage Nit de façon expressive et selon ses forces, conserver une syntaxe naturelle en C ainsi qu'offrir une interface native versatile et d'utilisation rapide par tout autre moyen. Pour atteindre ces objectifs, nous proposons quatre grandes approches clés : la forme des modules hybrides pour gérer la coexistence de deux langages; une déclaration explicite des appels de méthodes réalisées depuis le langage C pour conserver la connaissance du flot d'appels; une représentation symétrique des types et méthodes Nit en C pour en permettre une utilisation naturelle et vérifiée statiquement; les classes natives qui représentent les types C en Nit et leur appliquent les forces du paradigme de programmation à objets, dont le polymorphisme. Enfin, pour valider l'interface native proposée et implémentée, nous présentons comment nous avons utilisé cette interface pour réaliser des modules et des logiciels Nit. Nous démontrons également que cette interface peut être utilisée dans le développement d'autres interfaces spécialisées en fonction de besoins spécifiques. ______________________________________________________________________________ MOTS-CLÉS DE L’AUTEUR : interface native, interface de fonctions étrangères, compilation, langages de programmation à objets
author Laferrière, Alexis
author_facet Laferrière, Alexis
author_sort Laferrière, Alexis
title L'interface native de Nit, un langage de programmation à objets
title_short L'interface native de Nit, un langage de programmation à objets
title_full L'interface native de Nit, un langage de programmation à objets
title_fullStr L'interface native de Nit, un langage de programmation à objets
title_full_unstemmed L'interface native de Nit, un langage de programmation à objets
title_sort l'interface native de nit, un langage de programmation à objets
publishDate 2012
url http://www.archipel.uqam.ca/5138/1/M12465.pdf
work_keys_str_mv AT laferrierealexis linterfacenativedenitunlangagedeprogrammationaobjets
_version_ 1716599309826260992