Точка входа в программирование
20.3K subscribers
1.23K photos
215 videos
2 files
2.76K links
Фундаментальные знания по основам программирования

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

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

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

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

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Что такое диплинк и нужно ли их использовать?

Deeplink — гиперссылка, которая позволяет перенаправить пользователя с одного веб-сайта или мобильного приложения на конкретную страницу. Диплинки часто используются в еmail-рассылках, уведомлениях и рекламных баннерах.

В этой статье разбираются типы deeplink, особенности работы с такими ссылками в Android-разработке и даны советы по безопасности:

https://habr.com/ru/company/otus/blog/688728/

#веб #android
👍3
Всё о резолверах в Angular

Одна из базовых задач во фронтенд-разработке — это получение данных от бэкенда. Для чего же нужны резолверы?

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

В этой статье рассматривается, как создать Angular Resolver, а также настроить маршруты с нужными компонентами:

https://tprg.ru/q0jP

#фронтенд #angular
👍71
Подборка актуальных вакансий

iOS-разработчик
Где: удалённо
Опыт: можно без опыта

Аналитик DWH
Где: Москва, можно удалённо
Опыт: можно без опыта

Frontend-разработчик
Где: Москва
Опыт: можно без опыта

iOS-разработчик
Где: Москва
Опыт: можно без опыта

Специалист отдела VIP сопровождения ПО
Где: Москва
Опыт: можно без опыта

Golang-разработчик
Где: удалённо
Опыт: от 1 года

Младший инженер-аналитик SOC (1-ая линия)
Где: Краснодар
Опыт: от 1 года

#вакансии #работа
Пример задачи с собеседований по JS: реализация функции deepMerge на TypeScript и TDD

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

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

https://youtu.be/rpW1SVLCToM

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

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

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

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

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

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

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

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

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

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

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

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

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

https://tprg.ru/wXM6

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

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

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

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

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

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

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

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

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

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

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

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

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

https://youtu.be/27JtRAI3QO8

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

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

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

https://tprg.ru/8xUZ

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

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

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

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

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

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

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

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

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

#советы
👍15🔥5👎1
Пора собираться в лагерь от Google!

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

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

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

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

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

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

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

#ios
👍9