Первая страница
Наша команда
Контакты
О нас

    Головна сторінка



Розробка веб-додатку з імітаційного моделювання обчислювальних систем

Розробка веб-додатку з імітаційного моделювання обчислювальних систем




Сторінка9/16
Дата конвертації10.03.2017
Розмір0.82 Mb.
ТипПояснювальна записка
1   ...   5   6   7   8   9   10   11   12   ...   16

Обгрунтування вибору середовища розробки веб-додатку


При виборі середовища розробки для веб-додатку імітаційного моделювання обчислювальних систем було розглянуто наступні середовища:

JetBrains WebStorm — інтегроване середовище розробки для JavaScript, HTML та CSS від компанії JetBrains, розроблена на основі платформи IntelliJ IDEA.

Інтегроване середовище розробки (ІСР, англ. Integrated development environment або англ. IDE) - комплексне програмне рішення для розробки програмного забезпечення. Зазвичай, складається з редактора початкового коду, інструментів для автоматизації складання та відлагодження програм.
WebStorm є спеціалізованою версією PhpStorm, пропонуючи підмножину з його можливостей. WebStorm постачається з перед-установленим плаґінами JavaScript (такими як для Node.js), котрі доступні для PhpStorm безоплатно.

WebStorm забезпечує автодоповнення, аналіз коду на льоту, навігацію по коду, рефакторинг, зневадження та інтеграцію з системами управління версіями.

Нала́годження програ́ми , в мережі рідше знева́дження (англ. debugging) - методичний процес пошуку та зменшення числа помилок або дефектів у комп'ютерній програмі або електронному обладнанні з метою отримання очікуваної поведінки.
Важливою перевагою інтегрованого середовища розробки WebStorm є робота з проектами (у тому числі, рефакторинг коду JavaScript, що міститься в різних файлах і теках проекту, а також вкладеного в HTML). Підтримується множинна вкладеність (коли в документ на HTML вкладений скрипт на Javascript, в який вкладено інший код HTML, всередині якого вкладений Javascript) — в таких конструкціях підтримується коректний рефакторинг [14].

Основні можливості:



  • Модифікація файлів .css, html, .js з одночасним переглядом результатів (Live Edit, в деяких джерелах ця функціональність називається «редагування файлів на льоту» або «в реальному часі» або «без перезавантаження сторінки»)

  • Підтримка HTML5

  • Підтримка JSDoc

  • Підтримка Node.
    Функціоналі́зм - архітектурний напрям, різновид раціоналізму, що виник у 1920-х роках у Німеччині. Основні вимоги функціоналізму: обумовленість зовнішнього виду будівлі її конструкцією і внутрішнім плануванням, які, у свою чергу, визначаються її практичним призначенням (функцією).
    js

  • Можливості Zen Coding і Emmet

  • Зневадження коду на JavaScript

  • Віддалене розгортання за протоколами FTP, SFTP, на монтованих мережевих дисках тощо з можливістю автоматичної синхронізації

  • Інтеграція з системами управління версіями Subversion, Git, GitHub, Perforce, Mercurial, CVS підтримуються з коробки з можливістю побудови списку змін і відкладених змін

  • Інтеграція з системами відстеження помилок

  • Live Edit

LiveEdit – можливість WebStorm, котра з'явилася з версії 5 і дозволяє одночасно редагувати код html, css або javascript і бачити, як результат відображається в браузері . Для цього потрібна підтримка такої можливості з боку браузера, тому WebStorm при установці ставить плаґін для Google Chrome.
Subversion (з 2010 називається Apache Subversion) - вільна система управління версіями.
Google Chrome - веб-переглядач, розроблений компанією Google на основі веб-переглядача з відкритим кодом Chromium та іншого відкритого програмного забезпечення. Його програмна архітектура була створена з чистого аркуша (однак використовуючи інше програмне забезпечення з відкритим кодом, у тому числі компоненти WebKit та Mozilla) з метою задоволення поточних потреб користувачів.

WebStorm підтримує зневадження застосунків у node.js. Також підтримується повний набір функцій редагування застосунків на javascript — як для виконання на сервері, так і в браузері: автодоповнення, навігація по коду, рефакторінг і перевірка на помилки.

Для node.js підтримується також виведення повідомлень node.js на окрему вкладку в IDE.

Мови стилів LESS, Sass і SCSS, які розширюють можливості описів стилів у CSS, повністю підтримуються в WebStorm, зокрема, підтримується рефакторинг коду для них, коли треба змінити вираз (наприклад, #a9a9a9) на змінну (наприклад @grey), для того, щоб зробити код читанішим і простіше перевизначати параметри (наприклад, шляхом присвоєння їм значення @grey: #a9a9a9)

У версіях від WebStorm 5 для CoffeeScript є навігація за кодом, автодоповнення, рефакторинг, підсвічування синтаксису і перевірка на помилки.

Eclipse – вільне модульне інтегроване середовище розробки програмного забезпечення. Розробляється і підтримується Eclipse Foundation і включає проекти, такі як платформа Eclipse, набір інструментів для розробників на мові Java, засоби для управління сирцевими кодами, візуальні побудовники GUI тощо.

CoffeeScript ([’kɔ:fɪ skrɪpt]; кофі скрипт) - мова програмування, що транслюється в JavaScript. CoffeeScript додає синтаксичний цукор у дусі Ruby, Python і Haskell для того, щоб покращити читання коду і зменшити його розмір.
Eclipse Foundation - некомерційна організація, що координує розробку Eclipse.
Написаний в основному на Java, може бути використаний для розробки застосунків на Java і, за допомогою різних плаґінів, на інших мовах програмування, включаючи Ada, C, C , COBOL, Fortran, Perl, PHP, Python, R, Ruby (включно з каркасом Ruby on Rails), Scala, Clojure та Scheme. Середовища розробки зокрема включають Eclipse ADT (Ada Development Toolkit) для Ada, Eclipse CDT для C/C , Eclipse JDT для Java, Eclipse PDT для PHP [15].

Початок коду йде від IBM VisualAge, він був розрахований на розробників Java, складаючи Java Development Tools (JDT). Але користувачі могли розширяти можливості, встановлюючи написані для програмного каркасу Eclipse плагіни, такі як інструменти розробки під інші мови програмування, і могли писати і вносити свої власні плагіни і модулі.

Випущена на умовах Eclipse Public License, Eclipse є вільним програмним забезпеченням. Він став одним з перших IDE під GNU Classpath і без проблем працює під IcedTea.

Eclipse це фреймворк для розробки модульних кросплатформових застосунків із низкою особливостей:


  • можливість розробки ПЗ на багатьох мовах програмування (рідною є Java);

  • крос-платформова;

  • модульна, призначена для подальшого розширення незалежним розробниками;
    Незале́жність - можливість приймати самостійні рішення, які підкорюються власним бажанням та інтересам і не потребують зовнішніх вказівок та наказів. Незалежність для держави - політична самостійність, відсутність підлеглості, суверенітет.


  • з відкритим сирцевим кодом;

  • розробляється і підтримується фондом Eclipse, куди входять такі постачальники ПЗ, як IBM, Oracle, Borland.
    Постачальник або вендор (англ. Vendor) - будь-яка юридична (організація, підприємство, установа) або фізична особа, що поставляють товари або послуги замовникам. Постачальник здійснює підприємницьку діяльність відповідно до умов укладеного договору поставки, який є одним з видів договору купівлі-продажу.


Спочатку проект розроблявся в IBM як корпоративний стандарт IDE для розробки на багатьох мовах під платформи IBM. Потім проект було перейменовано на Eclipse і надано для подальшого розвитку спільноті.

Eclipse насамперед повноцінна Java IDE, націлена на групову розробку, має засоби роботи з системами контролю версій (підтримка CVS входить у поставку Eclipse, активно розвиваються кілька варіантів SVN модулів, існує підтримка VSS та інших). З огляду на безкоштовність, у багатьох організаціях Eclipse — корпоративний стандарт для розробки ПЗ на Java.

Організа́ція (від грец. ὄργανον - інструмент) - цільове об'єднання ресурсів для досягнення певної мети.

Друге призначення Eclipse — служити платформою для нових розширень. Такими стали C/C Development Tools (CDT), розроблювані інженерами QNX разом із IBM, засоби для підтримки інших мов різних розробників. Безліч розширень доповнює Eclipse менеджерами для роботи з базами даних, серверами застосунків та інших.

З версії 3.0 Eclipse став не монолітною IDE, яка підтримує розширення, а набором розширень. У основі лежать фреймворки OSGi, і SWT/JFace, на основі яких розроблений наступний шар — платформа і засоби розробки повноцінних клієнтських застосунків RCP (Rich Client Platform). Платформа RCP є базою для розробки різних RCP програм як торент-клієнт Azareus чи File Arranger. Наступний шар — платформа Eclipse, що є набором розширень RCP — редактори, панелі, перспективи, модуль CVS і модуль Java Development Tools (JDT).

Моноліт (лат. monolithus від дав.-гр. μονόλιθος) - геологічне утворення, що являє собою цілісну кам'яну брилу. Моноліти, як правило, складаються з більш твердих порід, тому часто ерозія з часом оголює їх в окремі геоморфологічні утворення.
Перспекти́ва (фр. perspective, від лат. perspicio - ясно бачу) - система зображення об'ємних тіл на площині або якій-небудь іншій поверхні, яка враховує їх просторову структуру й віддаленість окремих їх частин від спостерігача.

Eclipse написана на Java, тому є платформо-незалежним продуктом, крім бібліотеки графічного інтерфейсу SWT, яка розробляється окремо для більшості поширених платформ. Бібліотека SWT використовує графічні засоби платформи (ОС), що забезпечує швидкість і звичний зовнішній вигляд інтерфейсу користувача.

Основою Eclipse є платформа розширеного клієнта (RCP — від англ. rich client platform). Її складають такі компоненти:



  • Ядро платформи (завантаження Eclipse, запуск модулів);

  • OSGi (стандартне середовище постачання комплектів);

  • SWT (стандартний інструментарій віджетів);

  • JFace (файлові буфери, робота з текстом, текстові редактори);
    Текстовий редактор - комп'ютерна програма-застосунок, призначена для створення й зміни текстових файлів (вставки, видалення та копіювання тексту, заміни змісту, сортування рядків), а також їх перегляду на моніторі, виводу на друк, пошуку фрагментів тексту тощо.


  • Робоче середовище Eclipse (панелі, редактори, проекції, майстри).

GUI в Eclipse написаний з використанням інструментарію SWT. Останній, на відміну від Swing (який лише емулює окремі графічні елементи використовуваної платформи), дійсно використовує графічні компоненти даної системи. Призначений для користувача інтерфейс Eclipse також залежить від проміжного шару GUI, званого JFace, який спрощує побудову призначеного для користувача інтерфейсу, що базується на SWT.

Гнучкість Eclipse забезпечується за рахунок модулів, що підключаються, завдяки чому можлива розробка не тільки на Java, але і на інших мовах, таких як C/C , Perl, Groovy, Ruby, Python, PHP, ErLang та інших.

Для середовища Eclipse існує цілий ряд вільних і комерційних модулів. Спочатку середовище було розроблене для мови Java, але в нині існують численні розширення для підтримки інших мов, як наприклад:


  • C/С — CDT Eclipse’s C/C Development Tooling(англ.)

  • Perl — модуль EPIC, Eclipse Perl Integration(англ.)

  • PHP — PDT PHP Development Tools(англ.)

  • JavaScript — JSEclipse Javascript plugin for the Eclipse environment(англ.)

  • Python — Pydev, Python Development Environment(англ.)

  • Ruby — RDT, Ruby Development Tools(англ.)

Існують також модулі для створення графічних інтерфейсів.

Aptana (aptana.com) — дистрибутив Eclipse і плагін, що підтримує розробку з використанням JavaScript (всі основні JS Ajax бібліотеки включені до складу дистрибутива), HTML, CSS, Ruby on rails, Adobe AIR.

Дистрибутив (англ. distribute - розповсюджувати) - форма розповсюдження програмного забезпечення.

Sublime Text — швидкий кросплатформенний редактор початкових текстів програм. Підтримує плагіни, розроблені за допомогою мови програмування Python [16].

Sublime Text не є вільним чи відкритим програмним забезпеченням, але деякі його плагіни розповсюджуються з вільною ліцензією, розробляються і підтримуються спільнотою розробників.

Редактор містить різні візуальні теми, з можливістю завантаження додаткових.

Користувачі бачать весь свій код в правій частині екрану у вигляді міні-карти, при кліці на яку можна здійснювати навігацію.

Є кілька режимів екрану. Один з них включає від 1 до 4 панелей, за допомогою яких можна показувати до чотирьох файлів одночасно. Повноцінний (free modes) режим показує тільки один файл без будь-яких додаткових навколо нього меню.

Виділення стовпців цілком або розстановка кілька покажчиків по тексту, що робить можливим миттєву правку. Покажчики поводяться, ніби кожен з них - єдина в тексті. Команди типу: переміщення на знак, переміщення на рядок, вибірка тексту, переміщення на слово або його частини (CamelCase, розділений дефісом або підкресленням), перехід на початок або кінець рядка тощо, Впливає на всі покажчики незалежно і відразу, дозволяючи правити складнострукурованих текст швидко, без використання макрокоманд або регулярних виразів.

Макрокоманда, макро або макрос (множина від англ. macro) - програмний алгоритм дій, записаний користувачем.
Переміщення - зміна положення якогось матеріального об'єкту. В фізиці - це переміщення фізичного тіла. Переміщенням також називають вектор, який характеризує цю зміну. Має властивість адитивності. Абсолютна величина переміщення, тобто довжина відрізка, що сполучає початкову й кінцеву точку, вимірюється в метрах у системі СІ та в сантиметрах у системі СГС.
В програмуванні, регулярний вираз (від англ. regular expression, скорочено regex або regexp, а іноді ще й називають rational expression ) - це рядок, що описує або збігається з множиною рядків, відповідно до набору спеціальних синтаксичних правил.

Emacs — це вид текстового редактора, який має розширюваний набір можливостей, та популярний у середовищі програмістів і технічно підкованих користувачів комп'ютера.

Певно, найвідомішим представником цього сімейства редакторів є GNU Emacs, котрий є частиною проекту GNU і перебуває в активній розробці. Документація до GNU Emacs представляє як: «розширюваний, легкий в налаштуванні, само документований, дисплейний редактор реального часу». До того ж він є найбільш портабельним, та портованим на найбільшу кількість платформ реалізацією Emacs.

Оригінальний EMACS був додатком до тогочасного редактора TECO, а назва його походить від англійського словосполучення Editor MACroS. Ці розробки були розпочаті Річардом Столменом у співавторстві з Гаєм Л.

Співавторство - це спільна творча діяльність щодо створення твору. Співавторство може виникати за наявності письмової або усної угоди про сумісну співпрацю над створенням твору. Співавтори є первісними суб'єктами авторського права.
Англійці - нація, основне населення Великої Британії (бл. 43 млн чол., 1951), живуть також в колишніх англійських колоніях (США, Канада, Австралія, Нова Зеландія, Південна Африка).
Словосполучення - поєднання слів, утворене за нормами мови з двох або більше повнозначних слів, пов'язаних між собою синтаксично, яку використовують як лексично-семантичний матеріал номінативної (знакової) функції в реченні й поза ним.
Рі́чард Ме́тью Сто́лмен (англ. Richard Stallman; часто rms (за ініціалами); нар. 16 березня 1953, Нью-Йорк) - засновник руху вільного ПЗ, проекту GNU, Фонду вільних програм та Ліги за свободу програмування.
Стілом молодшим, у 1975 році. Столман був вражений ідеями TECMAC та TMACS частини TECO, які були розроблені Гаєм Стілом, Дейвом Муном, Річардом Грінблаттом, Чарльзом Френкстоном та іншими. За минулі роки було розроблено багато версій Emacs, але тепер широко уживаними залишились дві версії: GNU Emacs, розпочата Столманом у 1984 році і досі підтримана ним, та XEmacs — відгалуження від GNU Emacs, розпочате у 1991 році. Ці версії досі сумісні у більшості випадків. Обидві версії використовують потужну мову розширення — Emacs Lisp, який дозволяє виконувати широке коло завдань, від написання текстів і компіляції програм, до снування в інтернет.

У культурі UNIX, Emacs складає суттєву конкуренцію в традиційний війні редакторів, іншим таким як — Vi.

Деякі люди під словом Emacs мають на увазі текстові редактори, похідні від версії розпочатої Столменом, позначаючи велику кількість незалежних реалізацій.

Vim – текстовий редактор, створений на основі старішого vi. Нині це один з найпотужніших текстових редакторів з повною свободою налаштування та автоматизації й великою кількістю створених завдяки цьому розширень та надбудов.

Інтерфейс Vim'а працює в текстовому (командному) режимі, проте існує й модифікація для використання у графічному віконному інтерфейсі –gVim.

Графі́чний інтерфе́йс кори́стувача́ (ГІК, англ. GUI, Graphical user interface) - тип інтерфейсу, який дозволяє користувачам взаємодіяти з електронними пристроями через графічні зображення та візуальні вказівки, на відміну від текстових інтерфейсів, заснованих на використанні тексту, текстовому наборі команд та текстовій навігації.
Багато команд gVim можуть викликатися через відповідні меню.

Одна з головних особливостей редактора — застосування двох основних режимів вводу: командного («нормального») і текстового (режим безпосереднього редагування тексту, аналогічний більшості «звичайних» редакторів).

Команди́р частини (підрозділу) - посадова особа командного складу в збройних силах, на котру покладено командування (керівництво) підрозділом, частиною (кораблем), з'єднанням. У більшості країн світу командир є єдиноначальником і несе особисту відповідальність за постійну бойову і мобілізаційну готовність ввіреної йому частини (підрозділу).
Vim не зовсім інтуїтивний, тому ефективна робота з редактором вимагає попереднього навчання.

Microsoft Visual Studio - лінійка продуктів компанії Microsoft, що включають інтегроване середовище розробки програмного забезпечення і ряд інших інструментальних засобів. Дані продукти дозволяють розробляти як консольні додатки, так і додатки з графічним інтерфейсом, в тому числі з підтримкою технології Windows Forms, а також веб-сайти, веб-додатки, веб-служби як в рідному, так і в керованому кодах для всіх платформ, підтримуваних Windows, Windows Mobile, Windows CE, .

Windows Mobile (для версій 6.x також відома як Windows Phone) - операційна система для мобільних пристроїв з основним набором програм, таких як Windows Marketplace for Mobile, My Phone, Windows Live, заснованих на Microsoft Win32 API.
NET Framework, Xbox, Windows Phone .
Windows Phone (кодова назва «Photon») - велике оновлення Windows Mobile, що вийшло 11 жовтня 2010 року.
NET Compact Framework і Silverlight [17].

Visual Studio включає в себе редактор вихідного коду з підтримкою технології IntelliSense і можливістю найпростішого рефакторінга коду.

Microsoft Silverlight - це розширення до веб-оглядачів, яке дозволяє відображати на сторінці анімацію, векторну графіку, а також програвати звук та відео, що є характерною рисою RIA (англ. Rich Internet Application - багатих інтернет додатків).
Найпростіші (лат. Protozoa, від дав.-гр. πρῶτος «перший» і ζῷα, форми множини ζῷον - «жива істота») - парафілетична або поліфілетична група одноклітинних або колоніальних еукаріотів, які мають гетеротрофний тип живлення.
Вбудований відладчик може працювати як відладчик рівня вихідного коду, так і відладчик машинного рівня. Решта вбудовуються інструменти включають в себе редактор форм для спрощення створення графічного інтерфейсу додатку, веб-редактор, дизайнер класів і дизайнер схеми бази даних. Visual Studio дозволяє створювати і підключати сторонні додатки (плагіни) для розширення функціональності практично на кожному рівні, включаючи додавання підтримки систем контролю версій вихідного коду (як, наприклад, Subversion і Visual SourceSafe), додавання нових наборів інструментів (наприклад, для редагування і візуального проектування коду на предметно-орієнтованих мовах програмування) або інструментів для інших аспектів процесу розробки програмного забезпечення (наприклад, клієнт Team Explorer для роботи з Team Foundation Server).
Замо́вник - фізична чи юридична особа, розпорядник грошових коштів, який замовляє певні товари, роботи чи послуги (цінності), або подає заявку про придбання чи замовлення товарів, робіт чи послуг (цінностей) у майбутньому.
Процес розробки програмного забезпечення (англ. software development process, software process) - структура, відповідно до якої побудована розробка програмного забезпечення (ПЗ).

Розглянувши усі наведені середовища розробки було прийнято рішення використовувати IntelliJ WebStorm. В цьому середовищі інтегровані Git, Gulp, Mocha які використовуються в розробці веб-додатку для імітаційного моделювання обчислювальних систем. Тому, це середовище розробки є найбільш зручним.

1   ...   5   6   7   8   9   10   11   12   ...   16



  • Silverlight