Changes between Initial Version and Version 1 of Ticket #550, comment 1
- Timestamp:
- 04/02/21 08:44:21 (3 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #550, comment 1
initial v1 6 6 1. Оператор чтения из файла для {{{EmployeeArray}}} у тебя реализован более-менее правильно -- ты читаешь тип, по нему создаешь сотрудника и затем оператором >> читаешь в него данные, но в операторе чтения из обычного потока ты зачем-то читаешь поля сотрудников прямо внутри оператора. Не надо так делать. На секунду представь что у тебя появился новый тип сотрудников, новый наследник {{{Employee}}}. В какое количество функций тебе придется внести изменения, чтобы твой код заработал? Во многие. А в идеале код должен быть спроектирован так, чтобы вносить изменения в уже написанные функции было не нужно, или как минимум стараться это минимизировать. 7 7 1. Создание нужного сотрудника по типу хочется вынести в отдельный фабричный метод дабы не копи-пастить 8 1. {{{ EmployeesArray ea(10000);}}} -- что за кошмар? Ты либо юзай вектор, чтобы не задумываться о расширении буфера под сотрудников, а если пишешь его сам, то делай это нормально, чтобы буфер на 10к элементов в памяти не в есел мертвым грузом.8 1. {{{ EmployeesArray ea(10000);}}} -- что за кошмар? Ты либо юзай вектор, чтобы не задумываться о расширении буфера под сотрудников, а если пишешь его сам, то делай это нормально, чтобы буфер на 10к элементов в памяти не висел мертвым грузом. 9 9 10 10 **5/10** только