
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
01.09.2016, 10:36
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
Я вот понимаю когда 2 слоя (GUI + DB) или три, но никак не могу сообразить про 4 слоя и далее. Кто-то здесь говорил про слой валидации. Никак не могу понять как это может выглядеть. Может просто кто-то схематично набросает простенький примерчик? И еще я так понял, что раз, например, слоев 4, то нельзя вызывать из первого четвертый или третий, это так? Что в таком случае делают, когда в каком-то месте два слоя не нужны? Лепят просто метод с вызовом другого слоя или как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 10:56
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
no56892Никак не могу понять как это может выглядеть. [youtube= ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:06
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
А по существу есть что сказать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:18
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
no56892, По моему отрывок из Шрека - самое по существу. Там как раз все и объясняется. Хочешь визуально представить слои - представь себе лук. Слои - это такой метод декомпозиции основной задачи. На подзадачи частично изолированные друг от друга и слабо связанные со своими соседями. Насколько грандиозная задача, настолько сильно ее можно дробить. Т.е. чтобы понять огра слои нужны, ослу нет. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:23
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
Сергей Арсеньев, Это я и сам могу такими абстракциями и общими понятиями языком чесать сколько угодно, нужен пример в коде, хотя бы отдаленно напоминающим язык программирования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:24
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
no56892, предпочитаю, чтобы больше думал и работал ТС в вопросе. Т.е. full stack разработчик? Сверху донизу писал? Тогда приводи приемр того что писал и 3 слоя какие знаешь. ЗЫ Понимание слоёв приходит тогда, когда уже не первый раз пишешь. Это как функция. Её не написать если ни разу не использовал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:27
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
Petro123, Вот так у меня обстоит: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. Прошу вставить сюда 4й слой))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:31
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
no56892Прошу вставить сюда 4й слой))) я не знаю таких. Может проекты такие. Мне пока 3-х хватает. Если что, то VIEW в самой БД за слой не считаю. А мог бы)). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:35
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
no56892хотя бы отдаленно напоминающим язык программирования. Слои это размещение задач в твоей голове (ну а потом уже на вычислительных устройствах). Случилось у тебя так, что к одной БД имеют доступ несколько систем откуда поступают данные. С точки зрения каждой из этих систем все пучком. Но если потом посмотреть на общую картину, то в этой каше не разберешься. Вот и создаешь слой валидации, который проверяет поступающие данные на предмет их консистентности с имеющимися в БД от других систем. И сообщает куда следует, если что не так (ну или правит, дает отлуп, как твоей душе угодно). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:40
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
Petro123no56892Прошу вставить сюда 4й слой))) я не знаю таких. Может проекты такие. Мне пока 3-х хватает. Если что, то VIEW в самой БД за слой не считаю. А мог бы)). Я тоже не знаю, поэтому решил задать вопрос. авторСлои это размещение задач в твоей голове (ну а потом уже на вычислительных устройствах). Случилось у тебя так, что к одной БД имеют доступ несколько систем откуда поступают данные. С точки зрения каждой из этих систем все пучком. Но если потом посмотреть на общую картину, то в этой каше не разберешься. Вот и создаешь слой валидации, который проверяет поступающие данные на предмет их консистентности с имеющимися в БД от других систем. И сообщает куда следует, если что не так (ну или правит, дает отлуп, как твоей душе угодно). Что-то мне подсказывает, что валидация - не об этом. Ну и пример тоже хотелось бы. Прямо вот четыре слоя, как по фэн-шую! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:45
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
no56892Что-то мне подсказывает, что валидация - не об этом. А некоторые считают, что слой валидации это constraints в СУБД. И цитируя класику - И ты прав. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:50
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
no56892Что-то мне подсказывает, что валидация - не об этом валидация это обязанность фреймворка. Слишком узко для слоя. Пускай это будут прослойки жира в мраморном мясе РИБАЙ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:51
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
no56892, Ну, например, вот хороший материал по теме http://rsdn.org/forum/design/2097068 картинки там сейчас не видно. Вот она ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 11:58
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
Blazkowicz, Так ТС и не видит, куда ему Валидацию вставить на этом рисунке. :) Со всем остальным он более-менее разобрался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 12:44
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
no56892Я вот понимаю когда 2 слоя (GUI + DB) или три, но никак не могу сообразить про 4 слоя и далее. Кто-то здесь говорил про слой валидации. Никак не могу понять как это может выглядеть. Может просто кто-то схематично набросает простенький примерчик? И еще я так понял, что раз, например, слоев 4, то нельзя вызывать из первого четвертый или третий, это так? Что в таком случае делают, когда в каком-то месте два слоя не нужны? Лепят просто метод с вызовом другого слоя или как? Я бы предложил на секундочку отложить слои в сторону и изучить проблему с другой стороны. Другая сторона называется Coupling & Cohesion. Можно начать отсюда https://en.wikipedia.org/wiki/GRASP_(object-oriented_design) И дальше читать статьи в вики по этим отдельным терминам. Так, вот. Нарушение этих принципов приводит к увеличению связей между элементами системы. Как результат, каждое небольшое изменения в требованиях к проекту приводит к лавинному изменению в множестве элементов системы. Слои это один из способов уменьшить количество таких связей и изолировать отдельные элементы системы. Чем меньше связей, тем меньше изменений в системе будет порождено в следствии изменений одного требования. Когда разберешься с этим - поймешь зачем вообще нужны слои. И тогда вопросов как их организовать станет меньше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 16:24
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
валидация - это серенькое слева по вертикали, в районе оранжевого и синего, и в определенной степени зеленого ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 16:27
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
17-77это серенькое слева по вертикали, в районе оранжевого и синего, и в определенной степени зеленого Задорнов? "...видишь там серенькое голубеет?" )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
01.09.2016, 16:40
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
17-77валидация - это серенькое слева по вертикали, в районе оранжевого и синего, и в определенной степени зеленого Всё сильно зависит от системы. Валидация пользовательского ввода, это, очевидно правила, реализованные на уровне UI. Валидация данных поступающих через серверный API это, очевидно, другой слой, близкий к MVC контроллеру. Валидация целостности данных БД вообще реализована констрейнтами. Тоже отдельный уровень абстракции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.09.2016, 19:32
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
валидация часто очень "смешана" с бизнес-логикой: сегодня корректность поля по регулярке, завтра хитрые условия, проверка которых не возможна без обращения к БД. вывод - лучше всю валидацию туда же, где и бизнес-логика ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.09.2016, 19:35
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
BlazkowiczВалидация пользовательского ввода, это, очевидно правила, реализованные на уровне UI. очень спорное утверждение. как вариант, при оптимизации UI, чтобы он был более отзывчивым на ошибки. но это, по сути, - дублирование кода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.09.2016, 13:47
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
вот такую многослойность вижу далеко далеко например в Москве стоит БД доступ к ней через SOAP на Камчатке стоит сервак который выкачивает данные из Москвы и кладет в БД на Камчатке для кэша. к БД на Камчатке прикручен Web для просмотра клиентом который может обрабатывать отображать данные как через SOAP из Москвы так и из БД на Камчатке как-то так короче если между БД и Web сервером поставить доступ через Web службы уже 3 слоя получается плюс слой клиента для которого могут быть спец службы развернуты например REST для работы extjs ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.09.2016, 13:51
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
fsharp_fsharpно это, по сути, - дублирование кода Которого не сложно избежать, если иметь единый codebase для клиента и сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.09.2016, 13:52
|
|||
|---|---|---|---|
|
|||
Слои в архитектуре |
|||
|
#18+
bochkovвот такую многослойность вижу Вы путаете layer и tier. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.09.2016, 15:34
|
|||
|---|---|---|---|
Слои в архитектуре |
|||
|
#18+
Я так понял, что одно из обязательных правил слоев - нельзя вызвать A->D, нужно A->B->C->D, иначе и не слой это вовсе. ТОгда у меня вопрос про слой кэширования. Из этого следует, что все, что находится за слоем кеширования не может юыть вызвано без него. А если где-то (очень часто такое случается) нужно и из кеша а где-то нет, как тогда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&mobile=1&tid=2123742]: |
0ms |
get settings: |
13ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
36ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
4ms |
| others: | 277ms |
| total: | 421ms |

| 0 / 0 |
