Інтегроване середовище розробки




ІСР мови Python


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


Деякі середовища розробки містять компілятор, інтерпретатор або ж обидва (наприклад NetBeans та Eclipse), інші не містять жодного з них (SharpDevelop та Lazarus). Деякі інтегровані середовища розробки містять систему керування версіями або інструменти для полегшення розробки графічного інтерфейсу користувача (GUI) (XCode, Embarcadero Delphi). Багато сучасних IDE містять інспектор класів, інспектор об’єктів, схему ієрархії класів для полегшення об’єктно-орієнтованої розробки програмного забезпечення.




Зміст





  • 1 Огляд


  • 2 Історія


  • 3 Додаткові можливості

    • 3.1 Візуальне програмування


    • 3.2 Підтримка мов програмування


    • 3.3 Спеціальні коментарі


    • 3.4 Хмарні технології



  • 4 Примітки


  • 5 Джерела


  • 6 Посилання




Огляд |


Інтегровані середовища розробки створені для того, щоб максимізувати продуктивність програміста, надавши йому пов'язані інструменти розробки зі схожими інтерфейсами як одну програму, в якій відбуватиметься весь процес розробки й яка надає необхідні функції для модифікації, компілювання, розгортання та налагодження програмного забезпечення. Протилежним до цього є підхід до розробки ПЗ, під час якого використовуються окремі інструменти, так як vi, GCC або make.


Одним із завдань IDE є зменшення часу, необхідного на конфігурацію різноманітних інструментів розробки, натомість пропонуючи той самий набір, як єдине ціле. Це може збільшити продуктивність розробника, у випадку, коли навчання тому, як працює інтегроване середовище розробки є швидшим, ніж освоєння всіх інструментів зокрема. Крім того, більша інтеграція між вбудованими інструментами потенційно може сприяти додатковому збільшенню продуктивності. Наприклад, синтаксичний аналіз коду може відбуватися безпосередньо під час його редагування, тим самим виявляючи помилки ще до трансляції коду.


Деякі інтегровані середовища розробки призначені для використання певної мови програмування (або декількох споріднених мов), надаючи набір можливостей, які більш підходять до парадигми програмування відповідної мови. Такими IDE є, наприклад PhpStorm, Xcode, Xojo та Delphi.


З іншої сторони, існує чимало більш універсальних IDE, які є багатомовними, наприклад Eclipse, ActiveState Komodo, IntelliJ IDEA, MyEclipse, Oracle JDeveloper, NetBeans, Codenvy and Microsoft Visual Studio.


Переважна більшість нинішніх IDE мають графічний інтерфейс користувача. До появи систем, які підтримують вікна, таких як Microsoft Windows та X Window System (X11), широко використовувалися консольні інтегровані середовища розробки, такі як Turbo Pascal. Особливою їх прикметою було широке використання функціональних клавіш та поєднань клавіш для запуску команд або макросів, які часто використовувалися.



Історія |


Поява IDE стала можливою з початком розробки за допомогою консолі або ж терміналу. Системи, які були до того, не могли підтримувати IDE, тому що програми писалися не з допомогою комп’ютера та вносилися за допомогою сторонніх засобів, таких як перфокарти, перфострічки тощо.


Dartmouth BASIC був створений з вбудованим IDE і вважається першим, який був спроектований для використання людиною, котра сидить за консоллю чи терміналом. Інтегроване середовище розробки було командним, а не базованим на меню, проте воно інтегрувало редагування, файлові операції, компілювання, відлагодження та виконання, тобто всі ті операції, які притаманні IDE.


Maestro I - продукт Softlab Munich, який був першим інтегрованим середовищем розробки[1] для розробки програмного забезпечення. Maestro I був встановленй для 22 тисяч програмістів по всьому світу та вважався лідером у цій галузі в 1970-х та 1980-х роках.


Одним з перших IDE, яке підтримувало концепцію плагінів, стало Softbench.


Станом на липень 2015 року, найбільш популярними IDE стали[2]Visual Studio і Eclipse.



Додаткові можливості |



Візуальне програмування |


При візуальному програмуванні без використання інтегрованого середовища розробки неможливо обійтися взагалі. Візуальні IDE дозволяють користувачам створювати ПЗ шляхом будування діаграм з програмних блоків. Потім ці діаграми компілюються або інтерпретуються. Часто, базою для таких діаграм є Unified Modeling Language.



Підтримка мов програмування |


Деякі IDE підтримують декілька мов, наприклад GNU Emacs (написаний на C та Emacs Lisp), IntelliJ IDEA, Eclipse, MyEclipse та NetBeans (всі написані на Java), або MonoDevelop (написаний на C#).


Підтримка альтернативних до основної мов часто надається за допомогою плагінів до IDE.



Спеціальні коментарі |


Більшість IDE підтримують спеціальні коментарі, які полегшують роботу розробника. Наприклад, IDE, які підтримують мову PHP, зокрема PhpStorm, використовують Doc-блоки в форматі PHPDoc для документування коду та визначення типів даних для коректного автодоповнення.


Іншими поширеними коментарями є TODO та FIXME блоки, за допомогою яких програміст ставить завдання по удосконаленню програмного коду.



Хмарні технології |


Зі значним зростанням популярності хмарних технологій, з’явилися хмарні IDE, які дозволяють не прив’язуватись до конкретного комп'ютера. Зокрема, такими IDE стали Cloud9, Koding тощо.



Примітки |




  1. "Interaktives Programmieren als Systems-Schlager" Архівовано 21 December 2008[Дата не збігається] у Wayback Machine. з Computerwoche (Німецька)


  2. Top IDE index



Джерела |


  • Rehman, Christopher Paul, Christopher R. Paul. "The Linux Development Platform: Configuring, Using and Maintaining a Complete Programming Environment". 2002. ISBN 0-13-009115-4


Посилання |



  • Підбірка безкоштовних кросплатформенних середовищ для веб-розробки, 2018




Popular posts from this blog

Save data to MySQL database using ExtJS and PHP [closed]2019 Community Moderator ElectionHow can I prevent SQL injection in PHP?Which MySQL data type to use for storing boolean valuesPHP: Delete an element from an arrayHow do I connect to a MySQL Database in Python?Should I use the datetime or timestamp data type in MySQL?How to get a list of MySQL user accountsHow Do You Parse and Process HTML/XML in PHP?Reference — What does this symbol mean in PHP?How does PHP 'foreach' actually work?Why shouldn't I use mysql_* functions in PHP?

Compiling GNU Global with universal-ctags support Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Data science time! April 2019 and salary with experience The Ask Question Wizard is Live!Tags for Emacs: Relationship between etags, ebrowse, cscope, GNU Global and exuberant ctagsVim and Ctags tips and trickscscope or ctags why choose one over the other?scons and ctagsctags cannot open option file “.ctags”Adding tag scopes in universal-ctagsShould I use Universal-ctags?Universal ctags on WindowsHow do I install GNU Global with universal ctags support using Homebrew?Universal ctags with emacsHow to highlight ctags generated by Universal Ctags in Vim?

Add ONERROR event to image from jsp tldHow to add an image to a JPanel?Saving image from PHP URLHTML img scalingCheck if an image is loaded (no errors) with jQueryHow to force an <img> to take up width, even if the image is not loadedHow do I populate hidden form field with a value set in Spring ControllerStyling Raw elements Generated from JSP tagds with Jquery MobileLimit resizing of images with explicitly set width and height attributeserror TLD use in a jsp fileJsp tld files cannot be resolved