На ближайший год в качестве одной из целей для себя я поставила изучение веб-разработки на профессиональном уровне. Начинаю не с нуля, довольно хорошая база у меня есть. Просто хочется всё упорядочить, систематизировать и закрыть пробелы, чтобы чувствовать себя уверенно. Так, чтобы при прочтении описания вакансий на некоторые понятия не возникало мыслей: "а что это такое?" или "а это я не умею".
Мой план в общих чертах: frontend, backend и фундамент.
Frontend-разработка
Изучение фронтенда - части, которая видна пользователю и обрабатывается у него на компьютере (браузером или другим приложением):
- HTML-разметка - скелет веб-страницы, который определяет её структуру и содержание.
- CSS-стили - оформление страницы, её внешний вид и взаимодействие с пользователем.
- JavaScript - обработка данных, валидация форм и интерактивные элементы.
Задача: научиться создавать современные сайты и приложения, которые красиво выглядят, удобно работают на любых устройствах и легко понимаются пользователями.
Backend-разработка
Изучение бэкенда - части, которая не видна напрямую, но непосредственно влияет на результат, который видит пользователь:
- PHP-программирование - логика приложений, обработка данных и взаимодействие с запросами.
- SQL-запросы - создание, манипулирование и управление данными, которые хранятся на сервере.
- API-интерфейсы - изучение работы правил общения программ и приложений друг с другом.
Задача: научиться создавать надежные, эффективные и безопасные серверные части, которые обеспечивают быструю обработку запросов и надежное хранение данных, предоставляя пользователю качественный и удобный сервис.
Фундамент программирования
Изучение основных принципов и парадигм - базовых аспектов, которые лежат в основе создания программного обеспечения.
- Математика - дискретная математика, теория вероятностей, статистика и линейная алгебра.
- Алгоритмы и структуры данных - эффективные методы решения задач и организации данных.
- Настройка окружения - инструменты для работы с кодом, средами разработки, системами сборки приложений.
Задача: научиться эффективно решать задачи программирования, оптимизировать работу программ и управлять данными для создания быстрых, масштабируемых и надёжных программных решений.
Вот такой план действий в общих чертах у меня получился. Естественно, каждый пункт раскрывается дальше не более мелкие детали. Буду публиковать по мере проработки.