Motto

В тихом саду здравомыслия
Пусть на вас постоянно падают
кокосовые орехи пробужденности.
Чогьям Трунгпа РИНПОЧЕ


Версия для мобильного


воскресенье, 5 февраля 2012 г.

2011 год. Подведение итогов.


Пришла пора подвести итоги прошедшего года и набросать планы на следующий.

Checklist

2011-й год был очень загруженным. К концу лета навалилось очень много работы и времени стало катастрофически не хватать. Ни на ведение своего блога ни на чтение чужих. Не следил за новостями ни читал обзоры долгожданной Delphi XE2.

Мир Delphi

В этом году случилось много всего. В первую очередь Delphi XE2 (долгожданная поддержка 64-бит, кроссплатформенность, новая библиотека для создания кроссплатформенных приложений FireMonkey, скины в VCL (обзор в блоге Влада), Live Bindings, Fast Report в комплекте с Delphi и многое другое). Я успел немного поиграться с одной из бета-версий, а со стабильной даже и не работал – не было времени. 50% времени работал в Delphi 6, 50% в Delphi 2010 и оставшиеся 46% в Delphi XE. Переход на XE2 тормозился отсутствием нужных библиотек. Но первое впечатление от Firemonkey  – вау, это обалденно!

В этому же году Embarcadero предоставила Delphi разработчикам возможность подтвердить свои навыки прохождением тестирования и получением сертификата. Подробнее, о сертификации читайте у Александра Алексеева. О прохождении тестирования и получении сертификата в этом году не писал только ленивый, то бишь я.

Интересные Delphi проекты 2011 года

  • Вышел проект DORM, the Delphi ORM (Open Source Apache License 2.0). Описание.
  • В конце года вышла третья версия OmniThreadLibrary (BSD лицензия)
  • В 2011 году был анонсирован (пока доступен только тестерам) интересный проект Object Pascal 4 JavaScript (ныне называется Smart Mobile Studio) позволяющий создавать HTML5 приложения на Object Pascal. Пока неясно, но скорее всего продукт будет коммерческим.
  • В ленте DelphiFeeds.ru появилось несколько новых блогов. Спасибо авторам за труд. =) Меня очень радует, что в ленте постов продолжают появляться публикации официального представителя Embarcadero – Всеволода Леонова. Причём в сравнении с прошлым годом, эти публикации потеряли формально-официальный тон (от чего только приобрели), и стали более живыми, а также обросли техническими подробностями и великолепным стилем изложения. Не знаю как у остальных, а у меня образ Embarcadero из безликой огромной компании превратился в обаятельный образ Севы.
  • Разработка проекта DeHL была официально заморожена. Причина – отсутствие явного интереса от Delphi-сообщества. Исходный код проекта доступен по BSD-лицензии. Автор готов передать проект в хорошие руки. Второй аналогичный проект того же автора – Delphi Collections пока ещё жив. Делайте выводы и пишите посты о хороших продуктах письма с благодарностями авторам используемых вами библиотек.
  • В этом году испортился (точнее, сменил направленность с Delphi на SEO) умер хороший сайт: http://delphiplus.org/

Мои проекты


Читать дальше..

воскресенье, 11 сентября 2011 г.

Lazy Delphi Builder 1.5.1.185 от 11.09.2011.

Update: Обновил архив. В первом архиве были exe-шки от предыдущей версии.

Времени на блог и проекты практически нет. Но с предыдущего релиза Lazy Delphi Builder накопилось достаточно новых фич и исправлений для выпуска новой версии.

Основное нововведение этой версии – это возможность продолжить неудавшуюся сборку. При сборке большого числа пакетов иногда может случится ошибка в одном из пакетов. После устранения причин ошибки раньше приходилось запускать сборку с самого начала. Теперь есть возможность продолжить собирать пакеты. В режиме “Continue Build” будут собраны только те пакеты, которые не были собраны в прошлый раз.

Также добавлена возможность поиска по дереву файлов и журналу инсталляции. И многое другое (см. ниже). И конечно же поддержка Delphi XE2 (пока только для dcc32.exe).

Подробная история изменений под катом.


Читать дальше..

среда, 17 августа 2011 г.

Обзор CnWizards. Часть 21: Шпаргалка по горячим клавишам

Регулярные публикации приводят посетителей также надёжно, как приносят проценты вклады в банках Москвы. Даже эффективнее. Идеи для новых публикаций есть, а времени на написание нет. Поэтому, пока опубликую пост из черновика. Сводная таблица горячих клавиш CnWizards. В таблице приведены комбинации клавиш по умолчанию. Оптимизированную для печати на листе А4 шпаргалку можно скачать здесь в виде PDF-файла. В блоге приведён более развёрнутый вариант.

Следует помнить, что если у вас установлено несколько наборов экспертов для Delphi, то некоторые горячие клавиши могут не работать. Например, ModelMaker Code Explorer по умолчанию резервирует для себя комбинацию Ctrl+Alt+U. И в MMX и в CnWizards все горячие клавиши можно изменить или отключить.

Все горячие клавиши поделены на 4 блока:

  1. Глобальные – работают везде в IDE.
  2. Дизайнер формы – горячие клавиши, работающие только в дизайнере формы.
  3. Редактор кода – горячие клавиши для редактора кода.
  4. Операции с выделенным текстом – работают в редакторе кода при наличии выделенного текста.

Читать дальше..

среда, 27 июля 2011 г.

Головокружительные возможности Dependency Injection и Delphi Spring. Часть 5. Основы Delphi Spring.

Это перевод публикации Ника Ходжеса: Getting Giddy with Dependency Injection and Delphi Spring #5 – Delphi Spring Basics.


Все переводы по Spring


Вступительное слово

Я много слышал о фреймворке Spring для Java. И даже знал, что аналогичный фреймворк был создан и для Delphi. Но у меня не хватало терпения сесть и разобраться. Также, как и с терминами “Внедрение зависимости” (Dependency Injection) и “Обращение управления” (Inversion of Control). Я часто встречал упоминания о них в разных статьях, но так и не смог уложить в своей голове, как применить эти знания к Delphi. И вот, наконец, я наткнулся на публикацию Ника. То, что я прочитал в этой публикации, запросто расставило всё по своим местам. Это было настолько потрясающе, что я решил обязательно перевести этот материал и опубликовать перевод у себя в блоге. Ник дал добро, и процесс пошёл.

Переводить было легко и просто. Всё-таки чувствуется разница между переводом материала, написанного носителем языка, и материала, написанного человеком для которого английский - не родной. Помню, как я мучился с переводом материалов по дженерикам в Delphi, пытаясь уловить, что же хотел сказать автор. Периодически даже пытался уловить смысл, заглядывать в оригинал материала на французском языке. Представляю, каково приходится переводчикам, чья основная специальность - локализация компьютерных игр, и кому приходится переводить не только текст, но и загадки и стихи. Бррр!

На самом деле, это уже 5я часть в серии публикаций, посвящённых Dependency Injection в блоге Ника (полный список ищите по ссылке). Но первые четыре публикации просто подводят читателя к необходимости писать код, используя как можно меньше зависимостей между классами. Я не стал их переводить. На мой взгляд, там не так много много полезной и уникальной информации, чтобы тратить время на перевод. Пятая часть представляет собой совершенно уникальный материал, рассказывающий об основах использования Delphi Spring Framework.


Читать дальше..

четверг, 14 июля 2011 г.

Перевод Live templates Revisited

Это перевод поста Кэри Дженсена “Live templates Revisited”. Кэри также является автором новой книги Delphi in Depth: ClientDataSet. По адресу http://www.jensendatasystems.com/cdsbook/ вы можете найти дополнительную информацию об этой книге и заказать её.

This post contains translation of Cary Jensen’s article “Live Templates Revisited”. Cary is also the author of the new book Delphi in Depth: ClientDataSet. For more information about this book and links to order, please visit http://www.jensendatasystems.com/cdsbook/.

Ещё раз о живых шаблонах

Хотя шаблоны кода были в Delphi со времён 4й версии Delphi, они были очень простыми по сравнению с новой функцией живых шаблонов, впервые появившейся в Delphi 2006. Живые шаблоны предоставляют возможность делать вставку кода ещё более интеллектуальной, а также позволяют осуществлять интерактивную навигацию по изменяемым частям шаблона. Если вы ещё не используете их, то сейчас самое время рассмотреть их повнимательнее.

Рассмотрим вставленный шаблон показанный на следующем рисунке. Этот шаблон был создан путем выполнения шаблона forb, который вставляет цикл с блоками begin .. end.

Живой шаблон forb

Обратите внимание, что переменная итерации I подсвечена. Это позволит вам при желании быстро изменить имя переменной. Например, многие разработчики Delphi используют строчную переменную i в качестве переменной цикла (хотя Delphi сам по себе не чувствителен к регистру).

Вы также можете заметить, что I, а также 0 и List.Count окружены рамочкой. Эти области текста (в рамочке) являют собой точки синхронизации живого шаблона. После изменения I на i, нажмите Tab или Shift-Tab для перемещения между точками синхронизации шаблона. Во время перемещений, вы можете заметить, что подсказки (hints) изменяются, чтобы отобразить описание выбранной точки.


Читать дальше..

Постоянные читатели