Интегрирана среда за разработка

от Уикипедия, свободната енциклопедия
Направо към: навигация, търсене


GNU Emacs, редактор с много възможности, който често е използван като интегрирана среда за разработка върху Unix-подобни операционни системи

Интегрираната среда за разработка (на английски: integrated development environment, IDE) e софтуерно приложение, което предоставя цялостна среда за разработване на софтуер на програмистите.

IDE обикновено се състои от редактор на код, инструменти за автоматизиране построяването на изходното приложение и дебъгер. Повечето съвременни интегрирани среди предлагат автоматично предсказване и дописване на кода.

Някои IDE-та включват компилатор, интерпретатор или и двете, като NetBeans и Eclipse; други нямат тази функционалност, например SharpDevelop и Lazarus. Не съществува добре дефинирана граница между интегрирана среда за разработка и друг вид инструмент за създаване на софтуер. В някои случаи в пакета са включени система за контрол на версиите или различни инструменти за дизайн на графичен интерфейс. Много съвременни среди за разработка имат също речник на класоветеи и диаграма с тяхната йерархията, за улеснение при обектно-ориентирано програмиране.

Преглед[редактиране | редактиране на кода]

Интегрираните среди за разработка целят да се позволи на програмиста да постигне максимална продуктивност чрез предоставяне на тясно свързани компоненти със сходен потребителски интерфейс. В контраст с използването на разнородни програмни продукти като vi, GCC или make, IDE представлява едно приложение, в което се извършват всички процеси, свързани със създаването на софтуер – писане на код, редактиране, компилиране, публикуване и дебъгване.

Една от целите на IDE е да се намали конфигурирането, което е необходимо за съвместно използване няколко инструмента за разработка, като вместо това се предложи същия набор от възможности в сплутена единица. Намаляването на времето за организация може да увеличи продуктивността на потребителя, в случай че научаването на работа с новата среда става по-бързо от ръчното свързване на индивидуалните приложения. Интегрираната среда за разработка може да помогне и с други средства, например написаният код може да бъде анализиран в момента на въвеждане и потенциални грешки в синтакса да бъдат посочени в реално време. Това може да помогне с научаването на нов програмен език или библиотека.

Някои IDE-та са специализирани в определен език за програмиране, като включват в себе си инструменти, съответстващи най-близко до неговите програмни парадигми. Други поддържат много езици и е възможно да бъдат разширени с допълнителни модули по желание на потребителя, например Eclipse, IntelliJ IDEA, Oracle JDeveloper, NetBeans и Microsoft Visual Studio.

Макар повечето съвременни интегрирани среди да са с графичен интерфейс, приложения като Turbo Pascal, който е изцяло текстово базиран, са били популярни преди широкото навлизане на операционни системи с поддръжка на прозоречни изгледи като Microsoft Windows или X Window System (X11). При тях извикването на често използвани функции става с клавишни комбинации.

История[редактиране | редактиране на кода]

Интегрираните среди за разработка (IDE) стават възможни, когато е започнала разработката на софтуер чрез конзола или терминал. Ранните системи не поддържали такива, тъй като програмите били подготвяни чрез блок-схеми и въвеждани с перфокарти (или хартиени ленти и други) преди да бъдат обединени с компилатор. Dartmouth BASIC е първият език, създаден с включено IDE (и първият създаден за употреба с конзола или терминал). Неговата среда за разработване (част от системата за споделяне на компютърни ресурси Dartmouth) била базирана на команди и не изглеждала като популярните за 2015 графични IDE с меню. Въпреки това налице са интегрирани редактирането, управлението, компилирането, дебъгването и изпълнението подобно на модерните IDE.

Маестро I, продукт на Софтлаб Мюнхен, е първата IDE в света[1]. Била инсталирана на 22 000 програмисти по света. До 1989 във Федерална Република Германия имало 6000 инсталации. Маестро бил световния лидер в сферата през 70те и 80те години. Днес един от последните Маестро I може да бъде открит в музея на Информационните Технологии в Арлингтън.

Една от първите IDE с плъгин концепция била Softbench (Hewlett-Packard). През 1995, списание Computerwoche коментира, че използването на IDE не е добре прието от разработчиците тъй като ограничавало творчеството им.

За Март 2015 най-популярните IDE са Eclipse и Visual Studio.[2]

Теми[редактиране | редактиране на кода]

Visual programming[редактиране | редактиране на кода]

Във визуалното програмиране (на английски: Visual programming), обикновено се изисква интегрирана среда за разработка. Визуалните IDE-та дават възможност на потребителите да създават нови приложения, чрез разместестване на програмни блокове или кодови връзки, при което се получават поточни или структурни диаграми, които след това се компилират или интерпретират. Тези графики, често са базирани на унифициран език за моделиране.

Този тип интерфейс добива популярност чрез системата Лего Майндстормс (Lego Mindstorms) и е активно търсен от редица компании, които желаят да се възползват от силата на специализираните браузъри, като Мозила (Mozilla). KTechlab поддържа поточени диаграми и е популярно IDE с отворен код и Симулатор за разработка на софтуер за микроконтролери. Визуалното програмиране е основен отговорник за силата на Разпределените изчислителни системи (вж. софтуер LabView и EICASLAB). Ранната система за визуално програмиране Max, е била създадена по модел на аналогов синтезатор и е използвана от 1980 г. за разработка софтуер за музикални изпълнения в реално време. Друг ранен пример е Prograph, система базирана на потоци от данни, първоначално разработени за компютри Macintosh. Графичната среда Grape се използва за програмиране на пакети за роботика qfix.

Този подход се използва също в специализиран софтуер като Openlab, където крайните потребители искат пълната гъвкавост на програмен език, без трудностите, свързани с научаването на такъв.

Поддръжка на езици[редактиране | редактиране на кода]

Някои IDE-та поддържат множество езици, като например GNU Emacs, базиран на езика „C“ и EmacsLisp. IntelliJ IDEA, Eclipse, MyEclipse или NetBeans, всички базирани на езика Java. Също така MonoDevelop, базиран на C#.

Поддръжката на алтернативни езици, често се осъществява с приставки, които позволяват да се инсталират на едно и също IDE по едно и също време. Например Flycheck е съвременна система за проверка на синтакс в реално време за GNU Emacs 24, която поддържа 39 езика.[3] Eclipse и NetBeans имат приставки за C/C++, Ada , GINAD (например Ada Gide), Perl, Python, Ruby и PHP, които се активират автоматично, на базата на разширението на файла, околната среда или настройките на проекта.

Отношение на потребителите[редактиране | редактиране на кода]

UNIX програмистите могат да комбинират инструменти от командния ред на POSIX в пълна среда за разработка, даваща възможност за равиване на големи програми като ядрото Linux и неговата среда.[4] Безплатните софтуерни инструменти GNU (GNU Compiler Collection (GCC), GNU Debugger (gdb), и GNU make) са достъпни на много платформи, включително Windows.[5] Разработчиците, които предпочитат командния ред, могат да използват редактори с поддръжка на много от стандартните Unix и GNU изградени инструменти, за да построят собствено IDE с програми като Emacs[6][7][8] или Vim. Display Data Debugger е предназначен да бъде усъвършенстван графичен front-end на много текст базирани стандартни дебъгер инструменти. Някои програмисти предпочитат да работят с make-файлове вместо сходните им инструменти, включени в пълен IDE. Например, повечето участници в развитието на базата данни PostgreSQL директно използват make и gdb за разработване на нови функции.[9] Дори и при изграждане на PostgreSQL за Microsoft Windows, използвайки Visual C++, се ползват Perl скриптове като заместител на make, а не да се разчита на интегрирана среда за разработка.[10] Някои Linux IDE-та като Geany опитват да предоставят графичен front-end на традиционни операции по изграждане .

На различните Microsoft Windows платформи, рядко се изполват команден ред инструменти за разработка. Съответно съществуват много търговски и безплатни продукти, които имат различен дизайн, често създавайки несъвместимости. Най-големите доставчици на компилатори за Windows предоставят и безплатни копия на техните инструменти с команден ред, включително Microsoft (Visual C ++, Platform SDK, .NET Framework SDK) , Embarcadero Technologies (bcc32 компилатор)

IDEs винаги са били популярни в Mac OS на Apple Macintosh, датиращи от Macintosh Programmer's Workshop, Turbo Pascal, THINK Pascal и THINK C среди, от средата на 1980. В момента Mac OS X програмисти могат да избират между местните IDEs като Xcode и отворен код инструменти като Eclipse и Netbeans. ActiveState Komodo е патентован IDE поддържан от Mac OS.

С появата на услугите в облак, някои среди за разработка са достъпни онлайн и се изпълняват в рамките на уеб браузъри.

Източници[редактиране | редактиране на кода]

  1. http://www.computerwoche.de/a/interaktives-programmieren-als-systems-schlager,1205421
  2. Top IDE index
  3. http://flycheck.readthedocs.org/en/latest/manual/introduction.html
  4. Rehman, Christopher Paul, Christopher R. Paul. „The Linux Development Platform: Configuring, Using and Maintaining a Complete Programming Environment“. 2002. ISBN 0-13-009115-4
  5. „Use Emacs with Microsoft Visual C++ ... use Emacs as an IDE“
  6. „Emacs: the Free Software IDE“
  7. „Using Emacs as a Lisp IDE“
  8. „Emacs as a Perl IDE“
  9. PostgreSQL Developer FAQ
  10. PostgreSQL Installation from Source Code on Windows
Криейтив Комънс - Признание - Споделяне на споделеното Лиценз за свободна документация на ГНУ Тази страница частично или изцяло представлява превод на страницата „Integrated development environment“ в Уикипедия на английски. Оригиналният текст, както и този превод, са защитени от Лиценза „Криейтив Комънс - Признание - Споделяне на споделеното“, а за съдържание, създадено преди юни 2009 година — от Лиценза за свободна документация на ГНУ. Прегледайте историята на редакциите на оригиналната страница, както и на преводната страница. Вижте източниците на оригиналната статия, състоянието ѝ при превода, и списъка на съавторите.