Работаю в проекте, реализованном на C#. Предлагаю решение задачи, с которой столкнулся в проекте.
Условия. Есть классы-сущности, описывающие данные предметной области. При этом бывает и наследование — естественным образом организованное отношение «является». Эти классы описывают данные. Они лежат в отдельной сборке. Есть уровень клиента и уровень сервера. И ими используется эта сборка.
Возникновение задачи. Сборка, описывающая сущности, может описывать поведение только предметной области. Но, возникла задача, когда в слое сервера нужно работать с объектами, описанными в сборке сущностей, у которых уже есть иерархия наследования, полиморфно. При этом нужно сохранять ту же иерархию наследования. Требуемая работа с объектами на сервере не относится к предметной области.
Читать полностью »
Рубрика «проектирование» - 33
«Мост» с наследованием
2012-04-10 в 17:10, admin, рубрики: паттерны, проектирование, Проектирование и рефакторинг, метки: паттерны, проектированиеSharePoint Conference Ukraine 2012
2012-04-05 в 6:08, admin, рубрики: doctrix, ECM, nintex, sharepoint, автоматизация, Анализ и проектирование систем, конференции, обучение, проектирование, события, метки: doctrix, ECM, nintex, sharepoint, автоматизация, конференции, обучение, проектирование, события
Доброго времени суток, уважаемые читатели!
От лица организаторов, имею честь пригласить вас посетить самую масштабную конференцию по SharePoint в Украине – SharePoint Conference Ukraine 2012. Эта конференция проводится в Украине впервые, но уже обещает стать событием №1 на рынке ECM.
Читать полностью »
Проектирование веб-приложений с применением Data Management System (на основе технологии скаффолдинга)
2012-04-01 в 18:25, admin, рубрики: scaffolding, Анализ и проектирование систем, Веб-разработка, проектирование, Проектирование и рефакторинг, метки: scaffolding, Веб-разработка, проектирование
В предыдущей статье я рассказал о том, почему считаю неэффективной разработку с применением Content Management System. В этой статье, я расскажу о том, какой подход использую в построении веб-приложений.
Читать полностью »
Техническое задание на сайт. Практика
2012-03-30 в 10:58, admin, рубрики: Веб-разработка, веб-сайт, проектирование, сайт, тех. задание, техзадание, техническое задание, тз, я пиарюсь, метки: веб-сайт, проектирование, сайт, тех. задание, техзадание, техническое задание, тз
В комментариях к статье Техническое задание на сайт зашел разговор о шаблоне для техзадания и, собственно, примере ТЗ, составленного по описанным в статье принципам. Там я пообещал показать, и шаблон, и само ТЗ.
Выполняю обещание, и в этой статье постараюсь показать написание ТЗ. Перед прочтением этой статьи настоятельно рекомендую прочитать Техническое задание на сайт, т.к. тут я не буду пояснять, почему ТЗ выглядит именно так, а буду просто описывать процесс создания техзадания в соответствии с принципами из вышеназванной статьи.
Логика типичного заказчика – взгляд изнутри
2012-03-28 в 11:03, admin, рубрики: Веб-разработка, веб-студия, верстка, Песочница, Программирование, проектирование, разработка сайтов, метки: веб-студия, верстка, Программирование, проектирование, разработка сайтовУ каждой компании, которая адекватно оценивает обширные возможности Интернета, появляется желание создать свое представительство в сети. Наша компания уже долгое время занимается туристскими поездками в Хабаровском крае, решила для планомерного развития обозначить свою деятельность также.
Директор поставил задачу создать собственный сайт, который бы позволял публиковать всю текущую информацию, горячие предложения и отзывы туристов о своем отдыхе.
Мне как менеджеру по связям с общественностью, если брать официально. И как самому молодому парню, если брать реально. Поставили задачу сделать сайт и выделили на это «отрывая от сердца» 30 тысяч рублей. Всю мою деятельность можно разделить на несколько этапов:
1) Сбор первичной информации:
Для того чтобы понять, как запустить сайт, я обратился за помощью к своему другу, который учился на 4 курсе на специалиста по IT в экономике и банковском деле. Читать полностью »
Восемь принципов программирования, которые могут облегчить вам жизнь
2012-03-27 в 21:01, admin, рубрики: Программирование, проектирование, разработка по, метки: Программирование, проектирование, разработка по Одна из главных проблем в разработке программного обеспечения – борьба с возрастающей сложностью системы. Решением этой проблемы занимаются с времен появления первых программ. Результатами являются языки, всё более упрощающие взаимодействие с машиной, парадигмы программирования вроде ООП, паттерны. В этой статье будут рассмотрены принципы программирования, позволяющие уменьшить сложность и облегчить сопровождение системы.
Читать полностью »
Перестаньте писать классы
2012-03-23 в 13:33, admin, рубрики: java, python, игра жизнь, классы, ооп, проектирование, Проектирование и рефакторинг, рефакторинг, метки: java, python, игра жизнь, классы, ооп, проектирование, рефакторингПризнак того, что объект не должен быть классом — если в нём всего 2 метода, и один из них — инициализация, __init__. Каждый раз видя это, подумайте: «наверное, мне нужна просто одна функция».
Каждый раз когда из написанного класса вы создаёте всего один экземпляр, используете только раз и тут же выбрасываете, следует думать: «ой, надо бы это отрефакторить! Можно сделать проще, намного проще!»
Перевод доклада Джэка Дидриха, одного из клчюевых разработчиков языка Питон. Доклад прозвучал 9 марта 2012 на конференции PyCon US.
Читать полностью »
Блог компании Centrobit / Подход к проектированию платформы интернет дистрибьюции с помощью шаблонов
2012-03-02 в 12:11, admin, рубрики: 1С, Agora, api, B2B, Centrobit, ecommerce, MAPPINGP, orm, php, smarty, sql, бд, бронь, дистрибуция, дистрибьюция, классы, коды, маппинг, объект, ошибки, Платформа, примеры, продукт, проектирование, разработка, центробит, шаблоны, электронная коммерция Привет, читатели!
Хочу рассказать о проекте Agora, которым занимается наша команда.
Agora — это платформа, позволяющая организовать дистрибьюцию товаров через интернет. Платформа интегрируется с ERP дистрибьютора и автоматизирует прием заказов, просмотр остатков, получение актов взаиморасчетов и много другое. Пользователь работает в веб-интерфейсом платформы и все его действия отражаются в ERP дистрибьютора.
В статье “Как я написал «драфт» системы В2В” в блоге нашей компании я описал некоторые проблемы, c которыми мы столкнулись, создавая нашу платформу.Читать полностью »
Веб-разработка / Техническое задание на сайт
2012-02-28 в 13:23, admin, рубрики: веб-сайт, проектирование, сайт, тех. задание, техзадание, техническое задание, тз, метки: веб-сайт, проектирование, сайт, тех. задание, техзадание, техническое задание, тзНе так давно на хабре были две статьи (Согласно техническому заданию и А зачем мне ТЗ? Я и так знаю!) посвященные техническим заданиям. У меня обе статьи вызвали, мягко говоря, недоумение, в особенности статья «Согласно техническому заданию». На мой взгляд, это вообще вредная статья, которая приводит к неверному понимаю сути ТЗ. В связи с этим хочу выразить свой взгляд на этот вопрос. Не буду говорить обо всех тех. заданиях, слишком широка тема, но думаю смогу рассказать о ТЗ на сайт.
То описание технического задания, о котором речь пойдет ниже, не является пересказомЧитать полностью »
Проектирование и рефакторинг / Шаблон Bridge дополнительные штрихи
2012-02-26 в 20:33, admin, рубрики: bridge, паттерны проектирования, проектирование, проектирование по, шаблоны проектирования, метки: bridge, паттерны проектирования, проектирование, проектирование по, шаблоны проектирования Обсуждение многострадального шаблона Bridge на хабре, выявило много интересных мнений и заблуждений. Попробуем разобраться, реанимировать данный шаблон в глазах тех кто борется с формулировками оригинального каталога GoF, а интересующимся темой шаблонов показать несколько дополнительных штрихов.
Кратко о шаблонах GoF (Gang of Four – «банда четырех»)
«Мы не наделены даром предвидения, поэтому те, кто приписывает «банде четырех» экстраординарные способности, будут поражены хаотичностью нашего процесса разработки.»
Джон Влиссидес
«Когда мы писали нашу книгу, мы действительно пытались кое-чтоЧитать полностью »