|
|
|
Интерфейсы - зачем?
|
|||
|---|---|---|---|
|
#18+
Приветствую, уважаемые! Никогда толком не работал с интерфейсами, подскажите, пожалуйста, нафига они? Вот давайте с конкретного примера. У нас есть накладная (Bill) и нужно вывести её на печать, или в MS Excel или в ексель OpenOffice. По старинке можно залепить два разных класса, ну или один, первым параметром передавать массив данных, вторым куда выводит на печать. Вот в этом примере могут мне как-то помочь интерфейсы? Я могу сделать Код: plaintext 1. 2. 3. 4. Код: plaintext 1. 2. 3. Код: plaintext 1. 2. 3. 4. 5. 6. 7. Лучше ли решение с интерфейсами? Почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2008, 22:23 |
|
||
|
Интерфейсы - зачем?
|
|||
|---|---|---|---|
|
#18+
давайте другой пример рассмотрим, допустим у вас есть сервер. Который должен поддерживать некий набор функций func1, func2, func3. И есть клиенты, которые должны эти функции использовать. Т.е. и сервер и клиенты должны знать семантику этих функции, но при этой клиенты не должны знать, реализацию этих функции, типо секрет =) Делаем интерфейс, в который включаем эти функции и делаем на сервере реализацию этого интерфейса. В итоге и волки сыты и овцы целы, т.к. мы предоставили клиенты минимально необходимую информацию для работы с сервером, которая вся включена в интерфейс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2008, 23:02 |
|
||
|
Интерфейсы - зачем?
|
|||
|---|---|---|---|
|
#18+
Andaimдавайте другой пример рассмотрим, допустим у вас есть сервер. Который должен поддерживать некий набор функций func1, func2, func3. И есть клиенты, которые должны эти функции использовать. Т.е. и сервер и клиенты должны знать семантику этих функции, но при этой клиенты не должны знать, реализацию этих функции, типо секрет =) Делаем интерфейс, в который включаем эти функции и делаем на сервере реализацию этого интерфейса. В итоге и волки сыты и овцы целы, т.к. мы предоставили клиенты минимально необходимую информацию для работы с сервером, которая вся включена в интерфейс +1 интерфейсы вещь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.04.2008, 16:52 |
|
||
|
Интерфейсы - зачем?
|
|||
|---|---|---|---|
|
#18+
t0rch Лучше ли решение с интерфейсами? Почему? чтоб работать можно было с ними по человечески. Как с объектами. Вот так например можно сделать очередь печати: Queue<IReport> queue; Пустой интерфейс вам врятли пригодится. А вот в абстрактный класс можно вынести общую часть реализации всех BillReport. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.04.2008, 10:34 |
|
||
|
|

start [/forum/topic.php?fid=16&fpage=145&tid=1345351]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
52ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 347ms |

| 0 / 0 |
