← Усі теми

Питання на співбесіді з патернів проєктування (Junior) з відповідями

75 запитань для співбесіди з теми Патерни проєктування (Junior) - з правильними відповідями, поясненнями й посиланнями на документацію.

Пройти цей тест
  1. 1.Що таке патерн проєктування?
  2. 2.На які три групи поділяються класичні патерни GoF?
  3. 3.Що гарантує патерн «Одинак» (Singleton)?
  4. 4.Чому Singleton часто називають антипатерном?
  5. 5.Яке завдання розв'язує патерн «Фабрика»?
  6. 6.Як працює патерн «Спостерігач» (Observer)?
  7. 7.Чим Pub/Sub відрізняється від класичного Observer?
  8. 8.Що таке патерн «Стратегія»?
  9. 9.Що робить патерн «Декоратор»?
  10. 10.Коли потрібен «Адаптер»?
  11. 11.Що таке «Фасад»?
  12. 12.Для чого використовують патерн «Замісник» (Proxy)?
  13. 13.Який патерн реалізують for...of і Symbol.iterator?
  14. 14.Що таке патерн «Модуль» у JavaScript?
  15. 15.Коли корисний патерн «Будівельник» (Builder)?
  16. 16.Як пов'язаний патерн «Прототип» із JavaScript?
  17. 17.Для чого використовують патерн «Команда»?
  18. 18.Який патерн дає змогу працювати з деревом (меню з підменю, файлова система) однаково?
  19. 19.Що описує патерн «Стан» (State)?
  20. 20.Що робить «Посередник» (Mediator)?
  21. 21.Який патерн лежить в основі middleware в Express чи Redux?
  22. 22.Що таке «Шаблонний метод» (Template Method)?
  23. 23.Для чого «Знімок» (Memento)?
  24. 24.Навіщо потрібен патерн «Легковаговик» (Flyweight)?
  25. 25.Що означає акронім SOLID?
  26. 26.Чого вимагає принцип єдиної відповідальності (SRP)?
  27. 27.Що означає принцип відкритості/закритості (OCP)?
  28. 28.Чого вимагає принцип підстановки Лісков (LSP)?
  29. 29.Про що принцип розділення інтерфейсів (ISP)?
  30. 30.Що означає принцип інверсії залежностей (DIP)?
  31. 31.Що означає принцип DRY?
  32. 32.Що означає принцип KISS?
  33. 33.Що означає принцип YAGNI?
  34. 34.Що означає «композиція краща за успадкування»?
  35. 35.Що описує патерн MVC?
  36. 36.У чому суть патерну Container/Presentational у React?
  37. 37.Який патерн реалізує користувацький хук useWindowSize()?
  38. 38.Який патерн реалізують React Context і <Provider>?
  39. 39.Що таке антипатерн?
  40. 40.Що таке «божественний об'єкт» (God Object)?
  41. 41.Чим погані «магічні числа» на кшталт if (status === 3)?
  42. 42.Що таке «пекло колбеків» (callback hell) і як його уникають?
  43. 43.Функція приймає 7 аргументів. Який рефакторинг зазвичай доречний?
  44. 44.Що таке рефакторинг?
  45. 45.Що таке розділення відповідальності (Separation of Concerns)?
  46. 46.Що означає «висока зв'язність (cohesion) і слабка зв'язаність (coupling)»?
  47. 47.Що таке впровадження залежностей (Dependency Injection) у найпростішому вигляді?
  48. 48.Який патерн реалізує EventEmitter у Node.js чи EventTarget у браузері?
  49. 49.Чим чисті функції корисні під час проєктування?
  50. 50.Який патерн використовує HOC на кшталт withLogger(Component)?
  51. 51.Що таке патерн render props?
  52. 52.Що таке складені компоненти (compound components)?
  53. 53.Чим контрольоване поле введення відрізняється від неконтрольованого?
  54. 54.Що дає заміна вкладених if на граничні умови (guard clauses)?
  55. 55.Як спростити довгий switch, що зіставляє статус із підписом?
  56. 56.Що таке рефакторинг «Виділення функції» (Extract Method)?
  57. 57.Що розділяє патерн «Міст» (Bridge)?
  58. 58.Чому дуже довга функція вважається запахом коду?
  59. 59.Що робити з мертвим кодом (невикористані функції, недосяжні гілки)?
  60. 60.Які коментарі найцінніші?
  61. 61.Яке ім'я найкраще пасує для булевої змінної?
  62. 62.Чому в стані UI краще створювати нові об'єкти, а не мутувати наявні?
  63. 63.Що таке інкапсуляція?
  64. 64.Що таке поліморфізм?
  65. 65.У чому різниця між відношеннями «є» (is-a) і «має» (has-a)?
  66. 66.Чим відрізняються debounce і throttle?
  67. 67.Що таке оптимістичне оновлення UI?
  68. 68.Що таке ліниве завантаження (lazy loading)?
  69. 69.Що таке feature flags (перемикачі функцій)?
  70. 70.Навіщо потрібен запасний UI (наприклад, error boundary в React)?
  71. 71.Що означає, що операція ідемпотентна?
  72. 72.Що означає «єдине джерело істини» для даних застосунку?
  73. 73.Що таке UI, керований конфігурацією (data-driven)?
  74. 74.Що стверджує принцип найменшого здивування?
  75. 75.Від чого застерігає фраза «передчасна оптимізація - корінь усього зла»?