Запитання з тегом «open-close»

8
LSP проти OCP / Liskov Заміна VS Open Close
Я намагаюся зрозуміти тверді принципи ООП і дійшов висновку, що LSP і OCP мають деякі подібності (якщо не сказати більше). принцип відкритого / закритого типу визначає, що "програмні об'єкти (класи, модулі, функції тощо) повинні бути відкритими для розширення, але закритими для модифікації". LSP простими словами зазначає, що будь-який примірник Fooможе …

8
Невже переважаючий Object.finalize () дійсно поганий?
Основні два аргументи проти переосмислення Object.finalize(): Ви не можете вирішити, коли він називається. Він може взагалі не зателефонувати. Якщо я правильно це розумію, я не думаю, що це досить вагомі причини, щоб Object.finalize()так сильно ненавидіти . Саме реалізація VM і GC визначають, коли саме потрібний час для розміщення об'єкта, а …

1
Чому (/ зробив) Бертран Мейєр вважає, що підкласифікація - єдиний спосіб розширити «закритий» модуль?
У « Об’єктно-орієнтованій програмі» ( Майєр ) він визначає принцип відкритого / закритого типу : Модуль, як кажуть, буде відкритим, якщо він ще доступний для розширення. Наприклад, має бути можливість додати поля до структур даних, які він містить, або нових елементів до набору функцій, які він виконує. Кажуть, що модуль …

4
Чи макети порушують принцип "Відкрито / закрито"?
Деякий час тому я прочитав відповідь на переповнення стека, яку не можу знайти, пропозицію, в якій пояснювалося, що ви повинні перевірити загальнодоступні API, і автор сказав, що ви повинні перевірити інтерфейси. Автор також пояснив, що якщо реалізація методу зміниться, вам не потрібно буде змінювати тестовий випадок, оскільки це порушить контракт, …

5
Чи є перевантаження прикладом принципу відкритого / закритого?
У Вікіпедії йдеться "програмні об'єкти (класи, модулі, функції тощо) повинні бути відкритими для розширення, але закритими для модифікації" Слово функції зловила мої очі, і тепер мені цікаво , якщо можна припустити , що створення перевантаження для методу можна розглядати як приклад відкритого / закритого принципу чи ні? Дозвольте пояснити приклад. …

7
Рефакторинг і принцип відкритого / закритого типу
Нещодавно я читав веб-сайт про розробку чистого коду (тут не посилаю посилання, оскільки це не англійською мовою). Один із принципів, що рекламується на цьому веб-сайті, - це принцип відкритого закриття: кожен програмний компонент повинен бути відкритим для розширення та закритим для модифікації. Наприклад, коли ми впровадили та протестували клас, ми …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.