DevSkillRoad
Хочу стать программистом
Привет! Хочу стать программистом! Как и всем надо понять с чего начинать. Скажу сразу, никогда не был связан с
программированием и всему придется учиться с нуля. Постараюсь рассказать, что и как я изучаю и что из этого у
меня получается. Изучать просто по книгам это считается правильным, но чаще всего нет понимания что из
изученного и где я буду применять. Для себя выбрал несколько иной подход. Буду задавать себе вопрос или ставить
задачу и решать её. Вместе мы увидим, что из этого у меня получится.
С сего начать?
Хочется знать всё, но надо с чего-то начать. Главный вопрос - с чего. Первое, что я сделал, это попытался
разобраться с тем, какие направления в программировании существуют. И вот что у меня получилось:
- Frontend — создание сайтов и десктопных приложений, хотя на большинстве ресурсов пишут именно про создание
сайтов
- Backend — сервера и базы данных
- Мобильная разработка — приложения для смартфонов
- Data Science — анализ данных
Помимо этого часто встречаются рекомендации начинать путь в IT с тестирования.
На первый взляд выбор сделать сложно, но когда немного поразмыслил, все встало на свои места и выбор стал очевидным.
- Тестирование - отмёл сразу, так как это не разработка, а проверка на ошибки того, что пишут другие
- Data Science - тоже не подходит, что-бы что-то анализировать нужно быть хорошо пожкованным в технологиях и
предметной области, а я пока не могу похвастаться этим
- Мобильная разработка - тут я призадумался и отложил для повторного анализа
- Backend - не подходит, так как база сама по себе не существует, нужно то, что с ней будет работать, а это еще
надо написать, а сервер тоже пока звучит сложно
- Frontend - звучит интеренсо, ни от чего не зависит, можно начать хоть с создания сайта, хоть с написания
простого приложения типа калькулятор
Итак, у меня выбор между frontend и мобильной разработкой.
Мобильная разработка отпала, так как есть 2 направления android и ios, отложил это на попозже.
Frontend, тут выбор между разработкой сайтов или как это правильно называть web-разработкой и созданием приложений
для PC, хотя операционных систем тоже нескольно (windows, linux и macos), но популярность windows намного выше и это
не так смущает как было в мобильной разработке.
Итоговый выбор сделал просто: приложение для PC или как его назвают десктопное приложение я буду писать только для
себя, а вот сайт проще сразу показать всему миру. Начну изучение с
web-разработки.
Из чего состоит Web-разработка?
Web-разработка - это не одна конкретная технология, а целый комплекс. Почитав и немного разобравшись составил
небольшой план по изучению, в него вошли 3 обязательные технологии, которые лежат в основе всей web-разработки:
- HTML - струкрура страницы или правильнее разметка страницы сайта
- CSS - отвечает за внешний вид сайта
- JavaScript - делает страницы сайта интерактивными
Далее рекомендуют изучать фреймворки. Это некие уже готовые решения, которые упрощаю и ускоряют разработку. Они
могут являться каркасом на котором можно постоить сайт или могут выступать дополнением, которое можно применить к
тому, что уже разработано. Но к этому я вернусь позднее, пока у меня нет понимания принципа выбора фреймворка.
В чём писать код?
Прежде чем изучать новые для меня технологии, почитал про то как, а точнее в чём писать код. Понял, что будет
проще писать и разбираться если использовать IDE, по русски это называется среда разрабтки. И опять задача
выбора, ищу подходящую среду разработки. Вариантов много, и причем много бесплатного, что не может не радовать.
В итоге выбирал между:
- Visual Studio Code
- WebStorm
- Sublime Text
- Atom
WebStorm имеет очень положительные отзывы, и выглядит очень притно, но его я отмёл первым, я еще ничего не слелал, а
уже надо платить. Да и заплатить не получиться, так как компания американская и они перестали продовать свои
программы в России. Sublime Text и Atom - это больше похоже не на среду разработки, а на очень умный текстовый
редактор с подсветкой, хотя пока не знаю зачем она нужна, но хочется разбираться сразу в том, что буду использовать
долгое время, а не перепрыгивать с одной среды на другую и транить время на изучение. Нет, конечно, изучение это
хорошо, но пока лучше больше времени буду уделять гдавному, а не второстипенному. В
итоге остановился на Visual Studio Code. Сокращенно его называют VS Code. Скачать его можно бесплатно с
сайта http://visualstudio.com/
Что такое HTML?
Как и планировал, начинаю с HTML. Для большего понимая разобрался с абривиатурой: HTML - HyperText Markup Language - язык гипертекстовой разметки. Да, не совсем язык программирования, а только разметка, но
для начала самое то. Запускаю VS Code. И меня сразу среда разрабоки просит создать файл. Создаю. Раз это мой первый сайт и первая страница, то так и называю FirstPage. Открывается пустой файл. Добавляю в него непонятный пока для меня набор текста, пример html
кода взятый из интернета и хочу открыть в браузере. И тут первый затык - на ресурсе с которого брал пример не указано то, что все html файлы долджны иметь расширение html. Ну да ладно, разобрался и хорошо, я ведь только первые шаги делаю, впредь буду знать, что в программировании все файлы долдны иметь своё специфическое расширение. Хотя признаюсь - мог сам сразу догадаться по
аналогии с документами. Кстати, сразу после этого поправил настройки проводника, убрал галочку скрывающую расширения
файлов. Пример html-файла