Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?
-
Upload
ramblerco -
Category
Technology
-
view
221 -
download
2
Transcript of Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?
![Page 1: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/1.jpg)
Нужны ли backend разработчики,когда есть swift?
Меджлумян Самвел
![Page 2: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/2.jpg)
Нужны
2
![Page 3: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/3.jpg)
Нужны
3
, но
![Page 4: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/4.jpg)
О чём поговорим 4
⁉ Что случилось
🖖 Введение в мир бэкенд разработки
🏗 S3 инструменты
🆚 Сравнение с другими языками
👍 Best practices
🏃 Выводы
![Page 5: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/5.jpg)
О чём не поговорим
⛺ Как развернуть
🈯 Синтаксис
5
![Page 6: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/6.jpg)
О чём поговорим 6
⁉ Что случилось
🖖 Введение в мир бэкенд разработки
🏗 S3 инструменты
🆚 Сравнение с другими языками
👍 Best practices
🏃 Выводы
![Page 7: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/7.jpg)
Наша команда 7
)*))))))*+),)))
![Page 8: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/8.jpg)
8
Нужны серверные утилиты
🏎
![Page 9: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/9.jpg)
9
Нужны здесь и сейчас
🚀
![Page 10: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/10.jpg)
10
Нужна простая поддержка
/
![Page 11: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/11.jpg)
11
Нужны API для проектов
📡
![Page 12: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/12.jpg)
12
Задачи
🏎 Нужны серверные утилиты
📡 Нужны API для своих проектов
![Page 13: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/13.jpg)
13
📚 Изучить новый инструмент
Решения
![Page 14: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/14.jpg)
14
📚 Изучить новый инструмент
🗣 Попросить кого-нибудь
Решения
![Page 15: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/15.jpg)
15
📚 Изучить новый инструмент
🗣 Попросить кого-нибудь
🤘 Реализовать на любимом инструменте
Решения
![Page 16: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/16.jpg)
Dashramba
16
![Page 17: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/17.jpg)
17
![Page 18: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/18.jpg)
18
![Page 19: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/19.jpg)
19
)))*))))
)*)),)
![Page 20: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/20.jpg)
О чём поговорим 20
⁉ Что случилось
🖖 Введение в мир backend разработки
🏗 S3 инструменты
🆚 Сравнение с другими языками
👍 Best practices
🏃 Выводы
![Page 21: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/21.jpg)
21
Фреймворк
🏗
![Page 22: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/22.jpg)
22
фреймворк =
либа
![Page 23: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/23.jpg)
23
MVC
🖇
![Page 24: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/24.jpg)
24
![Page 25: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/25.jpg)
25
Шаблонизаторы
🎨
![Page 26: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/26.jpg)
26
🖼
🗄
📑
🎨
![Page 27: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/27.jpg)
27
ORM & ODM
🗄
![Page 28: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/28.jpg)
28
Процесс разработки
9
![Page 29: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/29.jpg)
29
🗄
Staging
Production
Dev🗄
![Page 30: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/30.jpg)
30
🗄
Staging
Production
Dev🗄
![Page 31: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/31.jpg)
31
🗄
Staging
Production
Dev🗄
![Page 32: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/32.jpg)
О чём поговорим 32
⁉ Что случилось и почему вам нужен S3
🖖 Введение в мир бэкенд разработки
🏗 S3 инструменты
🆚 Сравнение с другими языками
👍 Best practices
🏃 Выводы
![Page 33: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/33.jpg)
33
🏗 S3 инструменты
![Page 34: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/34.jpg)
Критерия сравнения 34
👯 Комьюнити
🏃 Активность
🗄 ORM & ODM
🎨 Шаблонизаторы
; Продуктивность разработчика
![Page 35: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/35.jpg)
35
Комьюнити 😽😽😽😽 😽😽😽 😽😽 💩
![Page 36: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/36.jpg)
36
Комьюнити 😽😽😽😽 😽😽😽 😽😽 💩
Активность 💪💪💪 💪💪💪💪 💪 💪
![Page 37: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/37.jpg)
![Page 38: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/38.jpg)
38
Комьюнити 😽😽😽😽 😽😽😽 😽😽 💩
Активность 💪💪💪 💪💪💪💪 💪 💪
ORM & ODM 🗄🗄🗄 🗄🗄🗄 🗄🗄🗄 🗄
![Page 39: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/39.jpg)
39
PostgreSQL ✅ ✅ ✅ ✅
MySQL ✅ ✅ ✅ ✅
Redis ✅ ✅ ✅ ✅
MongoDB ✅ ✅ ✅ ➖
SQLite ✅ ✅ ✅ ➖
CouchDB ✅ ✅ ✅ ➖
![Page 41: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/41.jpg)
41
Активность 💪💪💪 💪💪💪💪 💪 💪
ORM & ODM 🗄🗄🗄 🗄🗄🗄 🗄🗄🗄 🗄
Templating 🎨🎨 🎨🎨🎨 🎨🎨 🎨
![Page 42: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/42.jpg)
42
Mustache ✅ ✅ ✅ ✅
Markdown ✅ ✅ ✅ ➖
Stencil ➖ ➖ ✅ ➖
Leaf ➖ ✅ ➖ ➖
![Page 43: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/43.jpg)
43
Продуктивность
;
![Page 44: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/44.jpg)
0
3,25
6,5
9,75
13
Меньше – лучше
44
Установка
![Page 45: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/45.jpg)
0
3,75
7,5
11,25
15
Меньше – лучше
45
Выполнение задачи
![Page 46: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/46.jpg)
0
2,25
4,5
6,75
9
Больше – лучше
46
Субъективная оценка
![Page 47: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/47.jpg)
47
Наш выбор S3 инструмента
![Page 48: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/48.jpg)
О чём поговорим 48
⁉ Что случилось
🖖 Введение в мир бэкенд разработки
🏗 S3 инструменты
🆚 Сравнение с другими языками
👍 Best practices
🏃 Выводы
![Page 49: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/49.jpg)
Сравнение 49
![Page 50: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/50.jpg)
50
Бенчмарки
🔎
![Page 51: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/51.jpg)
Бенчмарки 51
1. JSON
2. Работа с памятью
3. SQL Fetching
![Page 52: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/52.jpg)
JSON 52
Задача: сформировать и выдать json, состоящий из 100 случайных чисел от одного до 1_000_000
![Page 53: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/53.jpg)
JSON 53
0
3500
7000
10500
14000
Количество запросов в секунду
![Page 54: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/54.jpg)
Работа с памятью 54
Задача: создать массив из 1_000_000 случайных чисел. Сортировать массив используя сортировку выбором.
![Page 55: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/55.jpg)
Работа с памятью 55
0
17,5
35
52,5
70
![Page 56: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/56.jpg)
SQL Fetching 56
Задача: сделать выборку 1000 случайных нажатий из базы MySQL. База включает в себя 100_000 пользователей и 50_000 нажатий.
![Page 57: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/57.jpg)
SQL Fetching 57
0
100
200
300
400
![Page 58: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/58.jpg)
Summary 58
0
2,25
4,5
6,75
9
![Page 59: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/59.jpg)
О чём поговорим 59
⁉ Что случилось
🖖 Введение в мир бэкенд разработки
🏗 S3 инструменты
🆚 Сравнение с другими языками
👍 Best practices
🏃 Выводы
![Page 60: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/60.jpg)
👍 Best practices
REST API
SOA
Deploy
60
![Page 61: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/61.jpg)
Rest API 61
⁉ Используйте версионность
![Page 62: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/62.jpg)
Версионность 62
/v1/answers
getAnswers
👍
❌
![Page 63: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/63.jpg)
Rest API 63
⁉ Используйте версионность
💣 Выбрасывайте корректные ошибки
![Page 64: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/64.jpg)
64Неправильно
HEADER: HTTP/1.x 200 OK
BODY:
ERROR_E
![Page 65: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/65.jpg)
65
{ "errors": [ { "status": 404, "code": 1040, "message": "URL not found" } ]}
ПравильноHEADER: HTTP/1.x 404 Not found
![Page 66: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/66.jpg)
Rest API 66
⁉ Используйте версионность
💣 Выбрасывайте корректные ошибки
🛠 Используйте правильные методы
![Page 67: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/67.jpg)
Используйте правильные методы 67
CREATE ⬇ POST
READ ⬇ GET
UPDATE ⬇ PUT
DELETE ⬇ DELETE
![Page 68: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/68.jpg)
68
SOA
🎛
![Page 69: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/69.jpg)
69
Containers
📦
![Page 70: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/70.jpg)
70
![Page 71: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/71.jpg)
71
![Page 72: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/72.jpg)
Service Discovery 72
Zookeeper
![Page 73: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/73.jpg)
DevOps 73
![Page 74: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/74.jpg)
О чём поговорим 74
⁉ Что случилось
🖖 Введение в мир бэкенд разработки
🏗 S3 инструменты
💪 Сравнение с другими языками
👍 Best practices
🏃 Выводы
![Page 75: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/75.jpg)
🏃 Выводы 75
👍 S3 – не компромисс
🍏 Инвестирует Apple
💡 Инвестирует IBM
🔭 Вовлечено большое OSSM
![Page 76: Rambler.iOS #9: Нужны ли бэкенд-разработчики, когда есть Swift?](https://reader033.fdocument.pub/reader033/viewer/2022051503/5a66328c7f8b9a214f8b631b/html5/thumbnails/76.jpg)
76
@smejl