Каков наилучший способ создания корпоративной среды .Net Namespace с нуля? - PullRequest
0 голосов
/ 21 апреля 2009

Мы переносим наши приложения в VB.Net 2008 из Classic VB, и мне нужно создать базовое пространство имен и бизнес-уровень. Мой метод подхода будет состоять в том, чтобы посетить нашу лучшую BA и определить общие области нашей компании (с фиксированным доходом) и попытаться сформировать достойную модель наследования, используя как можно больше кода в дженериках.

Какой опыт у всех в этом, а также во второй части вопроса, мы рассматриваем включение Web Focus в OLAP, как это повлияет на дизайн корпоративного пространства имен и его производных?

Ответы [ 3 ]

4 голосов
/ 21 апреля 2009

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

См. Запись Фаулера в Harvested Framework и это сообщение в блоге для более полного объяснения.

Я не знаком с Web Focus, но, полагаю, это как-то повлияет на него, однако, если вы перейдете с Harvested Framework, его использование в первых нескольких создаваемых вами приложениях будет определять то, как вы используете Веб Фокус в рамках.

0 голосов
/ 21 апреля 2009

Если ваше приложение находится под VB6 (не VB3), тогда я настоятельно рекомендую сначала выполнить редизайн иерархии классов в VB6. Причина этого в том, что при любом преобразовании вы пытаетесь сохранить поведение старого приложения. Это тянет время проекта, чтобы сделать это и сделать редизайн в то же время.

Вначале внося изменения в дизайн на языке оригинала приложения, вы гарантируете, что любые ошибки, которые возникают в результате, связаны с дизайном, а не с конверсией.

Я сделал три основных преобразования нашего программного обеспечения за последние 20 лет; (От DOS до VB3) (от VB3 до объектно-ориентированного проектирования в VB6) и (от VB6 до VB.NET).

Наконец, очень просто создать дизайн в VB6, который легко переносится на VB.NET. Хитрость заключается в том, чтобы скрыть определенные API-интерфейсы VB6 и конструкции за интерфейсом (графика, печать и т. Д.)>

Когда делать преобразование, я рекомендую работать сверху вниз. Сначала измените ваши формы на .NET, которая вызывает COM-библиотеки VB6. Затем конвертируйте каждый слой, пока не дойдете до нижних DLL.

Опять же, если вы попытаетесь изменить дизайн и перейти на другой язык для любого сложного приложения, вы удвоите время преобразования.

0 голосов
/ 21 апреля 2009

Джерем имеет это прямо на основе. Я кратко упомяну кое-что очевидное о пространствах имен.

Всегда помните, для чего предназначено пространство имен - оно должно предоставлять «пространство», в котором будут жить имена. В частности, оно предназначено для того, чтобы обеспечить достаточно маленькое пространство, чтобы люди, создающие имена в этом пространстве, с меньшей вероятностью создавали дублирующиеся или запутанные имена.

Это может работать только в том случае, если пространства имен организованы по шаблонам организации или предметной области. Простой часто используемый пример - это шаблон Company . BusinessUnit . Application . Теория состоит в том, что в группе разработчиков, работающих над данным приложением, меньше шансов для дублирования имен. Это не будет верно для большого приложения, где вы хотели бы разбить его дальше на основе слоя или области. Точно так же бизнес-единицы слишком велики, вам нужно разбить ее на части.

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

...