Не знаю сколько на текущий момент тут делфистов, но хочу их немного занять задачками.
Решением задачки, конечно же, скорее всего можно будет найти что-то в гугле, но идея именно на проверку знаний и смекалки. Так что ответы без гугления вопроса (но с разбором в делфе, если хотете) будут предпочтительнее.
Итак.
Что будет в str после исполнения данного кода?
var
str: string;
...
str := 'Здесь будут'^M'драконы'^M^J'!!!';
...
Узнал такую фичу довольно давно, когда курил один проект, там были проставлены ^I - символы табуляции, я тогда нагуглил, что это просто другой способ указания управляющих символов, в данном случае аналог #09. Начиная от #A - #01 вроде и по порядку.
Кстати, консолька (любая, хоть cmd) позволяет их вводить через Ctrl+символ и их прожёвывает, например, ^H - забой, и если они делают что полезное, то видно только их результат, а если не делают, то прямо так и выводится ^F
Про (.x.) тоже узнал от Х-Прогера, но не пользовался.
Есть интересная фишка у многомерных массивов - допустим синтаксис [x][y] как в сишках, помимо привычного [x,y].
В дельфях старше 2007 (а может и 2005+) есть такая фича: var &do: Char; - возможность использовать зарезервированные слова и аналогичных святых коров для идентификаторов при экранировании символом &
А вот вам открытый мной лично (в результате размышлений о фичах сишарпа и возможности их реализации в дельфи) способ задания инплейс-массива (без декларации), например, чисел (но может быть любой перечислимый тип): http://programmersforum.ru/showpost.php?p=1281639&postcount=7
Ну, а в целом, если можно меня считать "тут" , то плюсуйте меня в дельфисты, лично для меня оптимальный язык (хотя работаю с несколькими), в т.ч. очень подходящий для геймдева.
Зависит, что понимать под играми.
Посмотри мои конкурсные работы на этом сайте - большая часть из них на делфи.
В релизе ни одной не было.
На лазарусе делал отдельные вещи, но портирование моего движка стопорнулось.
Есть ссылочка и на хабр http://habrahabr.ru/company/delphi/blog/212611/
Участие бесплатное - надо только зарегистрироваться.
Будут освещены вопросы Дельфи ХЕ5 в целом, и разработка под Андроид в частности.
Лично я пойду с коллегой по работе, в Тюмени у нас будет 13 марта, хочу попробовать собрать ещё народ, возможно тут на форуме, а ещё на нашем общетюменском форуме запощу.
От ивента жду интересных открытий и надеюсь познакомиться с людьми с перспективными взглядами
P.S. Не считайте рекламой, захотел поведать тем, до кого достучусь, пусть единомышленники на форуме услышат.
Не холивара ради, но все же.
В начале года планировал уйти от любимых делфей насовсем. Но на всем известный язык с двумя крестами еще не успел перенести свою кодобазу, да и в конкурсе поучаствовать охота, решил вернуться. Да не просто на делфи, а на лазарус и fpc, дабы впоследствии покодить кроссплатформ Второй заход. Первый успехом не увенчался. Второй, видимо, тоже
//эмоции
Ребята, как вы на этом лазарусе кодите?! На дворе 2014 год, а он выглядит хуже delphi 7. Не знает никаких ctrl + /, автоподстановки отвратительны, рефакторинг кривой, про вырвиглазную цветовую схему я даже и говорить не хочу. Может, конечно, меня IntelliJ IDEA + phpStorm развратили своим удобством и интеллектом и эстетичностью, но такая IDE как лазарус - апофеоз того, как не надо делать IDE. Я уже молчу про "Convert Delphi project" и многое другое.
//эмоции кончились
1. Кто юзает последние версии Delphi? Они действительно умеют из коробки компилять под андроид и иос? Причем, не vcl и FireMonkey, а ниже уровнем? Скажем, могу я туда запилить activity с opengles без всяких навесов?
2. Вероятно, есть какая-то другая среда для FPC, которая позволит мне кодить более комфортно? Визуальные компоненты не интересуют в принципе, ибо кодю свое окно через WinApi. Notepad++ не предлагать. Знаю про плагин FPC для IntelliJ IDEA, но так понял, что отладка практически невозможна.
Lazarus пару лет назад был еще хуже) Хотя и сейчас косяков хватает. Убедись, что используешь последнюю версию, т.к. довольно активно развивается. Когда пару лет назад пробовал из двух соседних версий одна была отвратительно неюзабельна, а другая вполне себе ничего. Юзаю версию под линь, что такое ctrl-/ не знаю в принципе, автоподстановки по моему получше чем в делфи 7, из рефакторинга юзаю только переименование(методов\переменных) работает вроде корректно(в делфи и такого не было). Для того, чтобы просто писать код вполне подходит.
Из багов с которыми я мирюсь - при открытом проекте, открываешь другой проект он не всегда открывается, надо закрывать\открывать. Ничего страшного. Кривоватый отладчик, который хреново показывает информацию по экземплярам класса. Тоже можно обходить добавлением отладочного кода, хотя это уже более смахивает на *нанизм.
Что мне очень нравится, так это то, что видно как проект развивается. Я сам несколько раз пытался на него пересесть с делфей, но каждый раз с матами переходил обратно. Но с каждым разом матов было все меньше, так как дикая глючность более ранних версий постепенно сменялась стабильностью более поздних.
лазарус начиная с версии 1.01 стал очень даже приятным и стабильным. ctrl+/ (если ты про многострочное комментирование) отлично работает. и да, лазарус очень быстро развивается.
Daemon написал:
1. Кто юзает последние версии Delphi? Они действительно умеют из коробки компилять под андроид и иос? Причем, не vcl и FireMonkey, а ниже уровнем? Скажем, могу я туда запилить activity с opengles без всяких навесов?
Я однажды пробовал докопаться до истины в этом вопросе - про низкоуровневый доступ из делфи на андроиде пока очень мало инфы. Все что удалось найти это это (осторожно китайский !): http://esv.cocolog-nifty.com/blog/2013/09/delphixe5firemo.html
Здесь как я понял напрямую используется Native Activity и другие нативные апи андроида, вручную создается GLES контекст... Я запускал этот пример, все работает, только еще одна проблема - весьма пока распространенный armv6 не поддерживается.
С iOS все еще печальней - без машины под управлением Mac OS не скомпилять ничего под iOS, мало того необходимо иметь также и Windows машину, в которой и будет происходить разработка, а уже компиляция и отладка - удаленно на Mac OS. У меня, правда, все это есть, но пробовать как-то небыло желания.
Ясно. Тогда пока на этот конкурс постараюсь сделать игру на старом-добром d2009, впоследствии чуть поковыряю лазарус. Но в перспективе, вероятно, совсем уйду на всем известный язык.
Ну вообще, есть ещё такая среда как MSE Можно и через вики добраться. Давно на неё облизываюсь, поставил , поигрался, но пока ничего серьёзного не предпринял, но нравится мне больше,чем лазарь (хотя и в нём мало работал). Но, конечно, с дельфи пока не сравнится, да хотя бы просто потому, что я всё ещё виндузятник.
Ещё есть интересный проектик IntelliJ IDEA + Pascal сам не пробовал, но выглядит добротно.
Естественно все эти проекты под фрипас компилятор (равно как и лазарь).
А с дельфей уходить не стоит :) Я, несмотря на использование сишарпа, остаюсь верен дельфи в работах "для души". В идеале, конечно, тоже запрыгнуть на фрипас и кроссплатформу (плюсом ещё было бы владение дзеном написания дельфи-фрипас портабельности кода), и потихоньку иду и к этому, чего и Вам желаю !
off
Опять решил откопать тему. Ну, вы поняли :)
Пробовал IDEA + Pascal plugin. Завести с fpc не смог.
Вернулся на лазарь, настроил под себя чуток, $mode delphi. Кодить в принципе можно. Даже начинаю втягиваться.
/off
Не могу заставить лазарь вывести русские символы в заголовок окна через WinApi. Вместо них кракозябры.
Юзаю CreateWindowW, TWndClassW, RegisterClassW, привожу caption к PWideChar ил UnicodeString / WideString. Все равно бяка. ЧЯДНТ? Пока без кода, рассчитываю на телепатию или какие иные приколы. В Delphi подобный код работает на ура.