Для чего нужен делфи
Форум АСУТП
Клуб специалистов в области промышленной автоматизации
Delphi и для чего он нужен.
Delphi и для чего он нужен.
Сообщение chegevara » 15 фев 2016, 12:46
Delphi и для чего он нужен.
Сообщение Alexander » 15 фев 2016, 13:21
Delphi и для чего он нужен.
Сообщение rwg » 15 фев 2016, 13:23
Delphi и для чего он нужен.
Сообщение chegevara » 15 фев 2016, 14:14
Delphi и для чего он нужен.
Сообщение rwg » 15 фев 2016, 15:08
Delphi и для чего он нужен.
Сообщение chegevara » 15 фев 2016, 17:17
Delphi и для чего он нужен.
Сообщение Jackson » 15 фев 2016, 17:52
Delphi и для чего он нужен.
Сообщение Степа » 15 фев 2016, 19:41
Delphi и для чего он нужен.
Сообщение Alexander » 16 фев 2016, 09:18
Delphi и для чего он нужен.
Сообщение Никита » 16 фев 2016, 09:35
Delphi и для чего он нужен.
Сообщение Jackson » 16 фев 2016, 11:28
Delphi и для чего он нужен.
Сообщение Никита » 16 фев 2016, 11:52
Delphi и для чего он нужен.
Сообщение Jackson » 16 фев 2016, 12:04
Отправлено спустя 2 минуты 47 секунд:
Delphi и для чего он нужен.
Сообщение chegevara » 16 фев 2016, 16:32
Delphi и для чего он нужен.
Сообщение Romcheg » 16 фев 2016, 16:41
Delphi и для чего он нужен.
Сообщение Marrenoloth » 16 фев 2016, 17:08
Delphi и для чего он нужен.
Сообщение rwg » 16 фев 2016, 18:17
Delphi и для чего он нужен.
Сообщение Jackson » 16 фев 2016, 19:10
Национальная библиотека им. Н. Э. Баумана
Bauman National Library
Персональные инструменты
Delphi (язык программирования)
Delphi — (Де́лфи, произносится ˈdɛlˌfi:) — императивный, структурированный, объектно-ориентированный язык программирования со строгой статической типизацией переменных. Основная область использования — написание прикладного программного обеспечения. Первоначально носил название Object Pascal и исторически восходит к одноимённому диалекту языка, разработанному в фирме Apple в 1986 году группой Ларри Теслера. Однако в настоящее время термин Object Pascal чаще всего употребляется в значении языка среды программирования Delphi. Начиная с Delphi 7, в официальных документах Borland стала использовать название Delphi для обозначения языка Object Pascal.
Содержание
История развития языка
Основой языка Delphi послужил язык Паскаль, разработанный профессором Н.Виртом в конце 60-х годов специально для обучения студентов программированию. Паскаль был полностью процедурным языком, объектно-ориентированная парадигма была добавлена в Turbo Pascal. Object Pascal (диалектом которого является Delphi), является функциональным расширением языка Turbo Pascal.
Синтаксис
Операторы
Типы данных
Строки Строкой называется последовательность символов, заключённая в одиночные кавычки: ‘это текстовая строка’. Логический тип Тип Boolean обеспечивает перечисление логических True и False значений.
Структура программы
Каждая написанная на языке Delphi программа состоит из заголовка программы, поля используемых модулей Uses (к примеру, Uses Windows, Messages, SysUtils и т.д.), который может не входить в саму структуру, а также блоков описания и исполнения (начинаются составным оператором begin и заканчиваются end). Пример программы:
Компиляторы
Free Pascal (FPC) — бесплатный компилятор Оbject Pascal, который поддерживает различные диалекты Паскаля, включая Turbo Pascal, Delphi и собственные диалекты. На текущий момент, FPC может генерировать код для x86, x86-64, PowerPC, SPARC и процессоров ARM, а также для различных операционных систем, в том числе для Microsoft Windows, Linux, FreeBSD, Mac OS. Существует несколько сред разработки программного обеспечения для FPC (один из самых известных представителей — Lazarus).
MIDletPascal — компилятор, преобразующий исходный код в компактный и быстрый байт-код Java.
Virtual Pascal — Бесплатный компилятор для Win32, OS/2 и Linux. На тот момент очень быстрый и весьма совместимый (частично поддерживаются конструкции Delphi 5). Разработка окончилась в 2004 году, исходники открыты не были. С тех пор FPC ушёл намного вперед и в целом для программирования лучше он.
Инструменты разработки
Delphi 4. Еще одна ключевая веха развития. В этой версии было введено много нового и полезного для упрощения разработки приложений, включая новую среду с динамическими подсказками и т.д. Была усовершенствована модель работы с компонентами (VCL), появилась возможность быстрого использования таких технологий, как MIDAS, DCOM и CORBA. В этой версии так же был усовершенствован язык Object Pascal: появились новые черты, свойственные современному ООП, были введены новые типы данных, включая 64-битные.
Delphi 2005. Менее чем через год после выхода Delphi 8, появилась новая версия, в которой вернули возможность работать в классическом стиле IDE при разработке приложений для Windows. Вместе с тем, Delphi 2005, в случае разработки приложений специально для платформы NET, позволяет работать не только с языком Delphi, но и с C#. При этом в сам язык Delphi были введены такие новшества, как оператор for…in и встраиваемые процедуры и функции.
Delphi 2007. Версия, выпущенная CodeGear. Добавлена поддержка интерфейса Aero для Windows Vista.
Delphi 2009. Версия, выпущенная Embarcodero. Реализована поддержка Unicode в VCL и RTL, заменены обращения к о всем функциям Windows API на аналоги в Unicode, добавлены обобщенные типы и анонимные методы.
Delphi 2010. Поддержка Windows 7, компоненты для работы с касаниями и жестами, компоненты dbExpress теперь официально поддерживает Firebird.
Delphi XE (Delphi 2011). Добавлена поддержка для облачных вычислений.
Особенности языка
Изначально, язык ставил во главу стройность и высокую читаемость, поскольку был предназначен для обучения дисциплине программирования. Эта изначальная стройность, в дальнейшем, как по мере роста аппаратных мощностей, так и в результате появления новых парадигм, упростила расширение языка новыми конструкциями. Так, сложность объектного C++, по сравнению с C, выросла весьма существенно и затруднила его изучение в качестве первого языка программирования, чего нельзя сказать об Object Pascal относительно Pascal.
В Delphi формальное начало любой программы четко отличается от других участков кода и должно располагаться в определенном, единственном в рамках проекта, исходном файле с расширением dpr (тогда как другие файлы исходных текстов программы имеют расширение pas). В С-подобных языках программирования в качестве входа обычно используется глобальная функция или статический метод с именем main и определенным списком параметров, причём такая функция может быть расположена в любом из файлов исходного текста проекта.
В Delphi идентификаторы типов, переменных, а равно и ключевые слова читаются независимо от регистра: например идентификатор SomeVar полностью эквивалентен somevar.
В исходных файлах pas (которые, как правило, и содержат основное тело программы) на уровне языковых средств введено строгое разделение на интерфейсный раздел и раздел реализации. В интерфейсной части содержатся лишь объявления типов и методов, тогда как код реализации в интерфейсной части не допускается на уровне компиляции. Подобное разделение свойственно также языкам C/C++, где вводится разделение на заголовочные и собственно файлы реализации, но подобное разделение не обеспечивается на уровне языка или компилятора.
В Delphi метод или функция четко определяются зарезервированными для этого ключевыми словами procedure или function, тогда как в C-подобных языках различие обуславливается ключевым словом, определяющим тип возвращаемого значения.
Начало и конец программного блока выделяются ключевыми словами begin и end, тогда как в C-подобных языках программирования для этих целей используются фигурные скобки: <>. Таким образом, в Delphi достигается лучшая читаемость кода.
История языков программирования: Delphi — больше, чем просто язык
С 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.
Перспективы языка Pascal в этом отношении оказались далеко не радужными. К середине 90-х годов он уже находился в довольно запущенном состоянии. Компания Borland начала дорабатывать его, но вскоре стало понятно: изменения и добавления будут настолько серьезными, что результат этой работы можно считать новым языком программирования. Для нового языка была разработана IDE с графическим интерфейсом. Новая среда программирования и язык получили общее название Delphi.
Своё имя новая система (Delphi) получила в честь древнегреческого города Дельфы. Название было выбрано неспроста: город Дельфы связан с именем бога мудрости и покровителем искусств Аполлона. Согласно легенде главное святилище Аполлона находилось именно в этом городе. Его жрицы-сивиллы изрекали пророчества желающим узнать свою судьбу.
«Имя Delphi было предложено Денни Торпом во время мозгового штурма. Мы хотели, чтобы в имени системы отразились уникальные способности продукта к работе с базами данных, и Delphi как нельзя лучше перекликается с таким заслуженным именем в этой области, как Oracle, по крайней мере для тех, кому сочетание «Дельфийский Оракул» о чем-то говорит», рассказывал руководитель исследовательской группы по разработке системы Delphi Чак Язджевски.
В России Borland Delphi появился в конце 1993 года и сразу же завоевал большую популярность.
Основные версии
Версия 1 была предназначена для разработки под 16-разрядную платформу Win16. Начиная со второй версии, была реализована возможность компиляции программы под 32-разрядную платформу Win32.
Delphi 1
В версии 3 появилась поддержка многозвенной технологии (multi-tiered) доступа к данным, что позволило создавать масштабируемые приложения (относительно слабо зависящие от сервера БД) за счет перенесения методов обработки информации (бизнес-правил) на среднее звено.
Delphi 3
Вместе с 6-й версией Delphi вышла совместимая с ним по языку и библиотекам среда Kylix, предназначенная для компиляции программ под операционную систему Linux.
За что боролись
Процесс разработки в 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.
Перемены
В марте 2006 года компания Borland приняла решение о прекращении дальнейшего развития интегрированных сред разработки JBuilder, Delphi и C++Builder по причине убыточности этого направления. Была запланирована продажа IDE-сектора компании. Группа сторонников свободного программного обеспечения организовала сбор средств для покупки у Borland прав на среду разработки и компилятор. Однако в ноябре того же года было принято решение отказаться от продажи IDE бизнеса.
После этого разработкой IDE-продуктов стала заниматься новая компания — CodeGear, которая была финансово полностью подконтрольна Borland.
В марте 2007 года CodeGear порадовала пользователей обновлённой линейкой продуктов Delphi 2007 for Win32 и выходом совершенно нового продукта Delphi 2007 for PHP.
25 августа 2008 года компания Embarcadero, новый хозяин CodeGear, опубликовала пресс-релиз на Delphi for Win32 2009. В этой версии появилось множество нововведений на уровне языка:
В версии Delphi XE2 (2011 год) был добавлен компилятор Win64 и кросс-компиляция для операционных систем фирмы Apple (MacOS X, iOS).
Про следующую версию в своем интервью рассказывал Всеволод Леонов, российский евангелист Delphi из компании Embarcadero Technologies:
Продукт Delphi XE3 является продолжением нового поколения средств быстрой разработки семейства Delphi. Напомню, в 2011 году вышла Delphi XE2 с платформой FireMonkey, которая является альтернативой библиотеки визуальных компонентов VCL.
Она очень похожа на VCL по методам использования и составу компонентов (кнопки, метки, поля ввода, меню и т.д.), но обладает способностью быть перенесенной на другую операционную систему. FireMonkey — кроссплатформенная. Приложения, созданные с помощью FireMonkey, могут компилироваться и под Windows, и под Mac OS. Практически в один-два «клика» мы можем пересобрать проект под принципиально другую операционную систему. Практически все демонстрационные проекты, поставляемые с Delphi на платформе FireMonkey, имеют две версии: одну под Windows, другую — под Mac OS. И для этого не нужно вносить изменения в исходный код приложения
Вышедшая в 2013 году версия Delphi XE5 обеспечила кросс-компиляцию приложений для устройств на платформе ARM/Android.
В апреле 2016 года появилась Delphi 10.1 berlin. Нововведения:
Ни жив, ни мертв
Известно, что Delphi перманентно «хоронят» или заявляют, что так жить нельзя. Они аргументируют тем, что система стала монструозной, неактуальной, неподдерживаемой, неудобной, какой-то еще…
Но можно вспомнить, что такое мнение чаще встречается в США и Западной Европе, где этот язык бешеной популярности и не имел никогда. Там эти соображения могут быть вполне резонными во многих случаях. Но есть и другие страны, где ситуация может отличаться — страны СНГ и остальные страны Восточной Европы.
С этим согласен Всеволод Леонов:
Небольшой исторический экскурс по поводу стран Восточной Европы. Система образования бывшего СССР была очень сильна во многих аспектах, но не по части прикладного программирования. В начале 90-х как получить доступ к компьютеру, так и научиться что-то делать в современных средах разработки могли лишь те, кто имел определенную специальность.
Целые факультеты «пролетали мимо» фундаментальных курсов по программированию. И наличие Turbo Pascal с низким порогом вхождения, а затем среды Delphi, позволяющей заняться самообразованием в хорошем смысле этого слова, смогли насытить ИТ-отрасль достаточно грамотными разработчиками, а также повысить общенациональный инженерный уровень создания прикладного ПО.
Таким образом, для стран бывшего соцлагеря связка Pascal/Delphi резко выдернула экономику из ИТ-небытия за счет очень простого языка программирования и среды визуальной разработки на основе готовых компонентов.
Новый герой из open source
Наиболее известной свободной реализаций языка Pascal является Free Pascal. Помимо открытости исходного кода, его основным преимуществом является мультиплатформенность, а также поддержка различных диалектов.
На основе 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 из сферы образования.
Зачем нужен Delphi?
Чтобы был. Знаете, T-SQL тоже далеко не верх эргономичности (скорее уж низ). А C++ так вообще кошмарная жесть. Но вот используется, и одно, и другое и третье. А все потому, что уже слишком много софта написано с использованием этих инструментов, вот так вот просто отказаться не получится.
З.Ы. те, кто думает что я фанат Делфи, резко смотрит на мою аватару 🙂
Щас тебе понапихают за такие слова.
Чтобы был. Знаете, T-SQL тоже далеко не верх эргономичности (скорее уж низ). А C++ так вообще кошмарная жесть. Но вот используется, и одно, и другое и третье. А все потому, что уже слишком много софта написано с использованием этих инструментов, вот так вот просто отказаться не получится.
З.Ы. те, кто думает что я фанат Делфи, резко смотрит на мою аватару 🙂
У меня тоже такое чувство что дельфи для eтого и нужОн
На начальных этапах обучения программированию язык имеет определяющее значение. Он определяет образ мышления. И это здорово, когда можно в рамках одного языка показать несколько подходов (их историческое развитие). На Java и C#, например, процедурный подход будет смотреться глупо (и, кстати, указатели толком объяснить на этих языках не получится), да, еще есть C++, но он не походит под пункт а).
Угу, и ДевЭкспрессы. И обсуждаемые в соседнем топике AdvancedControlы от TMS. До слез клевые 😀
Автору топика лучше задуматься над тем зачем нужен автор топика. Чего и всем желаю 🙂
Что же конкретно опредилит способ мышления? Синтаксис объявления переменных и доступа к методам=)?
Конечно к всяким чтукам в языке привыкаешь и начинаешь на них расчитывать(деструктор в плюсах, GC в шарпе с джавой). Но ИМХО это куда больше зависит от библиотеки с которой работаешь.
Правда про Delphi глаза режит?:)
А что ты имеешь против делфи? В чем он тебе не угодил?
Сердце разрывается смотреть на людей, вкладывающие способности и время в мертвый язык
Бедняга! Глянь на тех кто учит санскрит и историю вообще 🙂
Ну они хотябы не учат историю НА санскрите, что сабж мне лично очень напоминает)))
Мне питон не нужен (и даже «железный») 🙂 У меня Nemerle есть.
Видимо ваше знакомство с языком ограничивалось только написанием обработчиков для кнопок. Словите ошибку на плюсах при выходе из процедуры, чтение кучи вместо реальных данных или утечку неизвестно откуда и вы поймете, что такое способ мышления.
Возможно если ограничиваться стандартными библиотеками, то разница в языках сводится к разнице библиотек. а когда начинаешь писать что-то посложнее (например, свою библиотеку ;)) тут и всплывают все «радости» языка.
кстати, там введена система шаблонов, что как раз и говорит о том что «никто никого не забросил».
С hardcase посоревнуйся. 🙂
К стати в VC++ тоже можно окошки тысячами клепать в редакторе ресурсов и довольно просто.
ЗЫ: видел демку про редактор GUI от или для QT, тут дельфя совсем в попе.
что бы кнопки работали в VC практически тоже самое реализовано что и в дельфи, тоже «тыц-тыц по батону» и попадаешь в редактор кода, где кодишь (гадишь) как и что тебе вздумается.
эт я к тому что дельфя далеко не первое место занимает по удобству и скорости проектирования GUI
эээм. «все смешалось, кони, люди», библиотеки с языками.
я про МФЦ вобще ничего не говорил. возьми WinForms в той же студии.
Быстрота разработки больше зависит от знаний конкретной библиотеки конкретным человеком. а в чем это реализовывать (С++ или Объект Паскаль) нету.
Я сейчас ищу какой-нибудь лаконичный и понятный язык для моделирования программ, т.е. для быстрого создания легко меняемой программы, пусть даже медленно выполняемой, которую я потом смогу переделать на C++, если не хватит скорости.
Полез читать про Nemerle. Уже на Hello World расстроился, слишком много букв:
Здравствуй Мир на Питоне 2.6:
Понятно, что простейшей программой не все определяется. Но это так, для примера.
Полез читать про Nemerle. Уже на Hello World расстроился, слишком много букв:
Здравствуй Мир на Питоне 2.6:
Понятно, что простейшей программой не все определяется. Но это так, для примера.
Nemerle часто сравнивают с C#, вот прям с офсайта таблица.
Как-то была темка где сравнивали, как одну и ту же программу написать на разных языках и в каком из них для этого требуется меньше текста. Наверно, надо будет как-нибудь повторить что-то типа того.
Питон начал изучать позавчера, поэтому тоже в нем ничего не понимаю.
Я в сети нарыл книгу «Язык программирования Python» от Г.Россум и др. Книга устаревшая, но для начала пойдет. Плюс к тому приобрел книгу типа Питон для чайников какого-то российского автора (понимаю, что кощунство, но не сдержался), чтобы читать, когда лень комп включать.
Как сказал просветленный и уважаемый коллега Вашингтон: Афтар унылый гот!:)
Блин, ваще не понимаю, если честно, этой войны языков. Такие темы скорее напоминают отговорку: Почему я не хочу учиться программированию.
Общее впечатление после прочтения двух эпохальных тем афтора: унылая IT-креведка, зарабатывающая на клинское и кириешки эникеем и пытающаяся оправдать свою никчемность в глазах окружающих бессымленным флудом. Ничо личного, если что
Полез читать про Nemerle. Уже на Hello World расстроился, слишком много букв: