"Я не уверен, почему я должен анализировать mySQL ResultSets в объекты, а не печатать их напрямую в хорошем формате printf. Точно так же, почему я должен создавать объекты класса при вставке новых данных, а не при изменении базы данных напрямую через мое соединение. "
... в основном потому, что в реальных приложениях вы, скорее всего, будете делать с записями намного больше, чем просто печатать их непосредственно на консоль и с этой точки зрения полезно поместить их в solid структуру данных, которую вы можете легко перемещать и манипулировать.
Это также может упростить поддержку кода - реальные приложения обычно обновляются и изменяются много раз и могут содержать множество различных типов данных и структур, некоторые из которых могут представлять собой сложные представления, состоящие из несколько других структур, собранных вместе - и проще построить сложный объект, если у вас уже есть много небольших объектов, из которых можно его изготовить (представьте, что собираете мебель из готовых секций, а не начинайте с распиливания всех досок и изготовления всех винтов самостоятельно ).
Вы можете думать о нем как о промежуточном слое между тем, что находится на экране, и тем, что находится в хранилище, которое в более сложных приложениях не всегда будет структурировано или отображаться точно так же, как друг друга, поэтому возникает необходимость для посредника. Иногда дисплей и хранилище даже не будут находиться на одном и том же компьютере (как на таких сайтах, как этот).
Поэтому я полагаю, что целью этого задания может быть то, чтобы вы привыкли использовать эти структуры, но не делая общую цель слишком сложной. Истинная цель упражнения не всегда очевидна.