Outils de développement de logiciels. Développement d'outils instrumentaux logiciels et de documentation d'algorithmes de programme

Essence et concept de logiciel instrumental

Software Instrumental (IPO) - Logiciel conçu pour être utilisé dans la conception, le développement et la maintenance des programmes.

Outil d'occasion dans la phase de développement. Le logiciel instrumental est un ensemble de programmes utilisés pour aider les programmeurs à travailler pour aider les responsables de développement de logiciels dans leur désir de surveiller le processus de développement et les produits obtenus. Les représentants les plus célèbres de cette partie du logiciel sont des programmes de programmation des langages de programmation qui aident les programmeurs à écrire des commandes de la machine. Les programmes instrumentaux sont des traducteurs de Fortran, Cobol, Joe Flall, Beysik, APL et Pascal. Ils facilitent le processus de création de nouveaux programmes de travail. Cependant, les traducteurs avec des langues ne sont que la partie la plus connue des programmes instrumentaux; Il y en a beaucoup beaucoup.

L'utilisation de machines informatiques pour aider à développer de nouveaux programmes est loin d'être évidente pour les personnes qui ne sont pas des programmeurs professionnels. Il arrive souvent que des professionnels soient racontés sur l'instrumental (phase de développement) et le système (phase d'utilisation) par logiciel sur une seule respiration, en supposant que leurs compétences non dédiées au secret sont connues sur le rôle des logiciels instrumentaux. Tout comme dans la phase d'utilisation (pour les programmes d'application), le support système fonctionne dans la phase de développement, mais uniquement avec le support instrumental. Le logiciel instrumental ou le système de programmation est un système permettant d'automatiser le développement de nouveaux programmes de programmation.

Dans le cas le plus général, pour créer un programme dans le langage de programmation sélectionné (langage de programmation système), vous devez disposer des composants suivants:

1. Editeur de texte pour créer un fichier avec programme de texte source.

2. Compilateur ou interprète. Le texte source utilisant le programme Compiler est traduit en un code d'objet intermédiaire. Le texte source du grand programme consiste en plusieurs modules (fichiers avec textes de source). Chaque module est compilé dans un fichier séparé avec le code d'objet, qui doit ensuite être combiné en un.

3. L'éditeur de connexion ou le collecteur qui répertorie la liaison des modules d'objet et génère une application viable au code exécutable de sortie.

Le code exécutable est un programme complet pouvant être lancé sur n'importe quel ordinateur dans lequel le système d'exploitation est installé pour lequel ce programme a été créé. En règle générale, le fichier final a une extension. Lee ou.

Récemment, les méthodes de programmation visuelle ont été distribuées (à l'aide des langues de description de scénario) sur la création d'applications Windows. Ce processus est automatisé dans des environnements de conception rapides. Cela utilise des composants visuels prêts à l'emploi configurés à l'aide d'éditeurs spéciaux.

Les éditeurs les plus populaires (systèmes de programmation logiciels utilisant Visual signifie) Conception visuelle:

Borland Delphi - conçu pour résoudre presque toutes les tâches de programmation d'applications.

Borland C ++ Builder est un excellent moyen de développer des applications DOS et Windows.

Microsoft Visual Basic est un outil populaire pour créer des programmes Windows.

Microsoft Visual C ++ - Cet outil vous permet de développer toutes les applications exécutées dans le système d'exploitation Microsoft Windows.

Ainsi, l'essence du logiciel de l'outil consiste à créer n'importe quel programme exécutable en convertissant des expressions officiellement logiques dans le code de machine exécutable, ainsi que le contrôle et le réglage.

Tâches et fonctions du logiciel instrumental

Pour le logiciel instrumental, les deux types de logiciels spéciaux sont caractérisés par le général et le privé.

fonctions, ainsi que pour l'ensemble du logiciel dans son ensemble. Les caractéristiques générales sont considérées ci-dessus et des fonctions spécialisées inhérentes à ce type de programmes sont les suivantes:

1. Création du texte du programme développé à l'aide de mots de code spécialement installés (langage de programmation), ainsi qu'un ensemble spécifique de caractères et de leur emplacement dans la syntaxe de programme de fichiers créé.

2. Traduction du texte du programme créé dans un code orienté machine disponible pour la reconnaissance informatique. En cas de création d'une quantité importante du programme, elle est divisée en modules distincts et chacun des modules est traduit séparément.

3. Connexion de modules individuels dans un seul code exécutable, avec la conformité à la structure nécessaire, assurant la coordination de l'interaction des parties individuelles.

4. Tester et contrôler le programme créé, identifier et éliminer les erreurs formelles, logiques et syntaxiques, vérifiant les programmes pour les codes interdits, ainsi que l'évaluation des performances et du potentiel du programme créé.

Types de logiciels instrumentaux

Sur la base des tâches définies avant le logiciel de l'outil, un grand nombre de types de logiciels d'outils peuvent être distingués:

Editeurs de texte

Environnements de développement intégrés

Compilateur

Interprètes

Linkovshchiki

Générateurs d'analyseurs et d'analyseurs (voir Javacc)

Assemblée

Débuggle

Profilisation

Générateurs de documentation

Code de revêtement signifie

Moyens d'intégration continue

Outils de tests automatisés

Systèmes de contrôle de la version, etc.

Il convient de noter que les coquilles de création d'applications sont également créées par des programmes d'outils et peuvent donc être attribués aux programmes d'application. Envisagez de nommer brièvement certains programmes instrumentaux.

Text éditeurs.

Editeur de texte - Un programme informatique conçu pour gérer des fichiers texte, tels que la création et la création de modifications.

Composition de la CAD

CAD est un système qui combine des moyens techniques, des mathématiques et des logiciels, des paramètres et des caractéristiques desquels sont choisis avec la prise en compte maximale des caractéristiques de la conception d'ingénierie et des tâches de conception. Le dispositif CAO prévoit l'utilisation de programmes en appliquant les outils de communication opérationnels d'un ingénieur avec ordinateur, langues spéciales orientées problématiques et la disponibilité de l'information et de la base de référence.

Les composants structurels de la CAD sont des sous-systèmes avec toutes les propriétés des systèmes et créées comme systèmes indépendants. Celles-ci sont partitionnées par certaines caractéristiques de la partie CAD, qui assurent la mise en œuvre de certaines tâches de conception terminées pour obtenir des solutions de conception pertinentes et des documents de projet.

Sur la nomination du sous-système triste, ils sont divisés en deux types: concevoir et entretien.

La conception inclut des sous-systèmes qui effectuent des procédures et des opérations de projet, par exemple:

· Sous-système de mise en page de machine;

· Conception de l'assemblage des unités d'assemblage;

· Sous-système de conception de détail;

· Sous-système de conception du schéma de contrôle;

· Sous-système de conception technologique.

L'entretien comprend des sous-systèmes destinés à maintenir la performance des sous-systèmes de conception, par exemple:

· Sous-système de l'affichage graphique des objets de conception;

· Sous-système de documentation;

· Sous-système de récupération de l'information, etc.

En fonction de la relation avec l'objet de conception, deux types de sous-systèmes de conception sont distingués:

· Orienté objet (objet);

· Indépendant de l'objet (invariant).

Les sous-systèmes d'objet comprennent des sous-systèmes qui effectuent une ou plusieurs procédures de projet ou opérations directement dépendantes d'un objet spécifique de conception, par exemple:

· Sous-système de conception technologique;

· Modélisation du sous-système de la dynamique, design conçu, etc.

Les sous-systèmes invariants comprennent des sous-systèmes qui effectuent des procédures et des opérations unifiées du projet, par exemple:

· Calculs du sous-système des pièces de la machine;

· Calcul du sous-système des modes de coupe;

· Sous-système de calcul des indicateurs techniques et économiques, etc.

Le processus de conception est mis en œuvre dans des sous-systèmes sous la forme d'une certaine séquence de procédures et d'opérations du projet. La procédure de projet correspond à la partie du sous-système de projet, à la suite de laquelle une solution de conception est faite. Il consiste en des opérations de conception élémentaire, dispose d'une procédure fermement établie pour leur exécution et visait à atteindre un objectif local dans le processus de conception. Dans le cadre des opérations de projet, comprenez la partie sélectionnée sous condition de la procédure de projet ou de l'action élémentaire effectuée par le concepteur pendant le processus de conception. Des exemples de procédures de projet peuvent servir de procédures de développement d'un schéma cinématique ou de mise en page de la machine, des technologies de traitement des produits, etc. et des exemples d'opérations de projet - le calcul des indemnités, la solution de toute équation, etc.

L'unité structurelle du sous-système triste est assurée par une réglementation stricte des liens entre différents types de garantie, combinée à une fonction cible commune pour ce sous-système. Distinguer les types de collateurs suivants:

· Support méthodique - documents reflétés dans la composition, les règles de sélection et de fonctionnement des outils d'automatisation design;

· Provision linguistique - Langues de conception, Terminologie;

· Support mathématique - Méthodes, modèles mathématiques, algorithmes;

· Logiciels - documents avec textes de programmes, programmes sur les médias de la machine et les documents opérationnels;

· Support technique - Dispositifs d'équipement informatique et organisationnel, outils de transfert de données, mesurer et autres dispositifs et leurs combinaisons;

· Support d'information - Documents contenant une description des procédures de conception standard, des solutions de conception typiques, des éléments typiques, des composants, des matériaux et d'autres données;

· Soutien organisationnel - Dispositions et instructions, commandes, dotation en personnel et autres documents régissant la structure organisationnelle des unités et leur interaction avec la conception des outils d'automatisation de conception.

· 64 technologie CALS.

CAL-Technologies est un moyen d'intégration de systèmes automatisés industriels dans un seul système multifonctionnel. L'intégration des systèmes de conception et de gestion automatisés est d'améliorer l'efficacité de la création et de l'utilisation de matériel complexe.

Dans les conditions modernes, la formation d'une société d'information mondiale, le rôle des technologies de l'information et de l'information dans la préparation du futur spécialiste augmente de manière significative. Dans un proche avenir, le potentiel stratégique de la société ne sera pas des ressources énergétiques, mais des connaissances scientifiques et scientifiques. Les informations deviennent la principale ressource du développement scientifique et technique et socio-économique de la société, affecte considérablement le développement accéléré de la science, de la technologie et de divers secteurs, joue un rôle important dans le processus de modernisation de l'éducation. La caractéristique de l'éducation de la valeur de l'éducation au lycée et des activités professionnelles de spécialistes devrait être exprimée dans la formation d'un environnement professionnel intellectuel qui est le plus pleinement mis en œuvre par la tâche des activités de recherche et de projet.

Information large de tous types d'activités de l'humanité: des tâches intellectuelles traditionnelles d'une nature scientifique avant l'automatisation des activités industrielles, commerciales, commerciales, bancaires et autres activités seraient utilisées pour accroître l'efficacité de la production. Dans une économie de marché, la lutte concurrentielle n'utiliserait que des entreprises qui appliquent des technologies de l'information modernes dans leurs activités.

Ce sont des technologies de l'information, ainsi que des technologies progressives de la production de matériaux, permettent d'accroître considérablement la productivité et la qualité des produits, et en même temps réduire considérablement le calendrier de la production sur la production de nouveaux produits répondant aux demandes et aux attentes des consommateurs. Tout ce qui précède est principalement lié à des produits de haute technologie complexes, y compris des produits techniques.

L'expérience acquise dans le processus d'introduction de divers systèmes d'information autonomes a permis de réaliser la nécessité d'intégrer diverses technologies de l'information en un seul complexe basé sur la création d'un environnement d'information intégré ou d'un groupe d'entreprises (entreprise virtuelle) qui prend en charge toutes les étapes. du cycle de vie des produits. L'environnement professionnel révèle la plupart des possibilités d'amélioration professionnelle, en utilisant de nouvelles technologies de l'information en sciences et dans le domaine des processus de fabrication. Technologies innovantes dans le domaine de l'industrie de la transformation de l'information avec la mise en œuvre de la technologie de la technologie CALS- (Acquisition continue et du cycle de vie) - Prise en charge des informations continues pour le cycle de vie de l'objet projeté, traduit l'automatisation des processus de production vers un nouveau niveau.

L'utilisation des technologies de l'information basées sur l'idéologie CALS est l'un des facteurs qui contribuent à une mise en œuvre plus efficace du système automatisé de gestion des entreprises.

CAL-Technologies est un moyen d'intégration de systèmes automatisés industriels dans un seul système multifonctionnel. L'intégration des systèmes de conception et de gestion automatisés est d'améliorer l'efficacité de la création et de l'utilisation de matériel complexe.

L'essence du concept de CALS est d'appliquer les principes et technologies de l'appui à l'information à toutes les étapes du cycle de vie des produits basé sur l'utilisation d'un environnement d'information intégré qui fournit des méthodes uniformes pour la gestion des processus et interagir tous les participants à ce cycle: clients des produits (y compris des agences gouvernementales et des départements), fournisseurs (fabricants) Produits, personnel opérationnel et de réparation. Ces principes et technologies sont mis en œuvre conformément aux exigences des normes internationales régissant les règles de gestion et d'interaction principalement par l'échange de données électroniques.

Lors de l'utilisation de la technologie CALS, la qualité des produits augmente en raison de la comptabilisation complète des informations disponibles dans la conception et la prise de décisions de gestion, et diminue également les coûts matériels et temporaires pour la conception et la fabrication de produits. Dans le processus de mise en œuvre de cette technologie, la validité des solutions prises dans le système de gestion d'entreprise automatisée (Asup) sera plus élevée si le décideur et les programmes de gestion correspondants ont un accès rapide non seulement à la base de données Asup, mais également aux bases de données. d'autres systèmes automatisés et donc, il peut optimiser les plans de travail, le contenu des applications, la distribution des artistes interprètes, l'allocation des finances, etc. Dans le même temps, l'accès opérationnel doit être compris non seulement la possibilité de lire des données de la base de données, mais également de la facilité de leur interprétation appropriée, c'est-à-dire Cohérence en syntaxe et sémantique avec des protocoles adoptés dans Asup. Les sous-systèmes technologiques doivent percevoir avec une précision élevée et interpréter correctement les données provenant des sous-systèmes de conception automatisés. Ce n'est pas si facile à réaliser, si l'entreprise principale et les organisations directrices fonctionnent avec différents systèmes automatisés. De plus, le problème de la protection de l'information tout au long du périmètre des sous-systèmes technologiques devient pertinent.

L'utilisation de CAL-TECHNOLOGIES permet de réduire considérablement le volume de travaux de conception, car les descriptions de développement réussi précédemment de composants et de dispositifs, de nombreuses parties de composante de l'équipement, des machines et des systèmes conçues précédemment sont stockées dans les bases de données de serveurs de réseau. disponible pour toute technologie CALS. La disponibilité et la protection sont à nouveau assurées par la cohérence des formats, des méthodes, des manuels de différentes parties du système intégré global. En outre, il existe plus d'opportunités pour la spécialisation des entreprises, jusqu'à la création d'entreprises virtuelles, qui contribue également à la réduction des coûts.

Dans le processus de mise en œuvre de la technologie CALS, les coûts de fonctionnement sont considérablement réduits, grâce à la mise en œuvre de fonctions de support logistique intégrées. La solution aux problèmes de maintenabilité, à l'intégration des produits dans divers types de systèmes et de moyens, s'adaptant à l'évolution des conditions de fonctionnement, etc. sera considérablement facilitée. Ces avantages de l'intégration des données sont obtenus par l'utilisation de technologies de la CAL modernes.

Les systèmes automatisés industriels peuvent fonctionner de manière autonome et actuellement, l'organisation du processus de gestion de la production se produit sur cette base. Toutefois, l'efficacité de l'automatisation sera sensiblement plus élevée si les données générées dans l'un des systèmes seront disponibles dans d'autres systèmes, car les décisions prises en eux deviendront plus justifiées.

L'expérience de la mise en œuvre de la technologie CALS montre d'atteindre un niveau d'interaction approprié des systèmes automatisés industriels, la création d'un espace d'information unique est requise au sein des entreprises individuelles et, plus important encore, dans le cadre des entreprises. L'espace d'information unifié est assuré par l'unification de la forme et du contenu d'informations sur des produits spécifiques à différentes étapes de leur cycle de vie.

L'unification du formulaire est obtenue en utilisant des formats standard et des langages de présentation linguistique dans les échanges inter-programmes et lorsqu'il est documenté.

L'unification du contenu, comprise comme l'interprétation sans ambiguïté des données sur un produit particulier à toutes les étapes de son cycle de vie, est assurée par l'élaboration d'applications ontologies (méto-établissement) inscrites dans les protocoles d'application CALS.

CAD - Qu'est-ce que c'est?

Alors, quels sont les systèmes de conception automatisés? Sous CADR désigne des systèmes automatisés conçus pour mettre en œuvre une ou plusieurs technologies de l'information par conception. En pratique, CADR est des systèmes techniques qui vous permettent d'automatiser de cette manière pour assurer le fonctionnement des processus qui composent le développement de projets. Sous CAD, en fonction du contexte peut signifier:

logiciel utilisé comme élément principal de l'infrastructure correspondante;

Une combinaison de systèmes techniques et de personnel (y compris ceux impliquant l'utilisation de CAD sous forme de logiciels) utilisés dans l'entreprise afin d'automatiser le processus de développement de projet;

Ainsi, il est possible de distinguer une interprétation large et plus étroite du terme en question. Il est difficile de dire laquelle de ces interprétations est plus souvent appliquée dans les affaires. Tout dépend de la portée spécifique de l'utilisation de systèmes de conception automatisés, ainsi que de ces tâches, de résoudre les données système que les données sont supposées. Par exemple, dans le contexte d'un atelier distinct de la production, un programme spécifique de conception automatisée est supposé en vertu de la CAD. Si nous parlons de la planification stratégique du développement de l'organisation, un tel concept de CAO correspondra probablement à une infrastructure à grande échelle, qui participe à l'amélioration de l'efficacité du développement de divers projets. Il convient de noter que le terme CAO lui-même est une abréviation qui peut être déchiffrée de différentes manières. En général, cette abréviation correspond à une combinaison des mots "système de conception automatisé". Il existe également d'autres options pour déchiffrer cette abréviation. Par exemple, une variante "Système d'automatisation des travaux de conception" est assez courante. Selon l'analogue anglais de l'abréviation de CAO, l'abréviation de la CAO est également utilisée comme CAX. Examinons plus en détail la question suivante: dans quel type de systèmes de conception automatisés peut être créé dans l'ingénierie mécanique et d'autres domaines?

CAD: Création d'objectifs

L'objectif principal de l'élaboration de CADR est d'accroître l'efficacité des spécialistes du travail, qui résolvent diverses tâches de production, y compris celles liées à la conception de l'ingénierie. Dans ce cas, l'augmentation de l'efficacité peut être effectuée au détriment des facteurs suivants:

Réduire la complexité du processus de conception;

Réduire les périodes de mise en œuvre du projet;

Réduire le coût des travaux de conception et les coûts liés aux coûts;

S'assurer d'améliorer la qualité de l'infrastructure de conception.

Coûts réduits pour les tests et la modélisation.

CAD est un outil qui vous permet d'obtenir des avantages marqués au détriment des facteurs suivants:

Informations efficaces Soutien aux spécialistes impliqués dans le développement de projets;

Automatisation de la documentation;

Application de concepts de conception parallèle;

L'unification de diverses solutions;

L'utilisation de la modélisation mathématique, comme alternative à des tests coûteux;

Optimisation des méthodes de conception;

Améliorer la qualité des processus de gestion des affaires.

Examinons maintenant quelle structure le système de conception automatique peut être présenté.

CAD: Classification

Les critères de classification des CAPR les plus courants incluent le but de l'industrie. Les types suivants sont distingués:

  1. Conception d'infrastructure d'ingénierie automatisée;
  2. CAD pour équipement électronique;
  3. CAD dans le domaine de la construction.

Le premier type de systèmes de CAO peut être utilisé dans une large gamme d'industries: fabrication de l'aéronef, automobile, construction navale, production de biens de consommation. En outre, l'infrastructure correspondante peut être utilisée pour développer à la fois des pièces distinctes et divers mécanismes lors de l'utilisation de toutes sortes d'approches dans le cadre de la modélisation et de la conception.

Les systèmes de CAO de deuxième type sont utilisés pour concevoir l'équipement électronique fini et ses éléments individuels, tels que des circuits intégrés, des processeurs et d'autres types de matériel.

La troisième type CAPR peut être impliquée afin de concevoir diverses structures, bâtiments, éléments d'infrastructure.

Un autre critère pour lequel vous pouvez classer les systèmes de conception automatisés est le but recherché. Ici vous allouez:

Outils de conception utilisés afin d'automatiser des modèles géométriques bidimensionnels ou tridimensionnels pour la formation de la documentation de conception;

Systèmes utilisés pour développer divers dessins;

Systèmes conçus pour la modélisation géométrique;

Systèmes destinés à l'automatisation des calculs dans des projets d'ingénierie et de modélisation dynamique;

Outils d'automatisation utilisés pour optimisation technologique des projets;

Systèmes destinés à une analyse informatique de divers paramètres de projet.

Cette classification est considérée comme conditionnelle.

Le système de conception technologique automatisé peut inclure une large gamme de fonctions parmi celles énumérées ci-dessus. La liste spécifique des capacités de CAO définit principalement le développeur de ce système. Regardons quelles tâches il peut décider.

Logiciel de logiciel de logiciel de développement logiciel de développement de logiciels

1. Outils de développement de logiciels. Dans le processus de développement de logiciels à une manière ou à une autre, le support informatique des processus de développement de PS est utilisé. Ceci est réalisé en soumettant au moins certains documents de programme PS (tout d'abord des programmes) sur des supports de données informatiques (par exemple, des disques) et fournissant un développeur de logiciel PS spécial ou inclus dans les périphériques spéciaux informatiques créés pour tout traitement de ces documents. En tant que tel, un PS spécial, vous pouvez spécifier le compilateur à partir de n'importe quel langage de programmation.

Le compilateur élimine le développeur du PS de la nécessité d'écrire des programmes dans la langue informatique, qui est destiné au développeur. PS serait extrêmement inconfortable - cela constitue plutôt des programmes dans un langage de programmation pratique que le compilateur correspondant se traduit automatiquement dans la langue d'ordinateur. En tant que périphérique spécial prenant en charge le processus de développement du PS, un émulateur de toute langue peut servir. L'émulateur vous permet d'effectuer (interpréter) un programme de langue autre qu'un ordinateur qui prend en charge le développement d'un PS, par exemple dans une langue informatique pour laquelle ce programme est destiné. PS, conçu pour soutenir le développement d'autres PS, s'appellera un outil logiciel pour développer un PS, et le périphérique informatique spécialement conçu pour soutenir le développement du PS s'appellera un outil matériel pour le développement de PS.

Les outils de développement PS peuvent être utilisés lors de l'ensemble du cycle de vie PS pour travailler avec différents documents logiciels. L'éditeur de texte peut donc être utilisé pour développer presque tout document de programme. Du point de vue des fonctions que les outils sont effectués dans le développement de PS, ils peuvent être divisés en quatre groupes suivants: · Editors, · Analyseurs, · Transducteurs, · Outils prenant en charge le processus d'exécution du programme.

Les éditeurs soutiennent la conception (formation) de certains documents de programme à différentes étapes du cycle de vie. Comme déjà mentionné, pour cela, vous pouvez utiliser un éditeur de texte universel. Cependant, des éditeurs spécialisés peuvent fournir un support plus fort: pour chaque type de documents - son éditeur. En particulier, dans les premières étapes du développement dans des documents, des moyens graphiques de description (diagrammes, schémas, etc.) peuvent être largement utilisés. Dans de tels cas, les éditeurs graphiques peuvent être très utiles. Au stade de programmation (encodage), au lieu d'un éditeur de texte, un éditeur géré syntaxiquement orienté vers le langage de programmation peut être plus pratique. Les analyseurs produisent soit un traitement statique des documents, effectuant différents types de contrôle, identifiant leurs propriétés définies et leur accumulation de données statistiques (par exemple, vérifiant la conformité des documents à ces normes) ou une analyse dynamique des programmes (par exemple, à Identifier la distribution du programme des modules de programme). Les convertisseurs vous permettent de fournir automatiquement des documents à un formulaire de formulaire différent (par exemple, formulaires) ou traduisez un document d'une espèce à un document d'un autre type (par exemple, convertisseurs ou compilateurs), synthétiser tout document de chaque document, etc.

Les outils prenant en charge le processus d'exécution du programme vous permettent d'effectuer une description de l'ordinateur des processus ou des pièces individuelles présentées sous la forme autre que le code de la machine ou le code de machine avec des caractéristiques supplémentaires de son interprétation. Un exemple d'un tel outil est un émulateur d'un autre code informatique. Différents de pipugeuses doivent être attribués à ce groupe d'outils. Chaque système de programmation contient un sous-système de programmation de la période d'exécution, qui effectue les fragments de logiciels de programmation les plus typiques et fournit une réponse standard aux situations exceptionnelles survenant lors de la réalisation de programmes (un tel sous-système que nous appellerons le soutien de la direction), peut également être considéré comme un groupe d'outils.

2. Environnements de développement de l'environnement instrumental. Actuellement, avec chaque système de programmation, les outils non séparés (par exemple, le compilateur) sont associés à un ensemble logique associé à des outils logiciels et matériels associés à la prise en charge du développement et de la prise en charge du PS dans ce langage de programmation ou orientés vers une zone spécifique. Un tel ensemble sera appelé l'environnement instrumental pour le développement et la maintenance de PS. Pour de tels environnements instrumentaux, il est caractéristique, premièrement, l'utilisation d'outils logiciels et matériels, et, deuxièmement, une certaine orientation ou à un langage de programmation spécifique, ou à une zone spécifique. Le support d'outil ne doit pas nécessairement fonctionner sur l'ordinateur sur lequel le PS développé sera appliqué. Souvent, une telle combinaison est assez pratique (si seule la puissance de l'ordinateur utilisé le permet): il n'est pas nécessaire de traiter des ordinateurs de différents types, les composants du support d'outil peuvent être inclus dans le PS développé.

Il existe trois principales classes de développement instrumental et de maintenance de l'environnement de programmation PS, · Places de travail sur la technologie informatique, · Systèmes instrumentaux de la technologie de programmation. L'environnement de programmation est principalement destiné à soutenir les processus de programmation (codage), les tests et le débogage de PS. Le lieu de travail de la technologie informatique est axé sur le soutien des premières étapes du développement de PS (spécifications) et de la génération automatique de programmes sur les spécifications. Le système d'instruments de la technologie de programmation est conçu pour supporter tous les processus de développement et de maintenance pendant tout le cycle de vie du PS et se concentre sur le développement collectif de grands systèmes logiciels avec un cycle de vie prolongé.

3. L'environnement d'outil de programmation contient principalement un éditeur de texte qui vous permet de concevoir des programmes dans un langage de programmation spécifié, des outils pour compiler ou interpréter des programmes dans cette langue, ainsi que des tests et déboguer les programmes obtenus. De plus, il peut y avoir d'autres outils, par exemple pour une analyse de programme statique ou dynamique. Ces outils interagissent les uns avec les autres via des fichiers réguliers à l'aide de fonctionnalités du système de fichiers standard. Les classes suivantes d'outils de programmation sont distinguées: · Environnement de destination général, · Environnements orientés par la langue.

Les outils de programmation à usage général contiennent un ensemble d'outils logiciels prenant en charge les programmes de programmation dans différentes langages de programmation (par exemple, un éditeur de texte, un éditeur de liaison ou un interprète de langue d'ordinateur cible) et représentent généralement une expansion des capacités de l'exploitation. système utilisé. Pour la programmation dans un tel environnement, tout langage de programmation nécessitera des outils supplémentaires orientés vers cette langue (par exemple, le compilateur). . . Classification de la programmation des médias à outils

4. Le concept de technologie de développement de la technologie informatique et de ses emplois. Il y a quelques difficultés à développer la définition stricte de la technologie de cas (technologie informatique pour le développement de PS). L'affaire est une abréaison de l'ingénierie logicielle aidée par ordinateur anglaise (ordinateur. Engineering de programmation aidé). Mais sans aide (support), l'ordinateur PS n'a pas été développé pendant une longue période (au moins le compilateur est utilisé). En fait, dans ce concept, une signification étroite (spéciale) est intégrée, ce qui est progressivement floue (comme il arrive toujours lorsque tout concept n'a pas de définition stricte). Initialement, le cas a été compris par l'ingénierie des premières étapes du développement PS (définition des exigences, développant une description externe et une architecture PS) à l'aide d'un support logiciel (outils logiciels). Maintenant, dans le cas, l'ingénierie de l'ensemble du cycle de vie PS peut également être comprise (y compris son soutien), mais uniquement dans le cas où les programmes sont partiellement ou entièrement générés par les documents obtenus aux premiers stades de développement spécifiés. Dans ce cas, la technologie de cas est devenue fondamentalement différente de la technologie manuelle (traditionnelle) du développement de PS: non seulement le contenu des processus technologiques a changé, mais leur intégralité elle-même.

Actuellement, la technologie de développement PS peut être caractérisée en utilisant un support logiciel pour le développement des exigences graphiques et des spécifications graphiques PS - Programmation automatique des programmes sur n'importe quel langage de programmation ou en code de machine (partiellement ou entièrement), le support logiciel de prototypage.

Le système d'instruments de la technologie de programmation est un ensemble intégré de logiciels et d'outils matériels qui prennent en charge tous les processus de développement et de maintien de la grande PS tout au long du cycle de vie dans une certaine technologie. À partir de cette définition, les principales caractéristiques suivantes de cette catégorie de soutien informatique coulent: · commercialisation, · Formalisation pour le développement collectif, · Certitude technologique, · Intégration.

Compte tenu des propriétés de la technologie de programmation, les trois composants principaux peuvent être distingués: · Base de données de développement (référentiel), · Toolkit, · Interfaces.

Repository - Un stockage de l'ordinateur central des informations relatives au projet (développement) du PS pendant tout le cycle de vie. Toolkit est un ensemble d'outils qui définissent les capacités fournies par l'équipe du développeur. Habituellement, cet ensemble est ouvert: en plus de l'ensemble minimal (outils intégrés), il contient les moyens d'expansion (outils importés) et structuré, constitué d'une partie commune de tous les outils (noyau) et structurel (parfois liés à la hiérarchie ) Cours d'outils. Les interfaces sont divisées en 1) sur mesure 2) systémique. L'interface utilisateur fournit un accès aux développeurs à la boîte à outils (langue de commande, etc.) est implémentée par la coque du système. Les interfaces système fournissent une interaction entre les outils et leurs pièces partagées. Les interfaces système sont attribuées en tant que composantes architecturales dues à l'ouverture du système - elles sont tenues d'utiliser de nouveaux outils (importés) inclus dans le système.

Il existe deux classes d'outils technologiques de programmation: 1) Systèmes de support de projet et 2) Systèmes instrumentaux dépendants de la langue. Le système de support de projet est un système ouvert capable de soutenir le développement du PS dans différentes langages de programmation après ses instruments d'expansion appropriés orientés vers la langue sélectionnée. Un tel système contient un noyau (fournissant notamment l'accès au référentiel), un ensemble d'outils de gestion de la gestion (gestion) par le développement de PS, indépendamment des outils linguistiques de programmation soutenant le développement de PS (texte et éditeurs graphiques, générateurs de rapport, etc.), ainsi que des outils d'expansion du système. Système instrumental dépendant de la langue est un système de soutien au développement PS à un langage de programmation qui utilise de manière significative les spécificités de cette langue pour organiser ses travaux. Cette spécificité peut également affecter les capacités du noyau (y compris sur la structure du référentiel) et sur les exigences de la coque et des outils.

Langue de modélisation UML unifiée La plupart des méthodes existantes d'analyse et de conception orientées objet (AOOAP) incluent à la fois une langue de modélisation et une description du processus de simulation. Le langage de modélisation est la notation (principalement graphique), qui est utilisé par la méthode de décrivant des projets. La notation est une combinaison d'objets graphiques utilisés dans les modèles; C'est la syntaxe de la langue de modélisation. Par exemple, la notation du diagramme des classes détermine la manière dont ces éléments et concepts, en tant que classe, association et multiplicité sont présentés. Le processus est une description des étapes qui doivent être exécutées lors du développement d'un projet. La mélange de modélisation de modélisation unifiée est le successeur de la génération de méthodes AOAP qui sont apparues à la fin des années 80 et au début des années 90.

UML Language est une langue de modélisation communautaire, conçue pour spécification, visualisation, conception et documentation de composants logiciels, processus métier et autres systèmes. La langue UML est simultanément simple et un puissant agent de modélisation qui peut être efficacement utilisé pour construire des modèles conceptuels, logiques et graphiques de systèmes complexes de divers objectifs. L'utilisation constructive de la langue UML est basée sur la compréhension des principes généraux de modélisation des systèmes complexes et des caractéristiques du processus de conception orienté objet (OOP) en particulier. Le choix des outils expressifs pour les modèles de systèmes complexes est prédéterminé par ces tâches pouvant être résolues à l'aide de modèles de données. Dans le même temps, l'un des principes de base de la construction de modèles de systèmes complexes est le principe de l'abstraction, qui la prescrit à inclure dans le modèle uniquement les aspects du système conçu, qui sont directement liés à la mise en œuvre du système de leurs fonctions. ou son objectif ciblé. Dans le même temps, tous les détails secondaires sont abaissés pour excessivement ne compliquent pas le processus d'analyse et d'étude du modèle obtenu.

UML contient un ensemble standard de diagrammes et de notations d'une grande variété d'espèces. Un diagramme à UML est une représentation graphique de l'ensemble d'éléments, qui est le plus souvent représenté sous la forme d'un graphe lié avec des sommets (entités) et des côtes (relations). Les graphiques dessinent pour visualiser le système de différents points de vue. Graphique - Dans un sens, une des projections du système. En règle générale, à l'exception des cas les plus triviaux, les diagrammes donnent une représentation laminée des éléments à partir duquel le système est composé. Le même élément peut être présent dans tous les graphiques, ou uniquement dans plusieurs (option la plus courante), ou ne pas être présents dans tout (très rarement). Les diagrammes théoriquement peuvent contenir toute combinaison d'entités et de relations. En pratique, cependant, un nombre relativement petit de combinaisons typiques correspondant aux cinq types les plus courants qui constituent l'architecture du système logiciel sont appliqués.

UML alloue les types de diagrammes suivants: - diagrammes d'options d'utilisation (diagrammes USESE) - pour modéliser les processus métier de l'organisation (exigences système); - Diagrammes de classe (diagrammes de classe) - Simuler la structure statique des classes de classe et des liens entre eux. Sur ces diagrammes, classes, interfaces, objets et coopérations sont indiqués, ainsi que leur relation. Lors de la modélisation des systèmes orientés objet, ce type de diagrammes est utilisé le plus souvent. Les diagrammes de classe correspondent au type statique de système en termes de conception; - Tableaux de comportement du système (diagrammes de comportement); Diagrammes d'interaction (diagrammes d'interaction) - simuler le processus de messagerie entre les objets. - Diagrammes StatChart - Pour simuler le comportement des objets du système lors de la mise sous tension d'un état à un autre.

- Diagrammes d'activité (diagrammes d'activités) - Simuler le comportement du système dans diverses utilisations ou activités de modélisation. - diagrammes de mise en œuvre: diagrammes de composants (diagrammes de composants) - pour la modélisation de la hiérarchie des composants (sous-systèmes de système); Diagrammes de placement (diagrammes de déploiement) - Simuler l'architecture physique du système.

Au logiciel instrumental Outils d'application pour le développement de logiciels. Ce sont des systèmes de programmation comprenant des outils logiciels nécessaires pour construire automatiquement le code de la machine. Ce sont des outils pour les professionnels du programmeur et nous permettent de développer des programmes dans diverses langages de programmation.

Les outils de développement logiciel comprennent les programmes suivants:

  • Assembleurs - programmes informatiques qui transforment le programme sous forme de texte source dans la langue des assembleurs en commandes de la machine sous la forme d'un code d'objet;
  • Traducteurs - programmes qui effectuent la diffusion du programme;
  • Compilers - programmes qui transfèrent le texte d'un programme de haut niveau dans un programme équivalent dans la langue de la machine;
  • Interprètes - Programmes analysant des commandes ou des opérateurs de programme et les exécuter immédiatement;
  • Les liaiseurs (rédacteurs de liaison) - Les programmes qui produisent la mise en page - Prenez l'entrée d'une ou plusieurs modules d'objet et collectez-les en fonction de leur module exécutable;
  • Les préprocesseurs des textes de source sont des programmes informatiques qui reçoivent des données à l'entrée et des données en circulation destinées à l'entrée d'un autre programme, par exemple, telles que le compilateur;
  • Debugger (débogueur) - Programmes qui constituent un module d'environnement de développement ou une application distincte destinée à rechercher des erreurs dans le programme;
  • Éditeurs de sources spécialisées - Programmes nécessaires à la création et à la modification du code source des programmes. L'éditeur source spécialisé peut être une application distincte ou intégrée dans l'environnement de développement intégré, etc.

Les langues représentant des algorithmes sous la forme d'une séquence de commandes lisibles (non codées binaires) sont appelées langues algorithmiques. Les langues algorithmiques sont divisées en une orientation orientée automobile et axée sur des problèmes.

Les langues orientées par machine concernent les langages de programmation de bas niveau - la programmation sur eux prend la plupart du temps, mais vous permet de créer des programmes optimaux qui composent les caractéristiques structurelles fonctionnelles d'un ordinateur particulier. Les programmes dans ces langues, avec d'autres choses étant égales, seront plus courtes et rapides. De plus, la connaissance des bases de programmation sur une langue axée sur une machine permet à un spécialiste en détail de traiter l'architecture informatique. La plupart des langues orientées automobiles lors de la diffusion (traduction) sur la langue de la machine (binaire) génèrent une commande de machine.

Les langues orientées vers la procédure et aux problèmes concernent des langues de haut niveau à l'aide de macros. Macrocomand Lorsque la radiodiffusion génère beaucoup de commandes de la machine (pour une langue orientée procédurale, il s'agit du rapport moyen de "1 à des dizaines de commandes de la machine" et de "1 à des centaines de commandes de la machine". Langues de programmation orientée de procédure Sont les plus utilisés (basiques, visuels basiques, Pascal, Borland Delphi, S, etc.). Dans ce cas, le programmeur doit décrire toute la procédure de résolution du problème, tandis que les langages axés sur des problèmes (elles sont aussi appelé Necrossour) Vous permet d'identifier formellement le problème et de spécifier la composition, la structure de la présentation et des formats d'informations d'entrée et de sortie. Pour une tâche.

Lors de l'exécution des instructions pour les programmes, l'ordinateur doit être converti en opérateurs de perception humaine écrits dans n'importe quel langage de programmation, sous la forme, réfractaire pour un ordinateur. Le logiciel de l'outil dispose de programmes de diffusion de programmes spéciaux (traduction) écrit dans différentes langages de programmation, dans les codes de machine, qui sont ensuite effectués par l'ordinateur. Ce type de logiciel est appelé compléter ou alors interprète. Le texte du programme écrit dans le langage de programmation de haut niveau avant d'être converti en codes de machine, est appelé code source (Code source). Compilateur (compilateur) convertit le code source en codes de machine, appelé code objet (Code d'objet) - Programme dans la sortie du traducteur. Avant l'exécution, le processus d'édition de liaison se produit (montage de liaison), qui consiste en le fait que les modules de programme de sortie sont combinés avec d'autres modules de code d'objet contenant, par exemple, des données. Le module de démarrage résultant est les commandes directement effectuées par l'ordinateur. Certaines langues de programmation ne contiennent pas de compilateur, mais un interprète (interpréteur) qui convertit chaque expression séparée du code source en codes de machine et les exécute immédiatement. L'interprète est pratique au stade de débogage du programme, car il fournit un retour rapide lorsqu'une erreur est détectée dans le code source. Les bases de la programmation dans le langage de haut niveau Visual Basic sont énoncées dans CH. 12 de ce manuel.

Instrumental dans Inclure également certains systèmes de gestion de base de données (SGBD). Le SGBD est un complexe de programme spécialisé destiné à l'organisation et à la maintenance des bases de données. Étant donné que les systèmes de gestion de la base de données ne sont pas un composant obligatoire du système informatique, ils ne sont pas liés au logiciel système. Et puisque les DBMS individuels effectuent uniquement une fonction de service lorsqu'ils travaillent sur d'autres types de programmes (serveurs Web, serveurs d'applications), ils ne peuvent pas être attribués au logiciel d'application. Pour ces raisons, ils sont souvent liés au logiciel instrumental.

Les principales fonctions de tels SGBD:

  • Gestion des données dans la mémoire externe (sur les disques);
  • Gestion des données en RAM utilisant le cache de disque;
  • Fixer des modifications dans des revues spéciales, la sauvegarde et la restauration de la base de données après les échecs;
  • Soutenir les langages de la base de données (langage de définition de données, langage de manipulation de données).

Les bases théoriques des SGBD sont décrites ci-dessus (paragraphe 3.2) et une application pratique est décrite dans CH. dix.

Les principales étapes du développement logiciel sont allouées et caractérisées. Pour chaque étape, les moyens pouvant être appliqués pour atteindre l'objectif de la scène sont décrits.

1. Terminologie

Avant de procéder à la prise en compte des outils de développement pouvant être appliqués pour créer des programmes, il est nécessaire de déterminer les concepts de base, des termes qui seront utilisés dans l'article. Conformément au sujet de l'article par le terme de base pour nous, bien sûr, est "des moyens de développement de programmes". En référence à la zone de développement logiciel, cette définition peut sembler comme suit:

Outils de développement de logiciels - un ensemble de techniques, de méthodes, de techniques, ainsi qu'à un ensemble d'outils (compilateurs, applications / bibliothèques système, etc.) utilisés par le développeur pour créer un programme de code de programme qui répond aux exigences spécifiées.

Avec cette définition, le terme "développement de programmes" sonnera comme suit:

Développement de logicielscompliqué Le processus, dont le but principal est la création, le soutien du code de programme, garantissant le niveau nécessaire de fiabilité et de qualité. Pour atteindre l'objectif principal des programmes, des outils de développement de logiciels sont utilisés.

2. Actifs fixes utilisés à différentes étapes du développement de programmes.

Selon le domaine et les tâches définies avant les développeurs, le développement de programmes peut être un processus d'élimination progressive dans laquelle un grand nombre de participants et une variété de fonds sont impliqués. Afin de déterminer quand et dans quels cas quels fonds sont utilisés, sélectionnez les principales étapes du développement logiciel. Les étapes de développement suivantes sont le plus grand intérêt pour les questions de la question à l'étude:

  1. Concevoir une application.
  2. Mise en œuvre de l'application Code de programme.
  3. Test d'une application.

Voici les étapes consciemment omises liées à la rédaction de la tâche technique, de planification du timing, de budget, etc. La raison en est que, dans ces étapes, avec une exception rare, des outils de développement spécifiques ne sont pratiquement pas utilisés.

2.1 Moyens de conception des applications

Au stade de la conception de la demande, en fonction de la complexité du produit du programme développé, dépend directement des exigences, les tâches de conception suivantes sont effectuées:

  1. Analyse des besoins.
  2. Développement de l'architecture logicielle future.
  3. Développement de périphériques de la composante principale du logiciel.
  4. Développement des mises en page d'interface utilisateur.

Conception Le résultat est généralement un "projet d'esquisse" ou "document d'architecture logicielle" (document d'architecture logicielle). La tâche "Analyse des exigences" est généralement effectuée à l'aide de méthodes de systémologie (analyse et synthèse), en tenant compte de l'expérience d'experts du concepteur. Le résultat de l'analyse est généralement un modèle significatif ou formalisé du programme d'exploitation du programme. En fonction de la complexité du processus, divers procédés et moyens auxiliaires peuvent être appliqués à la complexité de ces modèles. En général, les notations suivantes sont généralement appliquées pour décrire les modèles (les outils logiciels sont utilisés entre crochets pouvant être utilisés pour obtenir des modèles):

  • BPMN (Vision 2003 + BPMN, BPMN Acualogic, Eclipse, Sybase Power Designer).
  • Schéma de blocs (Vision 2003 et beaucoup d'autres).
  • Diagrammes ER (Visio 2003, Erwin, Sybase Power Designer et beaucoup d'autres).
  • Diagrammes UML (Sybase Power Designer, Rational Rose et beaucoup d'autres).
  • aimants, modèles de tapis, etc.

Parfois, lorsque le produit programmé est conçu pour automatiser toute activité complexe, la tâche d'analyse (modélisation) est effectuée avant les exigences techniques du futur produit. Les résultats de l'analyse permettent de former des exigences de fond pour une ou plusieurs fonctionnalités du programme étant développées et calculer les avantages réels de la mise en œuvre du produit développé. De plus, il s'avère que, selon les résultats de l'analyse, les objectifs initiaux et les tâches d'automatisation sont fondamentalement modifiés ou, en fonction des résultats de l'évaluation de l'efficacité de développement et de la mise en œuvre, le produit est prévu de ne pas développer.

L'objectif de la deuxième et de la troisième tâche de la liste des tâches ci-dessus est l'élaboration d'un modèle (description) du futur système, qui est compréhensible pour le codeur - une personne qui écrit le code de programme. Ici, quel type de paradigme de programmation (paradigme de programmation devrait également être considéré comme un moyen de développement) doit être utilisé lors de la rédaction d'un programme. Par exemple, les paradigmes principaux doivent être obtenus comme suit:

  • Programmation fonctionnelle;
  • Programmation structurelle;
  • Programmation impérative;
  • Programmation logique;
  • Programmation orientée objet (prototypage; classes; programmation subjective).

Sa sélection dépend en grande partie des habitudes, de l'expérience, des traditions, des outils, qui a une équipe de développeurs. Parfois, un produit logiciel développé est tellement compliqué que divers paradigmes sont utilisés pour résoudre un certain nombre de tâches dans différents composants du système. Il convient de noter que le choix de l'une ou une autre approche impose des restrictions sur les moyens à appliquer au stade de la mise en œuvre du code du programme. Le résultat de la résolution de cette tâche, selon l'approche, peut être (entre parenthèses fournissant des outils logiciels pouvant être utilisés pour les recevoir):

  • tableau des classes, etc. (Race Rose, Sybase PowerDisigner et bien d'autres).
  • description des modules structurels et de leur interface logicielle (par exemple, Sybase PowerDisigner et beaucoup d'autres).

Le développement de la mise en page d'interface utilisateur implique la création d'une représentation visuelle de la façon dont ces téléphones vidéo ressemblent, Windows dans l'application étant développée. La solution de cette tâche est basée sur l'utilisation des fonds du concepteur qui ne seront pas pris en compte dans cet article.

2.2 Moyens de mise en œuvre du code

Lors de la mise en œuvre du code du programme, la composante individuelle du programme est codée conformément au projet technique développé. Les moyens pouvant être appliqués en grande partie dépendent des approches utilisées pendant la conception et, en outre, sur le degré d'atelier du projet technique. Néanmoins, parmi les moyens d'élaborer un code de programme, les principaux types de fonds suivants devraient être distingués (des exemples de fonds sont indiqués entre parenthèses): méthodes et méthodes d'algorithme.

  • langues de programmation (C ++, C, Java, C #, PHP et beaucoup d'autres);
  • outils d'interface utilisateur (MFC, WPF, QT, GTK +, etc.)
  • commandes de code de programme (CVS, SVN, VSS).
  • outils pour le code exécutable (MS Visual Studio, GCC et beaucoup d'autres).
  • outils de gestion de base de données (Oracle, MS SQL, Firebird, MySQL et de nombreux autres).
  • debuggers (Mme Visual Studio, GDB, etc.).

2.3 Moyens de test de programme

Les principales tâches des tests consiste à vérifier la conformité des fonctionnalités du programme élaboré par les exigences initiales, ainsi que d'identifier des erreurs explicitement ou implicitement manifestées au cours du programme. Parmi les travaux principaux des tests, les éléments suivants peuvent être distingués:

  • Test de défaillance et de récupération.
  • Test fonctionel.
  • Tests de sécurité.
  • Interaction de test.
  • Test du processus d'installation.
  • Test de convivialité.
  • Tests de configuration.
  • Tests de stress.

Parmi les principaux types de fonds pouvant être appliqués pour effectuer les travaux dûment remplis peuvent être donnés comme suit:

  • outils d'analyse de code, profilage (assistant de code - parasoft, purify - Softwre rationnel. Couverture de test - sémantique, etc.);
  • installations de test fonctionnelles (Test - Parasoft, Qacenter - Compuware, Borland Silktest, etc.);
  • des moyens pour les tests de performance (performances Qacenter - Compuuware, etc.).

3. Conclusion

Le processus de développement du programme est un processus complexe et ce qui signifie qu'il est nécessaire d'appliquer largement dépend des tâches définies avant les développeurs. Dans l'indépendance, les tâches des tâches de développement ne peuvent être limitées que par un ensemble de certains outils, il est également nécessaire d'inclure des méthodes, des techniques, des approches et tout ce qui est utilisé pour créer un programme répondant aux exigences spécifiées.

Également voir :

abstrait

Le logiciel est un ensemble de systèmes de traitement de l'information et de documents de programme nécessaires pour exploiter ces programmes (GOST 19781-90). Aussi - un ensemble de programmes, de procédures et de règles, ainsi que de la documentation relative au fonctionnement du système de traitement de données (ST ISO 2382 / 1-84).

Logiciels instrumentaux - Logiciels destinés à être utilisés dans la conception, le développement et le soutien des programmes. Habituellement, ce terme est utilisé pour souligner les différences de cette classe en fonction des logiciels appliqués et du système.

Le compilateur est un traducteur qui effectue la conversion de programme compilée dans la langue source dans le module d'objet.

Interprète - Programme (parfois du matériel), analysant des commandes ou des opérateurs de programme et les exécuter immédiatement.

Le système d'exploitation est un ensemble de gestionnaires et de programmes de traitement qui, d'une part, agissent comme une interface entre les périphériques du système informatique et les programmes d'application, ainsi que sur l'autre - sont destinés aux dispositifs de contrôle, à la gestion des processus informatiques, à la répartition efficace de Ressources informatiques entre les processus informatiques et l'organisation de l'informatique fiable.

Programme d'application - Un programme conçu pour effectuer certaines tâches d'utilisateur et conçu pour une interaction directe avec l'utilisateur.

VisualBasic - Outil de développement de logiciels développé par Microsoft et comprend un environnement de langue et de développement de programmation.

VisualBasicForPlication est une implémentation un peu simplifiée du langage de programmation Visual Basic, intégré à la gamme de produits Microsoft Office (y compris les versions Mac OS), ainsi que dans de nombreux autres packages logiciels, tels que AutoCAD, SolidWorks, CorelDRAW, WordPerfect et ESRI ArcGIS.

L'objectif du travail est l'étude des espèces, des fonctions logicielles, en particulier de l'instrumentation.

Classification logicielle:

Types de logiciels instrumentaux:

1) Editeurs de texte

4) compilateurs

5) interprètes

6) Lynolovers

8) assemblages

9) débogueur

10) Profilants

11) Générateurs de documentation

Pour créer un programme dans le langage de programmation sélectionné, vous devez disposer des composants suivants:

2. Compilateur ou interprète. Le texte source utilisant le programme Compiler est traduit en un code d'objet intermédiaire.

Le résultat du travail: logiciel, ses fonctions et types, en particulier, les logiciels instrumentaux, son essence, ses tâches sont prises en compte. Le troisième chapitre examiné par Microsoft Visual Basic comme moyen de développement logiciel et de sa dialecte - Microsoft Visual Basic Forplication. Le travail du cours met en œuvre un algorithme de résolution d'une tâche financière et économique en utilisant le langage de programmation Pascal.

introduction

Dans le monde moderne, aucune personne qui n'a tenté les avantages de la civilisation ne peut soumettre sa vie sans utiliser de matériel informatique. Son utilisation se produit dans n'importe quel domaine de la vie humaine: la production, le commerce, la formation, le divertissement et la communication des personnes, de leurs activités scientifiques et culturelles. Tout cela est dû à la possibilité de sélectionner des équipements informatiques de résoudre tout, même la tâche la plus difficile.

Cependant, la polyvalence et la spécialisation dans les équipements informatiques sont assurées en utilisant presque tous les ordinateurs utilisant un ensemble de logiciels différent qui garantit que toutes les tâches définies.

Nous voyons tous une vaste variété de programmes informatiques et des taux époustouflants de leur croissance et de leur amélioration, et seule une petite partie de nous représente le côté invisible de leur conception, leur développement et sa création. Cependant, cette sphère de technologie informatique est à notre avis le plus important, car les technologies informatiques divergentes dépendront de son développement.

Et puisque le développement de tout programme informatique se produit à l'aide de logiciels instrumental, alors dans notre travail de cours, je voudrais y habiter en détail dessus, après l'avoir alloué à partir de l'ensemble du logiciel et de la discontinuité de son essence et de son absence.

Pour plus de clarté, nous examinerons le logiciel instrumental (objet d'objet) sur l'exemple du package logiciel VisualbasicforPlication (sujet) utilisé pour la programmation dans l'environnement MicrosoftOffice - le paquet de bureau le plus courant et le plus populaire.

1. Logiciel

1.1 Concept et essence de logiciels

Le logiciel (logiciel) fait partie intégrante du système informatique. C'est une continuation logique des moyens techniques de tout ordinateur. Le champ d'application d'un ordinateur particulier est déterminé par le logiciel créé pour cela. En soi, l'ordinateur n'a pas de connaissances dans un domaine d'application. Toutes ces connaissances sont axées sur les programmes effectués sur des ordinateurs disposant d'un ensemble de fonctionnalités spécifiques et sont destinés à effectuer des fonctions spécifiques, dans la plupart des cas, des fonctions hautement spécialisées, telles que la création et la transformation d'images graphiques ou de fichiers sonores.

Le logiciel représente actuellement des centaines de milliers de programmes destinés à traiter les informations les plus diverses avec les objectifs les plus divers.

Le logiciel (logiciel) inclut également l'ensemble des activités de conception et de développement:

1) technologie de conception de programme (par exemple, conception descendante, conception structurelle et orientée objet);

2) méthodes de test de programme;

3) méthodes de preuve de l'exactitude des programmes;

4) analyse de la qualité des programmes;

5) Documentation des programmes;

6) Développement et utilisation des outils logiciels facilitant le processus de conception de logiciels, et bien plus encore.

Il existe de nombreuses définitions de logiciels différentes. En général, le logiciel est un ensemble de systèmes de traitement d'informations et de documents de programme nécessaires pour exploiter ces programmes (GOST 19781-90). Aussi - un ensemble de programmes, de procédures et de règles, ainsi que de la documentation relative au fonctionnement du système de traitement de données (ST ISO 2382 / 1-84).

Le logiciel est l'un des types de systèmes informatiques, ainsi que des techniques (matériel), mathématique, information, linguistique, organisationnel et méthodologique.

Le mot logiciel du logiciel Word anglais est souvent utilisé dans l'argot informatique, qui dans ce sens appliqué dans l'article dans les mathématiques mensuelles mathématiques américaines de l'Université de Princeton John Tyuki (anglais. Johnw. Tukey) en 1958.

Autres définitions:

1) Le logiciel est un ensemble de programmes vous permettant de mettre en œuvre un traitement automatisé d'informations sur l'ordinateur.

2) Software (Machine de calcul électronique d'équipement mathématique), un ensemble de systèmes de traitement de données et de documents logiciels requis pour mettre en œuvre des programmes sur une machine informatique électronique.

3) Logiciel - Un ensemble de programmes de gestion du processus d'exploitation informatique, de la programmation automatisation.

4) Software - Un complexe de programmes informatiques qui fournit une transmission de traitement ou de transmission de données.

Toutes les définitions sont similaires et reflètent l'essence du logiciel - l'organisation de l'interaction de la partie matérielle (technique), sous la forme de divers nœuds intégrés et périphériques, leur contrôle et leur coordination de l'interaction globale du système informatique entre eux-mêmes et l'utilisateur.

1.2 Caractéristiques du logiciel

Les concepts logiciels susmentionnés entraînent des fonctions effectuées par des logiciels dans le processus de fonctionnement des équipements informatiques. La liste de ces fonctions est très diverse, mais de manière conventionnelle peut être divisée en cinq types suivants:

1. Matériel-mécanique. Effectuez les différents composants de l'ordinateur, assurez-vous du transfert du signal matériel d'un composant à un autre.

2. Logique de la machine. Traité et interpréter l'ensemble des impulsions matérielles électromagnétiques dans un code de programme conscient logiquement avec une structure et des propriétés spécifiques.

3. commandants d'information. Réaliser le code du programme conformément aux principes du système et à la création d'une structure d'informations logique et exécutez son exécution.

4. Interface. Fournir le traitement et l'interprétation du code de programme au format d'affichage disponible pour la perception par l'utilisateur. Crée un environnement favorable pour l'interaction d'une personne, une personne-ordinateur.

5. Appliqué. Effectue des actions mathématiques, logiques, physiques et autres avec un ensemble de données disponibles, en d'autres termes, le traitement des informations disponibles pour résoudre certaines tâches.

Cette liste est loin d'être complète, ce qui indique la diversité et l'ambiguïté des fonctions effectuées par le logiciel.

1.3 Types de logiciels

Selon les fonctions fournies par un composant spécifique de l'ordinateur, il est nécessaire de créer son propre logiciel spécialisé pour celui-ci, qui est le motif fondamental de la création de logiciels de différentes espèces indiquées sur (Fig. 1):

a) programmes d'application assurant directement l'exécution des utilisateurs de travail nécessaires;

b) Les programmes système sont destinés à contrôler le fonctionnement du système informatique, exécutant diverses fonctions auxiliaires, par exemple:

1) gestion des ressources informatiques;

2) créer des copies des informations utilisées;

3) vérifier les performances des périphériques informatiques;

4) émission d'informations de référence sur l'ordinateur et les autres;

c) Systèmes logiciels instrumentaux facilitant le processus de création de nouveaux programmes pour l'ordinateur.

Le logiciel système fournit une maintenance et une maintenance informatiques, ainsi que l'automatisation du processus de création de nouveaux programmes. Le logiciel système comprend: Systèmes d'exploitation et interface utilisateur; logiciel instrumental; Systèmes de maintenance.

Le système d'exploitation est une partie obligatoire du logiciel spécial, qui assure le fonctionnement efficace d'un ordinateur personnel dans divers modes qui organisent l'exécution du programme et l'interaction utilisateur et les périphériques externes avec des ordinateurs.

L'interface utilisateur (programmes de service) est la superstructures de logiciels du système d'exploitation (shell et moyen) conçue pour simplifier la communication utilisateur avec le système d'exploitation.

Les programmes fournissant une interface conservent le formulaire de communication (boîte de dialogue) de l'utilisateur avec le système d'exploitation, mais modifient la langue de la communication (généralement la langue de commande est convertie en langage de menu). Les systèmes de service peuvent être conventionnellement divisés en systèmes d'interface, obus de systèmes d'exploitation et de services publics.

Les systèmes d'interface sont des systèmes de services puissants, le plus souvent de type graphique qui améliore non seulement l'utilisateur, mais également l'interface de programme des systèmes d'exploitation, en particulier, en mettant en œuvre certaines procédures supplémentaires pour la séparation de ressources supplémentaires.

Les coquillages des systèmes d'exploitation fournissent à l'utilisateur un nouveau neuf que l'interface mise en œuvre par le système d'exploitation et apporte une connaissance facultative de ce dernier.

Les utilitaires automatisent l'exécution de procédures distinctes typiques et fréquemment utilisées, dont la mise en œuvre nécessiterait que l'utilisateur élabore des programmes spéciaux. De nombreux utilitaires ont une interface de dialogue d'utilisateur développé et approchent le niveau de communication sur les coquilles.

Logiciel d'outils (systèmes de programmation) - logiciels obligatoires, à l'aide de programmes. Le logiciel instrumental comprend des outils d'écriture logiciels (éditeurs de texte); Outils de conversion de programme dans la vue appropriée sur un ordinateur (assembleurs, compilateurs, interprètes, téléchargeurs et éditeurs de liaison), outils de contrôle de programme et de débogage.

Les éditeurs de texte vous permettent de modifier, de former et de combiner facilement les textes des programmes et de contrôler la syntaxe des programmes créés.

Le programme écrit dans la langue algorithmique doit être converti au module d'objet enregistré dans la machine (en codes binaires). Une telle transformation est effectuée par traducteur (assembleur - d'assembleur et compilateurs avec des langues de haut niveau). Pour certaines langues algorithmiques, des interprètes sont utilisés qui ne créent pas de module d'objet, et chaque fois une autre exécution du programme, qui a traduit chaque chaîne ou opérateur à la langue de la machine. Le module d'objet est traité par le chargeur de démarrage - L'éditeur des liens qui le convertissent en la machine exécutable.

Les outils de débogage vous permettent d'effectuer des traces de programme (exécution étape par étape avec des informations d'exécution sur les résultats d'exécution), afin de vérifier la syntaxe du programme et des résultats intermédiaires aux points d'arrêt, modifiez les valeurs des variables de ces points.

Les systèmes techniques et de services sont des contrôles logiciels, des diagnostics et la restauration de l'ordinateur, des disques, etc.

Le logiciel d'application fournit des solutions de tâches personnalisées. Le concept clé est un ensemble de programmes d'application.

Le package de candidature est un ensemble de programmes permettant de résoudre le cercle de tâches selon un certain sujet ou sujet. Les types de packages d'applications suivants sont distingués:

1) axé sur les objectifs généraux pour automatiser une large gamme de tâches utilisateur (processeurs de texte, éditeurs de tableau, systèmes de gestion de base de données, processeurs graphiques, systèmes de publication, systèmes d'automatisation design, etc.);

2) axé sur la méthode - la mise en œuvre de diverses méthodes économiques et mathématiques de résolution des problèmes (programmation mathématique, planification du réseau et gestion, théorie de la maintenance de masse, statistiques mathématiques, etc.);

3) axé sur les problèmes - visant à résoudre une certaine tâche (problème) dans une zone spécifique (packages bancaires, packages comptables, gestion financière, systèmes de référence juridique, etc.).

Les logiciels d'application comprennent un logiciel de service qui servir à organiser un environnement utilisateur convivial, ainsi que d'effectuer des fonctions auxiliaires (gestionnaires d'informations, traducteurs, etc.).

Lors de la construction d'une classification, il est nécessaire de prendre en compte le fait que le développement rapide de l'équipement de calcul et l'expansion de la portée des applications informatiques ont fortement accéléré le processus d'évolution du logiciel. Si, plus tôt, il était facile de répertorier les principales catégories de systèmes d'exploitation, de traducteurs, de forfaits d'application, la situation a maintenant changé radicalement. Le développement de logiciels a été profondément important dans (de nouvelles approches semblaient construire des systèmes d'exploitation, des langages de programmation, etc.) et du style (les programmes appliqués ont cessé d'être appliquées et acquises une valeur indépendante). Le rapport entre le logiciel logiciel et le marché est disponible très rapidement. Même les logiciels classiques, tels que les systèmes d'exploitation, se développent et administrés en permanence par des fonctions intellectuelles, dont beaucoup ont été traités auparavant auparavant aux capacités humaines intellectuelles.

2. Logiciel instrumental

2.1 Essence et concept de logiciel instrumental

Software Instrumental (IPO) - Logiciel conçu pour être utilisé dans la conception, le développement et la maintenance des programmes.

Outil d'occasion dans la phase de développement. Le logiciel instrumental est un ensemble de programmes utilisés pour aider les programmeurs à travailler pour aider les responsables de développement de logiciels dans leur désir de surveiller le processus de développement et les produits obtenus. Les représentants les plus célèbres de cette partie du logiciel sont des programmes de programmation des langages de programmation qui aident les programmeurs à écrire des commandes de la machine. Les programmes instrumentaux sont des traducteurs de Fortran, Cobol, Joe Flall, Beysik, APL et Pascal. Ils facilitent le processus de création de nouveaux programmes de travail. Cependant, les traducteurs avec des langues ne sont que la partie la plus connue des programmes instrumentaux; Il y en a beaucoup beaucoup.

L'utilisation de machines informatiques pour aider à développer de nouveaux programmes est loin d'être évidente pour les personnes qui ne sont pas des programmeurs professionnels. Il arrive souvent que des professionnels soient racontés sur l'instrumental (phase de développement) et le système (phase d'utilisation) par logiciel sur une seule respiration, en supposant que leurs compétences non dédiées au secret sont connues sur le rôle des logiciels instrumentaux. Tout comme dans la phase d'utilisation (pour les programmes d'application), le support système fonctionne dans la phase de développement, mais uniquement avec le support instrumental. Le logiciel instrumental ou le système de programmation est un système permettant d'automatiser le développement de nouveaux programmes de programmation.

Dans le cas le plus général, pour créer un programme dans le langage de programmation sélectionné (langage de programmation système), vous devez disposer des composants suivants:

1. Editeur de texte pour créer un fichier avec programme de texte source.

2. Compilateur ou interprète. Le texte source utilisant le programme Compiler est traduit en un code d'objet intermédiaire. Le texte source du grand programme consiste en plusieurs modules (fichiers avec textes de source). Chaque module est compilé dans un fichier séparé avec le code d'objet, qui doit ensuite être combiné en un.

3. L'éditeur de connexion ou le collecteur qui répertorie la liaison des modules d'objet et génère une application viable au code exécutable de sortie.

Le code exécutable est un programme complet pouvant être lancé sur n'importe quel ordinateur dans lequel le système d'exploitation est installé pour lequel ce programme a été créé. En règle générale, le fichier final a une extension. Lee ou.

Récemment, les méthodes de programmation visuelle ont été distribuées (à l'aide des langues de description de scénario) sur la création d'applications Windows. Ce processus est automatisé dans des environnements de conception rapides. Cela utilise des composants visuels prêts à l'emploi configurés à l'aide d'éditeurs spéciaux.

Les éditeurs les plus populaires (systèmes de programmation logiciels utilisant Visual signifie) Conception visuelle:

1) Borland Delphi - conçu pour résoudre presque toutes les tâches de programmation d'applications.

2) Borland C ++ Builder est un excellent outil permettant de développer des applications DOS et Windows.

3) Microsoft Visual Basic est un outil populaire pour créer des programmes Windows.

4) Microsoft Visual C ++ - Cet outil vous permet de développer toutes les applications exécutées dans Microsoft Windows de type OS.

Ainsi, l'essence du logiciel de l'outil consiste à créer n'importe quel programme exécutable en convertissant des expressions officiellement logiques dans le code de machine exécutable, ainsi que le contrôle et le réglage.

2.2 Tâches et fonctions du logiciel instrumental

Pour le logiciel instrumental, les deux types de logiciels spéciaux sont caractérisés par le général et le privé.

fonctions, ainsi que pour l'ensemble du logiciel dans son ensemble. Les caractéristiques générales sont considérées ci-dessus et des fonctions spécialisées inhérentes à ce type de programmes sont les suivantes:

1. Création du texte du programme développé à l'aide de mots de code spécialement installés (langage de programmation), ainsi qu'un ensemble spécifique de caractères et de leur emplacement dans la syntaxe de programme de fichiers créé.

2. Traduction du texte du programme créé dans un code orienté machine disponible pour la reconnaissance informatique. En cas de création d'une quantité importante du programme, elle est divisée en modules distincts et chacun des modules est traduit séparément.

3. Connexion de modules individuels dans un seul code exécutable, avec la conformité à la structure nécessaire, assurant la coordination de l'interaction des parties individuelles.

4. Tester et contrôler le programme créé, identifier et éliminer les erreurs formelles, logiques et syntaxiques, vérifiant les programmes pour les codes interdits, ainsi que l'évaluation des performances et du potentiel du programme créé.

2.3 Outils de logiciel instrumental

Sur la base des tâches définies avant le logiciel de l'outil, un grand nombre de types de logiciels d'outils peuvent être distingués:

1) Editeurs de texte

2) Environnements de développement intégrés

4) compilateurs

5) interprètes

6) Lynolovers

7) analyseurs d'analyseurs et générateurs (voir Javacc)

8) assemblages

9) débogueur

10) Profilants

11) Générateurs de documentation

12) Analyse de la couverture du code

13) Outils d'intégration continue

14) Outils de test automatisés

15) Systèmes de contrôle de la version, etc.

Il convient de noter que les coquilles de création d'applications sont également créées par des programmes d'outils et peuvent donc être attribués aux programmes d'application. Envisagez de nommer brièvement certains programmes instrumentaux.

Text éditeurs.

Editeur de texte - Un programme informatique conçu pour gérer des fichiers texte, tels que la création et la création de modifications.

Types de textes éditeurs.

Allouer de manière conditionnelle deux types d'éditeurs: streaming text éditeurs et interactif.

Les éditeurs de texte de flux sont des programmes informatiques destinés au traitement automatisé des données de texte d'entrée obtenues à partir d'un fichier texte, conformément aux utilisateurs prédéterminés des règles. Le plus souvent, les règles sont des expressions régulières sur une diagrade spécifique spécifiée pour cet éditeur de texte particulier. Un exemple d'un tel éditeur de texte peut être l'éditeur SED.

Les éditeurs de texte interactifs sont une famille de programmes informatiques conçus pour modifier le fichier texte en mode interactif. Ces programmes vous permettent d'afficher l'état actuel des données de texte dans le fichier et de produire différentes actions sur eux.

Souvent, les éditeurs de texte interactifs contiennent des fonctionnalités supplémentaires significatives conçues pour automatiser une partie des actions d'édition ou apporter une modification d'affichage de données texte, en fonction de leur sémantique. Un exemple de fonctionnalité du dernier type peut servir de surbrillance de la syntaxe.

Les éditeurs de texte sont conçus pour créer et éditer des documents texte. MS Word, le lexique sont les plus courants. Les principales fonctions des éditeurs de texte sont les suivantes:

1) Travailler avec des fragments du document,

2) insérer des objets créés dans d'autres programmes

3) Document de texte de panne sur les pages

4) Entrez et modifiez des tables

5) Entrez et modifiez des formules

6) Formatage de paragraphes

7) Listes automatiques

8) Création automatique du contenu de la table.

Des dizaines de textes éditeurs sont connus. Les plus accessibles sont le bloc-notes (Notepad), WordPad, Word. L'éditeur de texte spécifique est généralement déterminé par les fonctions, dont le but est reflété dans les éléments de menu et dans le système d'aide.

Environnement de développement intégré

Environnement de développement intégré, système de logiciels, utilisé par les programmeurs pour le développement logiciel (logiciel). Habituellement, l'environnement de développement comprend:

1) Editeur de texte

2) Compilateur et / ou interprète

3) Outils d'automatisation de l'assemblage

4) débogueur.

Contient parfois également des outils d'intégration avec les systèmes de contrôle de version et une variété d'outils pour simplifier la conception de l'interface utilisateur graphique. De nombreux environnements de développement modernes incluent également le navigateur de classe, l'inspecteur d'objets et le graphique de hiérarchie des classes - destinés au développement logiciel orienté objet. Bien qu'il existe des environnements de développement destinés à de multiples langages de programmation - tels que Eclipse, Netbeans, Embarcadero Rad Studio, Qt Créateur ou Microsoft Visual Studio, l'environnement de développement est généralement destiné à une langue de programmation définie - telle que Visual Basic, Delphi, Dev -C ++.

Cas privé de l'environnement de développement visuel, qui incluait la possibilité d'édition visuelle de l'interface de programme.

Sdk.

SDK (du SoftwareDeDevelopmentkit anglais) ou "Devkit" - un ensemble d'outils de développement permettant aux spécialistes du logiciel de créer des applications pour un package logiciel spécifique, un logiciel de développement de base, une plate-forme matérielle, un système informatique, des consoles de jeux vidéo, des systèmes d'exploitation et d'autres plates-formes .

Un programmeur reçoit généralement le SDK directement du développeur de la technologie ou du système cible. Souvent, le SDK s'applique via Internet. De nombreux SDK sont distribués gratuitement pour encourager les développeurs à utiliser cette technologie ou cette plate-forme.

Les fournisseurs de SDK remplacent parfois le terme logiciel dans le kit de développement de logiciels de phrase pour un mot plus précis. Par exemple, "Microsoft" et "Apple" fournissent des kits de développement de pilotes (DDK) pour développer des pilotes de périphérique et "Palmsource" appelle sa boîte à outils pour le développement de "Palmos Development Kit (PDK)".

Exemples de SDK. :

5) Kit de développement Java

6) Dispositifs d'opéra SDK

Compilateurs.

Compilateur -

1) un programme ou un moyen technique exécutant la compilation.

2) Programme de la machine utilisée pour la compilation.

3) Un traducteur qui effectue le programme converti sur la langue source dans le module d'objet.

4) Un programme qui traduit le texte d'un programme de haut niveau en un programme équivalent dans la langue de la machine.

5) Un programme conçu pour diffuser une langue de haut niveau en code absolu ou, parfois, dans la langue des assembleurs. Les informations d'entrée du compilateur (code source) sont une description d'un algorithme ou d'un programme sur une langue axée sur des problèmes et à la sortie du compilateur - une description équivalente de l'algorithme sur une langue orientée machine (code d'objet).

Compilation -

1) Diffusion d'un programme proche de la machine.

2) Diffusion d'un programme compilé dans la langue source dans le module d'objet. Effectué par le compilateur.

Compiler - effectuez la diffusion du programme de la machine à partir d'une langue axée sur des problèmes à une langue orientée automatique.

Vues des compilateurs :

1) Vectorisants. Translève le code source dans le code de machine d'ordinateurs équipés d'un processeur vectoriel.

2) flexible. Compilé selon le principe modulaire, géré par des tables et est programmé dans une langue de haut niveau ou mis en œuvre à l'aide de compilateurs de compilateur.

3) dialogue.

4) incrémentiel. Diffuse à plusieurs reprises les fragments du programme et des ajouts sans recompiler l'ensemble du programme.

5) Interprétation (étape par étape). Effectue systématiquement une compilation indépendante de chaque opérateur (commande) du programme source.

6) compilateur compilateur. Un traducteur qui perçoit une description formelle du langage de programmation et du compilateur générateur pour cette langue.

7) Débogage. Élimine les types individuels d'erreurs syntaxiques.

8) Résident. Est constamment dans la mémoire principale et est disponible pour la réutilisation par de nombreuses tâches.

9) auto-compilé. Écrit dans la même langue à partir de laquelle la diffusion est effectuée.

10) universel. Basé sur la description formelle de la syntaxe et de la sémantique de la langue d'entrée. Les parties composites de ce compilateur sont: le noyau, les chargeuses syntaxiques et sémantiques.

Types de compilation :

1) lot. Compiler plusieurs modules source dans un élément de tâche.

2) ligne.

3) conditionnel. Compilation à laquelle le texte traduit dépend des conditions spécifiées dans le programme d'origine. Donc, en fonction de la valeur d'une certaine constante, vous pouvez activer ou désactiver la diffusion du texte du programme.

Structure du compilateur.

Le processus de compilation comprend les étapes suivantes:

1) analyse lexicale. À ce stade, la séquence de symboles du fichier source est convertie en une séquence Lex.

2) Analyse syntaxique (grammaticale). La séquence du lex est convertie en arbre d'analyse.

3) analyse sémantique. L'arbre d'analyse est traité dans le but d'établir sa sémantique (signification) - par exemple, des identificateurs de liaison à leurs déclarations, types, contrôle de compatibilité, définir les types d'expressions, etc. Le résultat est communément appelé "représentation / code intermédiaire / code", Et peut être un arbre de licenciement à jour, un nouvel arbre, un ensemble abstrait d'équipes ou autre chose, pratique pour un traitement ultérieur.

4) Optimisation. Supprimer des structures excessives et simplifier la conservation du code de sa signification. L'optimisation peut être à différents niveaux et étapes - par exemple, sur le code intermédiaire ou au-dessus du code de machine final.

5) Génération de code. De la vue intermédiaire, le code est généré sur la langue cible.

Dans des implémentations spécifiques des compilateurs, ces étapes peuvent être divisées ou combinées sous une forme ou une autre.

Diffusion et mise en page.

Une caractéristique historique importante du compilateur, reflétée dans son nom (eng. Compilez - de collecter ensemble, de composer), était que cela pourrait produire et mettre en page (c'est-à-dire contenant deux parties - un traducteur et un lieur). Cela est dû au fait que la compilation et la mise en page distinctes comme une étape de montage distincte ont été énoncées beaucoup plus tard que l'apparition de compilateurs. À cet égard, au lieu du terme "compilateur" utilise parfois le terme "traducteur", car il est synonyme: dans l'ancienne littérature, ou quand ils veulent mettre l'accent sur sa capacité à traduire le programme du code de la machine (et au contraire , utilisez le terme "compilateur" pour souligner la capacité de collecter de nombreux fichiers un).

Interprètes.

Interprète (langage de programmation) -

1) un programme ou un moyen technique exécutant une interprétation.

2) La vue du traducteur qui effectue le traitement et l'exécution du joueur (d'une image) du programme source ou de la demande (par opposition au compilateur diffusant l'ensemble du programme sans exécution).

3) Programme (parfois du matériel), analyser les commandes ou les opérateurs de programme et les exécuter immédiatement.

4) Le processeur de langue, qui implique le programme d'origine, tout en effectuant des actions prescrites et ne constitue pas un programme compilé dans la machine, qui est ultérieurement effectué.

Types d'interprètes.

Un interprète simple analyse et effectue immédiatement (inévitablement interprétation) le programme de Pomandandno (ou de ligne), car son code source arrive à l'entrée Interprète. L'avantage de cette approche est une réaction instantanée. Inconvénient - Un tel interprète détecte des erreurs dans le texte du programme uniquement lors de la tentative d'exécution d'une commande (ou d'une chaîne) avec une erreur.

L'interpréteur de type compile est un système de compilateur qui traduit le code source du programme en une représentation intermédiaire, par exemple au code d'octet ou à un code P et l'interprète réel qui effectue le code intermédiaire résultant (la machine virtuelle) . L'avantage de ces systèmes est une plus grande performance de la mise en œuvre des programmes (en raison de la suppression de l'analyse du code source dans un passage distinct et unique et de minimiser cette analyse dans l'interprète). Inconvénients - Plus de demande de ressources et d'exigence pour l'exactitude du code source. Il est utilisé dans des langues telles que Java, PHP, Python, Perl (code octet), REXX (maintient le résultat de l'analyse de code source), ainsi que dans divers SGBD (code P est utilisé).

En cas d'un interprète de type compile, les composants sont obtenus par un compilateur de langue et un simple interprète avec une analyse minimisée du code source. De plus, le code source d'un tel interprète n'a pas besoin d'avoir un format de texte ou d'être code d'octet que seul cet interprète comprend, il peut s'agir d'un code de machine de la plate-forme matérielle existante. Par exemple, des machines virtuelles telles que QEMU, Bochs, VMware comprennent des interprètes du code de machine de la famille des processeurs X86.

Certains interprètes (par exemple, pour LISP, Scheme, Python, Beysik et d'autres langages d'autres) peuvent travailler en mode de dialogue ou appelé cycle de contrôle de lecture (ENG. Read-eval-PrintLOOP, RÉPL). Dans ce mode, l'interprète lit la conception de la langue complétée (par exemple, S-Expression dans la langue LISP), l'exécute, imprime les résultats, après quoi il s'attend à l'attente de l'entrée de l'utilisateur de la conception suivante.

Unique est en avant, capable de travailler dans l'interprétation et la compilation des données d'entrée, ce qui vous permet de basculer entre ces modes sur un moment arbitraire, tant au cours de la transmission du code source qu'au cours du fonctionnement des programmes.

Il convient également de noter que les modes d'interprétation peuvent être trouvés non seulement dans des logiciels, mais également du matériel. Ainsi, de nombreux microprocesseurs interprètent le code de la machine à l'aide du micrologiciel intégré et les processeurs de la famille X86 commençant par Pentium (par exemple, sur l'architecture Intel P6), pendant le code de la machine, il est préchargé au format interne (dans le micro séquence opérationnée).

Algorithme d'un interprète simple :

2. analyser les instructions et déterminer les actions appropriées;

3. Effectuer les actions appropriées;

4. Si le programme n'est pas atteint, lisez les instructions suivantes et passez à l'étape 2.

Avantages et inconvénients des interprètes.

1) Grande portabilité des programmes interprétables - Le programme fonctionnera sur toute plate-forme sur laquelle il existe un interprète approprié.

2) Typiquement, des moyens plus avancés et visuels de diagnostic des erreurs dans les codes source.

3) Simplifiez le code de code source de débogage.

4) Tailles de code plus petites comparées au code de la machine obtenu après des compilateurs classiques.

1) Le programme interprétable ne peut être effectué séparément sans interprète de programme. L'interprète lui-même peut être très compact.

2) Le programme interprétable est plus lent, car l'analyse intermédiaire du code source et la planification de son exécution nécessitent une durée supplémentaire par rapport aux versions directes du code de la machine, que le code source pourrait être compilé.

3) Il n'y a pratiquement aucune optimisation de code, ce qui entraîne des pertes supplémentaires à la vitesse des programmes interprétables.

Lieur.

Linker (également connecté Editor, Linker) - Un programme qui produit une mise en page - prend sur l'entrée un ou plusieurs modules d'objet et recueille le module exécutable en fonction d'eux.

Pour lier les modules, la liaison utilise les noms des noms créés par le compilateur dans chacun des modules d'objet. Ces noms peuvent être de deux types:

1) Noms certains ou exportés - fonctions et variables définies dans ce module et fournies pour utiliser d'autres modules.

2) Noms incertains ou importés - fonctions et variables référencées par le module, mais ne les détermine pas en soi.

Le travail de liaison consiste à permettre aux liens de noms incertains dans chaque module. Pour chaque nom importé, sa définition est définie dans d'autres modules, la mention du nom est remplacée par son adresse.

La liaison ne vérifie généralement pas les types et le nombre de paramètres de procédures et de fonctions. Si vous devez combiner des modules d'objet d'objet écrites dans des langages de taper stricts, les contrôles nécessaires doivent être remplis avec un utilitaire supplémentaire avant de lancer l'éditeur de liens.

Assembleur.

Assembleur (de l'anglais. Assembleur - Un collecteur) - Un programme informatique, le compilateur de texte source du programme écrit dans la langue d'assembleur dans la langue de la machine.

Comme la langue elle-même (assembleur), les assembleurs sont généralement spécifiques à une architecture spécifique, à un système d'exploitation et à une option de syntaxe de langue. Dans le même temps, il existe un multiplateforme ou universel (plus précisément, limité, car dans la langue basse niveau, vous ne pouvez pas écrire de programmes indépendants du matériel) des assembleurs pouvant fonctionner sur différentes plates-formes et systèmes d'exploitation. Parmi ces derniers, vous pouvez également mettre en évidence un groupe croisé-assembleur capable de collecter du code de machine et des modules exécutables (fichiers) pour d'autres architectures et systèmes d'exploitation.

L'assemblage peut ne pas être la première et non la dernière étape sur le point d'obtenir le module de programme exécutable. Ainsi, de nombreux compilateurs de langages de programmation de haut niveau donnent le résultat sous la forme d'un programme dans la langue des assembleurs, que l'assembleur traite à l'avenir. En outre, le résultat de l'assemblage peut ne pas être exécuté et le module d'objet contenant des parties dispersées et inutiles du code de machine et des données du programme, à partir duquel (ou à partir de plusieurs modules d'objet), à l'avenir à l'aide du programme de liaison ("Linker ") Peut être organisé un fichier exécutable.

Le débogueur ou le débogueur est un module d'environnement de développement ou une application distincte conçue pour rechercher des erreurs dans le programme. Le débogueur vous permet d'effectuer des traces, de suivre, d'installer ou de modifier les valeurs des variables pendant l'exécution du programme, d'installer et de supprimer des points de contrôle ou des conditions d'arrêt, etc.

Liste des débogueur.

1) AQTime - Un débogueur commercial pour les applications créées pour .NET Framework version 1.0, 1.1, 2.0, 3.0, 3.5 (y compris les applications ASP.NET), ainsi que pour les applications Windows 32- et 64 bits.

2) DTRACE - Cadre de trace dynamique pour Solaris, OpenSolaris, FreeBSD, Mac OS X et QNX.

3) Clôture électrique - débogueur de la mémoire.

4) GNU Debugger (GDB) - Programmes de débogueur du projet GNU.

5) IDA est un puissant désassembleur et un débogueur de bas niveau pour les systèmes d'exploitation Famille Windows et Linux et Linux.

6) Microsoft Visual Studio - Environnement de développement logiciel qui comprend un débogage vers Microsoft Corporation.

7) OLLYDBG est un débogueur gratuit de faible niveau pour les systèmes d'exploitation Windows.

8) Softice - débogueur de bas niveau pour les systèmes d'exploitation Windows.

9) Sun Studio - Environnement de développement logiciel, y compris le débogueur DBX pour Solaris et Linux, de Sun Microsystems.

10) Dr. Watson est un débogueur Windows standard, vous permet de créer des vidages de mémoire.

11) TotalView est l'un des débuggeurs commerciaux pour UNIX.

12) Windbg est un débogueur gratuit de Microsoft Corporation.

Le générateur de documentation est un programme de programme ou logiciel qui vous permet de recevoir une documentation destinée aux programmeurs (documentation API) et / ou pour les utilisateurs finaux du système, selon un code source spécialement commenté et, dans certains cas, selon les modules exécutables. (obtenu à la sortie du compilateur).

Habituellement, le générateur analyse le code source du programme, mettant en évidence les constructions de syntaxe correspondant à des objets de programme importants (types, classes et membres / propriétés / méthodes, procédures / fonctions, etc.). L'analyse utilise également des méta-informations sur les objets du programme, présenté sous la forme de commentaires documentant. Sur la base de toutes les informations relatives aux informations collectées, la documentation à l'emploi est formée, en règle générale, dans l'un des formats généralement acceptés - HTML, HTMLHelP, PDF, RTF et autres.

Commentaires documentaires.

Documenter un commentaire est un commentaire spécialement décoré sur l'objet de programme, destiné à être utilisé par un générateur de documentation particulier. De quel type de générateur de documentation est appliqué, la syntaxe des structures utilisées dans la documentation des commentaires dépend.

Les commentaires de la documentation peuvent contenir des informations sur l'auteur du code, afin de décrire le but de l'objet du programme, de la signification des paramètres d'entrée et de sortie - pour la fonction / procédures, des exemples d'utilisation, des situations éventuelles exceptionnelles, des caractéristiques de la mise en œuvre.

Documenter les commentaires sont généralement établis en tant que commentaires multilignes dans le style de SI. Dans chaque cas, le commentaire doit être devant l'élément documenté. Le premier symbole dans les commentaires (et au début une ligne de commentaire) devrait être *. Les blocs sont séparés par des chaînes vides.

3. Visual Basic pour les applications

logiciel logiciel système système

3.1 L'essence de Visualbasic et de sa brève histoire

Microsoft Visual Basic (VB) - Outil de développement de logiciels développé par Microsoft et comprend un langage de programmation et un environnement de développement. La langue de Visual Basic a hérité de l'esprit, du style et une partie de la syntaxe de son ancêtre - une mauvaise langue, qui a beaucoup de dialectes. Dans le même temps, Visual Basic allie des procédures et des éléments de langages de programmation orientés orientés objet et orientés vers les composants. L'environnement de développement VB comprend des outils d'interface utilisateur de conception visuelle. (Voir le tableau.).

Visual Basic (caractéristiques clés)

Visual Basic est considéré comme un bon outil pour développer les prototypes de programme, développer des applications de base de données et, en général, pour la méthode de la composante de création de programmes exécutant les systèmes d'exploitation Microsoft Windows.

Dans le processus d'évolution, Visual Basic a passé un certain nombre d'étapes consécutives, ce qui lui a permis de devenir l'une des langues de programmation les plus populaires aujourd'hui. Donc, évolution VisualBasic a marché comme suit:

1. MAY1991 - Publié Visual Basic 1.0 Formicrosoft Windows. La syntaxe Qbasic a été prise comme base de la langue et l'innovation qui a été apportée par la langue de grande popularité était le principe de communication de la langue et de l'interface graphique.

2. Septembre 1992 - Libéré Visual Basic 1.0 sous DOS. Il n'a pas été entièrement compatible avec la version Windows de VB, car il s'agissait de la prochaine version de Quickbasic et travaillé dans l'écran en mode textuel.

3. Novembre 1992 - Publié Visual Basic 2.0. L'environnement de développement est devenu plus facile à utiliser et a fonctionné plus rapidement.

4. À l'été 1993 - Visual Basic 3.0 a été publié dans des versions standard et professionnelle. Tout le reste, le moteur de livraison a été ajouté pour travailler avec des bases de données d'accès.

5. Août 1995 - Visual Basic 4.0 - Version pouvant créer des programmes Windows 32 et 16 bits.

6. Février 1997 - Visual Basic 5.0 - Démarrage de cette version, il est devenu possible, ainsi que des applications ordinaires, développent des composants COM.

7. Au milieu de 1998 - Visual Basic 6.0 est sorti. Après cela, Microsoft a radicalement modifié des politiques concernant les langues de la famille de base. Au lieu de développer Visual Basic, une langue absolument nouvelle de Visual Basic est créée.

8. En 2005, une nouvelle version de Visual Basic a été publiée, incluait Visual Studio. Elle a plu avec une nouvelle interface et des capacités. La langue est basée sur Visual Basic.Net.

9. À la fin de 2007, Microsoft a publié une nouvelle version de Visual Basic - Visual Basic 2008, également basée sur Visual Basic.Net.

Sur la base de la fonctionnalité et des spécificités de l'application, les variétés suivantes du programme spécifié peuvent être distinguées:

1. Classic Visual Basic (version 5-6) Cette langue est très fortement liée à son environnement de développement et au système d'exploitation Windows, étant exclusivement l'outil d'écriture pour les applications Windows.

2. VisualBasicforApplications (VBA) Il s'agit d'un outil de programmation, pratiquement non différent du classique Visual Basic, destiné à écrire des macros et d'autres programmes d'application pour des applications spécifiques. J'ai reçu la plus grande popularité grâce à votre utilisation dans Microsoft Office Package. La diffusion généralisée de base visuelle pour les applications associées à une attention initialement insuffisante sur les problèmes de sécurité a entraîné les macros généralisées.

3. Langue de script VisualBasicsCriPSedition (VBScript), qui est une version légèrement tronquée de l'habituel Visual Basic. Il est utilisé principalement pour automatiser l'administration de systèmes Windows, ainsi que pour créer des pages et des scripts ASP pour Internet Explorer.

3.2 Interface VisualBasicForPlication, fonctions de base et fonctionnalités

En créant VisualBasicforApplication, Microsoft a soulevé sa tâche principale pour créer une prise en charge des outils pour les utilisateurs qui ne sont pas des programmeurs professionnels, mais suffisamment qualifiés pour développer et concevoir des programmes d'application et des applications basées sur MicrosoftOffice. Il résolvait la tâche spécifiée que les développeurs ont créé VBA, après avoir doté un certain nombre de fonctionnalités uniques. L'une de ces personnes les plus précieuses pour l'utilisateur est la possibilité de créer et d'utiliser des boîtes de dialogue non standard (personnalisables) dans des programmes, en ajoutant un objet userForm au projet, ainsi qu'une interface utilisateur conviviale.

L'interface du programme VisualBasicforApplication se termine à partir du complexe de diverses fenêtres et onglets utilisés dans la conception de l'application créée, dont la principale est:

1) Fenêtre de projet (Fig. 2), qui affiche la structure du projet créée.

2) La fenêtre de code de programme (Fig. 3), qui affiche le code de programme du projet créé et la possibilité d'écrire le programme à la méthode classique à l'aide de l'éditeur Word de code intégré, qui dans VBA plus de 16 000 personnes. En outre, cette fenêtre vous permet de modifier le code et de le vérifier pour des erreurs.

3) Onglet Propriétés (Fig. 4) Affiche les paramètres définis sur l'objet spécifié et la possibilité de modifier les paramètres spécifiés.

Déplacement entre Windows et Signets, l'utilisateur peut facilement personnaliser le projet créé.

À l'aide du formulaire VBA généré par l'utilisateur, vous pouvez créer des boîtes de dialogue non standard permettant d'afficher des données ou de recevoir des valeurs de l'utilisateur de l'utilisateur comme la plus conforme aux besoins du programme. Par exemple, vous pouvez créer un test, afficher une boîte de dialogue permettant d'afficher des questions avec des options de réponse et de fournir à l'utilisateur la possibilité de choisir l'une des options de réponse qu'il considère fidèles.

Les boîtes de dialogue non standard permettent au programme d'interagir avec son utilisateur de la manière la plus difficile et de fournir une variété d'entrées et d'une sortie de données.

La boîte de dialogue non standard est créée dans la VBA en ajoutant l'objet UserForm au projet. Cet objet est une boîte de dialogue vide; Il a une chaîne d'en-tête et un bouton de fermeture, mais il n'y a pas d'autres contrôles dedans. La boîte de dialogue non standard est créée en ajoutant des commandes à l'objet UserForm et est généralement appelée simplement formulaire (Fig. 5).

Chaque objet UserForm a des propriétés, des méthodes et des événements hérités de la classe d'objets userForm.

Chaque objet userForm contient également un module de classe auquel l'utilisateur ajoute ses propres méthodes et propriétés ou entre les procédures de traitement de ce formulaire.

Possibilité de créer une interface créative, indépendamment de l'environnement d'application de programme, telle que Excel, à l'aide de formulaires d'écran, est l'une des caractéristiques les plus précieuses de VBA.

Les formes d'écran sont les fenêtres de diverses fins et le type créé par l'utilisateur pour votre application. Ils contiennent des contrôles permettant à l'utilisateur de partager des informations avec l'application.

VBA utilise la conception graphique de formulaire créée - avec les paramètres des propriétés du formulaire et des commandes - pour obtenir toutes les informations nécessaires à l'affichage de la boîte de dialogue: les dimensions de la boîte de dialogue, les éléments de contrôle de celui-ci, etc. En conséquence, VBA vous permet d'afficher la forme de la boîte de dialogue à l'aide d'une seule instruction.

Pour afficher une boîte de dialogue non standard, utilisez la méthode UserForm Afficher la méthode. Si au moment opportun, le formulaire n'est pas chargé en mémoire, la méthode Afficher la charge et l'affiche. Si le formulaire est déjà chargé, la méthode Afficher l'affiche simplement.

Affichage d'une boîte de dialogue pour effectuer la tâche ne suffit généralement pas. Il est presque toujours nécessaire de déterminer l'état des commandes de la boîte de dialogue afin de déterminer quelles données ou options ont choisi l'utilisateur. Par exemple, si la boîte de dialogue est utilisée pour obtenir des informations de l'utilisateur sur la manière dont les colonnes et les lignes doivent être organisées par feuille de travail, il est nécessaire d'avoir la possibilité de déterminer les valeurs d'utilisateur saisies après la fermeture de la boîte de dialogue et au début réel de l'opération de commande.

Dans d'autres cas, il peut être nécessaire de modifier de manière dynamique les en-têtes des boutons (ou d'autres commandes) de la boîte de dialogue, la mise à jour dynamique de l'inscription ou du champ associé au compteur ou à la confirmation dynamique de la boîte de dialogue Data.

La possibilité d'étendre de manière significative l'ensemble des fonctions intégrées à l'application standard, telles que Microsoftexcel, ainsi que créer des fonctions dont les valeurs dépendent des conditions et des événements.

VBA vous permet de programmer des fonctions tabulaires. Pour créer une feuille de travail distincte pour un module logiciel, un module d'insertion est fourni à partir du menu Visual, la commande de module dans le menu Insérer Macro. Après cela, une nouvelle feuille de travail «Modele1» apparaîtra. Dans le module logiciel, vous devez décrire la fonction dans la langue VBA. Dans la fenêtre Module de programme, vous pouvez travailler comme dans la fenêtre d'un petit éditeur de texte.

Les fonctionnalités d'intégration sont effectuées par la commande Navigateur d'objet dans le menu Affichage. Les fonctions définies par l'utilisateur sont considérées dans le programme en tant qu'objets indépendants. VBA a un ensemble important de fonctions intégrées, les séparant aux types.

Visual Basic vous permet de réserver des variables, en indiquant à la fois sans cela, travaillez avec différents types de données, utilisez des constantes, de travailler avec des opérateurs et des fonctions mathématiques, utilisez des opérateurs supplémentaires. Utilisation des opérateurs de cycle pour les prochains objets de type minuterie (chronomètre invisible dans le programme). La précision du réglage du temps dans le programme est de 1 milliseconde, ou 1/1000 secondes. La minuterie lancée travaille constamment - c'est-à-dire La procédure de traitement d'interruption appropriée est effectuée à un intervalle de temps donné - jusqu'à ce que l'utilisateur arrête la minuterie ou désactive le programme.

Dans VBA, vous pouvez spécifier n'importe quelle propriété pour le formulaire, y compris le titre, la taille, le type de trame, la couleur d'arrière-plan et les symboles, la police de texte et le modèle d'arrière-plan.

Si vous résumez toutes les fonctions du programme, alors Visual Basic ForPplication vous permet de:

1) Travailler avec des contrôles

Dignité :

1. Applications à haute vitesse avec une interface graphique pour MS Windows.

2. Une syntaxe simple qui vous permet de maîtriser rapidement la langue.

3. La possibilité de compiler à la fois dans le code de la machine et dans le code P (par la sélection d'un programmateur). En mode de débogage, le programme est toujours compilé dans le code P, ce qui vous permet de suspendre l'exécution du programme, d'apporter des modifications importantes dans le code source, puis de poursuivre l'exécution: recomposition complète et redémarrage du programme n'est pas requis.

4. Protection contre les erreurs associées à l'utilisation des pointeurs et de l'accès à la mémoire. Cet aspect rend les applications de base visuelles plus stables, mais constitue également un objet de critique.

5. Possibilité d'utiliser la plupart des fonctionnalités Winapi pour développer la fonctionnalité de l'application. Dan Apploman, qui a écrit le Guide de l'API Win32 de Win32, cette question est la plus explorée. "

Critique :

1. Les aspects de Visual Basic sont souvent critiqués, car la capacité de désactiver les moyens de suivi des variables déclarées, la capacité de conversion variable implicite, la présence du type de données "variante". Selon les critiques, il permet d'écrire un code extrêmement mauvais. D'autre part, cela peut être considéré comme un plus, car VB n'impose pas de "bon style", mais donne plus de liberté par le programmeur.

2. Manque de pointeurs, accès à la mémoire de bas niveau, inserts ASM. Malgré le fait que le paradigme Visual Basic permet à un programmeur VB moyen de se passer de tout cela, les choses énumérées deviennent aussi souvent des objets de critique. Et cependant, en utilisant des capacités sans papiers et de certaines astuces, tout cela peut être mis en œuvre sur VB (par exemple, à l'aide de fonctions pour obtenir VARPTR (), STRPTR () et Objptr ()); Il est beaucoup plus compliqué d'utiliser ces astuces que, par exemple, en C ++.

Cependant, il convient de noter que toutes les lacunes de la langue proviennent de son principal avantage - la simplicité du développement d'une interface graphique. Par conséquent, de nombreux programmeurs utilisent Visual Basic pour développer une interface utilisateur et la fonctionnalité du programme est implémentée sous forme de bibliothèques connectées dynamiquement (DLL) écrites dans une autre langue (le plus souvent C ++).

4. partie pratique

4.1 Déclaration de problème

Faites un diagramme de bloc et écrivez un programme à Pascal. Calculer le coût interne des titres. La valeur interne de l'actif est déterminée par le flux de revenus futurs de cet actif.

pV - valeur interne actuelle de l'action

c - Arrivée attendue de l'actif considéré

r - Taux de production attendu par un investisseur à revenu avec le niveau de risque correspondant

n est le facteur horaire (en mois).

Effectuer l'analyse du marché et rationaliser le résultat dans l'ascension des données obtenues.

4.2 Texte du programme à Pascal

pV: tableau de réel;

writeln ('Entrez dans l'entrée attendue de', je, '- Go Asset C:');

writeln ('Entrez le taux de rentabilité attendu par l'investisseur R:');

pV: \u003d c / exp (ln (1 + r) * i);

writeln ('la valeur interne actuelle de l'actif est', PV [I]: 1: 3);

writeln («la valeur de l'actif interne est égale à ', s);

pour J: \u003d 1 à 4 faire

si PV [J]\u003e PV alors

writeln (le coût des actifs triés en augmentant »);

pour i: \u003d 1 à 5 faire

writeln (PV [I]: 1: 3);

4.3 Exemple de contrôle

4.4 Résultat de l'exécution du programme sur l'exemple de contrôle

Conclusion

Ainsi, résumant tout ce qui précède, il convient de noter que le logiciel instrumental est l'un des types de logiciels, possédant ses tâches et ses fonctions communes.

Cependant, étant un type de logiciel hautement spécialisé, il dispose d'un certain ensemble de propriétés et de fonctions uniques garantissant la solution des tâches inhérentes à celle-ci.

Il est nécessaire de noter la tendance émergente à simplifier le processus de programmation et de création d'une programmation semi-professionnelle spécifique à des fins applicables.

Cela permettra à l'utilisateur expérimenté de l'utilisateur, mais pas à un programmeur professionnel, créer des applications et de petits fichiers exécutables MicrosoftFice utilisés principalement pour la gestion de la comptabilité et de la gestion des documents dans les petites entreprises.

Pour cette fin, Microsoft a été développé par le package logiciel VisualbasicforPlication, ce qui facilite la facilité de faciliter le processus de programmation et a permis de gérer la programmation des applications et non des programmeurs. Cette fonctionnalité a été implémentée principalement en créant une partition de programme - "Éditeur de script" et la possibilité d'enregistrer et d'exécuter des "macros", en tant que type distinct de modules programmables graphiquement. Mise en œuvre de la possibilité de créer des applications avec une interface graphique pour MS Windows. De plus, l'avantage de ce type de logiciel d'outil est une syntaxe simple qui vous permet de maîtriser rapidement la langue et d'l'appliquer à la programmation dans toutes les applications MicrosoftOffice standard.

Il est donc difficile de surestimer l'importance du soutien instrumental en général et de VisualBasicForPlication en particulier, bien que les lacunes, et elles ont été mentionnées ci-dessus, ont également lieu. Mais ce n'est que même pas des aspects négatifs du produit, mais des directives pour une amélioration supplémentaire du soutien instrumental dans la personne de VisualbasicforPlication.

1. Langues algorithmiques de temps réel / ed. Yang S. / 2004

2. Magazine PC Magazine Edition russe №2 2008. Ordinateur aujourd'hui.

3. Informatique. / Ed. Mogilev A.V., Pak N.I., Henner EK / - M.: Academia, 2000.

4. Informatique et technologie de l'information: manuel / éd. Romanova d.yu. / LLC "Editeur" Eksmo ", 2007.

5. L'encyclopédie la plus récente d'un ordinateur personnel / éd. Leoniev V. / Moscou, 1999. - 271 p.

6. Nouvelles langages de programmation et tendances dans leur développement / ed. Ushkova V. / 2001

7. Pédagogie / Ed. Pidciste P.I. / - M.: Société pédagogique, Russie, 2000.

8. Programmation pour Microsoft Excel 2000 pour 21 jours. / Ed. HARISA M. / - M.: Williams, 2000.

9. Simonovich S. Informatique: cours de base. Études. Pour les universités. Saint-Pétersbourg, Peter, 2002

10. Avec Excel 2000 sans problèmes. / Ed. KOVALSKI / - M.: BININ, 2000.

11. "Travail efficace dans Windows 98" / ED. Stinson K. / 2000. - 247 p.

12. Langues de programmation. kn.5 / ed. Vauina A.S. / 2003

13. Langues de programmation: Développement et mise en œuvre / Ed. Terrens P. / 2001

14. Manuel informatique électronique. Aleksev ex. http: //www.stf.mrsu.ru/economic/lib/informatics/text/prog.html \\