Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Разработка информационных систем Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Totos
Member

Откуда: Калуга
Сообщений: 186
Здравствуйте. Точно не знаю в какой раздел разместить данный запрос ...

Имею базовые знания в программировании.
В качестве практики в процессе обучения стоит задача переписать программу, реализованную по архитектуре "клиент C# - сервер MS SQL".

Интересуют правильные подходы по организации приложений "клиент - сервер", а именно хотелось бы получить ответы, рекомендации и практические подходы на подобные вопросы:
1) Как правильно разделять логику между клиентом и сервером: что оставлять на уровне клиента (толстого клиента), а что лучше перенести на сервер БД;
2) Как правильно реализовать совместный доступ к данным: что, когда и как часто грузить или обновлять;
3) Как правильно работать с транзакциями и блокировками;
4) Как избежать проблем с одновременным доступом к БД и одновременному изменению одних и тех же данных;
5) Может есть какие-нибудь рекомендации по построению структуры классов для организации доступа к БД.
6) ...

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

Хочется переписать программу правильно, с правильной архитектурой и подходами.
Если ли какие-нибудь книги, где данные методы могут быть описаны ?
Привязка к языку не обязательна, но планируется использовать C# + MS SQL
3 окт 17, 09:23    [20837952]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
Totos,
Там нет ничего особенного.
Клинт как можно тоньше.
Вся логика в базе на вьюхах и хп.
Клиент любой.
3 окт 17, 09:48    [20838041]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
Totos,
Разработчика бд в штат возьмите
3 окт 17, 09:50    [20838048]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
LSV
Member

Откуда: Киев
Сообщений: 30144
// Как правильно разделять логику между клиентом и сервером.

Клиент ничего не должен знать о предметной области. Вообще. Он просто оперирует списками.
Все что вы видите на экране - списки (поля и строки).
3 окт 17, 09:55    [20838063]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
LSV,
+1
ТС зря толстого клиента делал.
Биндинг наше всё.
3 окт 17, 09:57    [20838068]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Totos
Member

Откуда: Калуга
Сообщений: 186
Petro123
Totos,
Разработчика бд в штат возьмите


Не вариант. Цель - обучиться самому.

Petro123
Клинт как можно тоньше.
Вся логика в базе на вьюхах и хп.


На этом же форуме некоторое время назад слышал абсолютно противоположное мнение, а именно: если клиент не контролирует действия, то не стоит переносить логику на уровень БД.
Так, что единого мнения нет.

И все-таки, книг по данной тематике не существует ? Только практика и метод "проб и ошибок" ?
3 окт 17, 10:10    [20838104]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Изопропил
Member

Откуда:
Сообщений: 30648
Totos
Только практика и метод "проб и ошибок" ?

здравый смысл ещё
3 окт 17, 10:12    [20838108]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Totos
Member

Откуда: Калуга
Сообщений: 186
Изопропил
Totos
Только практика и метод "проб и ошибок" ?

здравый смысл ещё


У каждого здравый смысл свой :)
Сколько людей, столько и мнений
3 окт 17, 10:18    [20838122]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Изопропил
Member

Откуда:
Сообщений: 30648
Totos
У каждого здравый смысл свой :)

это не так
3 окт 17, 10:19    [20838131]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
Totos
Изопропил
пропущено...

здравый смысл ещё


У каждого здравый смысл свой :)
Сколько людей, столько и мнений

Т.е. вы сделали плохо и всё равно не поверили?
Смените профессию.
3 окт 17, 10:31    [20838167]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
Totos
если клиент не контролирует действия, то не стоит переносить логику на уровень БД.

Ссылку дай. И нечё на форум валить.
3 окт 17, 10:32    [20838173]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Totos
Member

Откуда: Калуга
Сообщений: 186
Petro123
Totos
пропущено...


У каждого здравый смысл свой :)
Сколько людей, столько и мнений

Т.е. вы сделали плохо и всё равно не поверили?
Смените профессию.


Чтобы сменить профессию, надо её сначала получить ...

См.выше:
Имею базовые знания в программировании.
В качестве практики В ПРОЦЕССЕ ОБУЧЕНИЯ стоит задача переписать программу, реализованную по архитектуре "клиент C# - сервер MS SQL".

Я так понимаю, Вы сразу родились с профессиональными знаниями программирования на всех языках.
Тогда дайте конкретный совет - а лучше конкретную ссылку или название книги, если такие есть.
3 окт 17, 10:37    [20838193]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
LSV
Member

Откуда: Киев
Сообщений: 30144
Totos
Тогда дайте конкретный совет - а лучше конкретную ссылку или название книги, если такие есть.
Вряд-ли в книге будет описана серебряная пуля.
Проблема в том, что специфика задачи сильно влияет на способ решения.
Нужно изучить хотя бы несколько бест-практисов.
3 окт 17, 10:44    [20838222]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Изопропил
Member

Откуда:
Сообщений: 30648
Totos
При этом возникала проблема перезатирания одних и тех же данных. Другой клиент терял свои изменения.

читать - "оптимистическая блокировка""
Totos
ПО было реализовано с частым использованием транзакций, при этом постоянно возникали взаимные блокировки, когда другой клиент не мог работать.

это просто ошибки реализации
3 окт 17, 10:49    [20838243]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Totos
Member

Откуда: Калуга
Сообщений: 186
Изопропил
это просто ошибки реализации


Да, это понятно. Но денег за эти ошибки было отвалено не мало.
И даже служба поддержки с разработчиками системы не смогли их решить на тот момент.

Вот и хочется посмотреть что-нибудь, чтобы не совершать таких ошибок.
3 окт 17, 10:55    [20838264]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Totos
Member

Откуда: Калуга
Сообщений: 186
LSV
Totos
Тогда дайте конкретный совет - а лучше конкретную ссылку или название книги, если такие есть.
Вряд-ли в книге будет описана серебряная пуля.
Проблема в том, что специфика задачи сильно влияет на способ решения.
Нужно изучить хотя бы несколько бест-практисов.


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

А специфики особо никакой - стандартные справочники: организации, сотрудники, материалы.
И различные журналы: движение материалов, склады.

Но нет, так нет ... попытка не пытка
3 окт 17, 10:59    [20838283]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
Totos
Вот и хочется посмотреть что-нибудь, чтобы не совершать таких ошибок.

Нет таких книг.
Главное качество программиста - логическое мышление.
Поэтому женского пола тут мало).
У вас в рассказе логи мало.
Сделали толстый клиент без обоснования.
3 окт 17, 11:17    [20838363]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
Totos
Интересуют общие правильные подходы,

Выше поход ещё с дельфей был сказан.
Удачи!
3 окт 17, 11:18    [20838368]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Totos
Member

Откуда: Калуга
Сообщений: 186
Petro123
Totos
Вот и хочется посмотреть что-нибудь, чтобы не совершать таких ошибок.

Нет таких книг.
Главное качество программиста - логическое мышление.
Поэтому женского пола тут мало).
У вас в рассказе логи мало.
Сделали толстый клиент без обоснования.


Самое интересное, что это сделал программист с 15-летнем стажем (сейчас ушел).
А у меня стаж менее полугода ...

"Поэтому женского пола тут мало)." - сейчас Вас сожрут :)
3 окт 17, 11:20    [20838377]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Изопропил
Member

Откуда:
Сообщений: 30648
Totos
А у меня стаж менее полугода ...

тогда учиться, учиться и учиться....

не исключено может помочь
https://www.ozon.ru/context/detail/id/139953550/ (подойдут и старые издания)
3 окт 17, 11:30    [20838419]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
DirksDR
Member

Откуда: Пермь
Сообщений: 325
Totos,

Поищите на этом форуме по слову "Фаулер". Массу ссылок получите.
Вот одна:
http://www.sql.ru/forum/1057290/metodoloii-proektirovaniya-informacionnyh-sistem?hl=??????
3 окт 17, 11:53    [20838505]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Изопропил
Member

Откуда:
Сообщений: 30648
DirksDR,

фаулеру не до двузвенки
3 окт 17, 11:56    [20838517]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
Изопропил
DirksDR,
фаулеру не до двузвенки

+1 ))))
3 окт 17, 12:03    [20838540]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Partisan M
Member

Откуда:
Сообщений: 1184
Totos
"Поэтому женского пола тут мало)." - сейчас Вас сожрут :)



Этот оратор с похвальным усердием отвечает на вопрос, который никто не задавал.
3 окт 17, 12:44    [20838647]     Ответить | Цитировать Сообщить модератору
 Re: Посоветуйте книгу по правильной реализации архитектуры "Клиент - Сервер"  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30362
Partisan M,
Дак вот она, женщина))).
Причём, не в духе).
3 окт 17, 13:19    [20838780]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Разработка информационных систем Ответить