Content text Техно. Языки программирования NF
Тема: Языки программирования План 1. Определения 2. Front-end 3. Back-end 4. Языки 5. Архитектура 6. Облака Но сначала Что нужно знать рекрутеру? Наша задача- найти технического специалиста по запросу. Нам не надо проверять уровень знаний разработчиков или разбираться в их коде. Поэтому чаще для понимания, кого искать в тех.плане, нам достаточно знать язык, фреймворк и базу данных. Остальное - это чаще дополнительные или специфичные для вашей вакансии требования, которые уточняем на этапе сбора заявки. Поэтому дальше вспомним про фронтенд и бэкенд и разберем несколько языков по принципу: язык+основные фреймворки+базы данных. А дальше по такой схеме вы сможете справиться с любой заявкой самостоятельно. По понятиям Язык программирования — формальный язык, предназначенный для записи компьютерных программ. Язык программирования определяет набор лексических, синтаксических и семантических правил, определяющих внешний вид программы и действия, которые выполнит исполнитель под её управлением. Примеры языков: JavaScript, PHP, Java, Python, C#, Scala, Kotlin, Swift и др. 1
Фреймворк — инструмент, облегчающий процесс написания и запуска веб-приложения. Программистам не нужно самостоятельно писать кучу кода и тратить время на поиск потенциальных просчетов и ошибок. На рассвете эры веб-разработки все приложения писались вручную, и только разработчик приложения мог изменить или развернуть его. Веб-фреймворки позволили выбраться из этой западни. Приложения во многом похожи и решают похожие проблемы. Вот программисты и решили как бы вынести часто повторяющийся код за скобки. Так появились каркасы приложений (фреймы или рамочки - можно по-разному называть), которые можно масштабировать, изменять и т.д. По сути - это набор библиотек и шаблонов, каркас программной системы с определенной структурой по умолчанию. У каждого языка программирования есть свои фреймворки. Не путать с СMS! ЦМС-ки - это полуфабрикат сайта . Фреймворк - это набор инструментов, только заготовка и набросок будущей системы, по сути своей он гораздо сложнее. Вот тут про разницу между цмс и фреймворком. Важно понимать: Изучить новый фреймворк гораздо проще, чем новый язык. Библиотека набор готовых программных модулей, классов, функций для решения определенных задач. В чем разница между библиотекой и фреймворком? Грубо говоря библиотека - это набор готовых решений, которые вы можете просто брать и использовать как захочется. Фреймворк же накладывает определенный стиль программирования, его элементы сильнее связаны между собой. Метафора для понимания. Украла тут. IKEA или строительная компания? Но все же разница есть. Подумайте о вашей программе как о доме, в котором собираетесь жить. Можно строить его самому, а когда дело дойдет до мебели, съездить в IKEA, чтобы выбрать то, что вам подходит. Другими словами, вы покупаете стол и вносите его в свой дом. Именно вы полностью контролируете ситуацию. Это библиотека. Фреймворк – это строительная компания. Она предлагает вам набор проектов на выбор. Клиент немного ограничен в архитектуре и дизайне собственного дома, но профессионалы многое берут на себя. Они полностью контролируют ситуацию и дадут вам знать, когда вы сможете внести свой вклад. 2
Стек набор инструментов на проекте. Чаще включает в себя языки программирования, фреймворки, базы данных. Могут быть и другие штуки, но это основной комплект :) В предыдущих сериях мы узнали, что есть фронтенд и бэкенд. Сейчас заглянем на кухню этих понятий. Кто и чем создаёт фронтэнд? Разработчики, которые создают фронтэнд - Front-End разработчики. HTML — язык разметки документов, посредством которого формируют структуру веб-страницы: заголовки, списки, абзацы и т. п.; CSS — язык для стилизации внешнего вида документа, его описания. Благодаря CSS-коду браузер понимает, как отображать элементы. С помощью CSS задаются цвета и параметры шрифтов, определяется расположение блоков веб-сайта и т. п. Также он даёт возможность выводить один и тот же документ в нескольких стилях, например, для печати и т. д.. HTML и CSS -не являются языками программирования. Это языки разметки. С их помощью клиентскую часть верстают. А те, кто это делают, называются верстальщиками. Зачастую вёрстка входит в обязанности Front-End разработчиков. JavaScript — язык, в буквальном смысле оживляющий веб-страницы. Он обеспечивает реагирование интерфейса на действия пользователя, обрабатывает клики мышкой, нажатия клавиш, перемещения курсора. Также посылает запросы на сервер, загружает данные, позволяет вводить сообщения и много чего ещё. Front-End разработчиков могут ещё называть JS или JavaScript Developers. TypeScript — тоже язык программирования, который сделал на базе джаваскрипта и в конечном итоге преобразуется в JS. Зачем так сложно? На нем стало проще (удобнее) писать какие-то вещи программистам и этот язык “подлатал” какие-то сложности в джаваскрипте. 3
Кто и чем создаёт бэкэнд? Разработчики, которые создают бэкэнд - Back-End разработчики. Языков для создания бэкенда очень много. Программисты выбирают язык, который наиболее подходит для решения задач приложения. PHP, Ruby, Python, Java и т.д. - далее мы более подробно разберем некоторые из них. Кроме того, при backend-разработке задействуются базы данных. Об их видах тоже поговорим ниже. И напомню, что ещё есть FullStack ребята, которые колдуют и над фронтендом, и над бэкендом. Языки JavaScript он же джаваскрипт, JS (читай дже-эс). На этом языке написано всё, что мы видим в браузере. У джаваскрипта больше всего фреймворков. И новые выходят почти каждые полгода, поэтому важно держать руку на пульсе :) Фреймворки (наиболее популярные): ● Angular (ангуля’р) ● React (библиотека)+Redux (инструмент) ● Vue.js (вью) ● Svelte ● куча других JS, как мы помним, используем для написания фронтенда. 4