Донецкий техникум промышленной автоматики

Урок 2. Огляд програмування

  1. Вибір мови програмування і засобів розробки
  2. Visual Basic Express або Visual Studio Professional?
  3. Що таке COM?
  4. Що таке .NET?
  5. Що входить в .NET Framework?
  6. Побудова виконуваного коду
  7. Схеми виконання EXE програми

Що таке «побудова» коду?

Програмний код, який ви вводили на занятті 1, являє собою набір інструкцій мовою, зрозумілою людині. Це так званий «вихідний код», який, щоб бути виконаним, повинен бути перетворений в код, зрозумілий комп'ютеру. «Побудова» (build) і є процес формування виконуваного коду у вигляді стандартного EXE-файлу Windows. Результатом побудови може бути і DLL (бібліотека динамічного компонування), яку можна завантажити в Autodesk Inventor, проте це складніша тема, і її в даному курсі ми обговорювати не будемо.

На наступному малюнку показана копія екрану з результатами побудови проекту з попереднього заняття: вихідний ЕХЕ-файл і допоміжні файли з налагоджування (вона використовується при налагодженні в разі будь-яких проблем з виконуваним файлом). Шлях, по якому створюється ЕХЕ-файл, задається в установках проекту Visual Basic Express. Тут він встановлений за замовчуванням - папка bin всередині папки проекту Visual Basic Express.

Тут він встановлений за замовчуванням - папка bin всередині папки проекту Visual Basic Express

Вибір мови програмування і засобів розробки

Як для спілкування між собою, так і для спілкування з комп'ютерами люди створили різноманітні мови. Тому при розробці програм для Inventor вам доступний цілий ряд варіантів. В даному навчальному курсі вибір припав на Visual Basic .NET (VB .NET). Це потужна мова програмування загального призначення, вельми популярний серед розробників програм для Inventor.

Для розробки програм на VB.NET є кілька інструментів від вільно поширюваного SharpDevelop до Visual Studio, флагманської професійного середовища розробки Microsoft. Тут ми пропонуємо вам використовувати Visual Basic Express, безкоштовну версію Visual Studio для розробки VB .NET додатків.

Visual Basic Express являє собою інтегроване середовище розробки (Integrated Development Environment, скорочено IDE). Середовище включає до свого складу різні інструменти, меню, командні панелі, які полегшують створення і роботу з вашим програмним кодом.

Система проектів Visual Basic Express складається з рішень (solution), файлів проектів та компонентів проектів (окремих файлів, включених в проект). Кожне рішення являє собою контейнер для одного або декількох проектів. Кожен проект можна, в свою чергу, розглядати як контейнер для його компонентів - вихідних файлів, іконок і т.п., велика частина яких використовується для формування результуючих виконуваних файлів (EXE або DLL). Visual Basic Express надає в наше розпорядження Оглядач рішення (Solution Explorer), який організовує і відображає вміст поточного рішення в деревовидному форматі.

Visual Basic Express надає в наше розпорядження Оглядач рішення (Solution Explorer), який організовує і відображає вміст поточного рішення в деревовидному форматі

Інтерфейс Visual Basic Express включає також текстовий редактор і конструктор віконних інтерфейсів. Їх відображення в головному вікні середовища розробки залежить від типу редагованого файлу. Текстовий редактор - це те місце, де ви будете вводити текст вашої програми на Visual Basic. Цей редактор надає в ваше розпорядження такі потужні інструменти як IntelliSense і згортаються секції поряд з такими більш традиційними засобами роботи з текстом як закладки і нумерація рядків програми.

IntelliSense - надзвичайно зручний і корисний інструмент Visual Studio, який помітно підвищує продуктивність програміста. У процесі введення коду він автоматично виводить контекстно-чутливі підказки в залежності від редагованого об'єкта і символів. На наступному малюнку IntelliSense відображає доступні властивості і методи об'єкта ComponentOccurrence:

Очевидно, що ключовою функцією Visual Basic Express є здатність побудувати код VB .NET і отримати виконуваний файл. В процесі побудови компілятор аналізує код і виконує безліч різноманітних перевірок. Наприклад, виконується перевірка коду на відповідність синтаксичним правилам мови Visual Basic. Компілятор виконує і інші перевірки. Наприклад, він перевіряє, ініційовані змінні чи ні. Виявлені помилки відображаються у вікні Список помилок, яке зазвичай розташовується в нижній частині головного вікна. Вікно Список помилок можна відкрити за допомогою меню Вид -> Список помилок.

Візуальне в Visual Basic Express

Однією з найбільш сильних сторін Visual Basic Express є набір засобів для створення інтерфейсу користувача. При створенні нового проекту ви можете вибрати варіант Додаток Windows Forms. При використанні цього шаблону автоматично створюється головне вікно програми. Це вікно називається формою, і ви можете розмістити на ній елементи призначеного для користувача інтерфейсу, звані елементами управління, наприклад, кнопки. Ви додаєте в форму елементи управління простим перетягуванням їх з панелі елементів в робочу область форми. Панель елементів можна відкрити, використовуючи меню Вид> Панель елементів. Велика частина коду, необхідного для коректної роботи елементів управління, додається в проект автоматично, що серйозно полегшує і прискорює розробку програми.

Огляд застосування Visual Basic Express

У цьому розділі ви створите порожній проект, схожий на проект з першого заняття. Цей проект стане відправною точкою для заняття 3.

  1. Створення програми Windows Forms:
    Закрийте в Visual Basic Express всі відкриті проекти. Потім створіть новий проект,
    використовуючи меню Файл> Створити проект ... Ця команда виведе на екран діалогове вікно «Створити проект», в якому вам надається можливість вибрати шаблон проекту для створення плагіна.

    Оскільки ви працюєте з Visual Basic Express, встановлені шаблони слід шукати в розділі Visual Basic.
    Список доступних шаблонів додатків розташовується в центральній зоні діалогового вікна. Вибір шаблону залежить від типу створюваного додатка. Оскільки ви створюєте просте EXE додаток з діалоговим інтерфейсом, слід вибрати шаблон Додаток Windows Forms.
    Тепер слід привласнити проекту ім'я. Для цього в нижній частині діалогу в текстовому полі Ім'я введіть MyFirstInventorPlug-in і натисніть OK: У результаті буде створено і відкрито в редакторі Visual Basic Express нове рішення, яке вже містить ваш проект.

  2. Перегляд посилань на компоненти проекту (references):
    Щойно створений проект вже містить кілька стандартних посилань на основні компоненти .NET. У цьому легко переконатися, якщо в Обозревателе рішень правим кліком на імені проекту відкрити контекстне меню і вибрати в ньому пункт Властивості.

    Крім стандартних посилань на компоненти .NET, в проект вже включена порожня форма VB. Це форма присутня у вікні редактора під ім'ям Form1.vb. Форми мають дві вистави - Конструктор (Design) і Код (Code). Ви можете перемикатися між цими уявленнями за допомогою пунктів Відкрити в конструкторі і Перейти до коду в контекстному меню, яке відкривається правим кліком на Form1.vb в дереві Обозревателя рішень.
  3. Додавання посилань на компоненти: Отже, в Visual Basic Express маємо порожній проект Додаток Windows Forms.
    Але цей проект ще не в змозі працювати з Inventor API. Щоб це стало можливим, потрібно ввести в проект посилання на інтерфейсну DLL ІНВЕНТОР з описом його API - Autodesk.Inventor.Interop.dll.
    Правим кліком на проекті в Обозревателе рішень відкрийте контекстне меню і виберіть пункт Додати посилання ... За допомогою вкладки Огляд всередині папки, в якій інстальовано на ПК Inventor, знайдіть папку Public Assemblies. Шлях до неї виглядає наступним чином:
    C: \ Program Files \ Autodesk \ Inventor 201x \ Bin \ Public Assemblies
    Виділіть файл Autodesk.Inventor.Interop.dll і натисніть OK.

    Тепер посилання на Inventor API включена в ваш проект.
  4. Оглядач об'єктів: Перш ніж рухатися далі, розглянемо Оглядач об'єктів (Object Browser). Цей інструмент допоможе вам зрозуміти, яким чином можна використовувати конкретні об'єкти Inventor API. Після підключення до проекту збірки взаємодії Autodesk.Inventor.Interop.dll, об'єкти Inventor API стають доступними до перегляду в Обозревателе об'єктів. Оглядач відображає ієрархічні зв'язки між різними об'єктами. Крім навігації по деревовидним списками вам доступний і безпосередній пошук об'єктів по іменах. Якщо об'єкт знайдений і вказано зліва в дереві, на панелі праворуч ви можете бачити його методи і властивості. На копії екрану нижче зліва виділено об'єкт Application і серед його методів і властивостей виділено властивість ActiveDocument. Спробуйте таким же чином отримати інформацію про інші властивості.
    Примітка:
    Відкрити Оглядач об'єктів можна через меню Вид або за допомогою функціональної клавіші F2.

  5. Ми готові до використання Inventor API Тепер ми готові до використання Inventor API в коді Visual Basic Express і можемо створювати команди для вирішення ІНВЕНТОР певних завдань.
  6. Побудова проекту: В процесі роботи над програмою має сенс періодично виконувати побудову рішення. І хоча код на етапі розробки може бути незавершеним і нефункціональним, такий підхід дозволяє виявляти можливі помилки на більш ранній стадії роботи, що заощадить вам немало часу.
    Щоб побудувати проект, використовуйте пункт Побудувати <ім'я проекту> в меню Побудова.

    У разі успіху в лівому нижньому кутку вікна VB Express в рядку стану буде виведено повідомлення: «Побудова завершено успішно».
  7. Збереження файлів рішення
    У меню Файл слід викликати команду Зберегти все. При збереженні рішення фізично створюються файли, в яких на жорсткому диску зберігається весь вміст проекту. Це дає можливість продовжити роботу згодом. Проміжні підсумки: в цьому занятті ви отримали уявлення про те, що відбувається в процесі побудови проекту, дізналися важливу інформацію про основи VB.NET і Visual Basic Express. Ви створили з нуля новий проект Windows Forms і додали в проект необхідне посилання на Inventor API.

Visual Basic Express або Visual Studio Professional?

У цьому посібнику використаний Visual Basic Express. Ця безкоштовна версія Visual Studio є прекрасним інструментом, який допоможе вам почати розробку VB-коду для вашого плагіна без додаткових витрат на програмне забезпечення. Microsoft позиціонує редакції Express як інструмент для студентів, любителів і інших нерегулярно програмують користувачів. Незважаючи на присутність більшості важливих функціональних особливостей Visual Studio Professional, таких як IntelliSense, редакції Express все ж мають і ряд обмежень. Наприклад, в Visual Basic Express є помітно меншу кількість шаблонів додатків, є обмеження в засобах діагностики проблем і варіантах налагодження коду. Якщо ви надалі маємо намір серйозно займатися розробкою додатків, ми рекомендуємо розглянути варіанти придбання більш професійної версії сімейства Visual Studio.

Що таке COM?

«Microsoft COM (Component Object Model) - технологія, реалізована в сімействі операційних систем Windows з метою забезпечити взаємодію програмних компонентів. COM використовується розробниками для створення багаторазово використовуваних програмних компонентів, об'єднання компонентів у додатки і використання переваг служб Windows. Об'єкти COM можуть створюватися різними інструментами розробки. Об'єктно-орієнтовані мови типу С ++ надають програмні механізми для спрощення розробки COM-об'єктів. »
Переклад з MSDN Library.

COM покладена в основу технології API, яку застосовували в попередніх поколіннях Visual Basic, включаючи Visual Basic for Applications (VBA). В даний час одні розробники вводять в свої Windows-додатки вводять .NET інтерфейс, тоді як інші продовжують розвивати COM-інтерфейс, оскільки його можна викликати з додатків .NET (докладніше див. Нижче).

Що таке .NET?

.NET Framework є платформою розробки на базі операційної системи Microsoft® Windows® і надає середовище виконання, загальну систему типів, бібліотеки класів і важливі сервіси (наприклад, розподіл і звільнення пам'яті) всім .NET-додатків.

Підмножини .NET доступні і для інших операційних систем, або за допомогою проекту Mono на базі вільного програмного забезпечення, або через Microsoft® Silverlight®, але обговорення цих питань виходить за рамки даного керівництва

Що входить в .NET Framework?

В .NET Framework входять два основних компоненти:

  1. Common Language Runtime (CLR) - Це Виконавча, яка відповідальна за управління виконанням програмного коду. З цієї причини код, розроблений для .NET, називається керованим (managed code). Будь-керований код виконується під контролем CLR. Що це означає? CLR управляє кодом, надаючи такі базові служби як управління пам'яттю (в тому числі і автоматичне звільнення паче не використовуваної комп'ютерної пам'яті для використання іншими програмами), обробка помилок (винятків), управління багатопоточність, гарантоване забезпечення правил роботи з різними об'єктами. CLR воістину є базисом .NET Framework.
  2. Бібліотека класів .NET Framework - Відповідно до назви, це бібліотека або набір типів об'єктів, які вам доступні при розробці своїх додатків. Додатки .NET призначені для платформи Windows (з графічним інтерфейсом або консольні), для Web або для мобільних пристроїв. Ця бібліотека доступна на всіх мовах, що використовують .NET Framework

Як уже зазначалося, CLR підвищує надійність коду за рахунок приведення виконуваного коду до загальної системи типів (CTS). Саме CTS гарантує, що будь-який керований код .NET, незалежно від мови розробки, використовує єдину систему типів об'єктів і може безконфліктно працювати в загальному оточенні з іншими програмами. Завдяки цьому ваш додаток, написане на вибраному вами мовою, може використовувати компоненти (код), розроблені для .NET іншими програмістами на інших мовах.

Побудова виконуваного коду

В час побудови EXE-додатки воно перетвориться в код на так званому проміжному мовою - Common Intermediate Language (CIL або MSIL). Цю роботу виконує компілятор відповідної мови програмування. CIL є незалежним від типу процесора набір інструкцій, який може бути виконаний середовищем CLR в операційній системі Windows. Як правило, код CIL без проблем переноситься з 32 на 64-розрядну платформу і навіть з деякими обмеженнями на інші ОС (Не-Windows). Код CIL, згенерований на основі вашої вихідної програми на VB, потім перетворюється в збірку .NET. Така збірка є бібліотекою коду CIL, збереженого у форматі Portable Executable (PE), в якому код на CIL доповнений метаданими. Збірки можуть представляти як виконуваний код (EXE), так і код бібліотек (DLL).

У цьому посібнику ви сфокусіруетесь на розробці програми конкретного типу: збірки виконуваного коду (EXE), який взаємодіє з Inventor. EXE-додатки простіше в розробці, і вам не доведеться витрачати час на вивчення надбудов Inventor AddIns у вигляді DLL, які завантажуються і працюють в одному процесі з ІНВЕНТОР. Розробка EXE для роботи з Inventor простіше і в частині створення інтерфейсу. Зазвичай зовнішньому виконуваного додатка не потрібно гладко вбудовуватися в призначений для користувача інтерфейс самого Inventor, створюючи, скажімо, свої кнопки в стрічці.

Схеми виконання EXE програми

Під час виконання проміжний код збірки .NET передається оперативному JIT компілятор середовища CLR (JIT = just-in-time) для компіляції коду в команди процесора. З метою прискорення та економії пам'яті JIT-компілятор перетворює тільки мінімально необхідний CIL-код. Крім того, він зберігає результати компіляції, щоб не робити її двічі, якщо вихідний код не змінювався.

На останньому етапі цього процесу рідний машинний код виповнюється процесором комп'ютера.

Більш детальну інформацію про процес побудови додатків .NET можна знайти в MSDN Library .

Що таке COM?
NET?
NET Framework?
Visual Basic Express або Visual Studio Professional?
Що таке COM?
NET?
NET Framework?
Що це означає?