Точка входа в программирование
21.3K subscribers
948 photos
172 videos
1 file
2.49K links
Фундаментальные знания по основам программирования

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Пример задачи с собеседований по JS: реализация функции deepMerge на TypeScript и TDD

DeepMerge — это функция, которая объединяет два массива с учётом их вложненной структуры. В этом видеуроке рассказывается, как создать такую функцию и сохранить структуру объекта: https://youtu.be/1qtaVMIfqTQ

Если вы ещё не знакомы с deepMerge и не знаете, как сравнивать объекты и массивы, то советуем перед решением задачи разобраться с теорией в этом видео:

https://youtu.be/rpW1SVLCToM

#js #веб
Чем отличаются NoSQL от обычных баз данных?

NoSQL («Not Only SQL») — это нереляционный тип баз данных. В отличии от реляционных БД, где данные хранятся в таблицах, NoSQL основан на парах ключ-значение, графовых баз данных или документах. Основные различия:

1. В SQL требуется жёсткая структуризация на основе какой-то заранее определённой схемы, а в NoSQL таких требований нет.
2. В NoSQL предусмотрено вертикальное и горизонтальное масштабирование, в РСУБД чаще используется только вертикальное масштабирование.
3. SQL-запросы более простые и удобные, однако NoSQL-запросы лучше защищены от хакерских атак.
4. Время отклика у NoSQL быстрее и нереляционные БД лучше справляются с большими данными.

Источник: https://tprg.ru/rCid

#субд
Что такое Code review?

Code review — это процесс проверки кода на ошибки, общую стилистику и функциональность. Начинающим разработчикам код-ревью позволяет пополнять недостающие знания, но также проверяет софт-скиллс.

Главное понимать, что ревью проводят не для критики разработчика, а чтобы дать правильные рекомендации, которые помогут поддержать код в проекте и минимизировать ошибки компиляции в будущем.

Подробнее о том, как проходит Code review и на что обратить внимание — в статье:

https://www.vladkhambir.com/posts/code-review/

#начинающим
Как стать DevOps-инженером: рецепт для новичков и не очень

Какие IT профессии наиболее востребованы? Одна из них — DevOps-инженер — специальность появилась несколько лет назад в IT, но быстро стала одной из самых востребованных на рынке.

Специалист в этой области помогает координировать процесс разработки и эксплуатации, поэтому DevOps-инженер стал важным связующим звеном между инфраструктурой и разработчиками.

С чего же начать обучение? Ведущий инженер DevOps Группы «Иннотех» рассказал, как войти в профессию и дал рекомендации о том, что нужно знать начинающим:

https://tprg.ru/wXM6

#devops #начинающим #советы
Игра Жизнь — клеточный автомат на HTML и JS

Игра была придумана ещё в 1970. Суть игры: клетка может находиться только в одном состоянии — «живая» или «мертвая», а состояние самой клетки зависит от её соседей. Игра прекращается, если все клетки «мертвы».

В этой статье рассматривается, как создать главную страницу, реализовать возможность оживлять/убивать кнопки и проверку соседних клеток c помощью HTML и JS:

https://habr.com/ru/post/689918/

#js #html
Паттерн Сага: что это такое?

Многие сервисы используют собственные БД. Например, в крупных онлайн-магазинах «заказы», «пользователи» и «оплата» могут быть различными базами данных. Как же проверить прошла ли транзакция успешно или нет в таких случаях?

Для решения этой проблемы можно использовать паттерн Сага, который помогает обеспечивать согласованность данных и транзакций между микросервисами. Если транзакция завершилась неудачно, то сага выполняет компенсирующую транзакцию, которая откатывает изменения в БД, сделанные предыдущей локальной транзакцией.

Сага похожа на работу банкомата, который возвращает ответ при ошибки операции и отменяет её, а не просто списывает деньги с баланса.

Подробнее: https://tprg.ru/0aXE

#паттерны
Верстаем сайт-портфолио для Frontend-разработчика

А зачем вообще нужен такой сайт? В резюме разработчики обычно только перечисляют hard skills и применяемый стек технологий, но как проверить эти знания?

GitHub и его аналоги требуют загрузки проектов, чтобы изучить их детально. У работодателя или потенциального клиента может не быть на это времени. Собственный сайт-визитка помогает продемонстрировать знания разработчика и может стать визуальным резюме с красивыми анимациями и переходами.

В этом видео рассматривается, как создать личный вебсайт на HTML, CSS и JavaScript в двух темах. Аудиодорожки нет, но видеоурок легко повторить:

https://youtu.be/27JtRAI3QO8

#html #js #фронтенд
Что нужно знать начинающему разработчику Java, чтобы получить работу

Интересуетесь Java и хотите стать бэкенд-разработчиком? Знание языка программирования — это хорошо, но часто недостаточно для позиции Junior-разработчика. Есть и другие навыки и качества, которые нужны для успешного трудоустройства.

Рассказали, как лучше изучать основы программирования и навыках, которые понадобятся начинающему разработчику в нашей статье:

https://tprg.ru/8xUZ

#java #бэкенд
Пишем функцию по обходу двоичного дерева на Python

Бинарные деревья — не самая любимая тема среди начинающих программистов. В проектах они используются редко, но зато часто обсуждаются на тех-интервью.

Одна из них — написание функции по обходу двоичного дерева. Обходом называют процесс, который проходит все узлы дерева и выводит их значения.

В этой статье рассматривается, как создать бинарное дерево на Python, а также 3 способа для его обхода:

https://pythonist.ru/obhod-dvoichnogo-dereva-na-python/

#python
This media is not supported in your browser
VIEW IN TELEGRAM
Полезные привычки высокоэффективного разработчика

Сотрудник Google рассказал о привычках, которые помогли ему получить работу в компании:

1. Чтение книг по программированию.
2. Просмотр видеоуроков.
3. Практика! 3й пункт выходит из предыдущего — недостаточно только смотреть уроки и примеры, их лучше повторять.
4. Разработка собственных пет-проектов.
5. Подготовка к интервью.
6. Планирование. Автор сначала планирует решение задачи или проекта, а только затем приступает к работе.

Источник: https://tprg.ru/cXj7

#советы
Пора собираться в лагерь от Google!

Скучаете по летним сменам? Google начала организовывать специальный лагерь, где вас будут обучать Jetpack Compose.

Кроме обучения на курсе, у участников есть возможность познакомиться с другими разработчиками в сообществе. Некоторые могут даже стать вожатым отряда!

На данные момент компания только развивает проект, поэтому встреч в реальном времени не так много, но что вы думаете об этой идее?

Подробнее: https://developer.android.com/compose-camp

#android
Как создать приложение по бронированию сеансов в кинотеатре?

В этом видеоуроке рассматривается, как реализовать приложение для iOS на основе дизайна в Figma. В приложении можно выбирать не только фильмы и время сеанса, но и места в кинотеатре. Автор показывает примеры, как создать drag-жест, карточки в стиле Tinder со swipe.

Подробнее: https://youtu.be/EkcKeGQm3_U

#ios
Как освоить фронтенд-разработку в 2022 году: дорожная карта

Мы подготовили дорожную карту, которая поможет составить план обучения, а также разобраться, на какие технологии стоит обратить внимание в 2022 году.

Бонусом — в статье senior фронтенд-разработчик делится опытом и мнением по инструментам, фреймворкам и трендам:

https://tprg.ru/ocA8

#фронтенд
Знакомимся с библиотекой Open Peeps

Open Peeps — это библиотека иллюстраций с коллекцией оригинальных и лицензированных персонажей, нарисованных профессиональными иллюстраторами. Изображения можно копировать, изменять и использовать в проектах.

Также Open Peeps позволяет менять внешность персонажа, а именно:
— комбинировать одежду и прическу,
— менять эмоции, используя разные выражения лица,
— изменять жесты.

Официальный сайт:

https://www.openpeeps.com/

#веб