2008-08-11 7 views
0

За последние несколько лет я изменил с длинной текущей страницы элементов управления, которые я спрятал/показал, используя множество пользовательских элементов управления. У меня всегда была дискуссия между коллегами по передовой практике..NET Интерфейсы

Должны ли у вас есть свойства, которые вы заполняете, или использовать параметризованные субсайты для загрузки информации в свои элементы управления?

Часть моего страха использовать параметр - это тот факт, что я не могу убедиться, что все будет заполнено.

Каково основное правило для использования интерфейсов? Я его никогда не создавал. И должен ли я попробовать это, или остаться с 'sub load'?

ответ

1

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

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

Я хотел бы обратиться к любой книге на VB.NET/C#/OOP, чтобы увидеть синтаксис для интерфейсов. Интерфейсы в основном описывают контракт для класса. Если у вас есть класс A и B, и оба реализуют интерфейс, называемый ITime, то оба предоставят все методы, определенные в ITime. Они могут по-прежнему добавлять свои собственные методы, но они должны, как минимум, включать реализацию методов ITime (например, мы могли бы использовать GetDate(), GetCurrentTime() как методы в ITime). Интерфейс не указывает классу A или B, как эти методы должны работать - просто их имя, параметры и тип возврата. Поиск наследования в книге ООП для получения дополнительной информации о том, как наследование интерфейсов отличается от наследования реализации.

 Смежные вопросы

  • Нет связанных вопросов^_^