а как бы знаю язык, и знаю как работают классы, точнее как их делать и на что они способны
тебе так только кажется. ООП не простая тема, кто бы что ни говорил, и одного только представления о классах мало. Если бы ты правда понимал, ты бы умел их применять по назначению, а не по ситуации. Чтобы понять ООП, нужно немного привыкнуть к объектному мышлению и контрактным связям, затем плавно постигать чистые принципы SOLID. А до сих, тебе стоит поизучать более профильные технологии, в твоей ситуации идет работа именно с данными, а не какими-то отдельными сущностями