1 / 1 / 0
Регистрация: 17.04.2018
Сообщений: 236
|
|
1 | |
Защита приложения с помощью инкапсуляции22.04.2018, 08:13. Показов 1928. Ответов 2
Метки нет (Все метки)
Ограничение доступа к членам класса является основным принципом объектно-ориентированного программирования, поскольку это ограничение защищает объекты от неправильного использования. Разрешая доступ к закрытым членам класса только посредством строго определенного набора методов, мы предотвращаем присвоение данным некорректных значений.
Объясните, пожалуйста такие ограничения нужны для защиты от внешних угроз и для защиты программы от ошибки программиста? Добавлено через 33 секунды или
0
|
22.04.2018, 08:13 | |
Ответы с готовыми решениями:
2
Защита приложения с помощью ключа Влияние инкапсуляции, наследования и полиморфизма на архитектуру создаваемого приложения Защита приложения C# Защита стороннего приложения |
Wanna be serious
586 / 473 / 186
Регистрация: 31.07.2013
Сообщений: 1,693
|
||||||
22.04.2018, 09:36 | 2 | |||||
Сообщение было отмечено Ivanjs как решение
Решение
Смотря что вы подразумеваете под внешними угрозами. Утрированно, это сокрытие полей, и предоставления к ним строго предопределенного доступа посредством методов, или свойств в случае C#.
Приведу гипотетический пример. Существует класс пользователя, который предназначен для авторизации в программе. И у этого класса, есть поле типа string, которое содержит в себе значение электронной почты заходящего пользователя. Нам важно, что бы в это поле попал корректный адрес электронной почты, а иначе - пользователь бы получал сообщение об ошибке. В C# мы можем это сделать так:
1
|
17689 / 12874 / 3366
Регистрация: 17.09.2011
Сообщений: 21,138
|
|
22.04.2018, 09:44 | 3 |
Если под внешними угрозами вы подразумеваете попытку взломать приложение (крякнуть лицензию или наколдовать бесконечных денег в игрушке), то инкапсуляция — не панацея.
Она нужна в основном для минимизации багов и слабого связывания: если какой-то код выполняется изолированно, всегда есть возможность точно отследить происходящее и тем самым уменьшить количество багов или исправить уже существующие. Если разные части приложения не сильно связаны друг с другом, то любое изменение одной части не потребует каскадного изменения всей системы. В идеале, конечно.
1
|
22.04.2018, 09:44 | |
22.04.2018, 09:44 | |
Помогаю со студенческими работами здесь
3
Защита приложения от декомпиляции Защита приложения на C# и обфускация Защита приложения методом Reactor Защита стороннего приложения от внешнего воздействия Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |