22.03.2017, 11:05 | #1 |
Участник
|
Переписывание приложения на другом языке
Добрый день!
В свете последних размышлений о судьба Axapta и превратности маркетинговых ходов фирмы Microsoft хотелось бы полюбопытствовать. А есть ли у кого-нибудь опыт, информация или хороший подробный материал про миграцию корпоративных приложении с одного языка на другой? Причем не смена framework, БД, или обновление версии (описаний таких море), а именно миграции приложения с java на php или python или обратно +)) иных языков, с экспертизой написанного за несколько лет и потраченных на разработку сотен тысяч человеко-часов.С legacy кодом от нескольких поколений разработчиков? Компании масштабом так от нескольких тысяч человек. |
|
22.03.2017, 11:32 | #2 |
Участник
|
А как вы себе представляете миграцию с одного языка на другой без смены framework'ов и библиотек?
|
|
22.03.2017, 11:51 | #3 |
Участник
|
Цитата:
http://converter.telerik.com/ Или например в Ax7 - X++ это .NET язык, а в Ax5 - нет. Есть слой который описывает .NET FW в терминах стандартной библиотеки Ax5 |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
22.03.2017, 11:53 | #4 |
SAP
|
Цитата:
Сообщение от NetBus
Добрый день!
В свете последних размышлений о судьба Axapta и превратности маркетинговых ходов фирмы Microsoft хотелось бы полюбопытствовать. А есть ли у кого-нибудь опыт, информация или хороший подробный материал про миграцию корпоративных приложении с одного языка на другой? Причем не смена framework, БД, или обновление версии (описаний таких море), а именно миграции приложения с java на php или python или обратно +)) иных языков, с экспертизой написанного за несколько лет и потраченных на разработку сотен тысяч человеко-часов.С legacy кодом от нескольких поколений разработчиков? Компании масштабом так от нескольких тысяч человек. Теперь что? Опять на те же грабли хочется? ))) |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
22.03.2017, 12:19 | #5 |
Administrator
|
MS хотел объединить Ax, Nav, CRM в Dynamics - опаньки.
SAP хотел перейти со своей древности на современный язык - снова опаньки. панельный дом в кирпичный или деревянный непросто переделать. |
|
22.03.2017, 12:53 | #6 |
Участник
|
Цитата:
Сообщение от belugin
Между языками с одним фреймворком можно.
Очень хороший пример: язык один, а фреймворки во многом - разные, и уже даже код на одном языке теряет переносимость. С трудом представляю, как можно было бы автоматизированно конвертировать, скажем, модуль из AX5 в кусок работающего функционала в AX7 или наоборот. |
|
22.03.2017, 12:58 | #7 |
Участник
|
О.. кстати 2 дня назад мне такой же вопрос задал босс. нужно оценить потенциальное время на перевод решения с AX D365 на другие языки(само решение - порядка 100 форм, большинство функциональности сбоку, что-то типа русских договоров). на выбор были предложены С#, навижн, CRM..(но можно предложить что-то свое)
кто-нибудь имел опыт кодирования в этих системах - насколько там все сложно или просто кодировать по сравнению с АХ? |
|
22.03.2017, 13:23 | #8 |
Участник
|
Цитата:
Spolski делал wasabi - компилятор урезанного ASP в PHP и прочее. |
|
22.03.2017, 20:06 | #9 |
Banned
|
Цитата:
Сообщение от NetBus
Добрый день!
...а именно миграции приложения с java на php или python или обратно +)) иных языков, с экспертизой написанного за несколько лет и потраченных на разработку сотен тысяч человеко-часов.С legacy кодом от нескольких поколений разработчиков? Компании масштабом так от нескольких тысяч человек. Дешевле написать с нуля улучшенную версию чем мигрировать. Экспертиза - она не в коде, а в людях. То есть сама идея миграции "код-код"- пагубна, но написать улучшенную версию используя "экспертиза-код" - это да. Если конкретно о Java, PHP и Python - то они прекрасно могут ужиться в одном приложении. Хотя я бы рекомендовал PHP Цитата:
Сообщение от trud
О.. кстати 2 дня назад мне такой же вопрос задал босс. нужно оценить потенциальное время на перевод решения с AX D365 на другие языки(само решение - порядка 100 форм, большинство функциональности сбоку, что-то типа русских договоров). на выбор были предложены С#, навижн, CRM..(но можно предложить что-то свое)
кто-нибудь имел опыт кодирования в этих системах - насколько там все сложно или просто кодировать по сравнению с АХ? Для desktop версии С# будет дешевле всего. Раза в два "дороже" чем в desktop AX. Для web версии и платформы - посмотрите Zoho CRM как неплохой вариант. |
|
22.03.2017, 20:13 | #10 |
Участник
|
да.
причем люди - не только программисты. поэтому - нет, не дешевле |
|
22.03.2017, 21:12 | #11 |
Banned
|
Любая миграция упирается не в трансляцию кода в код, а в разность фреймворка и его библиотек. И миграцией можно назвать лишь в силу наличия экспертизы в предметной области, но с точки зрения программирования это написание нового приложения.
Понятно что миграцию .NET языков скажем из VB.NET to C sharp я даже не рассматриваю если скажем это все тот же ASP.NET Forms framework. Это даже не миграция, а лишь перевод синтаксиса. Понятно что если есть какой-то слой front-end в JS или back-end в Java, можно переписывать не все, а только один слой. Но если говорить о нашей типичной ERP мешанине, то мне кажется что ее надо или не трогать вообще или написать заново. Мигрировать завал сучьев - гм |
|
22.03.2017, 21:53 | #12 |
Участник
|
Цитата:
Цитата:
Или опять уводите в оффтопик. Не надо этого делать. Вопрос был не про любую миграцию. а про миграцию корпоративных приложении с одного языка на другой. |
|
22.03.2017, 22:47 | #13 |
Banned
|
Цитата:
Вот это вот - миграция приложения: "Миграция корпоративного веб-приложения в службу приложений Azure" https://docs.microsoft.com/ru-ru/azu...rom-iis-server А вот это вот миграция кода/проекта которой все равно корпоративное это приложение или домохозяек Translate existing C# code into native PHP code http://www.cs2php.com/ http://www.cs2php.com/how-to-begin.htm В принципе типичное и живое корпоративное приложение отличается. Мешаниной кода и нарушением правил проектирования. Что делает любую миграцию кода полной дурью. Проще взять новую платформу и внедрить решение заново. Да даже если бы тот проект в AX/D365 был идеален с точки зрения проектирования и разделения логики - все равно UI писать заново в новой системе, а c учетом того что все прыгает от UI и обслуживает UI, переписывать придется все. Какая тут бездумная и/или автоматизированная миграция кода? Полноценная иммиграция. |
|
22.03.2017, 23:21 | #14 |
Участник
|
Цитата:
|
|
23.03.2017, 06:21 | #15 |
NavAx
|
По моему личному опыту, в CRM что-то делать в несколько раз дольше, чем в AX. При этом, если AX все равно использовать надо, лицензий в 2 раза больше.
__________________
Isn't it nice when things just work? |
|
23.03.2017, 06:31 | #16 |
NavAx
|
попробуй поискать тех, кто миграцией с cobol занимается. У них больше всего опыта. И у них все еще достаточно хороших контрактов.
__________________
Isn't it nice when things just work? |
|
23.03.2017, 08:45 | #17 |
Участник
|
https://habrahabr.ru/post/219651/i/
Наконец выходит первая публичная бета-версия Netscape 6.0. Версии 5.0 не существует. Предыдущий мажорный релиз — версия 4.0 — был выпущен почти три года назад. Три года — это невероятно большой срок в мире интернета. Все это время в Netscape сидели и беспомощно наблюдали за тем, как уменьшается их доля рынка. Это немного подло с моей стороны критиковать их за столь долгое ожидание между релизами. Они ведь не специально это сделали, правда? Неправда! Именно так они и сделали. И этим они совершили единственную самую большую стратегическую ошибку, которую когда-либо может сделать софтверная компания. Они решили переписать код с нуля. |
|
|
За это сообщение автора поблагодарили: ax_mct (3). |
23.03.2017, 09:06 | #18 |
Участник
|
Цитата:
Модуль который тонкими перемычками соединяется с окружением а внутри перемешан или набор мелких модификаций, или и то и то. И насколько ценно переносить изолированную часть и насколько надо чтобы работа над конвертированной частью продолжалась (доработки и фиксы). Можно например скопилировать ваш модуль в IL и посмотреть чем-то типа Telerik Decompiler и взять за основу получившийся код. |
|
23.03.2017, 10:25 | #19 |
Модератор
|
Цитата:
P.S. Получается, что апгрейдиться сейчас на распоследнюю версию, что ждать до последнего пока продукт напрочь не устареет и будет запускаться только на железе из антикварной лавки - со всех сторон профит. Надо только дожить..
__________________
-ТСЯ или -ТЬСЯ ? Последний раз редактировалось Vadik; 23.03.2017 в 10:32. |
|
23.03.2017, 10:37 | #20 |
Участник
|
Цитата:
И если сущности еще можно как-то перетащить, например заказ это набор полей в шапке и набор полей в строках. С алгоритмами сложнее, если в одном языке есть сборщик мусора, а в другом нет и это будет проблема. С языком еще сложнее. Как пример - переводить X++ на язык в котором нет контейнеров? Возникают те же проблемы, что и с переводом с человеческого на человеческий, red brick это красный кирпич, но red fox это рыжая лиса, а не красная. И если это не учитываешь, получается не english, а рунглиш. Проще и дешевле переписать. Последний раз редактировалось AlexeyS; 23.03.2017 в 10:40. |
|
|
|