Мне потребовалось слишком много времени, чтобы добраться туда, но я, наконец, завершаю свой проект CLI Data Gem. До сих пор это был долгий трудный путь, но почему-то я чувствую, что вхожу в ритм понимания того, что такое программирование. Я убедился на собственном опыте, что применение того, что вы узнали, творит чудеса для общего опыта обучения. От возвращения к старым урокам, к просмотру на YouTube, потому что вы никогда не понимали старые уроки, к поиску в Google фраз или частей того, что вы пытаетесь выполнить, надеясь, что есть какая-то документация, которая решает вашу проблему или кто-то еще на StackOverflow. понимает вас и имел ту же проблему. Я получил новое понимание того, как строить из того, что у меня в голове, и я рад, что не разрушил себя по пути. Оооочень за сам проект. Я создал интерфейс командной строки под названием KnicksTape, который дал бы фанатам «Никс» возможность узнать, где и против кого «Никс» играют в любой день, чтобы они могли договориться о посещении игры, будь то дома или в гостях.

Итак, сначала мне пришлось очистить сайт, на котором было расписание….

Я открыл сайт с помощью Nokogiri, затем, заметив, что данные содержатся в таблицах, я выяснил, какие элементы использовать для вызова этих данных, и очистил их. Я отделил каждый атрибут, который мне понадобится (дата, противник и местоположение), и, наконец, я вызываю новую игру, которая включает все атрибуты.

В моем классе Game я установил переменную класса, которая будет содержать все игры. Затем я устанавливаю так, что при инициализации новой игры она должна включать дату, локацию и оппонента, плюс она должна кидать новую игру в переменную класса. Затем, чтобы сделать все читаемым и доступным, я установил метод класса, который просто вызывает переменную класса «все». Наконец, я установил 3 метода класса: find_by_date, find_by_opponent и метод find_by_location. Каждый из них позволит искать во всех играх и находить конкретную игру, которую ищет пользователь.

Наконец, класс CLI. Я вызываю класс скребка и затем приветствую пользователя. После краткого описания я спрашиваю пользователя, не хотят ли они искать игру по дате, сопернику или местоположению. Здесь в игру вступают методы поиска из игрового класса. Если они выбирают дату, пользователь вводит дату, и это вызывает метод print_by_date. Метод печати по дате принимает выбранную дату в качестве аргумента, и если в этот день есть игра, он сообщит пользователю, где и с кем играют «Никс» в этот день. Если игры нет, это сообщит пользователю об этом и даст ему возможность выбрать другую дату. CLI также сообщит пользователю, будет ли это домашняя или выездная игра, чтобы они могли решить, хотят ли они купить билет. То же самое относится и к другим вариантам, местоположению и противнику.

Я определенно немного горжусь собой и немного увереннее. Надеюсь, это означает, что я смогу справиться с остальной частью этого курса с большей уверенностью!