Подтвердить что ты не робот

Microsoft Dynamics (Navision) против С#.NET

Я - опытный разработчик С#/.NET и недавно получил возможность стать разработчиком Microsoft Dynamics (Navision) (обучение, сертификация и т.д. все будут оплачиваться работодателем). Я никогда не участвовал ни в чем с этой Динамикой, поэтому я хотел спросить, что такое разработчик Dynamics по сравнению с разработчиком С#/. NET. Я собрал список вещей, которые мне интересны, прежде чем принимать такое решение. Не стесняйтесь редактировать список.

С#/.NET

  • IDE: Visual Studio
  • Язык: С#
  • Область приложения: веб-сайт или рабочий стол
  • Бизнес-домен: любая отрасль.
  • Хорошая карьера и легко меняющаяся работа.
  • и т.д...

Microsoft Dynamics

  • Относительно закрытый рынок (по сравнению с .NET)
  • Не так много рабочих мест там
  • Средство IDE (или среда разработки) ужасно по сравнению с Visual Studio, я даже предпочитаю работать в блокноте
  • Какие преимущества получат клиенты Dynamics по сравнению с настраиваемым приложением?

Спасибо!

4b9b3361

Ответ 1

Мой собственный фон - это .NET-разработчик, использующий в основном С# и в последнее время ASP.NET MVC. Я также был разработчиком/консультантом/архитектором Dynamics NAV уже около 3 лет.

Мир Dynamics NAV довольно маленький, и, честно говоря, он не растет и не сокращается. Я слышал о нескольких местах, недавно перешедших из других ERP в NAV и столько же удаленных от NAV.

В начале этого года я присутствовал на брифинге в Microsoft Executive Briefing Center в Ведбеке (Дания) и встретился с Dynamics NAV GM, а также с некоторыми PM и Dynamics NAV PM (разработчиками, которые пишут приложение NAV), и дорожная карта, которую они имеют для продукта, действительно интересна - там будет большой акцент на HCM и улучшении некоторых финансовых показателей в следующих двух версиях.

С точки зрения повседневной работы с NAV это немного парадигма. Как вы уже отметили, IDE абсолютно ужасна. Они только добавили подсветку синтаксиса в последнее время, и сегодня нет настоящих intellisense или каких-либо современных удобств IDE. Сказав это, вы можете сделать невероятно мощный материал, объединив собственные NAV-объекты с надстройками и т.д., И они действительно улучшили некоторые инструменты для создания лесов, которые помогут в разработке.

В финансовом отношении разработчики NAV хорошо справляются, потому что они достаточно редки. Архитекторы и консультанты NAV делают еще лучше. В вашем профиле не указано, где вы находитесь, но я знаю, что в Дублине стартовая зарплата для разработчика NAV составляет около 60 тыс. Долларов США, а в Лондоне - около 65 тыс. Долларов США.

Рынок вакансий намного меньше, чем у разработчиков С#/. NET, но рабочие места, как правило, немного более безопасны, и растет рынок для клиентов, нанимающих собственных разработчиков NAV, а не только партнеров/поставщиков, нанимающих разработчиков и консалтинговых их клиентам.

Я лично не рассматривал бы это как двоичный выбор между С# и NAV. Конечно, ваш заголовок может быть разработчиком NAV, но если вы используете некоторые из более поздних версий NAV, тогда вы все равно можете сделать много надстроек над написанием С# и т.д. Это также фантастическая возможность освежить ваши знания SQL так как написание/оптимизация хорошо выполняющегося кода в NAV требует достаточно глубокого знания SQL и того, как запросы выполняются правильно обрабатываются способом.

У вас есть более конкретные вопросы?

Ответ 2

Я бы всегда рекомендовал, чтобы у вас была возможность привлечь работодателя к разработке NAV или внедрению NAV, если ваш работодатель предлагает покрыть расходы на это. Как уже подчеркивалось, NAV является нишевым рынком, и Microsoft агрессивно продвигает этот глобальный подход (я думаю, что в конце концов маркетинговые материалы Microsoft показали 70 000 клиентских сайтов и более 1 миллиона пользователей в NAV).

Я не думаю, что разработка NAV и .NET является эксклюзивной в любом случае - на самом деле, если что-либо, обладающее знаниями как языков разработки, так и среды разработки, делает вас намного более ценным. Начиная с версии NAV 2009 R2 Release теперь есть много способов, которыми внешние приложения, API и .NET могут быть интегрированы с любым процессом NAV, используя любую комбинацию: веб-сервисов, элементов управления .NET в роли Tailored Client и, наконец, доступа к родному .NET типы и классы через .NET Interop. В принципе, если вы знаете С# или .NET, вы можете использовать это изначально в среде NAV. Поэтому, если вы понимаете .NET framework и NAV, вы можете использовать лучшее из обоих миров при создании любого решения для своих клиентов/клиентов.

Две точки, которые я хотел бы выделить для будущего/текущего разработчика NAV (imho):

  • Знание NET будет иметь решающее значение в следующих выпусках как NAV больше подходит для интеграции типа .NET/Visual Studio. Как недавно изменения в релизе R2 показывают, что они дают разработчикам много лучшие инструменты, и если вы знаете как .NET, так и NAV (C/AL) чем вы очень хорошо расположены в архитекторе и строите лучшие породы решения.

  • Очень важно, чтобы вы могли понять приложение рабочий процесс и бизнес-логику. Например. Разработчик, который понимает, как Заказ на продажу работает на разных этапах неопубликованного и размещенного шаги гораздо полезнее, чем разработчик, которому нужно сообщить точно, что строить бизнес-аналитиками. Хотя это и происходит если вы новичок в NAV, убедитесь, что вы тратите время на понимать и узнавать структуры документов и транзакции когда вы пишете свой код или отчеты о зданиях.

Я знаю, что это длительное время, но для ответа на ваши вопросы:

  • Рынок открывается как текущие (и, надеюсь, будущие) выпуски имеют больше возможностей интеграции и .NET. Microsoft продвижение NAV-интеграции с CRM, онлайн-платежей и интернет-платежей услуги.

  • Возможно, не так много рабочих мест, но они глобальны - их много в ЕС, Австралии, Новой Зеландии (я прожил там 2 года, а мой работодатель заплатил за ход). В Северной Америке намного меньше NAV так что здесь не так много рабочих мест (но растет). Поэтому, если вы хотите работать и путешествовать, это может быть здорово, также как и там - это небольшой набор талантов специализированных ресурсов NAV, законы спрос и предложение диктуют, что ваш курс выше, чем .NET. разработчик. Здесь, в Канаде, старшие ресурсы NAV могут быть выплачены в избытке из $100 тыс. CAD (который по текущему обменному курсу составляет $102 тыс. USD).

  • Да, IDE отстой! - но с каждым выпуском становится все лучше. (Я ненавижу это о NAV)

  • Ключевым преимуществом (с точки зрения задней части) является возможность быстро развивать и развертывать бизнес-логику и функциональность. Платформа NAV имеет встроенную защиту из коробки и обеспечивает достаточно структуры, чтобы вы могли разрабатывать богатые приложения очень, очень быстро. (Я ЛЮБЛЮ это о NAV).

Ответ 3

Относительно ваших баллов:

  • Несмотря на то, что .NET - это способ разработки общих продуктов, NAV является проприетарным программным обеспечением для конкретной цели (ERP). Следовательно, рынок довольно закрыт, вам нужна ваша лицензия на разработку, чтобы что-то сделать, что, в свою очередь, требует участия в Microsoft или работы с партнером MS. Пока закрыто, рынок несколько, так сказать, элитный...? По крайней мере, как люди склонны чувствовать себя там.

  • Вакансии - возможно, не так много в абсолютных цифрах, но люди NAV сильно востребованы, и спрос постоянно превышает предложение до тех пор, пока я помню (10 лет). Здесь, в Европе, вы можете легко получить нанятую через неделю перепланировку. Работы все достаточно оплачиваются. Следует также отметить, что NAV является бестселлером в Европе, а не в США, где доминирует Dynamics GP.

  • IDE не имеет значения. Недостаток рода intellisense может быть шоком для новичков, но вы преодолеете это через месяц или около того. Разработка в NAV настолько проста, что вам не нужна хорошая среда IDE. Вместо этого вам нужно понять, как NAV работает концептуально, какие шаблоны и потоки данных используются, и соответственно строить свои вещи. Чем ближе вы находитесь, тем лучше вы.

  • Преимущества для клиентов - функциональность "лучшей практики" есть на 1-й день, скорость выполнения оставшихся вещей, последовательное использование шаблонов, то есть "вещи должны работать ЭТОТ образом" (если разработчики не создают беспорядок путем взлома их), избегая блокировки поставщика в некоторой степени, так как вокруг много партнеров NAV, и если все пойдет не так, есть возможность изменить партнеров, оставаясь с NAV.

В целом, не ожидайте, что вы будете много кодировать с помощью NAV или стать самим разработчиком технологий. Технически, NAV - это что-то среднее между MS Access и большим LEGO стандартной функциональностью и шаблонами действий. То, что все компании фактически ищут, - это не технические разработчики, а разработка консультантов, поскольку большая часть работы обычно связана с одноразовыми настройками (большими и малыми), в отличие от стандартных приложений и модулей разработки и выпуска версий. Таким образом, вы будете наиболее ценны для своего работодателя, как только вы не только научитесь кодировать (что легко сделать через 3-6 месяцев), но и понять, как работает приложение, правильные способы настройки и, самое главное, - делать и не делать и как обойти проблемы/изменить запросы. Как только вы сможете сделать это самостоятельно, вы являетесь востребованным экспертом NAV и можете чувствовать себя, ugh, elite, но путешествие может занять 5-10 лет, в течение которого вы в основном изучаете специфику NAV, запатентованной системы.

Итак, выбор за вами. Пойдите для NAV, если вы чувствуете стремление стать ценным бизнес-разработчиком/консультантом, который обеспечивает видимую ценность для бизнеса. Не ходите на NAV, если ваше сердце в таких ситуациях, как производительность, аккуратный код, контроль версий, алгоритмы и первоклассная технология.