http://pdrobushevich.blogspot.ru/2011/02/blog-post.html
"Вырвем одну фразу из контекста
The basic idea of object-oriented design; which is to combine data and process together.
Трактовать можно по разному, тем более у Алана Кея, такого не было. Фразу похожую этой я слышал много раз. Что, методы обрабатывающие какие-то данные должны быть в том же классе, что и данные. Часто любят вспомнить инкапсуляцию. Это всё конечно было бы хорошо, если бы всё время я не натыкался на проблему, где бы разместить тот или иной метод, потому что он вроде бы и должен быть тут, но ему ещё нужны и те данные. Ох, запутано получилось, поэтому просто украду пример.
ручка.писать(бумажка, текст) VS бумажка.писать(текст, ручка)
Я не знаю ответа на этот вопрос.
Но я прекрасно понимаю, что в конце концов ручка.писать(бумажка, текст) например в терминах той же объектной Java, это просто раскрывается в писать(ручка, бумажка, текст), где вместо ручка, просто this.
В этом по моему главная проблема, что просто внести метод писать в класс ручка, не решит никаких проблем, в том числе и инкапсуляции."
ПОДПИШУСЬ! ОБОИМИ РУКАМИ!
Ну и ПРОСТО почитайте вот что:
https://www.google.ru/search?q=%D0%B0%D0%BD%D0%B5%D0%BC%D0%B8%D1%87%D0%BD%D0%B0%D1%8F+%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C&oq=%D0%B0%D0%BD%D0%B5%D0%BC%D0%B8%D1%87%D0%BD%D0%B0%D1%8F&aqs=chrome.1.69i57j0l5.6379j0j7&sourceid=chrome&es_sm=122&ie=UTF-8
"Вырвем одну фразу из контекста
The basic idea of object-oriented design; which is to combine data and process together.
Трактовать можно по разному, тем более у Алана Кея, такого не было. Фразу похожую этой я слышал много раз. Что, методы обрабатывающие какие-то данные должны быть в том же классе, что и данные. Часто любят вспомнить инкапсуляцию. Это всё конечно было бы хорошо, если бы всё время я не натыкался на проблему, где бы разместить тот или иной метод, потому что он вроде бы и должен быть тут, но ему ещё нужны и те данные. Ох, запутано получилось, поэтому просто украду пример.
ручка.писать(бумажка, текст) VS бумажка.писать(текст, ручка)
Я не знаю ответа на этот вопрос.
Но я прекрасно понимаю, что в конце концов ручка.писать(бумажка, текст) например в терминах той же объектной Java, это просто раскрывается в писать(ручка, бумажка, текст), где вместо ручка, просто this.
В этом по моему главная проблема, что просто внести метод писать в класс ручка, не решит никаких проблем, в том числе и инкапсуляции."
ПОДПИШУСЬ! ОБОИМИ РУКАМИ!
Ну и ПРОСТО почитайте вот что:
https://www.google.ru/search?q=%D0%B0%D0%BD%D0%B5%D0%BC%D0%B8%D1%87%D0%BD%D0%B0%D1%8F+%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D1%8C&oq=%D0%B0%D0%BD%D0%B5%D0%BC%D0%B8%D1%87%D0%BD%D0%B0%D1%8F&aqs=chrome.1.69i57j0l5.6379j0j7&sourceid=chrome&es_sm=122&ie=UTF-8
Комментариев нет:
Отправить комментарий