|
|
|
|
#1 |
|
Участник
|
В дополнение к этому можно еще раз послушать (или почитать), о чем говорится в исходной презентации.
Цитата:
Сообщение от fed
и нашел только два довода в пользу того, почему это хорошо: 1. Не надо учить новый язык программирования для новых разработчиков. Эти наивные люди до сих пор думают что разработчики X++ используют только для создания новых форм и интеграции с внешними приложениями. Реально - X++ учиться за месяц, может - три. Все остальные годы уходят на изучение прикладной логики системы. Резюме - аргумент не катит.
А в случае перехода на CLR, как отмечалось в той же презентации, новым разработчикам не надо будет месяц-три-шесть учить X++, который им больше нигде не пригодится. Вместо этого работодатели смогут говорить им: вы будете работать в привычной среде, использовать .NET, развиваться как разработчик C# (например) - плюс к этому еще и приобретете опыт разработки бизнес-приложений. Мне сложно прогнозировать, как это может отразиться на рынке труда программистов Axapta, но для работодателей определенный плюс в этом, мне кажется, есть. Кроме того, даже интеграция с приложением может упроститься за счет отказа от Business Connector и от работы с классами и таблицами через отражение. Вон, в презентации подцепили к проекту 64-мегабайтную сборку с кодом всех классов и таблиц приложения AX - и все они для разработчика стали, как на ладони, с поддержкой intellisence и всего прочего. Цитата:
|
|
|
|
| За это сообщение автора поблагодарили: Morpheus (2), konopello (1), alex55 (1), Mileyko (1). | |
|
|
#2 |
|
Moderator
|
Я пожалуй что расскажу об одной любопытной вещи. До того как я пришел на работу в MS (в конце 2006 года, буквально за две недели до моего первого рабочего дня в MS), меня знакомый затащил на встречу питерской группы .net users group. И там выступал и показывал свой продукт один мой будущий (на тот момент) коллега, который из Питера перебрался работать в датском центре разработки.
А показывал он очень простую вещь - редактор форм Аксапты внутри VS, редактор кода Аксапты внутри VS и, кажется, даже компилятор X++ внутри VS. На провокационные вопросы - типа "Сделаете ли вы X++ managed языком", этот товарищ не отвечал, с присказками "Не могу, типа NDA и все дела". Аксаптеров на этом мероприятии кроме меня не было, а разработчикам .net увиденное было тяжело осмыслить, так что все это прошло мало заметно. Так что то что в ролике с Channel 9 было показано, я видел, без малого три года назад. Потом я про этот проект за два с половиной года работы в MS ничего не слышал, и в целом полагал что его похоронили. И весь мой скептицизм по поводу перехода на .net вызван как раз тем, что если проект три года развивался, то непонятно почему за три года прогресс такой слабый (судя по тому что номер версии Аксапты, в которой это выйдет они не называют). Если проект три года был заморожен как неперспективный, то не очень понятно, почему они решили что у них в этот раз получиться... Ну и кстати я всех этих восторгов по поводу среды VS не разделяю. Visual Studio - замечательная среда разработки БОЛЬШИХ проектов. Типа когда мы сначала проектируем иерархию классов, создаем файлы заголовков, разрабатываем сервисы, рисуем зависимости для компиляции, делаем публикацию в веб-сервисы и тп. А в Аксапте - 90% доработок - это пара строк в нужном методе. И как-то меня пугает мысль что мне для этого придется этот метод checkoutить из репозитария, править, checkinить, компилировать все приложение, деплоить серверные веб-сервисы, деплоить клиентское приложение и только после этого получать результат. Я, если позволите, еще раз приведу услышанные аргументы перехода на .net: 1. Легкость обучения/доступность специалистов. Затраты на обучение действительно могут СЛЕГКА снизиться. Типа готовность специалиста будет наступать не через 18-25 месяцев, а эдак месяца на 2 раньше. Но это не принципиально. 2. Более совершенная среда разработки VS. Она более совершенная - но только для случая РАЗРАБОТКИ с ноля, а не быстрой доработки. Еще не известно в чем именно аксаптерские решения проще разрабатывать - в убогой но компактной среде разработки Аксапты или в богатой, но тяжелой среде разработки VS. 3. Оптимизация затрат на разработку среды исполнения X++. Возможно что это действительно так.А возможно - и нет. Как раз то что я спустя почти три года вижу примерно тот же прототип что и раньше, наводят меня на мысль что доработать прототип до промышленной системы довольно нелегко... Последний раз редактировалось fed; 05.09.2009 в 14:33. |
|
|
|
| За это сообщение автора поблагодарили: Morpheus (2), konopello (1), MikeR (2), alex55 (1). | |
|
|
#3 |
|
Участник
|
Цитата:
|
|
|
|
|
#4 |
|
Участник
|
Полностью согласен с fed. Пусть Visual Studio остается тяжелой средой разработки для крупных разработок. А в аксе реально нужно править всего несколько строчек кода.
Лучше бы МС допилил бы Intellisense в редакторе, да добавил примочки для девелопера - например таких какие есть в виде плагинов к Tabax. Не понимаю какую выгоду получит разработчик или покупатель от того что код будет компилится в .NET? |
|
|
|
|
#5 |
|
Участник
|
|
|
|
|
|
#6 |
|
Участник
|
Цитата:
Цитата:
Для верности я продублировал часть доводов в этой теме. Еще раз:
|
|
|
|
|
#7 |
|
Moderator
|
Цитата:
Сообщение от gl00mie
Еще раз:
Если эти замечательные глубокомысленные люди знают КАК все это сделать с разумным уровнем гемора для внедренцев, причем в ближайшие лет 5, а не к моменту смерти осла из притчи - хотелось бы чтобы они все это ОЗВУЧИЛИ. Если же все это - их фантазии, то наверное не стоит будоражить публику сказками о не существующей в данный момент технологии. А если она существует, но рассказать они о ней не могут, то нефиг было воду мутить раньше времени... |
|
|
|
|
#8 |
|
Moderator
|
Ну собственно я поэтому и написал, что поддержка С# - это фича предназначенная для поддержки продаж. Чтобы можно было клиентским айтишникам гордо сказать: Смотрите - ее можно программировать на C# ! Вашим разработчикам не придется переучиваться !
Ну а потом выясниться что все равно вся полезная логика написана на X++ и никто ее на C# переписывать не собирается. Соответственно - все равно придется X++ изучать. Просто до того как я не позанимался слегка продажами, я не понимал что часть фич в программном продукте пишется не для внедрения, а для демонстрации во время продаж. Например, явно к этой категории относиться модуль Balanced Scorecard. Ну а глядишь в версии 7 еще и какое-нить Visual Studio Integration для этого напишут... |
|
|
|
|
#9 |
|
Microsoft Dynamics
|
А для чего интересно еще пишутся фичи в программном продукте, если не для поддержки продаж? Мне известно только две модели зарабатывания денег на ПО - деньги от продаж и/или деньги от поддержки.
Просьба озвучить третью ![]() И что плохого в том, что программисты C# получат классную интеграцию с АОT? |
|
|
|
|
#10 |
|
Moderator
|
Цитата:
Сообщение от mifi
А для чего интересно еще пишутся фичи в программном продукте, если не для поддержки продаж? Мне известно только две модели зарабатывания денег на ПО - деньги от продаж и/или деньги от поддержки.
Просьба озвучить третью ![]() И что плохого в том, что программисты C# получат классную интеграцию с АОT? Причем делает это Микрософт не из спортивного интереса и любви к пользователям, а потому что удволетворенность сейчас - это фактически долгосрочный прогноз выручки. Чем ниже удовлетворенность, тем больше шансов что клиент соскочит и годика через три будет выручку конкурентам приносить. Любые Sales Oriented Features - это создание ложных ожиданий от продукта. А ложные ожидания - низкая удовлетворенность. Низкая удовлетворенность - шансы того что клиент соскочит. Соответственно - любая sales feature - это попытка сорвать с клиента немножко денег СЕЙЧАС, в ущерб ДОЛГОСРОЧНЫМ перспективам получать с клиента деньги регулярно.По поводу того, что программисты C# получат классную интеграцию с AOT. А рыночный спрос на это есть ? Я вот почти 9 лет аксапту внедряю, и как то мне это пока не понадобилось. А бабла микрософт на эту интеграцию не мало потратит. И есть шансы что какие-нибудь фичи, которые мне как внедренцу нужны - не будут реализованы из за этого. Это-то и злит в общем. Если у Микрософта лишние деньги есть - так лучше бы попробовали поверх MS OLAP написать клиента нормального, бюджетирование и синтегрировали бы все это с Аксаптой например... От этого на проектах куда больше было бы пользы чем от этой интеграции с .net |
|
|
|
| За это сообщение автора поблагодарили: DSPIC (13). | |
|
|
#11 |
|
Microsoft Dynamics
|
Цитата:
Сообщение от fed
Ну ты ведь знаешь как микрософт удоволетворенность продуктом замеряет ? И если удовлетворенность низкая, то какой-то службе может попасть по первое число
Причем делает это Микрософт не из спортивного интереса и любви к пользователям, а потому что удволетворенность сейчас - это фактически долгосрочный прогноз выручки. Чем ниже удовлетворенность, тем больше шансов что клиент соскочит и годика через три будет выручку конкурентам приносить. Любые Sales Oriented Features - это создание ложных ожиданий от продукта. А ложные ожидания - низкая удовлетворенность. Низкая удовлетворенность - шансы того что клиент соскочит. Соответственно - любая sales feature - это попытка сорвать с клиента немножко денег СЕЙЧАС, в ущерб ДОЛГОСРОЧНЫМ перспективам получать с клиента деньги регулярно.По поводу того, что программисты C# получат классную интеграцию с AOT. А рыночный спрос на это есть ? Я вот почти 9 лет аксапту внедряю, и как то мне это пока не понадобилось. А бабла микрософт на эту интеграцию не мало потратит. И есть шансы что какие-нибудь фичи, которые мне как внедренцу нужны - не будут реализованы из за этого. Это-то и злит в общем. Если у Микрософта лишние деньги есть - так лучше бы попробовали поверх MS OLAP написать клиента нормального, бюджетирование и синтегрировали бы все это с Аксаптой например... От этого на проектах куда больше было бы пользы чем от этой интеграции с .net По поводу того, кто сколько лет внедряет и кому оно понадобилось - тут нужно различать работу со стороны клиента и со стороны партнера. Клиентские разработчики в большинстве случаев клепают отчеты и делают всякую интеграцию. Зачем для решения этих задач знание X++, гораздо проще и дешевле нанять C# разработчика который все это ссделает в Visual Studio |
|
|
|
|
#12 |
|
Moderator
|
Цитата:
Сообщение от mifi
Вероятность что клиент соскочит - да, есть. Но при внедрении любой ERP системы это в 99% случае происходит по трем причинам - политика, политика, политика. А если система не содержит пару "sales oriented features" клиент соскочит намного раньше - во время тендера. И будет внедрять другую систему, в которой реальных проблем может быть еще больше.
По поводу того, кто сколько лет внедряет и кому оно понадобилось - тут нужно различать работу со стороны клиента и со стороны партнера. Клиентские разработчики в большинстве случаев клепают отчеты и делают всякую интеграцию. Зачем для решения этих задач знание X++, гораздо проще и дешевле нанять C# разработчика который все это ссделает в Visual Studio Она, правда, тоже реально бесполезна, но ее хотя бы директору по логистике можно показать. Так что если считать C# сейловым функционалом - то это не самое выгодное вложение денег. Затраты большие - а реальная польза - красноглазикам показать, которых все равно никто не спрашивает.Ну а насчет клиентских программистов - дык уже счас можно отчеты на SSRS клепать и туда вставочки на C# писать. Правда чтобы человек без знания Аксапты смог сложный отчет написать (а простые ведь и без программинга можно на коленке нарисовать), то придется ему детальную спецификацию писать. Которую проще самому запрограммировать чем для другого написать
|
|
|
|
|
#13 |
|
Участник
|
А не может так быть, что сейчас в блогах и таких интервью рассказываются про сейлс-ориентед фичах будущих версий, а если бы ты знал все подробности, то у тебя было бы несколько другое мнение?
Почему так получилось, что про C# Татаринову был задан вопрос, а про бюджет - нет? Кстати, ты знаешь про PowerPivot? |
|
|
|
|
#14 |
|
Moderator
|
Цитата:
Сообщение от belugin
А не может так быть, что сейчас в блогах и таких интервью рассказываются про сейлс-ориентед фичах будущих версий, а если бы ты знал все подробности, то у тебя было бы несколько другое мнение?
Почему так получилось, что про C# Татаринову был задан вопрос, а про бюджет - нет? Кстати, ты знаешь про PowerPivot? А про C# вопрос был задан, как я полагаю, потому что все (также как и я кстати) боятся гемора с переходом на C# и повторения истории проекта Green. Кстати - я же не говорю что я вообще считаю что Аксапта в принципе не туда идет. В 2009ой появилось очень много вполне полезных фич. И судя по тому инсайду который я про 6ку знаю - там еще больше появиться. Просто тема с C# меня напрягает. Надо либо перестать пиариться на тему неготовой технологии, либо ПОДРОБНО обяснить КАК собираются на эту технологию переходить. Чтобы все заранее могли оценить риски и проблемы. Последний раз редактировалось fed; 11.12.2009 в 19:15. |
|
|
|
|
#15 |
|
Участник
|
У меня присутствует следующее опасение от грядущего перехода с X++ на C# :
В C# существуют более сложные конструкции языка чем в X++ и продвинутые C# - еры начнут ими пользоваться. В итоге, читая код, нужно будет сначала разбираться в конструкциях языка, а потом уже в бизнес-логике. X++ прост и выразителен, читая код, ты сразу понимаешь, что в нем происходит. В общем, на мой взгляд, есть вероятность того, что разработка на С# будет занимать больше времени. |
|
|
|
|
#16 |
|
Участник
|
Цитата:
Сообщение от _scorp_
У меня присутствует следующее опасение от грядущего перехода с X++ на C# :
В C# существуют более сложные конструкции языка чем в X++ и продвинутые C# - еры начнут ими пользоваться. В итоге, читая код, нужно будет сначала разбираться в конструкциях языка, а потом уже в бизнес-логике. ![]() Цитата:
Но в целом, это к тому, что в случае Х++ и C# вопрос очевидности языка - дело десятое. И там, и там, можно "намудрить". p.s. Как красноглазик в данном вопросе , я за систему на едином и современном языке: С#, но только в случае если это действительно грозит снижением скорости разработки исключительно на период погружения в тонкости новой платформы и при сохранении существующего функционала.
Последний раз редактировалось Lemming; 11.12.2009 в 21:44. |
|
|
|
|
#17 |
|
Участник
|
Он не сложный, но возможностей "загнуть" там гораздо больше чем на X++. Вот например что здесь выведется на экран
X++: class X<T> { public static void PrintTypes() { Console.WriteLine(typeof(T).FullName); Console.WriteLine(typeof(X<X<T>>).FullName); } } class App { static void Main() { X<int>.PrintTypes(); } } X++: class Program { delegate int DelegateType(int valTypeParam, string refTypeParam, ref int refParam, out int outParam); static DelegateType GetMethod() { return delegate(int valTypeParam, string refTypeParam, ref int refParam, out int outParam) { System.Console.WriteLine("Hello valParam:{0} refTypeParam:{1}", valTypeParam, refTypeParam); refParam++; outParam = 9; return valTypeParam; }; } static void Main() { DelegateType delegateInstance = GetMethod(); int refVar = 5; int outVar; int i = delegateInstance(1, "one", ref refVar, out outVar); int j = delegateInstance(2, "two", ref refVar, out outVar); System.Console.WriteLine("i:{0} j:{1} refVar:{2} outVar:{3}", i, j, refVar, outVar); } } |
|
|
|
| За это сообщение автора поблагодарили: Lemming (5). | |
|
|
#18 |
|
Участник
|
Цитата:
X`1[[X`1[[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089] ], test, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]] Я так понимаю, что тут 1. полные именя типов 2. int32 подвергся боксингу 3. `1 означает "от одного аргумента" Я прав? То есть проблема в реализации преобразования типа тип к строке? Цитата:
Или здесь X++: class Program { delegate int DelegateType(int valTypeParam, string refTypeParam, ref int refParam, out int outParam); У меня вывело Hello valParam:1 refTypeParam neHello valParam:2 refTypeParam:two i:1 j:2 refVar:7 outVar:9 вроде так и должно быть. |
|
|
|
|
#19 |
|
Участник
|
Здесь на самом деле нет ни какой проблемы. Для generic-ов FullName выводиться по другому и в MSDN об этом говорится. В этих примерах нет никаких ребусов, я просто хотел сказать, что в X++ нет таких синтаксических конструкций и читать его следовательно легче (по крайней мере для меня).
Даже не знаю как это написать на X++. Тут нет ни generic-ов, ни делегатов, ни out параметров, ни значимых типов, которые можно передать по ссылке, да много чего нет... Но я с Вами согласен, что и на X++ можно намудрить, просто здесь для "мудрецов" больше возможностей
|
|
|
|
|
#20 |
|
MCT
|
Спасибо, fed. Никто ранее не говорил, что придется деплоить целиком приложение. А как быть с AOS (передергивать) ? Или я чего не понял?
__________________
Axapta book for developer |
|
|
| Теги |
| .net, c#, x++, что нового, перспективы |
|
|
Похожие темы
|
||||
| Тема | Ответов | |||
| DeniZone: Copy - paste utility | 0 | |||
| DeniZone: x++ and C# compared | 0 | |||
| DeniZone: Opening a form on start up of AX | 1 | |||
| Dynamics AX: The Future of Dynamics AX and Web 2.0 | 0 | |||
|