Я перероблю застарілий веб-сайт PHP OOP.
Мене так спокушає почати використовувати "фінал" на заняттях до " make it explicit that the class is currently not extended by anything
". Це може заощадити багато часу, якщо я приходжу до класу, і мені цікаво, чи можу я перейменувати / видалити / змінити protected
властивість чи метод. Якщо я дійсно хочу розширити клас, я можу просто видалити остаточне ключове слово, щоб розблокувати його для розширення.
Тобто Якщо я приходжу до класу, в якому немає дитячих класів, я можу записати ці знання, позначивши клас остаточним. Наступного разу, коли я прийду до нього, мені не доведеться повторно шукати кодову базу, щоб побачити, чи є у неї діти. Таким чином економлять час під час реконструкції.
Це все здається розумною ідеєю економії часу .... але я часто читав, що заняття слід робити "остаточними" лише в рідкісних / особливих випадках.
Можливо, це накручує створення об'єкта Mock або має інші побічні ефекти, про які я не думаю.
Що я пропускаю?