Історія мов програмування: Delphi — більше, ніж просто мова

image

З Delphi зазвичай асоціюється середовище розробки додатків на основі мови Object Pascal, розробленого фірмою Borland. Ця мова є спадкоємцем Turbo Pascal з об'єктно-орієнтованими розширеннями, який в свою чергу веде свою історію від «чистого» Pascal, створеного Никлаусом Віртом в 1970 році.

Згодом, у 2002 році, розробники з компанії Borland офіційно поставили знак рівності між мовами Delphi і Object Pascal.

Передісторія

Початковий Pascal, на думку його розробників, мав самий швидкий компілятор в світі. Більш того, разом з ним була вперше розроблена технологія створення платформно-незалежних програм, яка знайшла широке застосування в такому мовою, як Java.

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

З появою Windows виникла необхідність у створенні середовища розробки ПЗ для цієї платформи. Найбільш популярним рішенням для персональних Windows-комп'ютерів у 80-ті — початку 90 років став компілятор і IDE Turbo Pascal фірми Borland. Вбудований компілятор забезпечував високу швидкість компіляції і високу якість коду (звідси приставка Turbo). Середовище Turbo Pascal забезпечувала також налагодження коду, містила багатий набір прикладів. Всі ці якості на якийсь час дозволили Turbo Pascal стати стандартом мови Pascal.

Виклик часу

У Windows досить швидко почав розвиватися графічний інтерфейс, а в IDE Turbo Pascal раніше використовувався DOS-подібний інтерфейс. Поступово в Microsoft зрозуміли, що потрібно рухатися в бік «візуалізації» програмування.

Щоб створити просту програму, розробникам доводилося писати по декілька сторінок коду: прописувати об'ємні блоки коду для меню і вікон, шрифтів, очищати пам'ять, «малювати» кнопки і т. д. Однак переваги графічного інтерфейсу Windows були досить сильні, тому потрібно було підтримати розвиток операційної системи. У Microsoft розуміли, що необхідно якось полегшити життя розробників. Тому в 90-х роках компанія запустила кілька паралельних проектів по створенню нової мови програмування і середовища розробки для Windows. Першою ластівкою став Visual Basic.

image

Перспективи мови Pascal в цьому відношенні виявилися далеко не райдужними. До середини 90-х років він вже перебував у досить занедбаному стані. Компанія Borland початку доопрацьовувати його, але незабаром стало зрозуміло: зміни і додавання будуть настільки серйозними, що результат цієї роботи можна вважати новою мовою програмування. Для нової мови була розроблена IDE з графічним інтерфейсом. Нове середовище програмування і мова отримали загальну назву Delphi.

Своє ім'я нова система (Delphi) отримала на честь давньогрецького міста Дельфи. Назву було обрано неспроста: місто Дельфи пов'язаний з ім'ям бога мудрості і покровителем мистецтв Аполлона. Згідно з легендою головне святилище Аполлона перебувало саме у цьому місті. Його жриці-сивіли звіщали пророцтва бажаючим дізнатися свою долю.
«Ім'я Delphi було запропоновано Денні Торпом під час мозкового штурму. Ми хотіли, щоб в імені системи позначилися унікальні здібності продукту до роботи з базами даних, і Delphi як не можна краще перегукується з таким заслуженим ім'ям в цій області, як Oracle, принаймні для тих, кому поєднання «Дельфійський Оракул» про щось говорить», розповідав керівник дослідницької групи з розробки системи Delphi Чак Язджевски.

У Росії Borland Delphi з'явився в кінці 1993 року і відразу ж завоював велику популярність.

Основні версії



image

Версія 1 була призначена для розробки під 16-ти розрядну платформу Win16. Починаючи з другої версії, була реалізована можливість компіляції програми під 32-х розрядну платформу Win32.

image
Delphi 1

У версії 3 з'явилася підтримка багатоланковою технології (multi-tiered) доступу до даними, що дозволило створювати масштабовані додатки (відносно слабко залежні від сервера БД) за рахунок перенесення методів обробки інформації (бізнес-правил) на середню ланку.

image
Delphi 3

Разом з 6-ї версії Delphi вийшла сумісна з них за мовою і бібліотекам середовище Kylix, призначена для компіляції програм під операційну систему Linux.

image

Версія 8 здатна генерувати байт-код виключно для платформи .NET. Це перша середа, орієнтована на розробку багатомовних додатків (лише для платформи .NET). Наступні версії (що позначаються роками виходу, а не порядковими номерами, як це було раніше) дозволили створювати додатки Win32, так і .NET-додатки.

У Delphi 2006, з'явилася можливість писати програми для .NET використовуючи стандартну бібліотеку класів .NET, VCL для .NET. Середовище також дозволила писати .NET-додатків на C# і Win32-додатків на C++. У Delphi 2006 також була реалізована технологія MDA (Model Driven Architecture) з допомогою ECO (Enterprise Core Objects) версії 3.0.

За що боролися

Процес розробки в Delphi гранично спрощений. У першу чергу це відноситься до створення інтерфейсу, на який йде 80% часу розробки програми. Достатньо просто перетягнути потрібні компоненти на поверхню Windows-вікна (в Delphi воно називається формою) і налаштовуєте їх властивості з допомогою спеціального інструменту (Object Inspector). З його допомогою можна зв'язати події цих компонентів (натискання на кнопку, вибір мишею елемента в списку і т. д.) з кодом його обробки.

Розробник отримав у розпорядження потужні засоби налагодження (аж до покрокового виконання команд процесора), зручну контекстну довідкову систему (в тому числі і Microsoft API), засоби колективної роботи над проектом.

Стало можливим створювати компоненти ActiveX без використання Microsoft IDL, розширювати можливості web-сервера (скрипти на стороні сервера), практично нічого не знаючи про HTML, XML або ASP.

З'явилася можливість створювати розподілені додатки на базі СОМ і CORBA, Інтернет — і intranet-додатки, використовуючи для доступу до даних Borland DataBase Engine, ODBC-драйвери або Microsoft ADO.

У Delphi дали розробникам можливість створювати свої власні компоненти, імпортувати ОСГ-компоненти, створювати шаблони проектів і майстрів, генеруючих заготовки проектів. Більш того, автори надали розробнику інтерфейс для зв'язку інших додатків (або зовнішніх програм) з Delphi IDE.

Зміни

Нова версія Delphi виходила кожен рік, але після п'ятої як ніби щось сталося… Пізніше з'ясувалося, що паралельно з роботою над новою версією Delphi велася розробка Delphi-подібного мови програмування для Linux. Новий продукт отримав назву Kylix. Delphi зробив величезний вплив на створення концепції мови C# для платформи .NET. Багато його елементи і концептуальні рішення увійшли до складу С#. Однією з причин називають перехід Андерса Хейлсберга, одного з провідних розробників Delphi, з компанії Borland Ltd. Microsoft Corp.

У березні 2006 року компанія Borland прийняла рішення про припинення подальшого розвитку інтегрованих середовищ розробки JBuilder, Delphi і C++Builder з причини збитковості цього напрямку. Була запланована продаж IDE-сектора компанії. Група прихильників вільного програмного забезпечення організувала збір коштів для купівлі у Borland прав на середовище розробки і компілятор. Однак у листопаді того ж року було прийнято рішення відмовитися від продажу IDE бізнесу.

Після цього розробкою IDE продуктів стала займатися нова компанія CodeGear, яка була фінансово повністю підконтрольна Borland.

У березні 2007 року CodeGear порадувала користувачів оновленою лінійкою продуктів Delphi 2007 for Win32 і виходом абсолютно нового продукту Delphi 2007 for PHP.

image

25 серпня 2008 року компанія Embarcadero, новий господар CodeGear, опублікувала прес-реліз на Delphi for Win32 2009. У цій версії з'явилося безліч нововведень на рівні мови:

• За замовчуванням повна підтримка Юнікода у всіх частинах мови, VCL і RTL;
• Заміна звернень до всіх функцій Windows API на юнікодние аналоги (тобто MessageBox викликає MessageBoxW, а не MessageBoxA).
• Узагальнені типи, вони ж узагальнення.
• Анонімні методи.
• Нова директива компілятора $POINTERMATH [ON|OFF].
• Функція Exit тепер може приймати параметри у відповідності з типом функції.

У версії Delphi XE2 (2011 рік) був доданий компілятор Win64 і крос-компіляція для операційних систем фірми Apple (MacOS X, iOS).

Про наступну версію у своєму интервью розповідав Всеволод Леонов, російський євангеліст Delphi з компанії Embarcadero Technologies:

image
Продукт Delphi XE3 є продовженням нового покоління засобів швидкої розробки сімейства Delphi. Нагадаю, у 2011 році вийшла Delphi XE2 з платформою FireMonkey, яка є альтернативою бібліотеки візуальних компонентів VCL.

Вона дуже схожа на VCL за методами використання і складом компонентів (кнопки, мітки, поля введення, меню тощо), але має здатність бути перенесеної на іншу операційну систему. FireMonkey — платформна. Додатки, створені з допомогою FireMonkey, можуть компілюватися і під Windows, і під Mac OS. Практично в один-два «кліка» ми можемо зібрати проект під принципово іншу операційну систему. Практично всі демонстраційні проекти, що поставляються з Delphi на платформі FireMonkey, мають дві версії: одну під Windows, іншу — під Mac OS. І для цього не потрібно вносити зміни у вихідний код програми
Вийшла в 2013 році версія Delphi XE5 забезпечила крос-компіляції додатків для пристроїв на платформі ARM/Android.

image

У квітні 2016 року з'явилася Delphi 10.1 berlin. Нововведення:

  • Компілятор і набір інструментів Object Pascal для 64-розрядної iOS;
  • Підтримка універсальних додатків iOS (включення 32 — і 64-розрядних двійкових файлів в пакет програми);
  • попередній Перегляд FireUI на мобільних платформах;
  • попередній Перегляд на різних пристроях;
  • Розширені можливості роботи зі стилями в дизайнері єдиного інтерфейсу, у тому числі універсальні стилі і налаштування стилів Windows;
  • Диспетчер пристроїв FireUI дозволяє змінювати специфікації доступних пристроїв і додавати нові пристрої;
  • Елементи управління Memo, ListView, Calendar, Switch для платформи iOS;
  • Компонент MapView для мобільних платформ (iOS і Android), підтримує спеціалізовані бібліотеки інтерактивних карт для кожної платформи (розроблені відповідно Apple і Google).


Ні живий, ні мертвий

Відомо, що Delphi перманентно «ховають» або заявляють, що так жити не можна. Вони аргументують тим, що система стала потужною, неактуальною, непідтримуваних, незручною, якийсь ще…

Але можна згадати, що таке думка частіше зустрічається у США і Західній Європі, де ця мова шаленій популярності й не мав ніколи. Там ці міркування можуть бути цілком резонними у багатьох випадках. Але є й інші країни, де ситуація може відрізнятися — країни СНД та інші країни Східної Європи.

image

З цим согласен Всеволод Леонов:
Невеликий історичний екскурс щодо країн Східної Європи. Система освіти колишнього СРСР була дуже сильною у багатьох аспектах, але не по частині прикладного програмування. На початку 90-х як отримати доступ до комп'ютера, так і навчитися щось робити в сучасних середовищах розробки могли лише ті, хто мав певну спеціальність.

Цілі факультети «пролітали повз» фундаментальних курсів з програмування. І наявність Turbo Pascal з низьким порогом входження, а потім середовища Delphi, що дозволяє зайнятися самоосвітою в хорошому сенсі цього слова, змогли наситити ІТ-галузь досить грамотними розробниками, а також підвищити загальнонаціональний інженерний рівень створення прикладного ПО.

Таким чином, для країн колишнього соцтабору зв'язка Pascal/Delphi різко висмикнула економіку з ІТ-небуття за рахунок дуже простої мови програмування і середовища візуальної розробки на основі готових компонентів.

Новий герой з open source

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

image

На основі FreePascal створена вільна мультиплатформенна IDE Lazarus, що дозволяє працювати з проектами Delphi. Вона заснована на бібліотеку візуальних компонентів Lazarus Component Library (LCL).

Список заявлених підтримуваних платформ:

• Windows: 98, 2k, XP, Vista, 7, 32 і 64bit;
• FreeBSD/Linux: gtk 2.8 і qt4.5, 32 і 64bit;
• Mac OS X 10.4, LCL тільки 32bit, не-LCL можуть бути 64bit.

З іншого боку, середовище Delphi по мірі розвитку дійсно ставала все більш громіздкою і малопридатною для навчання програмуванню. Крім того, відсутня безкоштовна версія Delphi навіть для академічного використання. Ці фактори призвели до практично повного зникнення Delphi зі сфери освіти.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.