Запитання з тегом «interfaces»

Питання щодо міркувань щодо інтерфейсу, наприклад програмування на інтерфейс.

11
Чому PHP має інтерфейси?
Я помітив, що станом на PHP5 до мови додано інтерфейси. Однак, оскільки PHP настільки слабко набраний, здається, що більшість переваг використання інтерфейсів втрачається. Чому це включено в мову?

8
За замовчуванням vs Impl при реалізації інтерфейсів на Java
Після прочитання Чи повинні назви пакетів бути одниною чи множиною? мені прийшло в голову, що я ніколи не бачив належної дискусії щодо одного з моїх вихованців: називання реалізацій інтерфейсів. Припустимо, що у вас є інтерфейс, Orderякий повинен бути реалізований різними способами, але існує лише початкова реалізація, коли проект вперше створений. …

4
Думки щодо впровадження Model-View-Presenter
Я намагаюся зрозуміти, як реалізувати гарну розв'язку між користувальницьким інтерфейсом та моделлю, але у мене виникають труднощі з визначенням, де саме поділити лінії. Я дивився на Model-View-Presenter, але не знаю, як саме реалізувати його. Наприклад, мій погляд має кілька діалогових вікон. Чи повинен бути клас Перегляд із екземплярами кожного із …


5
Реалізація інтерфейсу, коли вам не потрібен один із властивостей
Досить прямо. Я реалізую інтерфейс, але є одна властивість, непотрібна для цього класу, і насправді його не слід використовувати. Моя початкова ідея полягала в тому, щоб просто зробити щось на кшталт: int IFoo.Bar { get { raise new NotImplementedException(); } } Я гадаю, що в цьому немає нічого поганого, але …

6
Краще мати 2 методи з чітким значенням, або просто 1 метод подвійного використання?
Щоб спростити інтерфейс, краще просто не мати getBalance()методу? Перехід 0до charge(float c);волі дасть той самий результат: public class Client { private float bal; float getBalance() { return bal; } float charge(float c) { bal -= c; return bal; } } Можливо, запишіть у javadoc? Або просто залиште це користувачеві класу, …
30 interfaces  cqrs 

4
Чому .compareTo () в інтерфейсі, а .equals () знаходиться в класі на Java?
Хочу знати, чому .compareTo()в Comparableінтерфейсі, а такий метод, як .equalsу Objectкласі. Мені здається довільним, чому такий метод, як, наприклад, .compareTo()вже не в Objectкласі. Для використання .compareTo()ви реалізуєте Comparableінтерфейс та реалізуєте .compareTo()метод для своїх цілей. Для .equals()методу ви просто перекриєте метод у своєму класі, оскільки всі класи успадковують від Objectкласу. Моє …

6
Розуміння "програмування на інтерфейс"
Я багато натрапив на термін "програмування на інтерфейс замість реалізації", і я думаю, що я начебто розумію, що це означає. Але я хочу переконатися, що я розумію, що це переваги та можливі реалізації. "Програмування на інтерфейс" означає, що, коли це можливо, слід посилатися на більш абстрактний рівень класу (інтерфейс, абстрактний …

10
Інтерфейси на абстрактному класі
У мене з колегою є різні думки щодо взаємозв'язку між базовими класами та інтерфейсами. Я вважаю, що клас не повинен реалізовувати інтерфейс, якщо цей клас не можна використовувати, коли потрібна реалізація інтерфейсу. Іншими словами, мені подобається бачити такий код: interface IFooWorker { void Work(); } abstract class BaseWorker { ... …

11
Оголошення інтерфейсу в тому ж файлі, що і базовий клас, це хороша практика?
Щоб бути взаємозамінним і перевіреним, зазвичай служби з логікою повинні мати інтерфейс, наприклад public class FooService: IFooService { ... } Я погоджуюсь із дизайном, але я погоджуюся з цим, але одна з речей, яка мене турбує при такому підході, - це те, що для однієї послуги вам потрібно буде оголосити …

9
Назви інтерфейсу: префікс "Can-" vs суфікс "-Able"
Загальноприйнято використовувати "-able" як суфікс для інтерфейсів, наприклад Serializable для друку Численні, які можна пити з можливістю зйомки Я думав, що "Can-" може бути кращим, оскільки він може бути більш описовим. Так, він більш багатослівний і додає шуму назви інтерфейсу. Зокрема, можна використовувати пасивні дієслова. Напр. 1 означає, що стрілянина …
29 api  interfaces 

2
Як називається такий (анти) візерунок? Які його переваги та недоліки?
За останні кілька місяців я кілька разів наткнувся на наступну техніку / зразок. Однак я не можу знайти конкретне ім’я, і я не впевнений на всі 100 своїх переваг та недоліків. Схема має такий вигляд: В інтерфейсі Java набір загальних методів визначається як зазвичай. Однак, використовуючи внутрішній клас, екземпляр за …

2
Впровадження чистих абстрактних класів та інтерфейсів
Хоча це не є обов'язковим у стандарті C ++, схоже, GCC, наприклад, реалізує батьківські класи, включаючи чисто абстрактні, шляхом включення покажчика на v-таблицю для цього абстрактного класу в кожній інстанції відповідного класу. . Природно, це збільшує розмір кожного примірника цього класу вказівником для кожного батьківського класу, який він має. Але …

8
Дизайн інтерфейсу, коли функції потрібно викликати у певній послідовності
Завдання полягає в налаштуванні обладнання в межах пристрою відповідно до деяких специфікацій вводу. Цього слід досягти таким чином: 1) Зберіть інформацію про конфігурацію. Це може статися в різний час і місця. Наприклад, модуль A і модуль B можуть вимагати (в різний час) деякі ресурси від мого модуля. Ці "ресурси" насправді …
24 c++  interfaces 

5
Як ви розвиваєте та використовуєте версію інтерфейсу?
Скажіть, у вас є інтерфейс IFoo: public interface IFoo { void Bar(string s); int Quux(object o); } У версії 2 свого API вам потрібно додати метод Glargдо цього інтерфейсу. Як це зробити, не порушуючи існуючих користувачів API і не підтримуючи сумісність назад? Це в основному спрямовано на .NET, але може …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.