Сегодня мы обсудим достаточно важную тему в Python, а именно — Исключения и как с ними работать.
Также, мы затронем темы таких конструкций, как pass и eval.
Будет интересно =)
О чем говорит принцип кода KISS («keep it simple, stupid», «keep it short and simple»), что делать не стоит, а что делать стоит, чтобы код был хорошим.
Курс, о котором идет речь в видео: PYTHON — bit.ly/2HaK8tU
0:00 – вступление
0:25 – в чем заключается принцип KISS
0:53 – не имеет смысла реализовывать дополнительные функции
1:17 — не стоит перегружать интерфейс теми опциями, которые не будут нужны большинству пользователей
4:05 — бессмысленно делать реализацию сложной бизнес-логики, которая учитывает абсолютно все возможные варианты
5:12 — не имеет смысла беспредельно увеличивать уровень абстракции
6:02 — бессмысленно закладывать в проект избыточные функции «про запас»
8:34 – рекламная пауза
9:37 — не стоит подключать огромную библиотеку, если вам от неё нужна лишь пара функций
11:12 — не стоит подключать огромную библиотеку, если вам от неё нужна лишь пара функций
11:50 — абсолютная математическая точность или предельная детализация нужны не всегда
12:38 — precision design is fragile
16:35 — Принципы простого дизайна от Кента Бека
Часто школьники и студенты спрашивают меня как устроиться на админскую работу и какими знаниями надо обладать чтобы их туда приняли. Так вот, в этом небольшом видеоматериале я собрал все нюансы и текущие задачи что завод подкидывает своему сисадмину.
Содержание:
1:30 — Подключение SFML.
1:57 — Проектирование каркаса проекта.
2:46 — 2D карта, камера и управление.
3:15 — Ray cast и получение 3D изображения.
6:43 — Управление мышью.
7:20 — Текстурирование.
9:42 — Оружие.
11:22 — Коллизия камеры со стенками.
14:38 — Меню игры.
15:17 — Зеркала и стены разной высоты.
17:50 — Игровые звуки.
19:03 — Противник и обработка выстрелов.
20:05 — Multiplayer.
21:24 — Проектирование карты для сражений.
22:40 — Результаты.
23:33 — Как запустить игру?
24:01 — GitHub и планы на будущее.
Загадка для самых внимательных: найдите таймкод, где есть 25-й кадр (зеленый) и пришлите в директ инстаграма. С первым я свяжусь.
Мы начнем с установки необходимой библиотеки, рисования объектов и управления камерой с клавиатуры. После этого мы научимся строить 3D изображение, добавим освещение и управление мышью. Далее мы реализуем текстурирование и сделаем нашу игру светлой и красивой. В такую игру уже захочется поиграть.
Мы добавим объекты разной высоты, скины, оружия и врагов, а также зеркала, в которых будет видно отражение объектов. А потом посмотрим, что будет, если поставить два зеркала напротив друг друга. Ну и в конце концов, мы добавим онлайн в игру, чтобы можно было играть с другом.
В предыдущем ролике я показал, как можно с помощью алгоритма ray-cast и консольной графики сделать простую бродилку. В этот раз я захотел написать полноценную игру. Конечно, можно писать игру на Unity 3D или каком-нибудь другом движке, который предоставляет огромные возможности, но я захотел сделать всё сам и самостоятельно написать движок для игры.
В качестве основы я выбрал библиотеку SFML, которая позволяет рисовать линии, многоугольники и окружности. Также она дает возможность удобного использования клавиатуры, добавления звуков и загрузки изображений. В общем все, что нужно для того, чтобы писать игру и не заморачиваться над не существенными деталями на низком уровне.
Этот проект я не забрасываю и буду развивать его дальше. Вы можете предлагать всевозможные дополнения в игру, и я с радостью добавлю понравившиеся мне фитчи.
По мере возможности я стараюсь отвечать на каждый ваш вопрос, но зато я точно читаю абсолютно все ваши комментарии. Так что добро пожаловать, делитесь мнением или темой, которая вам показалось интересной или непонятной. Тут рады каждому новому Вектозаврику.
Лекция посвящена резервному копированию, а так же системе управления конфигурациями SALT.
Рассматриваются следующие темы:
— Централизованное управление конфигурациями SALT
— Резервное копирование (BACKUP)
— Система резервного копирования BACULA
Хронометраж:
00:00:05 О теме лекции
00:00:30 Система управления конфигурациями SALT: зачем она нужна?
00:05:18 SALT: установка
00:06:52 SALT: в чем смысл установленных пакетов? (salt-master / salt-minion)
00:08:12 SALT: конфигурация SALT-MINION
00:11:27 Ответ на вопрос из зала по пройденному материалу
00:13:51 SALT: управление конфигурацией
00:15:40 SALT: настройка директории с файлами состояния SALT (SLS)
00:19:51 SALT: пример подготовки конфигурации NTP (etc/salt/base/ntp.conf)
00:21:36 SALT: пример содержимого конфигурационного файла (etc/salt/base/ntpd.sls)
00:23:03 SALT: проверка работы конфигурации (команда test)
00:24:16 SALT: применение рабочей конфигурации
00:25:08 SALT: зерна (grains)- сведения о системе, которые используются в шаблонах (шаблонизатор JINJA)
00:27:10 Пример применения зерен (grains) на примере конфигурации NTP-сервера
00:29:52 Разбор домашнего задания №4: Конфигурация SALT и DNS-сервера
00:31:28 Резервное копирование (BACKUP): цели и задачи
00:33:18 BACKUP: основная проблема
00:33:56 Вопрос залу: можете привести пример неконсистентности данных в СУБД?
00:36:52 BACKUP: вторая проблема
00:37:10 BACKUP: виды резервных копий
00:40:26 BACKUP: резервное копирование ОС
00:42:26 Система резервного копирования BACULA
00:44:28 BACULA: работа схемы резервного копирования
00:45:19 BACULA: конфигурация (подготовка учебного инстанса)
00:47:46 BACULA: подготовка конфигурационных файлов
00:51:09 BACULA: конфигурация демона хранилища данных(storage-демона)
00:52:04 BACULA: зачем такая сложная конфигурация?
00:53:31 BACULA: настройка директора (director)
00:54:26 BACULA: настройка директора (director) — расписание бекапов
00:55:27 BACULA: настройка директора (director) — настройка задачи бекапа
00:58:16 BACULA: командная строка bconsole
00:58:55 BACULA: выполнение бекапа
— О КАНАЛЕ:
Официальный канал образовательных проектов Mail.Ru Group