В этом видео я объясню все основные различия между Framework
и Library. Мы сравним эти понятия и разберёмся с тем, зачем они вообще разделены на два отдельных термина.
На самом деле большое кол-во начинающих программистов в том числе и я в свое время сталкивался с непонимаем того что именно называть framework, а что library.
С первого взгляда оба эти понятия упрощают жизнь разработчику и дают возможность писать за минуты то, что будет написано за часы, а то и дни с нуля.
Я снимаю такие видео, потому что помню насколько тяжело когда только начинаешь осознать то огромное кол-во новой терминологии, которая встречается в книгах и обучающих статьях. Надеюсь это видео поможет вам структурировать информацию.
Пишите в комментариях свои вопросы, будет общаться :)
Таймкоды:
00:39 — Framework
03:06 — Library
05:23 — библиотеки для коллекций Java
05:41 — Итоги. Framework-это?
06:15 — Библиотека-это?
В этом видео я подробно расскажу вам о том, какие задачи выполняет Junior разработчик в компании и что вам нужно уметь делать для того, чтобы претендовать на должность Junior.
Чтобы далеко не ходить, возьмем меня как конкретный пример, значит 2013 год, я прихожу в большую компанию работать Java Junior после практики, меня сажают на большой проект, который связан с индустрией healthcare т.е. писать софт для страховых компаний в США.
Я знакомлюсь с командой 3 разработчика (я, наш тимлид и еще один миддл), 2 тестировщика, бизнес аналитик на американской стороне и 2 разработчика тоже на американской стороне.
Мы работали по Scrum-у, это такой подход разработки когда мы определяем кол-во заданий на отрезок времени и делаем их, например в течении 2х недель. Если хотите подробное видео по Scrum то напишите в комментариях.
*Scrum — метод управления проектами
После планирования распределяются задачи согласно рубашке задач (монотонные легкие — junior-у, сложные задания для продвинутых миддлу и тимлиду). Я получаю свои задачи и начинаю с того, у которого самый высокий приоритет.
Проект состоял из 3х больших частей на которых нужно было работать, это Front End на Javascript, Backend на Java и реляционная база (SQL соответственно).
Так как я выполнял задачи на всех 3х уровнях, я дам вам пример по каждому из них.
Итак пример простого задания: Есть личный кабинет пользователя, где он должен быть в состоянии ввести свой контактный номер телефона, это новое поле, которого еще нет в системе. Поэтому оно должно быть добавленно в каждый из уровней приложения.
База данных
Начинаем с задачи на SQL: Нужно найти нужную таблицу, куда вставить это поле, расширить таблицу в базе данных так, чтобы она могла сохранять номер телефона, повесить на нее констреинты уникальности, просмотреть есть ли в этой таблице хранимые процедуры или триггеры настроеные на эту таблицу и если уместно — поправить запросы, чтобы они тоже отдавали номер телефона.
Также сделаем оговорку что это не пет проджект, а реальный проект, в котором часто самая простая задача может стать достаточно сложной для реализации. Например в базе про которую я говорю было пример 300 таблиц. Написали, протестировали, идем дальше.
*Pet project — небольшой проект для собственных, обучающих целей
Java Backend
Здесь уже уровень доступа к базе данных и бизнес логика. Сразу же представляем себе проект в котором несколько миллионов строчек и чтобы его установить и поднять локально уходило могло уйти пару дней.
*Бизнес логика — требования бизнеса переведенные на логический язык программирования.
Нужно найти модель которая соответствует таблице в базе расширить ее номером телефона, написать или расширить методы которые работают с этой таблицей чтобы можно было и сохранять и считывать информацию. Также обязательно нужно добавить валидаторы, которые проверяют номер телефона по определенном шаблона (я говорю сейчас о регулярном выражении. И конечно же потом проверить эту цепочку в обе стороны.
Front End
Тоже представляем огромный фронт проект на несколько сотен тысяч строк. Нужно добавить эту форму в личный кабинет, добавить валидацию по регулярному выражению, связать это все с запросами на бекенд в обе стороны и протестировать.
Конечно в процесс вовлечено гораздо больше действий чем просто написать код, это и прояснить у бизнес аналитика какие-то непонятные моменты, пройти код ревью процедуру у своей команды, помочь тестировщикам разобраться в логике, оценить задание во времени.
Примерами других заданий может быть например:
SQL
Написать sql запрос который покажет статистику покупок людей с помощью карты visa, а не мастеркард за сезон, или собрать полную информацию по юзерам у которые покупали страховку в прошлом году в текущее время года.
Java
Написать валидацию полей юзера используя регулярные выражения или например создать отдельный обработчик запроса, который отсылает всем пользователям в списке письмо с благодарностью.
Front End
Добавить фильтр по нескольким критериям на страницу покупки страховки, например фильтрация по компании, по стоимости, по длительности.
Также не забывайте что везде вам нужно придерживаться технологий и практик, которые уже используются на проекте, т.е. вам нужно хорошо знать стек технологий, чтобы быть в состоянии качественно сделать задание.
Тайм-коды:
00:00 Начало
0:31- мой опыт работы как Junior-а
1:01- по какой системе мы работали
1:25- распределение задач в команде
1:52- деления проекта на части
2:36- задача Junior-a
3:14- что я мог делать для выполнения этой задачи?
4:56- доработка логики на Java Backend
7:15- разработка логики на Front end
8:42- задачи для Junior-a в SQL
9:17- задачи для Junior-a на Java
10:15- задачи для Junior-a во Front End приложении
12:36- чего ожидают от Junior-a в общем
На вебинаре мы:
— рассмотрим 4 основных инструмента современного DevOps-инженера, каждый из которых реализует базовые практики: инфраструктура как код, CI/CD, обратная связь;
— научимся не ломать историю в Git и хорошо работать в команде;
— обсудим, чем Ansible отличается от других систем и почему именно его мы изучаем на курсе;
— рассмотрим Docker и расскажем, почему контейнеры и микросервисы чаще побеждают монолитные архитектуры.
Преподаватель: Лев Николаев — DevOps и тренер в компании Экспресс 42
ytimg.preload(https://r14---sn-axq7sn7e.googlevideo.com/generate_204);ytimg.preload(https://r14---sn-axq7sn7e.googlevideo.com/generate_204?conn2);SCRUM — метод управления проектами. Обучающий мультик для вас и ваших сотрудников! — YouTube<link rel=«alternate» type=«application/json oembed» href=«www.youtube.com/oembed?format=json
Мир меняется. Высокая скорость изменений трансформирует бизнес-модели и сами организации. В новом мире решения надо принимать быстро и уметь синхронизировать работу большого количества людей. Важность по-настоящему командной работы растет. Появляются роли, главной задачей которых является построение эффективной команды.
— Речь идет о роли Scrum Master/Agile Coach. В докладе мы ответим на вопросы:
— Какое место они занимают в организации?
— Какими они должны быть?
— Что входит в их обязанности?
— Что они должны знать и уметь?
Выступление Сергей Щербинин, руководителя управления стратегического развития ИТ, Райффайзенбанк на конференции МарТех 2018.
23 апреля 2018.
Организатор конференции CoMagic.
А вы никогда не задумывались, что писатели, поэты и другие деятели искусства не просто так писали свои произведения? Они программировали сознания под свой лад? В этом видео я попытаюсь сопоставить жанры искусства с языками программирования.