Рубрика «Delphi» - 18

Разработка кроссплатформенных мобильных приложений в DelphiЧасть #1
Часть #2
Часть #3

В четвертой части настоящего цикла мы вновь возвратимся к разработке «настольного» приложения и попытаемся более подробно разобраться с технологией связывания объектов LiveBinding. Данный механизм универсален и подходит как для мобильных, так и настольных приложений. Более того, этот механизм работает и в VCL. Знакомство же с LiveBinding лучше начать именно в классическом проекте.

Прежде всего, нам придется выполнить несколько однотипных задач, работа над которыми может показаться рутинной. Речь идет о создании форм редактирования списков, а именно, списка единиц измерений и списка продуктов. Данные формы будут вызываться из меню главной формы, которое нам также предстоит создать.

Итак, в модуле данных поместим два компонента TFDTable и настроим их на работу с таблицами tblUnit и tblFoodstuff (по аналогии с набором данных для работы с таблицей tblRecipe). Двойным щелчком на компоненте откроем редактор полей, добавим все поля (пункт контекстного меню Add all fields).

Важно понимать, что практически во всех реализациях компоненты наборов данных наследуются от класса TDataSet и работают с некоторым набором полей. Здесь имеются в виду экземпляры классов, наследников TField (TIntegerField, TStringField и т.д.). Набор полей можно создать в режиме проектирования (design-time) и настроить свойства полей с помощью «инспектора объектов». Если рассматривать TFDTable, то помимо полей, соответствующих физическим полям таблицы, можно создать и другие типы полей, например, вычисляемое (Caclulated) или подставляемое (LookUp) поле. Значения этих полей будут вычисляться динамически в ходе работы программы, а не браться из источника данных. Чуть ниже мы рассмотрим пример создания таких полей.

В том же случае, если набор полей не создан в режиме проектирования, при открытии набора данных в процессе работы программы, набор полей будет создан автоматически.

Ниже приведен фрагмент файла формы модуля данных uDM.dfm, содержащий описание одного из наборов данных и связанных с ними полей. Текстовое представление формы можно получить, если в контекстном меню формы выбрать пункт «View as Text». Для того, что бы вернуться в обычный режим представления формы, следует нажать «View as Form».Читать полностью »

image
У меня, как и у многих, давняя история знакомства с Дельфи — в старые добрые времена было модно начинать изучать программирование с уже устаревающего на тот момент GWBASIC’a, и стройного алгоритмичного Паскаля. Дельфи, выросшая из Турбо-Паскаля, произвела позже фурор своей новизной и “компонентным” подходом к разработке. Потом пришли новые мощные языки, веб начал теснить десктоп и я ушел в веб-разработку надолго.
Пару лет назад я пришел в проект, который разрабатывается на Дельфи, и после других языков я понял, что мне иногда неудобно ей пользоваться. В большинстве языков есть понятие “пакета”, менеджеры пакетов и репозитории, которые их хранят, в Дельфи же ничего похожего нет. Все зависимые библиотеки ставятся вручную, и пути к ним нужно прописывать в файле с настройками проекта. Если проект перенести на другой компьютер, то нужно молиться на то, что бы библиотеки там находились в тех же папках. Это ужасно, на мой взгляд. Зависимости должны прописываться в проекте, и потом автоматически скачиваться и устанавливаться, если они не установлены, и все пути к зависимостям должны проставляться автоматически.
Так и появился менеджер пакетов для Дельфи — OwlyCI, о котором я расскажу ниже.
Читать полностью »

Конкурс «Осенняя мобилизация»

В сентябре мы запустили релиз RAD Studio XE5 с поддержкой Android.
Специально для вас мы организовали конкурс «Осенняя мобилизация», чтобы поощрить разработку под самую популярную мобильную платформу Android и наградить лучших разработчиков. Конкурс стартует 11 ноября, а подводить итоги мы будем в последнюю неделю года, 25 декабря.

Регистрируйтесь на сайте конкурса, создавайте приложения на Delphi XE5 для Android и выигрывайте призы: планшет Asus Nexus 10, планшет Asus Nexus 7, смартфон Asus Nexus 4 или специальный приз от компании Софтлайн – лицензия RAD Studio XE5.
Если вы разрабатываете на Delphi, но только задумываетесь о создании мобильных приложений, это хороший способ попробовать свои силы.
Если вы уже писали приложения под Android, конкурс – отличный повод попробовать новый инструмент разработки.
Если у вас есть опыт и в Delphi и в разработке под Android – ваши шансы на победу выше!
Для участия в конкурсе вам необходимо
Читать полностью »

Разработка кроссплатформенных мобильных приложений в DelphiЧасть #1
Часть #2

Настройка среды и создание нового мобильного приложения.

В предыдущей части цикла мы определились с задачей и создали простейшее FM приложение, которое отображает список рецептов. При этом мы использовали библиотеку доступа к данным FireDAC и технологию связывания объектов LiveBinding. Также мы условились, что в рамках поставленной задачи будет создано два приложения, использующих единую кодовую базу. И теперь, настало время для, возможно, самой интересной части – создания первого Android приложения.Читать полностью »

image Пообщавшись с некоторыми знакомыми программистами, внезапно обнаружил, что не все знают про Ханойскую башню, а среди тех кто знает — мало кто понимает как решается эта задача.
Википедия по этому поводу пишет очень строго, по делу, и ничего не объясняет. Мол принимайте как прописную истину. Поэтому понять как она решается — сходу трудновато. А ведь задача очень простая, и между тем интересная в программировании и математически.

В статье будет много картинок. Объяснение как решать задачу рекурсивно и как она решается бинарным поиском.
В общем статья посвящается тем смелым, кто пока еще боится Ханойской башни, но хочет перестать её бояться.
Читать полностью »

Delphi for AndroidВ предыдущей части цикла мы сделали обзор основных возможностей новой RAD Studio XE5. Сегодня же перейдем к практике. Прежде всего, давайте определимся с задачей.

Постановка задачи

Не смотря на некоторую академичность задачи, в качестве примера мы выбрали кулинарную книгу. А для придания оригинальности разрабатываемому приложению, попытаемся расширить обычный для подобных программ функционал несколькими дополнительными функциями:

Пересчет количества требуемых продуктов.

Обычно в рецептах указывается точное количество используемых продуктов. Но если требуется изменить количество порций, то соответственно, необходимо пересчитывать и количество продуктов. В процессе приготовления блюда это не всегда удобно.

Таймер.

Если вы новичок в кулинарии, то, вам следует использовать рецепты, в которых четко указано время той или иной операции. И таймер на планшете, телефоне или нетбуке вполне может стать удобной заменой кухонному таймеру.
Часто бывает, что несколько операций выполняются параллельно. Каждая операция может иметь свой «таймер».
При этом нас интересует, как «настольная», так и мобильная реализация приложения. Мобильное приложение будет использоваться в качестве пособия для визуализации рецепта и сопровождения процесса подготовки. Настольная версия может быть использована в более расширенном функционале для, например, формирования новых рецептов.

Здесь следует оговориться, что в принципе, поваренные книги, как и книги по программированию, могут быть рассчитаны на разный уровень подготовленности читателей. В нашем случае речь идет о «рецептах для чайников», т. е. тех, в которых указывается точное количество продуктов и точное время того или иного действия.

Данное приложение мы реализуем для Windows и для Android. Затем на основе единой базы исходных кодов мы сможем выполнить портацию приложения на MacOS и iOS. Читать полностью »

Трансляция запуска RAD Studio XE5

Уважаемые разработчики!

Мы уже анонсировали Запуск RAD Studio XE5, который пройдет завтра, 24 сентября в гостинице Бородино.
Не можете вырваться из офиса? Предпочитаете наблюдать выступления с дивана? Нет времени на дорогу? Мы знаем это, поэтому специально для вас будем вести онлайн-трансляцию непосредственно из зала.
Подключайтесь к трансляции завтра, 24 сентября, в 10.00 MCK на сайте softwarepeople.ru/delphiandroid/ или на нашей странице в Facebook.
Вы сможете задать вопросы выступающим по Twitter, хэш-тэг #delphi_tour
Мы подготовили действительно выдающийся продукт, позволяющей создавать приложения под iOS и Android одновременно. Чтобы вы смогли максимально эффективно приступить к разработки мобильных решений, мы пригласили людей, которые знают о Delphi абсолютно всё!
Евгений Крюков – архитектор Платформы приложений FM (ex FireMonkey). Именно разработки Евгения легли в основу кроссплатформенности проектов Delphi для Android и iOS. История и эволюция, концепция и архитектура, возможности и планы на будущее – исчерпывающе глубоко и максимально подробно.
Читать полностью »

Совет, как не превысить число допустимых лицензий на одну зарегистрированную копию Embarcsdero RAD Studio XE. Возможно, будет полезно к прочтению системным администраторам и руководителям проектов, разрабатываемых на Embarcadero RAD Studio XE.
Проверено на Delphi XE3.
Читать полностью »

imageТолько что, компания Embarcadero Technologies объявила о выходе официального релиза новой версии RAD Studio — XE5

Главным новшеством данной версии является поддержка разработки нативных приложений для платформы Android. Таким образом, был расширен список поддерживаемых Delphi платформ: Windows 32/64 bit; Mac OSx; iOS; Android.

Для тех, кто не в курсе последних новостей из мира Delphi напомню, что основная концепция продукта предполагает единую кодовую базу для различных платформ. Иными словами, речь идет о создании единой базы кода, которая используется в различных приложениях, т.е. о совместимости на уровне кода. Что, естественно, влечет за собой массу преимуществ.

Для создания таких приложений используется платформа FireMonkey, первая версия которой была представлена в Delphi XE2.

Примерно за месяц до релиза было объявлено об открытом бета-тестировании продукта. Судя по отзывам, код iOS приложений практически без изменений работает на Android. Так же следует отметить, что создание Android приложений осуществляется значительно проще, чем для iOS. Если для iOS разработки требовалась машина, работающая под управлением Mac OS, то процесс создания Android приложения не требует дополнительных устройств, кроме, собственно, Android устройства (в принципе, можно обойтись и эмулятором).

Схема распространения нового продукта не претерпела радикальных изменений.

Ниже приведены ссылки на официальные страницы, на которых вы можете найти информацию о новых продуктах и технологиях (переведены на русский).Читать полностью »

в 14:21, , рубрики: Delphi, fluent interface, метки: ,

Текучий интерфейс (Fluent interface) — совсем молодая методика, даже скорее паттерн проектирования, получивший популярность и широкое распространение среди кодеров Java, C#, PHP.
В большинстве методик «хорошего кода» лежит разряжение текста кода (висячие строки, пробелы, отступы, etc) и это очень здорово, но иногда это превращается в сущий ад. Пробежка скролом по коду, запоминание цепочки вызова метода, вечная дилемма между длинным методом и читабельностью, etc.
Но решение есть — Текучий интерфейс! Теперь и на Delphi!
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js