FAQ по форуму Архитектура приложений

FAQ по форуму Архитектура приложений

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 17:58

Паттерны (шаблоны) проектирования

Паттерны проектирования - это описание правильного решения задач проектирования (как правило паттерны создают для часто встречающихся задач).

Польза паттернов как подхода очевидна - это повторное использование решения, что полезно столь же как и повторное использование кода. Вы можете сами конструировать паттерны или пользоваться опубликованными.


В чем польза опубликованных паттернов:

1. Повторное использование (как и для собственных паттернов).
2. Эффективное решение задачи (признанное экспертами или сообществом).
3. Возможность общаться на языке паттернов. Хотя, ИМХО, это на любителя :)


Комментарии (из серии "без фанатизма"):

1. Повторно используя некий паттерн, иногда полезно задуматься -а стоит ли использовать здесь именно такой подход?
2. Паттерны решают абстрактные задачи. Для конкретной задачи может существовать другое, более эффективное во всех смыслах решение. Скажем так, для большинства ситуаций решение с помощью паттерна или его небольшой адаптации, как правило, эффективнее.
3. Не стоит чрезмерно увлекаться использованием паттернов при обсуждении деталей, особенно если не знаешь наверняка, что собеседник понимает, что значит каждый из них. Это может наоборот привести к непониманию (тем более что есть люди, которые по складу характера будет просто кивать и соглашаться :) ).
Всё что мы видим, это лишь иллюзия...

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 17:58

Вопрос

Слои, уровни, звенья...Существует ли разница между слоями и уровнями?

Ответ

Многие не делают различий между этими названиями. И оказываются не совсем правы :)

Я придерживаюсь позиции, которую озвучили несколько лет назад на конференции в Москве Стив Шварц и Клеменс Вастерс.

Слой (layer) - это организация по смыслу (или, если хотите, функционалу).

Уровень (tier) - это организация по физическому размещению (конкретные компьютеры или их наборы). Некоторые считают границей уровня границу процесса (это уже, скорее, дело вкуса).

Таким образом, можно выделять слои доступа к данным, бизнес логики, представления. А уровни - БД, сервера приложения, клиентский.

При этом, с одной стороны,один слой может быть распределен по нескольким уровням (например, слой представления для ASP.NET приложения относится к уровням и web-сервера и клиента). С другой стороны, несколько слоев могут быть сосредоточены на одном уровне. Например, в некоторых приложениях и бизнес-логика и слой доступа к данным могут располагаться на web-сервере (более того, в рамках одного процесса).

P.S. Термин "звено" я считаю скорее отечественной выдумкой :) Лично я предпочитаю "слои" и "уровни", хотя если кому-то удобнее пользоваться "звеньями"...
Всё что мы видим, это лишь иллюзия...

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 18:00

Определение архитектуры ПО

Вообще говоря, понятие довольно расплывчатое и обычно каждый трактует его по-своему :)

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

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 18:01

Мартин Фаулер: Проектирования больше нет?

Очень хорошая статья о разнице между предварительным и эволюционным проектированием, методологии XP и некторых других интересных вещах.

Есть англоязычный и русскоязычный варианты.
Всё что мы видим, это лишь иллюзия...

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 18:02

Алистер Коуберн: Каждому проекту своя методология

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

Есть англоязычный и русскоязычный варианты.
Всё что мы видим, это лишь иллюзия...

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 18:03

Ресурсы от Майкрософт

Ресурсы от Майкрософт, относящиеся к архитектуре приложений и рекомендациям по написанию приложений.

MSDN Solution Architecture Center(RSS)

Microsoft patterns & practices(RSS)

- два основных портала, посвященных архитектуре. Публикуются интересные статьи, информация о чатах, есть полезные ссылки на другие ресурсы.
Всё что мы видим, это лишь иллюзия...

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 18:05

Мартин Фаулер

Сайт Мартина Фаулера (Bliki, RSS)

Весьма уважаемый мной автор. Мало того, что его книги и статьи кладезь полезной информации, от чтения многих из них просто получаешь удовольствие :)

Ссылки на книги есть на вышеупомянутом сайте. Здесь приведу ссылки только на те две книги, которые, IMHO, обязательно нужно прочитать всем, кто имеет отношение к разработке ПО:

Refactoring: Improving the Design of Existing Code(Рефакторинг: улучшение существующего кода)

Patterns of Enterprise Application Architecture(Архитектура корпоративных программных приложений)
Всё что мы видим, это лишь иллюзия...

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 18:06

Вопрос

Ресурсы по паттернам проектирования

Ответ

На ru.wikipedia.org:

Шаблоны проектирования

На dotfactory.com (posted by eisernWolf):

Design Patterns in C# and VB.NET
Всё что мы видим, это лишь иллюзия...

andrey.maslov
Основатель клуба
Сообщения: 72
Зарегистрирован: 06 дек 2010, 11:53
Откуда: г.Москва
Контактная информация:

Re: FAQ по форуму Архитектура приложений

Сообщение andrey.maslov » 15 дек 2010, 18:07

Рон Джеффриз

Сайт Рона Джеффриза, посвященный методологии XP.

Книга: XP в примерах на C#

Posted by eisernWolf.
Всё что мы видим, это лишь иллюзия...


Вернуться в «FAQ по форуму Архитектура приложений»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей