1 of 25

занятие №8

Backend & Frontend

Артур Атнагулов�11.12.2019

2 of 25

Клиент

Сервер

3 of 25

Клиент — �запрашивает и иногда получает данные

...

4 of 25

Сервер — �получает и обрабатывает запросы, возвращает ответ

Мощный компьютер

5 of 25

6 of 25

Frontend

Backend

  • Разметка страницы (HTML)
  • Данные для фронтенда (JSON)
  • или файлы, но это не так интересно

7 of 25

Сервер возвращает HTML-код страницы

CTRL+U

8 of 25

Сервер возвращает только данные

F12 / Network

9 of 25

Backend (сервер)

Frontend (клиент)

  • Обслуживает запросы
  • Работает с базой данных и другими хранилищами
  • Отображает данные
  • Отправляет запросы на сервер
  • Изменяет внешний вид в зависимости от ответов сервера

10 of 25

Чуток определений

HTTP — протокол передачи гипертекста. Один из основных протоколов, на базе которого работает веб.

HTML — язык гипертекстовой разметки, на нем описывается содержание веб-страниц

JSON — JavaScript Object Notation — текстовый формат обмена данными между приложениями

11 of 25

Backend (сервер)

Frontend (клиент)

12 of 25

HTML + CSS + JavaScript

Технологии для разработки сайтов

  • HTML — разметка
  • CSS — оформление
  • JavaScript — интерактивность�не путать с Java, это совершенно разные языки

С этого слайда и дальше — ссылки на обучающие статьи по технологиям

13 of 25

Сайт без CSS

14 of 25

Языки программирования в

15 of 25

ДИСКЛЕЙМЕРЫ

  • Каждый следующий язык учится проще.
  • Без собственного старания ни один курс не поможет. �Нужно самому сидеть и разбираться в технологиях.
  • Изредка будет пролетать личное мнение, �просьба не брать его во внимание.
  • Учебная программа ИТИСа может поменяться.
  • Говорю только про языки программирования, �другие изучаемые технологии и предметы не рассматриваются.
  • Далее обязательные предметы подчеркнуты

16 of 25

JavaScript

Применение: frontend, backend (NodeJS), �мобильные приложения и многое другое

Фреймворки: React, VueJS, Angular…

Предметы и лаборатории: информатика (1-2к), JavaScript (2к, Лаборатория 42), React (3к), на остальных предметах по необходимости

Примеры проектов: фронтенд — все сайты; бекенд twitter, paypal, medium

17 of 25

Swift

Применение: �мобильные приложения для iOS

Предметы и лаборатории: �лаборатория мобильной разработки

18 of 25

Java

Применение: backend, мобильная разработка для �Android (Kotlin)...

Фреймворки: Spring (backend), RxJava (Mobile), Retrofit (Mobile)

Предметы и лаборатории: информатика (1-2к), Java Lab, �лаборатория мобильной разработки, Smart Education Lab

Примеры проектов: ЛК КФУ, Adobe, Google Docs, Amazon, Ebay, Spotify

19 of 25

C#

Применение: backend, мобильная кроссплатформенная �разработка, игры

Фреймворки: ASP.NET Core (веб), �Entity Framework (взаимодействие с базой данных), �Xamarin (мобильная разработка), �Unity3D (набор инструментов для разработки игр)

Предметы и лаборатории: информатика (1-2к), лаборатория корпоративной разработки .NET, Digital Media Lab (игры), Xamarin (раньше был курс)

Примеры проектов: Stackoverflow, Microsoft Office 365 Cloud, Starbucks

20 of 25

Python

Применение: backend, анализ данных, �машинное обучение, системное администрирование...

Фреймворки: Django (веб), Flask (веб)

Предметы и лаборатории: веб-разработка на Python (2к), �анализ данных (3-4к), машинное обучение (4к), Smart Education Lab

Примеры проектов: Bitbucket, Instagram, Spotify, Uber, developer.mozilla.org

21 of 25

PHP

Применение: backend

Фреймворки: Laravel, Symfony

Предметы и лаборатории: LAMP (2к), PHP (Лаборатория 42)

Примеры проектов: ВКонтакте, Facebook, Википедия

22 of 25

Ruby

Применение: backend

Фреймворки: Ruby on Rails

Предметы и лаборатории: разработка на Ruby (Flatstack)

Примеры проектов: Github, Gitlab

23 of 25

C++

Применение: выполнение операций на уровне �операционной системы

Предметы и лаборатории: введение в C++ (2к), �параллельное программирование (3к), лаборатория робототехнических систем

24 of 25

Haskell

Применение: функциональное программирование�другая парадигма программирования. Стоит идти �тем, кто хочет познать ее и развить навыки �хорошего разработчика

Предметы и лаборатории: функциональное программирование (4к)

25 of 25

Ссылки