Олександр Котов' Post

Курс підготовки до inCamp. Основи проектування взаємодії між об’єктами

Наслідування – найперший тип зв’язку, який спадає нам на думку, коли мова йде про повторне використання коду. В цій лекції ми розглянемо, як його недоречне використання може стати на заваді вирішення поставленої задачі. В результаті ви побачите, що ми застосували принципи Dependency Inversion та Open/closed для створення гнучкої та розширюваної системи.

Читати далі


Курс підготовки до inCamp. Основи ОО підходу. Об’єкти, інтерфейси, класи

В цій лекції ми з вами розглянемо базові поняття, які необхідно розуміти при використанні об’єктно-орієнтованого підходу для вирішення задач. А саме: розкриємо сенс таких понять як об’єкт, інтерфейс та клас. Цей матеріал дасть вам необхідну базу для подальшого розуміння більш складних принципів використання ООП.

Переглянути на YouTube:

Основи ОО підходу. Об’єкти, інтерфейси, класи

Читати далі


Весна началась с Kyiv Data Spring

11 марта мы побывали на Kyiv Data Spring – крупнейшей конференции про Data Science и Machine Learning в Восточной Европе.

Сама тема для нас не новая, но было интересно услышать про опыт других людей и выводы, которые они сделали. В связи с чем нам хотелось бы кратко пройтись по всей этой теме от “что это такое” до “что нас ждет в будущем”.

Читати далі


Рекомендації майбутнім інтернам. Як правильно виконати тестове завдання

На співбесіді до інтернатури InterLink inCamp я прошу виконати нескладну алгоритмічну задачу.  Незважаючи на її простоту, за статистикою, лише близько 10 відсотків кандидатів надають коректні рішення. Не обходить біда стороною і результати виконання тестових завдань вдома, після співбесіди.

Сьогодні ми з вами розглянемо основні проблеми, що переслідують студентів на цих етапах, та порадимо, як краще підходити до вирішення задач вцілому.

Читати далі


6th season of InterLink inСamp. Graduation

Ось і завершилась перша інтернатура у Львові. За цей час хлопці багато чого спробували та навчилися. Це були насичені півтора місяці, такі насичені, що я навіть не мав змоги поділитися з вами усіма подіями цих тижнів :). Тож давайте разом пригадаємо як це було.

Хакатон

Хакатон пройшов у нас в дружній, проте напруженій атмосфері. Ми, ментори, зі свого боку не втручалися в процес роботи інтернів і тільки давали поради, коли це було необхідно.

IMG_0707

На своєму досвіді кожна з команд відчула всі труднощі некерованого процесу розробки. Інтерни засвоїли цей урок та отримали корисний досвід: 

Читати далі


5th season of InterLink inCamp. Graduation

Цього місяця сталася ще одна визначна подія. Вже 5та група інтернів пройшла інтернатуру InterLink inCamp. Це був цікавий, складний, непередбачуваний шлях для наших інтернів.

Я вітаю Юру, Женю, Юлю, Єгора та Сашу з успішним завершенням інтернатури.

DSC_0396-001

Читати далі


Рекомендації майбутнім інтернам. ООП, яким воно має бути

Переглядаючи приклади використання принципів ООП, я неодноразово помічав, що їх розуміють невірно. Або ж це була просто відсутність практики, що дозволила б навести відповідний приклад. В цій статті я розгляну основні помилки, які допускали кандидати на інтернатуру в своїх прикладах, а також дам поради стосовно того, як краще підійти до створення прикладів з ООП.

article2

Читати далі


Рекомендації майбутнім інтернам. Що треба знати

Всім привіт! Цим дописом я хочу відкрити цикл статей, присвячених підготовці до нашої інтернатури. Мені неодноразово доводилось спілкуватися з різними кандидатами, які в силу тих чи інших причин недооцінювали важливість базових вмінь, що ми очікуємо при прийомі до інтернатури, або не достатню наполегливо підходили до їх освоєння.

Сьогодні ми з вами розглянемо основні вимоги до кандидатів на інтернатуру а також чому вони важливі. В подальших статтях ми детальніше зупинимось на кожній з них та розглянемо шляхи їх ефективного засвоєння. Тож почнімо! 🙂

article1

Читати далі


6th season of InterLink inCamp: Навчання в стилі хакатону

Ми в inCamp продовжуємо шукати та випробовувати нові підходи в проведенні інтернатури. На старті нашої львівської інтернатури ми доповнили роботу над навчальними проектами, що виконуються до початку роботи із замовником.

Цього разу ми з хлопцями запозичили формат хакатону. Інтерни презентували ідеї своїх проектів та самостійно обрали серед них два найбільш цікавих для себе. Вперед вирвався Олег з ідеєю сервісу для дизайнерів та їх потенційних замовників, а також Андрій з ідеєю сервісу для визначення індивідуальних найбільш продуктивних для праці годин дня.

Читати далі


5th season of InterLink inCamp: Нові підходи у навчанні

После уже привычного ознакомления с шаблонами проектирования Стратегия и Шаблонный метод на примере доработки календаря, мы с ребятами принялись за что-то новенькое. Мы решили сделать еще один прыжок назад в истории и начать ознакомление с Java for Web не с сервлетов, а написания своего примитивного веб-сервера используя java.net.Socket. Это практическое задание позволило ребятам познакомиться с программированием сокетов и лучше разобраться в структуре HTTP запросов и ответов. По хорошей традиции, мы начали с простого решения, и потом, расширяя требования, взялись выделять небольшие модули нашего сервера: connection listener, parser, dispatcher, handlers. Такой подход в дальнейшем помог разобраться с  Servlet API, контейнерами сервлетов и Spring MVC, так как мы уже могли сопоставить их с собственным простым решением по обработке HTTP запросов.

Основы работы с Spring MVC и Hibernate ORM мы освоили на простом ToDo List приложении. А закрепили на своих собственных микропроектах, где ребята имели возможность разработать прототип приложения на интересную им тему. На разработку рабочего прототипа мы выделили всего несколько дней. Задачей интернов было сконцентрироваться на самом необходимом функционале для демонстрации прототипа заказчику в моем лице :D. В выборе правильного пути нам помогло составление плана разработки в виде списка пользовательских историй. Еще на этапе планирования мы смогли откинуть несущественные для демонстрации функции в пользу действительно значимых для демо.

И вот сейчас ребята взялись за наш внутренний проект и уже вносят давно желаемые улучшения! С этой группой интернов мы пошли по пути обучения на чужих ошибках и работе с унаследованным кодом… Кодом, который нам оставила в наследство группа их предшественников :). У нас

Читати далі