Видео курс Java Professional. Рефакторинг. Типичные архитектурные решения и антипаттерны - курсы ITVDN
ITVDN: курсы программирования
Видеокурсы по
программированию
Подписка

300+ курсов по популярным IT-направлениям

Выбери свою IT специальность

Подписка
Подписка

300+ курсов по популярным IT-направлениям

×

Вы открыли доступ к тесту! Пройти тест

Вы действительно хотите открыть доступ к тестированию по курсу Java Professional на 40 дней?

ВИДЕОУРОК №5. Рефакторинг. Типичные архитектурные решения и антипаттерны

Для просмотра полной версии видеокурса, онлайн тестирования и получения доступа к дополнительным учебным материалам купите курс Купить курс
Для просмотра всех видеокурсов ITVDN, представленных в Каталоге, а также для получения доступа к учебным материалам и онлайн тестированию купите подписку Купить подписку

В первом уроке вас ждет обзор технологии Java. Будут рассмотрены преимущества и недостатки Java в сравнении с конкурирующими технологиями. Также мы рассмотрим структуру простого Java-приложения, сделаем компиляцию и запуск Java-приложения. В завершении первого урока вас ждет знакомство со средой разработки IDE Netbeans.

Читать дальше...

В этом уроке будут рассмотрены такие понятия, как абстракция, инкапсуляция, пакетирование, классы, атрибуты, методы, конструкторы, пакеты. Вы получите ответы на вопросы, связанные с использованием модификаторов доступа (private и public). Узнаете о вызове методов объекта класса в Java. Также будут даны рекомендации по документированию программ.

Читать дальше...

В этом уроке мы рассмотрим основные принципы ООП: инкапсуляция, наследование, полиморфизм, поговорим о перегрузка и переопределении методов, использовании модификаторов доступа protected и default (package-friendly), конструкторов, создании нескольких конструкторов класса, процесс создания и инициализации объекта. Также вас ждет знакомство с UML, будет рассмотрено использование EasyUML для Netbeans, кодогенерация на основе диаграммы классов и обратный инжиниринг.

Читать дальше...

Здесь мы поговорим о некоторых отдельных аспектах создания классов, таких, как создание статических переменных, методов и инициализаторов, финальных классов, методов и переменных, а также – создание перечислений и использование экзотической конструкции статического импорта. А кроме этого мы примем участие в вечной священной войне сторонников создания абстрактных классов и приверженцев имитации множественного наследования с помощью интерфейсов, и увидим, что эти подходы не отрицают друг друга, и их вполне можно совместить.

Читать дальше...

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

Читать дальше...

Здесь мы поговорим об ошибках и исключительных ситуациях, от которых не застрахован ни один разработчик, и ни одно приложение, обсудим средства для их обработки, коснемся понятия оценки выражений, а также поговорим о средствам отладки и профилирования кода, которые предлагает IDE Netbeans. Второй важный момент, который мы обсудим – это понятие о тестировании ПО, Unit-тестирование, возможности по организации unit-тестирования и средства тестирования, которые предлагает наша любимая среда разработки.

Читать дальше...

В этом уроке мы поговорим о таком важном понятии, как коллекции, обсудим основные виды коллекций и интерфейсов, рассмотрим особенности гомогенных и гетерогенных коллекций, а также обсудим проблемы перебора всех элементов коллекции. Второй важный момент, который мы обсудим – это альтернативные библиотеки и дополнения для Java, позволяющие работать с коллекциями максимально эффективно.

Читать дальше...

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

Читать дальше...

Этот урок является продолжением предыдущего, в котором мы говорили об основах ввода-вывода. Теперь же мы поговорим о более «приземленных» вещах – консольном вводе-выводе, работе с файлами, библиотеках для построения удобного текстового интерфейса пользователя. Стоит также провести аналогию между частью материала этого урока и следующими двумя уроками, в которых мы также будем говорим о построении пользовательского интерфейса, только теперь уже графическими средствами.

Читать дальше...

Этот урок является первым в серии уроков, посвященных разработке графических "настольных" приложений. В нем мы поговорим о JFC и Swing, обсудим имеющийся набор интерфейсных элементов и использование различных менеджеров разметки, а также сравним программный и визуальный способы построения графического интерфейса пользователя –средствами Matisse – одного из лучших (если не лучшего) из существующих на рынке конструкторов пользовательского интерфейса для Java. Стоит также отметить, что материал этого урока напрямую связан со уроками 11 и 14, в которых мы поговорим об обработке событий от интерфейсных элементов и о построении приложений на платформе Netbeans

Читать дальше...

Этот урок продолжает серию уроков, посвященных разработке графических "настольных" приложений. В нем мы поговорим об обработке событий от интерфейсных элементов, категориях событий, которые мы можем обрабатывать, рассмотрим понятие адаптеров событий, способы организации обработчиков, а также кратко обсудим вопрос распараллеливания обработки событий и создания рабочих потоков, который подробнее обсудим в следующем, двенадцатом уроке.

Читать дальше...

Этот урок посвящен обсуждению важной и очень востребованной ныне темы – созданию многопоточных Java-приложений. Мы рассмотрим понятия потоков, подходы к их созданию, вопросы запуска и управления работающими потоками. Особое внимание будет уделено проблемам при работе нескольких потоков с общими данными, а также использованию методов wait и notify для управления потоками. Материал, рассмотренный в этом модуле, будет использован нами также при создании сетевых приложений и приложений на платформе Netbeans

Читать дальше...

В ходе изучения материала этого урока мы обсудим некоторые аспекты работы с сетью в Java, а именно определим основные понятия, поговорим о сокетах, об использовании основных классов и интерфейсов пакета java.net, упомянем некоторые альтернативные средства создания сетевых приложений. Стоит отметить, что лабораторная работа этого урока является продолжением лабораторной работы предыдущего модуля. После ее выполнения вы получите полнофункциональный чат-сервер, и не менее функциональный чат-клиент, которые вполне могут стать основой для построения чего-то большего. Кстати, выполнение лабораторной работы продолжится в следующем уроке!

Читать дальше...

Этот урок является последним, и в ходе его изучения мы поговорим о проблемах разработки больших, профессионально выглядящих графических приложений с использованием готовой инфраструктуры - платформы Netbeans. Мы рассмотрим вопросы разработки как собственных модулей для этой среды, так и самостоятельных приложений - брендированных и снабженных программами установки. Также мы рассмотрим примеры других приложениях, написанных с применением рассматриваемой платформы, а также подведем итоги обучения и поговорим о том, что делать дальше и где искать ответы на свои вопросы.

Читать дальше...
ПОКАЗАТЬ ВСЕ

Отзывы наших студентов

DOU

Отзывы в DOU

4,9/5 - 200 отзывов

Володимир Бурцев
Володимир Бурцев
5/5
Я вже не новачок у розробці. Проте вивчав Java, а працювати почав на іншій мові. Багато чого важливого і навіть базового позабував, а тут за допомогою ретельного проходження по всім пунктам і аспектам згадую все що потрібно і не висмикуючи з контексту, а послідовно щоби нічого не пропустити. Тут дуже багато окремих гілок за обраним напрямком. Був би час 🙂 PS записи трошки вкрилось пилом і часто зустрічаю помилки/обмовки, але в цілому на якість це не впливає. РАДЖУ!
Почитать оригинал
Facebook

Отзывы в Facebook

5,0/5 - 707 отзывов

Маис Расулов
Маис Расулов
5/5
Отличный курс, советую всем
Почитать оригинал
Google

Отзывы в Google

4,9/5 - 836 отзывов

Юрий Казимирко
Юрий Казимирко
5/5
Прошел курс C# 8.0 СТАРТОВЫЙ. Курс классный! Преподаватель этого курса Александр Шевчук. У него классная чёткая подача учебного материала. Понравилась учебная платформа (сайт) ITVDN, она удобная.
Почитать оригинал
Студенты также смотрят
Java Углубленный
ПОДРОБНЕЕ
Java Базовый
ПОДРОБНЕЕ
Java Стартовый
ПОДРОБНЕЕ
SOLID принципы в Java
Автор: Андрей Фок
ПОДРОБНЕЕ
Unit тестирование в Java с JUnit
ПОДРОБНЕЕ

Покупай подпискус доступом ко всем курсам и сервисам

Библиотека современных IT знаний в удобном формате

Выбирай свой вариант подписки в зависимости от задач, стоящих перед тобой. Но если нужно пройти полное обучение с нуля до уровня специалиста, то лучше выбирать Базовый или Премиум. А для того чтобы изучить 2-3 новые технологии, или повторить знания, готовясь к собеседованию, подойдет Пакет Стартовый.

Стартовый
  • Все видеокурсы на 3 месяца
  • Тестирование по 10 курсам
  • Проверка 5 домашних заданий
  • Консультация с тренером 30 мин
59.99 $
Оформить подписку
Премиум Plus
  • Все видеокурсы на 1 год
  • Тестирование по 24 курсам
  • Проверка 20 домашних заданий
  • Консультация с тренером 120 мин
  • Скачивание видео уроков
149.99 $
199.99 $
Оформить подписку
Акция
Базовый
  • Все видеокурсы на 6 месяцев
  • Тестирование по 16 курсам
  • Проверка 10 домашних заданий
  • Консультация с тренером 60 мин
89.99 $
Оформить подписку

Вопросы и ответы

В чём преимущество онлайн курсов программирования по сравнению с оффлайн?
Какова стоимость обучения?
Сколько времени понадобится, чтобы овладеть программированием?
Сколько времени понадобится, чтобы овладеть IT-специальностью?
С какого курса начинать обучение?
Как управлять своим временем и организовать эффективное онлайн-обучение с тренером?
Есть ли у вас помощь с трудоустройством после окончания обучения?
Возможно ли персональное обучение с тренером ITVDN?
С какого возраста можно учиться на платформе?
Нужны ли знания английского языка для обучения?
Какого уровня можно достичь, пройдя обучение по специальности?
Когда закончится подписка, что дальше? Доступа к урокам не будет?
Суммируются ли скидки на покупку подписки?
В чём преимущество онлайн курсов программирования по сравнению с оффлайн?

Онлайн курсы имеют ряд преимуществ перед оффлайн форматом:

  1. Независимость от локации. Онлайн позволяет учиться где угодно.
  2. Сохранение денег и времени на дорогу. Вы экономите время и деньги с поездок на курсы и обратно.
  3. Онлайн курсы дешевле. Нет нужды в помещении и ноутбуках для студентов, поэтому стоимость ниже.
  4. Удобный темп обучения, постоянный доступ к информации. Обучение в вашем темпе в любом месте 24/7. Также есть доступ к записанным урокам, чего нет в оффлайн формате.
Какова стоимость обучения?

На ITVDN есть 2 формата обучения: Live Online и видео курсы. Цена обучения зависит от выбранного вами способа обучения.

Если вы хотите учиться самостоятельно в формате видео курсов, стоимость обучения составит в среднем 10-15 USD в месяц в зависимости от выбранного вами пакета подписки.

Live Online – это онлайн обучение с тренером в группах вместе с другими студентами. Учеба в данном формате стоит в среднем 6-7 USD за один час.

Сколько времени понадобится, чтобы овладеть программированием?

Зависит от того, сколько внимания программированию вы будете выделять ежедневно, какой именно это язык и какой у вас опыт кодинга. Среднее время на овладение одним языком при условии регулярных занятий хотя бы 2 часа в день:

  • новички – от 3 до 6 месяцев;
  • те, кто имеет базовые знания другого языка – от 1 до 3 месяцев;
  • профессиональные программисты – до 1 месяца.

Самый лучший вариант инвестиции времени – 8 часов ежедневно (20% теории + 80% практики). Больше практики – быстрее овладеете программированием.

Сколько времени понадобится, чтобы овладеть IT-специальностью?

Для овладения IT-специальностью нужно выделить не менее 500 часов, из которых около 100 часов – на просмотр видео уроков или посещение онлайн занятий с ментором, а 400 – на выполнение практических заданий по пройденным темам.

В зависимости от того, сколько времени вы готовы выделять на обучение в день, вы сможете пройти программу за 3-8 месяцев. Если у вас есть определенная база знаний по IT, количество необходимого времени будет меньшим.

Также продолжительность обучения зависит от выбранной вами специальности, поскольку набор технологий, которые вы должны изучить, будет разным.

С какого курса начинать обучение?

Начинать следует с тех, которые содержат в названии слово “Стартовый”. Такие курсы имеют вводный материал для знакомства с языком или технологией.

Если вы планируете учиться по конкретной специальности в формате видео курсов, перейдите на страницу специальности и прокрутите до заголовка “Видео курсы по специальности …”. Ниже будет список видео курсов, отсортированных в порядке необходимости изучения.

Ещё ниже вы найдете Roadmap по специальности – путеводитель, на котором изображены видео курсы в виде дерева, что также легко сориентирует вас в последовательности прохождения курсов.

Как управлять своим временем и организовать эффективное онлайн-обучение с тренером?

Если вы выбираете Live Online обучение с тренером, всё очень просто:

  • посещайте все занятия, вовремя выполняйте д/з;
  • дополнительно смотрите видео уроки на ITVDN;
  • после каждого урока проходите краткое тестирование;
  • практикуйтесь в Интерактивном практикуме;
  • общайтесь с одногруппниками в ходе решения д/з, задавайте вопросы ментору на уроках и вне их;
  • в конце каждого курса сдавайте экзамен на TestProvider (и получайте Сертификаты);
  • в конце всего обучения проходите экзамен по специальности и получите диплом.
Есть ли у вас помощь с трудоустройством после окончания обучения?

Мы имеем специальный раздел – “Вакансии”, который помогает нашим студентам искать первую работу в IT. Детальнее о возможностях и о разделе по ссылке.

А для тех, кто учится онлайн с ментором, у нас дополнительно предусмотрена индивидуальная помощь HR-специалиста по подготовке к трудоустройству с первого дня обучения и до получения первого job-оффера. Она включает в себя помощь в оформлении соцсетей, подготовке резюме, проведении пробного собеседования, предоставлении советов по поиску работы и самопрезентации и т. д.

Возможно ли персональное обучение с тренером ITVDN?

К сожалению, данная услуга ITVDN не предусмотрена, однако вы можете заказать индивидуальную консультацию с нашим ментором. Подробности вы найдете по ссылке.

С какого возраста можно учиться на платформе?

На ITVDN отсутствуют курсы для детей, поэтому комфортный возраст для начала обучения по нашим материалам – от 14 лет.

Нужны ли знания английского языка для обучения?

Никаких требований к вашему уровню английского мы не выдвигаем, поскольку все учебные материалы идут на русском или украинском языках. При этом базовые знания английского будут полезны для комфортного поиска информации в гугле, чтения документаций в интернете и прочего.

Какого уровня можно достичь, пройдя обучение по специальности?

На ITVDN можно пройти полное обучение с нуля до специалиста уровня Trainee/Junior. Если вы уже практикующий разработчик, наши видео курсы помогут углубить ваши знания до уровня Middle.

Когда закончится подписка, что дальше? Доступа к урокам не будет?

После окончания действия вашей подписки доступ к видео курсам, к сожалению, будет закрыт. Однако вы сможете пользоваться теми учебными материалами, которые вы скачали на свой девайс во время обучения.

Суммируются ли скидки на покупку подписки?

Нет, скидки не суммируются.

Notification success