Близится релиз Delphi XE5 (многие уже отмечают) и Embarcadero вслед за поддержкой iOS обещает нам поддержку Android. Мне как гику это кажется интересным, но нужна ли поддержка мобильных устройств рынку? Ведь есть уже немало средств разработки: от Objective C и Java до штук вроде Xamarin. Зачем еще одно?
Вот что я об этом думаю.
Традиционно сложилось, что сильная сторона Delphi — это корпоративные приложения. Различных учетных систем и прочих систем внутренней автоматизации на Delphi всегда было написано куда больше, чем коробочных продуктов. И мне кажется, что как раз в этой среде у мобильных приложений на Delphi есть шанс.
Благодаря инициативам вроде BYOD (Bring Your Own Device) мобильные устройства все больше проникают в корпоративную среду. В России, пожалуй, пока не очень, но в целом корпоративный мир движется в эту сторону. И мы там будем.
Мобильные возможности получают даже такие казалось бы традиционно десктопные продукты как Toad, получивший свое интернет-развитие в виде сервиса MyToad, позволяющего удаленно запускать выполнение SQL-скриптов [а вот DBArtisan от Embarcadero так не умеет ;)].
Многие считают веб-интерфейс панацеей, но это не совсем так. Есть и обратные мнения:
Facebook CEO said that «the biggest mistake we made as a company was betting too much on HTML5 as opposed to «native» code on the iOS and Android platforms».
Не будем останавливаться на веб, вернемся к BYOD. Слово «bring» как бы намекает нам, что устройство можно носить, то есть скорее всего оно мобильное. И вот эта возможность принести и использовать на работе собственное устройство влечет за собой некоторые последствия.
В первую очередь это конечно вопросы безопасности (что будет если пустить какой-то непонятный iPad в корпоративную сеть?). Но мы говорим про Delphi, вопросы безопасности пусть решают системные администраторы, благо крупные вендоры уже предлагают готовые инфраструктурные решения.
Главный касающийся Delphi вопрос — это отсутствие программного обеспечения. Если вы зайдете на Apple Store или Android Market, то увидите огромное количество приложений. Но корпоративным пользователям как правило нужны совсем не Angry Birds и не калькулятор калорий. Тем более что очень часто они работают с какой-то самодельной системой, мобильные клиенты для которой еще только предстоит разработать.
И если сама система была написана на Delphi, то встает выбор — разработать мобильное приложение на Delphi, повторно использовав часть кода и опыт имеющихся разработчиков, или нанять новых/обучить старых разработчиков и написать все с нуля на Objective C или Java. При такой постановке вопроса преимущества Delphi становятся видны. То есть определенная ниша для «мобильной» Delphi все-таки существует.
Так что посмотрим. Ваши мнения?
1. Всеволод Леонов
30 Авг 2013 1:57 пп
Очень интересно, масса тезисов, требующих выражения своего отношения к ним.
1. Мобильный сервис Toad — мы пока не видим эффективных сценариев использования для DBArtisan… Пока MyToad — просто рекламная поделка. Если нет — буду рад услышать ситуации, когда DBA-ю нужно было именно такая «тулза».
2. >>Зачем еще одно?
Большое «легаси» даже не кода, а навыков, знаний и менталитета разработчиков. Очень большая потребность была сформулирована именно так «когда будет Дельфи под Андроид?». Здесь Embarcadero увидела свою нишу хотя бы на уровне уже имеющейся инсталляционной базы.
3. Новые пользователи? Да, тут мы будем «биться на равных» и с Xamarin, и с «вендорскими» инструментами. Последние, кстати, легко побеждаются кроссплатформенностью относительно исходного кода проекта.
4. BYOD очень сложно обсуждать, т.к. очень сильно завязано на бизнес-модель конкретной компании. В Embaradero я использую сервис GoToMeeting в виде нативного мобильного приложения на iPad для вебинаров. Это — не тот BYOD в классическом понимании. Но теоретически это укладывается в модель «принес личное устройство, но использую в корпоративных нуждах со спецсофтом на нём».
4. >>мобильные клиенты для которой еще только предстоит разработать.
Абсолютно согласен! Проблема в том, что «бизнес пока не знает». Придумать ему сложно. Придумают ли программисты? Кто придумает? Уж точно не пользователи.
Есть подозрение, что BYOD подразумевает смену бизнес-процессов. Слишком сложно изменять сразу все с риском технологического отставания по мобильной части.
5. >>есть определенная ниша для «мобильной» Delphi все-таки существует.
Да, но её «наполняемость» зависит от разработчиков.
(Типа я стрелки перевожу? :) в некотором роде. Но и сам BYOD переводит стрелки:))
2. Александр Божко
30 Авг 2013 4:29 пп
А зачем тем же самым начинает заниматься сам Google?
http://www.pcweek.ru/mobile/article/detail.php?ID=153177
Это востребовано. На это есть спрос. И не только в корпоративном секторе.
Кстати, вслед за сокращением доли настольных ПК грядет сокращение доли настольных программистов. И Delphi 4 Android сильно удешевит «вход в мобильную разработку».
3. Роман Янковский
30 Авг 2013 4:46 пп
Всеволод Леонов,
Ты озвучил оба главных аргумента в пользу Delphi :)
Жизнь покажет насколько они верны.
Правда, не стоит забывать, что вендорские инструменты бесплатны или почти бесплатны.
Александр Божко,
Как я понимаю, Google этим занимается потому, что ему нужно продвигать собственную платформу. Все-таки это не то же самое, что делает Embarcadero.
И спрос на мобильные приложения есть. Глупо спорить. Но речь ведь не о том «есть ли спрос на мобильные приложения», а о том «есть ли спрос на мобильные приложения написанные на Delphi».
4. Kazantsev Alexey
30 Авг 2013 5:31 пп
2Александр Божко
>Кстати, вслед за сокращением доли настольных ПК грядет сокращение доли настольных программистов.
Сокращается доля на рынке потребительском, не корпоративном. Учитывая тот факт, что Delphi это все-же бизнес-ориентированная среда (как это ни прискорбно), «настольным» дельфистам бояться нужно не этого.
2Роман Янковский
«есть ли спрос на мобильные приложения написанные на Delphi»
Не так важно на чем написано приложение, если оно качественно выполняет возложенные на него задачи. Можно погуглить каким было качество Delphi for iOS. Удалось ли им улучшить качество платформы за полгода, это вопрос. Будет релиз — посмотрим, на крайний случай есть Oxygen и FPC :)
5. Роман Янковский
30 Авг 2013 6:02 пп
Kazantsev Alexey,
Это-то понятно, но кроме озвученного (сам я ничего не знаю о качестве Delphi for iOS, поверю на слово), есть множество влияющих на выбор моментов. Стоимость средства разработки, доступность специалистов на рынке труда, их уровень, количество и качество разнообразных сторонних библиотек и т.д. И даже такая странная, но немаловажная штука как мода.
6. Всеволод Леонов
30 Авг 2013 6:24 пп
@Роман Янковский
>>Ты озвучил оба главных аргумента в пользу Delphi :)
Работа такая :) А то некоторые забывают.
>>Правда, не стоит забывать, что вендорские инструменты бесплатны или почти бесплатны.
Экономика крайне проста. Даже абстрактно: сколько стоят 1 программист iOS и 1 программист Java/Android SDK в месяц? на разницу стоимости одного программиста Delphi +лицензию на Delphi вполне можно купить мороженное :)
Именно ТАК и считают независимые конторы и конторки. Они-то (микро-буржуи, похожие на рыбку-пиранью) вообще никогда не вступают холивары. Они другими категориями думают.
>>Как я понимаю, Google этим занимается потому, что ему нужно продвигать собственную платформу.
Нужно зачем? :)
@Александр Божко
>>Кстати, вслед за сокращением доли настольных ПК грядет сокращение доли настольных программистов.
Согласен с поправкой на не «сокращение», а «не рост». Что, однако, в бизнес-терминах практически одно и то же.
//——————————————————————————————
Тут я вынужден сделать паузу и ОТДЕЛЬНО поприветствовать Алексея Казанцева!
Вы — красивы, в меру красноречивы и достаточно корректны! Не верю своим глазам. (может, ник угнали?) Проверка связи, заполните пробел нужным словом
«Блест и …. FireMonkey».
Однако — к барьеру! (а то тролли на хабре какие-то скучные)
>>это все-же бизнес-ориентированная среда (как это ни прискорбно),
Чем вызвано Ваше прискорбие? Вы часом не «эмо»?
>>Можно погуглить каким было качество FPC
(составил из Ваших фраз)
7. Kazantsev Alexey
30 Авг 2013 8:49 пп
2Роман Янковский
>сам я ничего не знаю о качестве Delphi for iOS, поверю на слово
Можно не верить, а просто погуглить ;) Даже на форуме Эмбаркадеро были эпичные топики. Ну и ветку посвященную XE4 можно полистать на руборде, там все есть, и даже с цифрами.
>Стоимость средства разработки, доступность специалистов на рынке труда, их уровень, количество и качество разнообразных сторонних библиотек и т.д. И даже такая странная, но немаловажная штука как мода.
Да, мода нынче штука далеко не последняя, к сожалению. Но когда вообще Delphi была модной? Однако, вопреки моде, паскаль-тусовка была всегда (кстати, благодаря Java и C# в ней теперь нет случайных людей :) ). Не думаю, что в этом плане что-то изменится. Вот инструмент смениться может, это да. Кстати, со сторонним кодом тоже все не так гладко, как бы того хотелось. В мобильном компиляторе куча изменений, и пока авторы существующих библиотек почешутся привести свой код в соответстие, может пройти очень много времени.
2Всеволод Леонов
>Вы — красивы, в меру красноречивы и достаточно корректны! Не верю своим глазам
Да я вообще зайка, пока мне не врут в глаза (в глаза — образно, разумеется)
>Чем вызвано Ваше прискорбие?
Позицией Эмбаркадеро по вопросу оптимизации компилятора, в частности. На жалобы относительно низкой скорости вычислений с плавающей точкой ответом была позиция типа — Delphi это не инструмент для числодробилок. То есть, гриды не сильно тормозят и ладно. Качество компилятора таково, что по скорости вычислений его обгоняют больше чем в два раза .NET и Java (если кто захочет доказательств, дайте знать — расчехлю FreePascal for JVM). И все это на фоне рассказов о том, какой у нас замечательный нативный код.
>Можно погуглить каким было качество FPC
Чья бы корова мычала, а вашей бы с дженериками разобраться наконец. Спустя четыре года после их появления в компиляторе, пора-бы уже.
8. Александр Божко
30 Авг 2013 9:09 пп
6 (или сколько там?) лет Гуглу не нужно было продвигать Андроид и вдруг… неожиданно… решили продвинуть…
Нет!
Все дело в том, что Eclipse реально имеет массу недостатков и можно сделать нечто лучшее. Появилась возможность вклиниться в нишу. Вот и «клиняться» и EMBT и Google. У каждого свои козыри.
9. Роман Янковский
30 Авг 2013 9:38 пп
Естественно их цель продвижение платформы. Иначе бы они не делали Android Studio бесплатной. В отличие от Embarcadero, Google планирует зарабатывать совсем не на продаже средств разработки.
Ну а то что первое время был Eclipse, так не все сразу. Просто сейчас пришли к выводу, что для конкуренции с другими платформами, нужно улучшать среду разработки. И это правильно, у Apple и MS все куда серьезнее.
10. Kazantsev Alexey
30 Авг 2013 9:49 пп
Мало того, что у МС и Apple с инструментами все куда приятнее чем у Google, так еще и другие игроки имеют планы развития собственных мобильных платформ. Samsung, фактические подмявший под себя Android-рынок, не отказывался от Tizen. Так что Goole очень даже заинтересована в продвижении своей платформы, тем более, что планы у неё выходят далеко за рамки мобильных устройств.
11. Torbins
30 Авг 2013 11:50 пп
Поток мыслей по поводу BYOD и прочего: Мне кажется, что люди поиграются с планшетиками, и все равно потом к десктопам вернутся. Не все, конечно, но многие… и увидят на сколько десктоп отстал в плане удобства взаимодействия с пользователем. Так что одной из следующих волн после планшетов должна быть волна десктопов нового типа. Думаю, что Гугл уже просек фишку, и пилит под это дело новые версии Андроида, может даже в 5.0 что то для новых десктопов будет. Ну а десктопы — это профессиональное использование, а профессиональное использование — это часто нативный код, а кто у нас нативным кодом хвастается?
Еще один повод Гуглу думать о андроиде для десктопов это то, что у Майкрософта такая платформа уже имеется — это WinRT (смарт+планшет+десктоп). Скоро нечто аналогичное еще Каноникал выкатит. Да и Эпл активно работает над сближением своих платформ.
12. Keeper
31 Авг 2013 4:36 дп
Кину свое слово относительно того, что сказал Всеволод — «Большое «легаси» даже не кода, а навыков, знаний и менталитета разработчиков».
Только давеча коллега задал вопрос по поводу работы с TreeView в FM — небольшой пример по генерации кода по дереву. Стардартный FM TreeView. И тут я было подумал — сейчас кааак применю свои «легаси»-навыки, тем более что VCL TreeView и даже VirtualTreeView мне неплохо знакомы. Ага. Промучившись полчаса плюнул на поиск нужных методов и способов и переписал на VCL.
И это мелочь. Практически все мои попытки конвертировать VCL в FM обернулись крахом, хотя я достаточно пытался — то нет сообщений, то в одно время не было экшенов, ImageList’ов, то компоненты начинают вести себя дико странно, то еще что не говоря уже про БД, которые надо тоже перевести на кроссплатформенную основу. Такие пироги.
И я не хочу сказать, что FM плоха, но порой ощущение, что этим никто не пользуется судя по кол-ву неисправленных багов, гуглить которые можно очень долго. Возможно, это первостепенная задача — резко повысить стабильность фреймворка, довести его хотя бы до уровня VCL. Думаю, существенным прорывом будет переписать IDE на FM — но тут у меня большие сомнения, что это состоится.
Чего действительно не хватает помимо этого в Delphi (по крайней мере относительно всех заявлений) — это настоящего (!) single-code base. Программирование под Mac — это не то что использование своих навыков, это написание кода практически с нуля. Чего только одни TNSString.Wrap стоят. Это не универсальность, а хз что. Простой пример — запуск файлов: Lazarus (http://stackoverflow.com/a/616264), qt (http://stackoverflow.com/a/13767171) и Delphi (http://stackoverflow.com/a/7453797). И у кого здесь single-code base, унифицированность кода?
А без этого можно еще после Андроида 10 платформ добавлять — и под каждую из них будет ощущение, что пишешь где на смеси Objective-C с Delphi, где Java и Delphi.
13. Kazantsev Alexey
31 Авг 2013 12:35 пп
2Keeper
Справедливости ради, заполнение TreeView в FMX ни чуть не сложнее чем в VCL — мучиться там просто не с чем — и уж точно не требуется полчаса на то, чтобы открыть демку CustomTreeView и посмотреть код заполнения дерева :) Олдскульные сообщения тоже никуда не пропали — механизм их диспетчеризации встроен в базовый класс — TObject, и по прежнему прекрасно работает. В FMX они не используются, это правда, там изобрели свой механизм диспатчинга (можно посмотреть в FMX.Messages).
14. Keeper
31 Авг 2013 2:03 пп
2 Kazantsev Alexey:
Возможно и не сложнее, я говорил о переносе кода один в один. Не получилось, возможно руки кривые, все может быть )
15. Всевлод Леонов
2 Сен 2013 11:14 дп
@Kazantsev Alexey
Нытьё про скорость кода из-под компилятора Delphi — просто из желание погундень. Иногда образ «сироты казанской» типа «подайте быстрый компилятор» конечно для развития эмоциональной пластики достаточно полезен. Но НИКТО серьезно не будет про это говорить, т.к. нет абстрактной скорости кода. Есть конкретные задачи, которые Вы почему-то постоянно не упоминаете. Не, приятно, когда специалист умеет пользоваться гуглом и часто заглядывает в форумы Embarcadero (и stackoverflow). Но сами-то — что делаете? Или так — в пользу бедных («сирот казанских»).
Параллельте вычисления по ядрам, по компьютерам — будет Вас счастье, если скорости не хватает. Скоро будет вебинар с Андреем Карповым на счёт параллельности. Поделюсь собственным опытом тоже.
>>Спустя четыре года после их появления в компиляторе, пора-бы уже.
Конкретно ссылки на QC. Иначе — художественный свист.
16. Всевлод Леонов
2 Сен 2013 11:29 дп
@Keeper
>>Практически все мои попытки конвертировать VCL в FM обернулись
Это не есть legacy навыков, знаний и умений.
>>Промучившись полчаса
Всё-равно это будет всяк быстрее, чем выучить Java/IDE нужную, а потом Objective-C/Xcode
>>это не то что использование своих навыков, это написание кода практически с нуля.
Юрий, смешиваете.
Написание кода с «нуля» и «использование навыков» не находятся в противоречии.
VCL->FM практически невозможно. Но Вы же только написали, что сели и начали разбираться в FM. Да, код будет «новый», но Вы как специалист — «старый» (не в плане возраста).
>>это настоящего (!) single-code base.
Юрий, нет АБСТРАКТНЫХ понятий в нашей жизни. Что такое «настоящий»? Я свои примеры легко перегоняю с FM для Windows на Mac OS, а потом на iOS и уже на Android.
А какое у Вас настоящее?
>>Чего только одни TNSString.Wrap стоят. Это не универсальность, а хз что
Ну а Вы-то что предлагаете? :)
Получается, что Вы открываете копот машины и «блин! х.з. что! я думал, там — второй багажник, а там какой-то странный грязный плохо пахнущий агрегат». Это — двигатель. А ещё есть и коробка передач. Вот Wrap и есть — коробка передач. Ну а Вы — на прямом валу хотите ездить!
Тогда ездите на паровозе. Или на ракете летайте (вместе с Алексеем Казанцевым). Скорость — невбубенная, коробки передач нет, ограничений -нет.
17. Всевлод Леонов
2 Сен 2013 11:32 дп
@Keeper
>>без этого можно еще после Андроида 10 платформ добавлять — и под каждую из них будет ощущение, что пишешь где на смеси Objective-C с Delphi, где Java и Delphi.
Ну не надо говорить, чего не видели! Вроде — в учебно-научном учреждении работаете, там вроде учат двигать мысли проверять практикой. Вы бету скачали? Вы пробовали код писать кроссплатформенно-мобильный? Нет там никаких ощущений «Java» или «Objective-C».
Вот так мне неприятно Вас стыдить! К прискорбию сказать — приходится :)
18. Kazantsev Alexey
2 Сен 2013 1:10 пп
2Всевлод Леонов
>Но НИКТО серьезно не будет про это говорить, т.к. нет абстрактной скорости кода.
Верно, есть вполне конкретная — скорость выполнения операций с плавающей точкой.
>Есть конкретные задачи, которые Вы почему-то постоянно не упоминаете.
Во-первых откуда взялось «постоянно»? Во-вторых, если я сейчас не занимаюсь вычислениями это еще не значит, что я не могу говорить об этой проблеме. Я, честно говоря, не сомневаюсь, что вы прекрасно осведомлены об уровне качества вашего компилятора, просто в очередной раз пытаетесь делать хорошую мину при плохой игре.
>Параллельте вычисления по ядрам, по компьютерам — будет Вас счастье, если скорости не хватает.
При нулевой-то поддержке со стороны компилятора… Спасибо за совет. При том, что даже в студенческой поделке PascalABC.NET — при всей её глючности и падучести — распараллеливание поддерживается на уровне компилятора, не говоря уж о C#, Oxygen и прочих.
>Конкретно ссылки на QC. Иначе — художественный свист.
Да пожалуйста — 73 открытых бага, включая регрессии.
19. Денис Мартьянов
2 Сен 2013 7:31 пп
@Всеволод Леонов
Всеволод, а Вам никогда не приходило в голову, что Вам, как официальному представителю Embarcadero, следует хоть немного адекватнее общаться? Что тут, что на офф. форумах, что (особенно заметно) на Хабре — «у меня мои «Hello world» работают отлично, все зашибенно, мир розовый, а вы все вокруг тупизни с несусветным радиусом кривизны рук, которых вообще к программированию подпускать нельзя». Серьезно, после прочтения подобных постов уже просто не хочется идти ни на одну конференцию/вебинар российского представительства Embarcadero — не хочется еще и там Ваше бахвальство и осознание Вашего Величия слушать.
P.S. Прекрасно осознаю, что до высоты Вашего Величия данный мессейдж не дойдет. Но не попытаться я не могу, ибо накипело.
20. Keeper
2 Сен 2013 8:47 пп
2 Всеволод Леонов:
Стыдиться мне в любом случае нечего, я описываю свой прикладной взгляд на вещи :)
Раз уж спросили — отвечаю. Для меня «настоящий» single-code base это что-то типа такого:
—
var
str: string; // Путь к приложению
…
ПроцедураДляЗапускаФайлаВТекущейОС(str);
—
И все (в конце концов это простая операция!). Аналогично должны происходить и другие вещи, имеющие общие представления во всех ОС — и я не должен думать о том, что мне завести, string или TNSString, или еще что.
Создали бы хорошие обертки, зачем перекладывать это на разработчиков?
И да, когда у меня в коде куча TNSString.Wrap я вижу перед глазами не Delphi, а Objective-C, в Delphi для меня строка — это что угодно, но не это. Это касается FMX для MacOS. В этом, конечно тоже есть плюс, но это определенно не Delphi-style.
Что касается беты и кроссплатформенно-мобильных приложений — не пробовал, это не актуально для меня в настоящий момент, их я и не упоминал.
21. Роман Янковский
2 Сен 2013 10:04 пп
Да, отсутствие общей для всех ПроцедурыДляЗапускаФайла меня в свое время очень удивило. Есть ощущение, будто над платформами нет единого идейного руководства. Все сами по себе.
22. Kazantsev Alexey
2 Сен 2013 10:50 пп
Кстати, да. И если такая ситуация простительна Oxygen’у, т.к. его идеология как раз и заключается в максимально глубой интеграции в платформу (настолько глубокой, что нет даже собственной RTL, хотя они над этим работают). То для Delphi, избравшей путь максимального абстрагирования от платформы это никуда не годится.
23. Всеволод Леонов
2 Сен 2013 11:42 пп
@Денис Мартьянов
>>«у меня мои «Hello world» работают отлично, все зашибенно, мир розовый, а вы все вокруг тупизни с несусветным радиусом кривизны рук, которых вообще к программированию подпускать нельзя».
Это Вы сейчас кого процитировали? Неужели, меня?
Теперь либо давайте ссылку на мои такие слова, либо извиняйтесь. Как честный человек.
>>Серьезно, после прочтения подобных постов уже просто не хочется идти ни на одну конференцию/вебинар российского представительства Embarcadero —
Да ладно Вам сердиться! Приходите 24-го сентября на семинар в Москве.
>>не хочется еще и там Ваше бахвальство и осознание Вашего Величия слушать.
Моё? Бахвальство? Это сейчас Вы о чём?
>>P.S. Прекрасно осознаю, что до высоты Вашего Величия данный мессейдж не дойдет. Но не попытаться я не могу, ибо накипело.
Тогда точно приходите 24-го сентября на семинар. Пообщаемся!
24. Всеволод Леонов
2 Сен 2013 11:49 пп
@Alexey Kazantsev
>>Верно, есть вполне конкретная — скорость выполнения операций с плавающей точкой.
Дальше-то что? Как Вам эта скорость мешает жить? Или просто хочется повредничать?
>>При нулевой-то поддержке со стороны компилятора…
OmniThreadLibrary — слыхали?
И если опять говорить о параллелизме, то алгоритмическое распараллеливание имеет более высокий порядок сложности.
А Вы опять — штихель штихелю рознь.
>>не говоря уж о C#, Oxygen и прочих.
И много Вы написали параллельных движком на этих системах? Или так — за «советскую власть»? Типа «дело принципа»?
25. Всеволод Леонов
2 Сен 2013 11:52 пп
@Keeper
>>ПроцедураДляЗапускаФайлаВТекущейОС(str);
Это — очень принципиально? Давайте больше без абстракций.
Конкретно — какую задачу решать собираетесь?
>>Создали бы хорошие обертки, зачем перекладывать это на разработчиков?
Ну где ж Вы так сильно упарились? Или Вы за «всех разработчиков радеете»?
>>Что касается беты и кроссплатформенно-мобильных приложений — не пробовал, это не актуально для меня в настоящий момент, их я и не упоминал.
Отлично. Тогда к чему всё это в топике «мобильность в Delphi»?
26. Денис Мартьянов
2 Сен 2013 11:53 пп
@Всеволод Леонов
Это я не цитировал, конечно же. Если бы Вы написали именно такие фразы, боюсь, разговаривать было бы совсем не о чем уже :) Это общее Ваше отношение к собеседнику практически в любом споре, причем даже не важно, Вы ли более убедительны или у оппонента аргументов больше.
Всеволод, я, к сожалению, прилететь на семинар в Москву вряд ли смогу, да и смысла большого, как мне кажется, в этом нет — не «пощупав» продукт руками (касательно XE5 и изменений в архитектуре, которые нужны и необходимость которых Embarcadero в Вашем лице так старательно отрицает) — общаться будет не о чем, на аргументы «А в XE5 все не так» мне лично ответить будет нечего, т.к. беты в руки не брал.
Ну а вообще — пожалуй, предложу завершить оффтопик, все же автор оригинального поста несколько о другом писал.
27. Всеволод Леонов
3 Сен 2013 12:07 дп
@Alexey Kazantsev
Да, про дженерики. Чё-то с рейтингом не очень.
Кстати, не мешало бы Вам ознакомится с материалом вебинара Александра Алексеева — он очень доходчиво рассказывает про баги, приоритеты и порядок их исправления.
http://blogs.embarcadero.com/vsevolodleonov/2012/12/26/delphi_exception_webinar/
Это так — для общего понимания ситуации. Конечно, пытаться надуть себе мнимый рейтинг — дело интересное. Но на постоянном критиканстве больших высот не достигнуть. Получить имидж «очередного ваки» легко. Дальше-то как жить? Я уже 2-ой год читаю Ваш сварливый занудный материал (ну да, цитировать qc таланта большого не надо). Некреативно как-то.
Понятно дело, примерить маску мессианства типа «буду клеймить Embarcadero, пока они не исправятся» — как-то самовозвеличивает. Только это означает разматывать свой талант (несомненно, у Вас имеющийся) на разрушение, а не созидание.
Нашли ошибку? Напишите, как Вы предлагаете её решить. Помогите другим. Покажите ловкость ума, чтобы «с палкой и верёвкой» сотворить техническое чудо. А то уже на ходячий демотиватор похожи стали, только без юмора. :) Давайте уже, живенько, креативненько. Вот Вам образец критики:
http://www.webdelphi.ru/2012/12/firemonkey-ot-prostogo-k-slozhnomu-12-ispolzovanie-dragdrop/
И это — Keeper-а нам испортил! Чудо был, а не молодой специалист. Прилежный, аккуратный, блог вёл. А теперь? То же самое — «бу-бу-бу». Не надоело?
28. Всеволод Леонов
3 Сен 2013 12:24 дп
@Денис Мартьянов
>> к сожалению, прилететь на семинар в Москву вряд ли смогу
Будет online трансляция.
Мы пригласили Евгения Крюкова — автора и архитектора FireMonkey. Вопросы — будет открытая сессия вопросов/ответов, вопросы можно будет задавать через twitter. Так что — велком. Пригласили представителя Google — Дмитрия Мартынова.
>>т.к. беты в руки не брал.
Самое оно — посмотреть трансляцию. Тогда когда уже «руки дойдут» — уже информационное поле мы Вам постараемся сформировать.
>>Ну а вообще — пожалуй, предложу завершить оффтопик
Да, согласен. Только вот на какой ноте.
Я — часть Embarcadero и вижу процессы, которые происходят. Вижу, как интенсивно работают программисты, в частности, талантливые российские инженеры — многих лично знаю. И вот так когда огульно начинается «хз что понаделали», «генетическая кривизна ФМ» — реально становится обидно. Люди душу вкладывают, а тут совершенная безответственность и довольно странноватые попытки прослыть экспертом. Я много общаюсь с профессионалами, НИКТО никогда не говорит гадости в адрес разработчиков. Собственно, и в интернете-то осталось 5-10 «оголтелых» (в силу должностных обязанностей знаю их хорошо:).
Там можно «зачмырить» хирурга, который — да — на этапе становления новой технологии сделал на совсем удачную операцию. Можно и инженерам-испытателям сказать — «эх вы, бездари», ваш новый двигатель даёт не 200, а 150 км/ч! История космоса насчитывает также кучу примеров, когда из-за «нестабильности платформы» случались и катастрофы.
Надо понимать, что Embarcadero не имеет сверхдоходов для скупки других компаний с готовыми компиляторами/технологиями. Многое приходится делать самим. Все нововведения делаются в приоритетных направлениях — да, бывает и в ущерб старым наболевшим багам. И большинство разработчиков — пользователей Delphi это понимает.
В принципе, я мог бы махнуть рукой и на Keeper-а с Kazantsev-ым. Знаете ли, игнор — самое большое наказание. Но я верю в людей, в их умение проявлять осознанность. В нашем случае — заглянуть в себя и понять истинную мотивацию своих поступков. Будем знать мотивацию, научимся программировать людей, что оказывается гораздо проще, чем компьютеры.
29. Keeper
3 Сен 2013 1:02 дп
2 Всеволод Леонов
Суть моего месседжа была вовсе не в наличии какой-то конкретной процедуры — перечитайте еще разок, посмотрите ссылки — нельзя так непереваривать критику.
Да и вообще, это не критика и не «бу-бу-бу», а простые пожелания клиента и сторонника языка (кстати, вполне культурные, без описания у кого откуда что растет, и кто как что делал раньше), на которые можно ответить что-то типа «да, это было бы неплохо» или «идея плоха потому-то», или «нет, такое вряд ли будет, потому что не соответствует идеям платформы/руководства/компании», или еще что-то придумать, благо фантазии у Вас в ответах хоть отбавляй.
А так — закидали как обычно всех шапками и все. Увы, это печально.
30. Kazantsev Alexey
3 Сен 2013 2:29 дп
>Как Вам эта скорость мешает жить? Или просто хочется повредничать?
Когда у вас, господа, «нативный код» и «производительность» подняты на флаги, а в реальности код из-под компилятора сливает некогда тормозной джаве… Да, вы можете думать, что мне очень хочется повредничать, но я, как давний приверженец языка, желаю призвать вас к ответу.
>OmniThreadLibrary — слыхали?
Да я много чего слышал, только какое отношение это имеет к поддержке параллелизма со стороны компилятора мне не понятно. Раз уж мне было рекомендовано параллелить вычисления «по ядрам, по компьютерам», так и решение нужно-бы озвучить «изкоробочное». Или вообще темы параллельных вычислений не касаться.
>И если опять говорить о параллелизме, то алгоритмическое распараллеливание имеет более высокий порядок сложности.
Это правда. Только это ни коим образом не отменяет необходимости наличия встроенной поддержки параллелизма в компиляторе претендующем на звание современного.
>И много Вы написали параллельных движком на этих системах?
Для того чтоб видеть альтернативы не нужно писать параллельных движков — достаточно знать как делается «там», и что нам предлагается «здесь». А опыт реализации пула потоков с приоритетными очередями исполнения у меня имеется, не извольте сомневаться.
>Да, про дженерики. Чё-то с рейтингом не очень.
Человеку задокументировавшему баг не интересны рейтинги, ему интересно, когда этот баг будет исправлен и что ему делать с некомпилируемым/неработающим кодом написаным в соответствии с формальными требованиями языка. И только это имеет значение. Кстати, рейтинг выставляется за качество составления отчета, и не более того.
>Конечно, пытаться надуть себе мнимый рейтинг — дело интересное.
Унылый сеанс психоанализа номер раз.
>Я уже 2-ой год читаю Ваш сварливый занудный материал (ну да, цитировать qc таланта большого не надо). Некреативно как-то.
Если речь о блоге, то избавить себя от душевных страданий очень легко — достаточно просто не читать. Пусть читают другие, и видят обратную сторону трибунных лозунгов Embarcadero.
>Понятно дело, примерить маску мессианства типа «буду клеймить Embarcadero, пока они не исправятся» — как-то самовозвеличивает.
Унылый сеанс психоанализа номер два.
>Нашли ошибку? Напишите, как Вы предлагаете её решить. Помогите другим. Покажите ловкость ума, чтобы «с палкой и верёвкой» сотворить техническое чудо.
Эта например. Багу скоро год, за него проголосовало десять человек, имеется описание решения. И? С FMX вообще все печально — можно только тем и заниматься, что вместо работы отчеты в QC строчить.
31. Cat
3 Сен 2013 10:35 дп
Что будет нового в С++ Builder XE5? Спасибо.
32. Всеволод Леонов
3 Сен 2013 10:36 дп
@Keeper
>>А так — закидали как обычно всех шапками и все. Увы, это печально.
Не надо было Вам писать про «хз».
Шапками — ну для Вашего же блага! Мы ж с Вами имеем один культурный код. Только про экономику Вы позволяете себе мыслить системными категориями, а в сфере инструментов разработки — нет. Обсуждаем «мобильные перспективы», а Вы зубами уцепились за какую-то отдельную функцию. Представьте себе, если человек масштаба Хазина будет говорить об экономике США и России тупо сравнивая узоры на $100 и 100 р. банкнотах.
Понятно, что хочется искать простых ответов на сложные вопросы. Типа «дураки в Embarcadero». Или «плохую платформу придумали». Но категоричность мышления — она ж ГАСИТ КРЕАТИВНОСТЬ. Я думаю, НЛП Вы знаете достаточно хорошо. Первый шаг к успеху — перестать думать категорично. Даже на Ваш счёт — как начало Вас кренить в критицизм — совсем писать статьи в блог перестали. Лично для меня это — потеря, я помню как у Вас это хорошо шло. Возвращайтесь в креативный класс :) (в лучшем значении этого слова).
33. Денис Мартьянов
3 Сен 2013 10:37 дп
@Cat
Поддержка мобильных платформ, конечно же. Десктоп сейчас признан не приоритетным направлением, никакого развития эта часть, думаю, не получает ни в Builder-е, ни в Delphi.
34. Всеволод Леонов
3 Сен 2013 10:42 дп
@Cat
>>Что будет нового в С++ Builder XE5? Спасибо.
C++ будет догонять Delphi. В ближайшем релизе ХЕ5 этого «догоняния» мы, скорее всего, наблюдать не будем. Догон по части Android и iOS случится, как планируется, в декабре 2013 г.
Что конкретно будет в сентябре для «билдерцев» — к сожалению, ничего нового. Но если во времена «Борланда» отставание было на год/релиз, то сейчас эта дистанция сокращена до одного квартала.
С++ для нативной разрабокти под iOS и Android в рамках C++Builder — долгожданный продукт. Сам с нетерпением жду декабря.
35. Всеволод Леонов
3 Сен 2013 10:45 дп
@Денис Мартьянов
>>Десктоп сейчас признан не приоритетным направлением, никакого развития эта часть,
Но в этом нет некой «высшей злой воли». Так рынок сложился. Но не «рынок» в плане «конъюнктуры», а потребительской активности в области новых технологий. Бурный рост мобильности на фоне стагнации десткопов. Нет идей, метафор интерфейса, принципов взаимодействия…
Была попытка сделать touch-screen-ы для desktop-мониторов, но она не пошла.
Так что это — объективные факторы. Embarcadero лишь следует общей логике развития IT-цивилизации, как ни пафосно это звучит.
36. Всеволод Леонов
3 Сен 2013 11:10 дп
@Alexey Kazantsev
>>Да, вы можете думать, что мне очень хочется повредничать, но я, как давний приверженец языка, желаю призвать вас к ответу.
О! Призвали! Прямо таки взяли за грудки и припёрли спиной к стенке.
Тут главное не переоценить свою физическую кондицию и приобретённые навыки.
Смотрите, Java сливает сама себе. Это и дыры в безопасности, и общие проблемы «прокладок» между приложением и ОС/железом. С++ получил второе дыхание. Нативность на Андроиде. Это ж не просто так. Почему многие Mac OS-овцы вообще выносят Java?
Но надо понимать, что процессы не линейны. Alexey, у Вас есть высшее образование? Лекции мат. анализа не прогуливали? Нелинейно всё. Не-линейно. Если бы всё было линейно, то машины бы не бились. Тормозной путь нелинейно зависит от скорости автомобиля.
Так и наши — Embarcadero-вские компиляторы. Нелинейно развиваются. Сейчас в приоритете не скорость компилятора, а охват мобильных платформ. Когда с этой мега-задачей закончим — да, будем выжимать максимум из компилятора.
Про пинки Java. Послушайте вебинар Страуструпа для Embarcadero, он там очень хорошо сравнивает нативный код с управляемым.
>>Да я много чего слышал, только какое отношение это имеет к поддержке параллелизма со стороны компилятора мне не понятно.
Объясню (работа такая). Вам нужно реализовать некий параллелизм в Delphi? Или просто потрепаться, дескать «а есть такой, только без крыльев»?
Нужно параллелить — берите OmniThreadLibrary и работайте на-здоровье.
Упреждаю следующие писки — в С++ тоже много чего сделано не встроенными языковыми, но библиотечными функциями.
>>так и решение нужно-бы озвучить «изкоробочное».
Нет решений непоставленных задач. Вы над какой задачей по распараллеливанию работаете? Не работаете? Занимаетесь художественным свистом. Романс: «Где ты мой параллельный? Тоскую, мочи нет?»
>>— достаточно знать как делается «там», и что нам предлагается «здесь»
Ну, наконец-то! Проявили себя! Ваша задача «знать». Мета-модель НЛП. Такой вот умник — энциклопедист. Ничего не умеет — всё знает.
На такой схеме сильно сужаете поле для творчества. Хорошо/плохо, нравится/не нравится. Проблемы буду с реализацией. Само-реализацией.
>>А опыт реализации пула потоков с приоритетными очередями исполнения у меня имеется, не извольте сомневаться.
Ссылки?
>>Человеку задокументировавшему баг не интересны рейтинги, ему интересно, когда этот баг будет исправлен
Неправильный подход. Всё-таки рекомендую вебинар уважаемого Александра Алексеева послушать.
Можно кумулятивно процитировать В. Маяковского:
Начинайте мыслить более общими категориями. Тогда и масштаб личности возрастёт.
>>Пусть читают другие, и видят обратную сторону трибунных лозунгов Embarcadero.
Дык Вы заражены мессианством! Только «мессия» есть творец. Созидатель. Критиканы обычно неспособны на великие дела. Так, мелкий неопасный гундёж.
>>Унылый сеанс психоанализа номер раз.
Абсолютно правы! Вы можете заразить унынием любого, даже такого несгибаемого оптимиста. Наверное, «капризность» и «уныние» — это от недостатка тестостерона в организме.
>>Унылый сеанс психоанализа номер два.
Ок, развеселите всех. Напишите Вашу мотивацию в написании комментариев.
Мы похочем.
Так и начните (а я помогу с вариантами ответов):
Я, Алексей Казанцев, пишу критические комментарии с элементами передёргивания и необъективности, а также умышленно искажая объективную картину на рынке средств разработки, т.к.:
а) это поможет Embarcadero выпускать качественные продукты
б) это поможет улучшить Embarcadero в плане управления;
в) это поможет убить Embarcadero, как компанию
г) это поможет мне, Алексею Казанцеву, найти друзей
д) …. найти единомышленников
е) …. создать сообщество Хейтеров
ё) …. блеснуть умом
….
37. Роман Янковский
3 Сен 2013 11:15 дп
Про «дураков в Embarcadero», по-моему, никто здесь не писал :)
38. Денис Мартьянов
3 Сен 2013 11:23 дп
@Всеволод
Всеволод, окиньте взглядом Ваши последние 2-3 поста. Что это, как не «бахвальство и осознание Вашего Величия», может не конкретно Вашего, а Embarcadero, которую Вы представляете. Вы не хотите слышать доводов оппонентов, Вы не принимаете их задач и проблем.
«Отправили баг в QC? Да полноте, кому интересно Ваше мнение, выскажите его жене, мы все равно их править не будем, а будем клепать новые платформы» (даже Маяковского привлекли на свою сторону).
«Говорите, что имеете опыт реализации пула потоков? Да не верю я Вам, куда там с Вашими кривыми руками. Дайте мне реализацию, и неважно, что она может быть чем-то собственностью — пока сам не увижу, не поверю».
«Ваше мнение не совпадает с моим? Тогда все, что Вы пишете — есть художественный свист и унылый гундеж».
И после такого отношения к оппонентам Вы призываете с вами общаться и что-то с Вами обсуждать? Спасибо, но не хочется.
39. Всеволод Леонов
3 Сен 2013 12:02 пп
@Роман Янковский
>>Про «дураков в Embarcadero», по-моему, никто здесь не писал :)
Есть семантические эквиваленты. Если подойти к программисту и сказать, что «Ваш код, уважаемый, неэффективен, Ваш продукт — никчемен, примененные решения — неудачны, а есть и другие функциональные аналоги, которые гораздо более лучшие по ряду параметров».
Аналогично его можно назвать «дураком». Только в ряде случаев «дурак» звучит мягче.
Собственно, когда шКипер писал «хз что» в отношении людей, которые на порядок больше него знают и умеют по части программирования, то это я считаю недопустимым.
Когда «Сирота Казанская» плачет, что ему недодали «параллелизма и всего того, что есть в C#» — это тоже к вопросу профессиональной этики и человеческой нравственности.
У меня куча вопросов к MS, но я никогда не буду троллить ни компанию, ни отдельно взятых сотрудников. Я даже с Дмитрием Сошниковым сделал совместный доклад как-то.
Это как прийти ко входу магазина Apple Store со сломанным iPhone-ом и хватать посетителей за руку с криком «фигню продают, фигню продают».
Какова мотивация такого поведения?
40. Всеволод Леонов
3 Сен 2013 12:09 пп
@Денис Мартьянов
>>Что это, как не «бахвальство и осознание Вашего Величия», может не конкретно Вашего, а Embarcadero, которую Вы представляете.
Embarcadero — действительно очень хорошая компания, которая не дала Delphi погибнуть, нашла силы и средства как минимум для поддержания её экосистемы.
Сейчас началась новая эра в развитии Delphi — мобильная разработка на основе единого исходного кода. Я знаю разработчиков — весьма достойные люди, профессионалы.
Простой пример — подумайте на досуге, что такое запустить процесс на iPad в режиме отладки из Delphi?
Я вот не думаю, что с разбегу ума хватит понять, что там как должно работать. И огульно всё вот так мешать с ….
Просто к вопросу о уровне нравственности конкретных людей. А также к вопросу, что ими движет в такой момент.
>>(даже Маяковского привлекли на свою сторону).
Вы любите поэзию?
>>И после такого отношения к оппонентам Вы призываете с вами общаться и что-то с Вами обсуждать? Спасибо, но не хочется.
Тогда послушаем музыку http://www.youtube.com/watch?v=oaSicf98fn4 Маяковский — гений метафор!
41. Денис Мартьянов
3 Сен 2013 12:20 пп
@Всеволод
Не вижу здесь примеров, когда кто-либо мешает каких-либо людей с грязью. Высказывается недовольство выставлением приоритетов? Да.
Указываются очевидные (возможно, очевидные не всем участвующим в разговоре) вещи, по которым Delphi проигрывает другим решениям? Да, и это есть.
Дается «обратная связь», которая должна помогать увидеть, что хочет «клиент»? И это тоже.
А вот с грязью никто никого (разве что кроме Вас) не мешает. А вот Вы вовсю вешаете ярлыки и ставите под сомнение уровень интеллекта оппонентов. Как-то не такого ожидаешь от официального лица столь же мною, как и Вами, уважаемой компании. Нежелание признавать наличие проблем — это тоже «диагноз», которые Вы так старательно раздаете направо и налево.
P.S. Приношу извинения Автору за развязанный в комментариях «холи»-вар. Ухожу из комментариев данного топика, дабы не провоцировать далее эскалацию.
42. Kazantsev Alexey
3 Сен 2013 12:31 пп
Это чудесно. Неприкрытое хамство со стороны официального представителя Embarcadero и ни слова по сути. Что ж, удачи вам в завоевании умов и сердец. Для себя лично не считаю возможным опускаться до вашего уровня и откланиваюсь.
43. Всеволод Леонов
3 Сен 2013 1:36 пп
>>Дается «обратная связь», которая должна помогать увидеть, что хочет «клиент»?
В четвертом квартале в Москву планирует свой приезд Марко Канту — легендарный гуру Delphi. Москву Марко посетит в ранге «project manager». Смысл его визита будет проведение фокус-группы для выяснения наиболее насущных направлений развития Delphi с позиции реальных разработчиков масштабных проектов.
Кто хочет цивилизованным способом повлиять на стратегию развития продукта — пишите мне, приглашения на мероприятие будут адресными.
44. Keeper
3 Сен 2013 1:55 пп
Солидарен с Денисом и Алексеем. Исчезаю.
45. Cat
3 Сен 2013 10:06 пп
Это хорошо, что исчезаете, а то это нытье реально надоедает. Ну не нравиться вам Embarcadero RAD и намеченные пути ее развития ну так идете и используйте другие среды разработки C# и т.д. и т.п.
Всеволод, все таки если не брать кардинальные нововведения типа мобильной разработки в декабре для С++, то все же, что-то было сделано для С++ Builder XE5 (например, дальнейшее усовершенствование DataSnap и т.п.)? Или С++ Builder вообще не трогали до декабря?
46. Всеволод Леонов
4 Сен 2013 12:46 дп
@Cat
Жму руку совершенно искренне. Я никогда не отрицал существующие проблемы. Всегда говорил о них прямо и открыто — откуда они, почему и как жить дальше. Сейчас всё так развивается стремительно, что промедление смерти подобно. MS вдруг себя объявляет компанией hardware & services. Android обгоняет Apple, идеал которой «закрытость», «элитарность» и «возвышенность». Netbook-и умирают как класс, мобильный интернет грозит обогнать обычный (даже с учётом видео). Виртуальная реальность подкралась со стороны телевизора. Очки разговаривают с человеком, часы берут анализы, смартфон ночью обрезает провода компьютеру, кот играет в планшет, пока вы на работе и т.д. Embarcadero — да — все силы бросила на мобильные средства разработки. Ну нет времени сейчас доделывать дженерики в старом компиляторе. Какой смысл «допиливать IDE», если есть шансы перейти на новую? Я просто не могу рассказать, какие сильные идеи внутри компании, инициированные тиктаническими сдвигами во всей IT-сфере. Да ну что я рассказываю — все новости читают.
Сорри за оффтоп :)
Исторически (генетически) C++Builder шёл позади Delphi, это было очень удобно. Всё создавалось под Delphi, потом переводилось под C++Builder. Так и идёт и с FireMonkey (которая с релиза ХЕ5 будет называться «платформа приложений FM» (FM application platform). Походу «общественное мнение» склонилось не в пользу «огненной обезьяны». Домен firemonkey.ru, который я выкупил, чтобы какие-нибудь неадекваты не устроили помойку, освобождается, т.к. «firemonkey.ru» уже не бренд.
Поэтому всё, что сделано в FM на уровне Windows и Mac OS для Delphi автоматически (точнее, малой кровью) достаточно быстро (в срок подготовки релиза) попадает и в C++Builder. Да, там что-то конвертируется автоматом, что-то допиливается руками в зависимости от особенностей именно С++. Спец-подразделение по перегонке фич из Delphi в C++Builder все делает пока и к счастью синхронно.
Что сейчас с разбегу можно сказать (уже видел релизную документацию на Delphi и C++Builder). Допиливание FM и новые компоненты FM будут и в Delphi, и в С++Builder (Windows, Mac OS). FireDAC — тоже «и туда, и туда» со всеми фичами. DataSnap не сильно эволюционировал, разве что обновились «мобильные коннекторы» под новые мобильные ОС. Появились новые компоненты для REST-взаимодействия. Всё это будет доступно и в C++Builder XE5.
Расхождение пошло в мобильной части, где для до-оснащения C++Builder мобильными возможностями нужно сделать ARM-компилятор. Достаточно твёрдо можно сказать, что «последовательная работа» здесь эффективнее «параллельно», когда два компилятора пишутся параллельно, причем для платформы FM, которая опять же допиливается до кроссплатформенности iOS-Android.
Но зато после релиза Delphi for iOS and Android в части FM особых пертурбаций не будет, нужно будет прицепить С++компилятора для ARM.
Когда стало ясно, что Delphi for Android задышала (внутри компании был микропраздник), мы тут же выставили сроки — декабрь 2013 для С++Builder. С большой долей вероятности мы их соблюдём.
Это типа история. Теперь кратко по пунктам.
>>Или С++ Builder вообще не трогали до декабря?
Развитие C++Builder идет следующим образом.
1. Параллельно с Delphi (можно даже сказать «против воли»). Любое добавление на уже имеющихся компиляторах (Delphi/C++ Win32/64, Delphi/C++ Mac OS) в VCL/FireMonkey, сделанное в Delphi как материнской технологии практически мгновенно транслируется в C++Builder.
2. «Невизуалка» типа DataSnap также делается в Delphi, а потом проецируется в C++Builder (однажды было отставание С++Builder от Delphi в части DataSnap в релизе 2010, но потом уже с ХЕ его устранили). Я делал доклад для CodeRage C++Builder именно по DataSnap — (после аналогичного на CodeRage Delphi) — достаточно сильно перепахал платформу — разницы не заметил. Специально тестировал «Тонкий Клиента на Дельфи» — «Сервер Приложений на C++Builder» и наоборот, соответственно. Проблем нет.
3. Был «выплеск», когда С++Builder получил новый компилятор C++11 Win64, причем на новой архитектуре. А вот компилятор C++Win32 не соответствует 11 стандарту. Но это — скорее очередные «догонялки» с Delphi. По времени это
«совпало» с вхождением Embarcadero «в комитет по стандартизации С++ имени Б. Страуструпа» под его же руководством.
4. В мобильной разработке есть «сдвиг по фазе», поддержка как iOS, так и Android будет сделана winter 2013. Декабрь!
Ждать ли любителям (и профессионалам) С++Builder-а декабря? Возможно, но абсолютно без комплекса неполноценности.
Хотя я дал одному уважаемому разработчику (на C++Builder) совет, которым он воспользовался. Цикл разработки мобильных приложений достаточно сжат — 4-6 месяцев, ждать человек не мог — можно было потерять рынок мобильных решений в его области. Была дилемма — тянуть «резину» с заказчиком до декабря или воспользоваться Delphi.
В мобильной разработке — особенно для начинающих (вне зависимости от опыта разработки настольных систем) очень важно спроектировать интерфейс. Нет, конечно не «кнопки разложить по форме». Спроектировать:
— сценарий работы/взаимодействия
— функционал
— «морду» (не всегда = интерфейс)
И, хотя у человека, основная бизнес-логика написана на C++, эти «томительные месяцы ожидания» он решил потратить на проработку именно «мобильного решения», воспользовавшись для этого Delphi (полноценная поддержка iOS введена с ХЕ4 — апрель 2013). Сказал он так — я сейчас сделаю на Delphi, потом 100% перепишу на C++Builder (с использованием большого количества «декстопного алгоритмического кода»), но не упущу заказчика/рынок.
+ конечно несмотря на всё наше «эмбаркадеровское» шапкозакидательство (сам этим грешу) всё-таки человеку нужно время для адаптации к мобильной разработке.
Я написал уже одно полноценное приложение — очень много пришлось прорабатывать. Отдельно отпишусь об этом в блоге.
Вот такая наша объективная картина. Если что-то не раскрыл — рад буду заполнить пробелы!