3
голосов
2ответов
239 просмотров

Как сокрытие информации помогает в модульности?

Как сокрытие информации помогает разделить модули, составляющие систему?

0
голосов
2ответов
128 просмотров

Как скрыть данные от всех классов, кроме одного?

Я пытаюсь исправить ошибку дизайна, с которой недавно столкнулся в некоторых из наших программ, без переписывания всего этого. Существует .exe, у которого есть поток слушателя сообщений, который получает данные с некоторого сервера, а затем записывает их в класс в отдельной DLL (мы назовем его S...

1
голосов
2ответов
1018 просмотров

Is encapsulation a subset of abstraction?

As both encapsulation and abstraction relate to information hiding, can I understand encapsulation as a subset of abstraction?

2
голосов
4ответов
502 просмотров

How does the design of JavaBeans square with information hiding?

Two semesters ago, I had a professor who said: Some of you have been told to always include setter and getter methods for all private instance variables. I say that this breaks information hiding, and often results in systems where invariants cannot be enforced. Now, that sounds right to me...

7
голосов
11ответов
11500 просмотров

Best way to store data between program runs in java?

What is the best way to store data between program runs in Java? I already know that you can use a text file and store the information that way, but I was wondering if there is a better way to store the information that is generated by the program between runs of the program. Also, is there any ...

5
голосов
5ответов
945 просмотров

Information Hiding vs. Hidden Dependencies

What are some common best practices in procedure (or function, module, etc.) design for balancing the desire for information hiding and an appropriate level of abstraction in the procedure's interface with the problems inherent in introducing hidding dependencies? To be more concrete, suppose I ...

2
голосов
3ответов
324 просмотров

Hiding Complexity by Building Concise Libraries

I'm developing a product with a bunch of interlocking pieces (server, client, libraries, etc) and one of the pieces is a tiny library that users will link into their own client-side code (something kind of like the Flickr API or the Google Maps API). Once they've included that library, all of the...

23
голосов
8ответов
57993 просмотров

How can you hide information inside a jpg or gif photo?

How can I write some information inside a photo file like jpg or gif without destroying the image? and of course without showing it on the photo since the whole idea is to send information in the file of photo undetected by anyone (to provide security/privacy to some extent)!

2
голосов
2ответов
3858 просмотров

Use of Frames in Delphi for GUI information hiding

I have been learning Delphi for the last 3 years, on a hobby/occupational level. I am happy to say that I have now progressed to the point that I can look back on my early code with horror and embarrassment. So I am now going through some of my early apps and rewriting/ refactoring them. One of ...

1
голосов
4ответов
243 просмотров

Какой объем информации необходимо скрывать при рефакторинге кода?

Насколько необходимо сокрытие информации? У меня есть шаблонный код до удаления записи, он выглядит так: public override void OrderProcessing_Delete(Dictionary<string, object> pkColumns) { var c = Connect(); using (var cmd = new NpgsqlCommand("SELECT COUNT(*) F...

6
голосов
5ответов
1686 просмотров

Что лучше: передать * интерфейс * или * объект * в качестве параметра функции?

Я пытаюсь убедить коллегу, что функция должна принимать в качестве параметра интерфейс, а не сам объект. Я думаю, что небольшие объекты можно передавать, но для больших я бы дал им интерфейс и просто передал бы i / f, а не целиком. Обратите внимание, что всегда будет только один из этих больш...

0
голосов
3ответов
159 просмотров

Обфускация или скрытие обновлений состояния сервера для клиента

На самом деле я не пишу это программное обеспечение сам, но мне пришло в голову, что я не знаю, как решить проблему. Чтобы лучше всего объяснить проблему, я опишу конкретный сценарий из гипотетического многопользовательского шутера от первого лица ... Игрок А прячется в кустах лицом на запад...

10
голосов
5ответов
4761 просмотров

Блестящий пример эффективной инкапсуляции через сокрытие информации?

" Абстракция и инкапсуляция - это взаимодополняющие концепции: абстракция фокусируется на наблюдаемом поведении объекта ... инкапсуляция фокусируется на реализации, которая приводит к этому поведение ... инкапсуляция чаще всего достигается с помощью сокрытия информации , то есть процесса со...

2
голосов
7ответов
913 просмотров

Что такое вложенные функции? Для чего они?

Я никогда не использовал вложенные функции, но видел ссылки на них на нескольких языках (а также вложенные классы, которые, как я полагаю, связаны). Что такое вложенная функция? Почему?!? Что можно сделать с вложенной функцией, чего нельзя сделать другим способом? Что вы можете сделать...

670
голосов
12ответов
441676 просмотров

Почему «частные» методы Python на самом деле не являются частными?

Python дает нам возможность создавать «частные» методы и переменные внутри класса, добавляя двойные подчеркивания к имени, например: __myPrivateMethod(). Как тогда это можно объяснить >>> class MyClass: ... def myPublicMethod(self): ... print 'public method' ... d...

131
голосов
11ответов
106247 просмотров

Почему следует использовать идиому «PIMPL»?

Справочная информация: Идиома PIMPL (указатель на IMPLementation) - это метод скрытия реализации, в котором class является оболочкой для структуры или класса, которые нельзя увидеть за пределами библиотеки, частью которой является публичный класс. Это скрывает детали внутренней реализаци...

169
голосов
22ответов
141889 просмотров

Абстракция VS Скрытие информации VS Инкапсуляция

Можете ли вы сказать мне, в чем разница между абстракцией и сокрытием информации при разработке программного обеспечения? Я запуталась. Абстракция скрывает детали реализации и информация, скрывающая отрывки из всех деталей чего-либо. Обновление: я нашел хороший ответ на эти три конце...