Djus1, класс нужны не для группировки функций, а для работы ООП. Когда конкретный класс содержит в себе нужную ему информацию для работы.
Что ты будешь делать, если у тебя есть некая сущность пользователя, которая должна хранить его данные? А что ты будешь делать, если хочешь для этой сущности добавить методы? А что ты будешь делать, если у тебя будет несколько типов классов и один должен наследовать другой и заменять часть функционала для конкретного типа, но ты хочешь со всеми типами работать одним кодом?
Понятия не имею что это за код. Навскидку - пакет для передачи через какой-то протокол.
Тогда DataLen тут - фактическое количество байт в передаваемом массиве
Никак. Ничто не учится быстро, что в будущем будешь использовать.
Нужно начинать с азов программирования. И не важно на каком языке. В школе, скорее всего, должны преподавать, насколько я знаю. Вот и учи уроки. Для программирования, знание школьной программы полезнее, чем выштудировать книгу по алгоритмам.