Я совсем недавно начал профессионально развиваться.Я изучал ООП, когда учился в университете, но не чувствую, что когда-либо действительно использовал его в сценарии «реального мира».
По сути, при попытке создать / манипулировать определенным типом документа в организации,Я создал для него класс, полагая, что в любое время, когда мы захотим создать / манипулировать этим конкретным типом документа, мы можем просто создать его экземпляр и предоставить ему определенную информацию, чтобы он позаботился о себе сам.
Я знаю, что мы планируем работать с другими типами документов (наверное, я должен отметить, что когда я говорю типов документов , я имею в виду что-то вроде "отчета о расходах" или "инвентарного списка", как вЯ имею в виду содержание.) Я предполагал, что все эти типы документов будут иметь определенные виды функций (например, работа с общими строками или определенными именами в Excel), поэтому я затем создал абстрактный класс Document и подумал, что каждыйтип документа, который мы хотели создать, может расширить этот класс.
Конечно, я все еще работаюg с одним типом документа, так что, хотя у меня вроде есть представление о методах, которые могут быть общими для всех документов, на данный момент у меня все еще есть только один абстрактный класс и один, который расширяет его, поэтому он кажется своего рода ненужным.
Я предполагаю, что мои вопросы:
1) Должен ли я даже использовать абстрактный класс здесь.Например, это похоже на правильное использование одного или я полностью упустил суть?
2) Если я должен использовать один, я не должен использовать это так рано?Я имею в виду, должен ли я подождать, пока передо мной действительно будет несколько документов, чтобы я мог на самом деле определить, какая функциональность распределена между всеми ними, а не что-то вроде предположения, которое я знаю сейчас, даже если у меня есть только один класс, реализующий его?
Спасибо.