Какой это был фантастический забег. То, что было описано как «попытка сделать глоток воды из пожарного шланга», было именно этим. Все началось с того, что вы с нетерпением ждали начала школы, занимаясь подготовительной работой. Школа началась, и вы обнаружили, что подготовительная работа была на 100% важной и полезной. Вы начали блог. Вы создали учетную запись Slack. Теперь у вас есть учетная запись GitHub. Вы выполнили лабораторные работы, научились читать тесты, файлы rspec, вы полностью освоили разработку через тестирование, вы добились успеха.

Затем, как птенец, которому дали 2-секундный инструктаж о том, как летать, прежде чем его вытолкнут из гнезда, вы предоставлены сами себе. Никаких тестовых файлов rspec, никаких тестовых сообщений об ошибках, которые можно использовать для достижения вашей цели, только вы, Всемирная паутина и ваш текстовый редактор против всего мира. Вы вошли в «Неделю проектов».

Нам поручено связать все, чему мы научились за последний месяц: переменные, методы, булевы значения, условные операторы, циклы, массивы, итерации, хэши (*сжатые кулаки подняты в воздух, когда я кричу «ХАШКЕТБОЛ!!!!»). ), структуры данных, регулярное выражение, ориентация объекта, классы и экземпляры этих классов, методы экземпляра, свойства и жизненный цикл объекта, сам объект, модели объекта, отношения объектов, архитектура объекта, переменные и методы класса, метапрограммирование и, наконец, очистка. Глубокий вдох в одно приложение командной строки, способное принимать вводимые пользователем данные и эффективно создавать данные, которые вы «собираете» с выбранной веб-страницы, в структурированном формате.

Процесс, который я использовал для выбора темы моего проекта, я бы не рекомендовал. Это был своего рода подход «телега впереди лошади», который привел к потере драгоценных дней и оказался совершенно бесплодным. Видите ли, я пытался выбрать тему, прежде чем посмотреть, есть ли хотя бы веб-сайт, который можно было бы использовать для моей впечатляющей идеи. Не было ни одного. Поскольку время уже было потрачено впустую, я затем искал веб-сайт, который можно было очистить и который меня отдаленно интересовал. Именно этот подход я бы порекомендовал. Я считаю, что наши инструкторы не заинтересованы в предмете наших проектов, они хотят видеть, что мы выполняем все требования проекта и что у нас есть четкое представление о том, что мы делаем внутри самого проекта.

Наблюдения за НЛО. Вы спросите, почему наблюдения НЛО? Почему нет. Приличная доступная страница Википедии, которую можно было очистить. В программе будет класс Scraper, отвечающий за очистку, сбор и разделение данных. Класс Sighting, отвечающий за получение данных и создание новых объектов Sighting. Когда мой класс Sighting инициализируется, он принимает атрибуты и присваивает их переменным экземпляра, создавая новый экземпляр объекта. Затем он возьмет этот вновь созданный объект и его атрибуты и поместит в переменную класса, где он будет доступен в моей программе. И, наконец, мой класс CLI, где все волшебство будет происходить с точки зрения пользователя. В ней будет краткое введение в тему программы. Затем предоставьте пронумерованный список одного из атрибутов, полученных от моего класса Sighting. Затем он предложит пользователю получить дополнительную информацию о любом из перечисленных элементов, выбранных по его номеру, или выйти из программы. Если пользователь выбирает одно из перечисленных чисел, он получит остальную информацию об этом конкретном объекте и его атрибутах, еще раз вызвав класс Sighting и его переменную класса, хранящую эти данные.

Этот проект стал для меня настоящей проверкой интуиции, и теперь я могу сказать вам, что мой проект завершен. То, о чем когда-то мне было страшно даже думать, теперь несколько отошло в зеркало заднего вида. Я это сделал. Сам с некоторой помощью и под руководством бесчисленных и обширных ресурсов, доступных всем нам. Я искренне верю, что существует метод безумия Флэтайронс. Я еще не знаю точно, что это такое, но если бы мне пришлось сделать обоснованное предположение, это было бы то, что реальный мир не прост. И решение проблем — огромная часть каждого дня жизни программиста. Не будет инструктора, который будет задавать вопросы о том, как выполнять определенные задачи, и вам придется быть удивительно изобретательным самостоятельно. Сумасшествие заключается в том, что почти наверняка я не могу сказать ничего, что подготовит вас к первоначальному ощущению наличия перед вами совершенно пустого редактора без файлов. Я могу только сказать, что вы справитесь с этим, и когда вы закончите, у вас появится уверенность в себе, которую никто никогда не сможет у вас отнять. Что ж, до следующего проекта…