Меня зовут Денис, мне 30, а программирование мой близкий друг. Уже на протяжении 10 лет оно со мной идет рука об руку и помогает реализовываться в жизни. Чуть не забыл, я именно backend разработчик. То есть я разрабатываю архитектуру и логику приложений, а не отвечаю за его внешний вид. В данный момент я работаю в однойиз самых крупных компаний - Google. А также обучаю Java программированию на своих курсах DMdev, так как именно Java является моим профильным языком разработки.
В современном мире разработки ПО распространена микросервисная архитектура и облачные технологии, где давно ушли от разворачивания приложений на одном единственном сервере. На этом курсе мы поговорим о том, какие проблемы и решения проблем на одном сервере появлялись, как изобрели аппаратную виртуализацию, а затем и виртуализацию на уровне операционной системы благодаря Linux Namespaces, и почему
Вводный курс для тех, кто хочет освежить свои знания или кто впервые знакомится с программированием и хочет иметь представление о том, что это такое, как написать свою первую программу, убедиться, что это довольно просто и легко. Поэтому курс не требует каких-то предварительных знаний. Мы пройдемся от самого нуля до того уровня, когда вы сможете писать собственные простенькие программы.
Руководство для начинающих по Groovy для Java-разработчиков
Beginner's Guide to Groovy for Java Devs
Курс Groovy содержит информацию о другом объектно-ориентированном языке программирования, который является дополнением к языку Java. С ним будет сталкиваться любой Java разработчик, потому что язык Groovy является ключевым для понимания таких инструментов как:Gradle (один из лучших инструментов сборки проектов для JVM-based языков программирования)Jenkins (самый популярный Continuous Integration / Continuous Delivery инструмент).
Shell и Bash скриптинг: начальное руководство для новичков
Shell and Bash Scripting Beginner's Guide
Подавляющее большинство приложений (особенно Java приложений) разрабатываются и разворачиваются на Unix операционных системах (Linux, MacOS). Поэтому в любом случае каждый разработчик столкнется с командной строкой, а значит и bash: либо на локальном компьютере, либо удаленно подключиться к серверу для его настройки и выполнения команд.
Курс Apache Maven содержит информацию про инструмент автоматизированной сборки проектов, который полностью отвечает за жизненный цикл Java приложений. Зайдем в исходный код Apache Maven, чтобы понять основное ядро его, которым на самом деле являются плагины и Mojo (Maven plain Old Java Object).
По окончании курса вы напишите собственное веб приложение, соблюдая уровневую архитектуру и используя шаблон проектирования MVC. Будете уверенно владеть веб сервером Apache Tomcat и хорошо разбираться в сетевом взаимодействии, как все устроено "под капотом".
Курс JUnit 5 включает в себя не только практическую часть, но и теорию тестирования, т.е. содержит информацию про основные понятия и определения в тестировании программного обеспечения, такие как:
Spring - это самый распространенный фреймворк для написания Java приложений. Первая версия вышла еще в далеком 2003 году, после чего Spring претерпел очень много изменений и стал по-настоящему монструозным. Это повлекло разбиение его на множество отдельных модулей, которые будут разобраны в курсе:
Курс по Gradle рассчитан для тех, кто уже владеет Java Core, знает язык программирования Groovy и прекрасно владеет такими понятиями как Closure и DSL. Также очень желательно иметь базовые понятия о тестировании, т.к. будет демонстрироваться фреймворк JUnit 5, и веб приложениях, так как будет демонстрироваться Apache Tomcat. Сам же курс по Gradle предоставляет углубленные знания про то, как устроен этот современный и на текущий момент лучший авто
Для успешного прохождения курса JDBC нужно также уверенно знать Java Core (предыдущие курсы Java для начинающих Level 1 and Level 2) и одну из реляционных базы данных (SQL). На всем протяжении курса будет использоваться самая лучшая и активно развивающаяся СУБД PostgreSQL, которая очень часто встречается в реальных приложениях. А также самая мощная среда разработки IntelliJ IDEA.