Точка входа в программирование
20.6K subscribers
1.15K photos
205 videos
2 files
2.68K links
Фундаментальные знания по основам программирования

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

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

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

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

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Принципы работы различных видов очередей

Недавно мы разбирали простую очередь как структуру данных. У неё существует также несколько усложнённых версий:
кольцевая очередь, в которой из элемента в начале очереди извлекаются данные, а затем его переносят в конец очереди;
очередь с приоритетом, в которой сначала обрабатываются по очереди элементы с наивысшим приоритетом, а затем с меньшим.

Оба типа очередей наглядно разбираются в ролике: https://youtu.be/y_2toG5-j_M

#алгоритмы
Шаблоны проектирования простым языком

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

Серия статей познакомит с различными шаблонами:

1. Порождающие паттерны.
2. Структурные паттерны.
3. Поведенческие паттерны.

Кстати, все материалы по шаблонам проектирования вы можете найти по тегу #паттерны
Бесплатный онлайн-курс по теории вероятностей

Нужно подтянуть знания по теорверу? На Stepik есть достаточно большой курс, который не уступает по количеству материала университетскому, но имеет более интересную подачу.

В первых двух модулях вы освоите элементарную теорию вероятностей. Их и первую половину третьего модуля можно изучить без особых проблем, но дальше потребуются знания конечномерных пространств, ряды, кратных интегралов и комплексных чисел.

Начать учиться: https://stepik.org/course/3089

#курсы
7 GitHub-репозиториев для прокачки навыков программиста

Планы обучения, бесплатные книги, гайды — сообщество отобрало полезные материалы по различным темам, которые помогут вырасти крутым программистом:

https://tprg.ru/bDCO

#советы
Здорово, если вообще будет работать
Основы языка TypeScript

TypeScript активно используется в веб-разработке в дополнение или в качестве альтернативы JavaScript (хоть и построен на его базе). Его главное отличие — продвинутая система типов данных.

Статья знакомит с синтаксисом языка TypeScript:

https://tprg.ru/f2eV

#ts #веб #фронтенд
Учились или ещё учитесь в университете на технической специальности? Расскажите о своих впечатлениях от преподавания и предметов.

Чему вас научил вуз (или наоборот, не научил) — делитесь в комментариях.

#чат
Свежая подборка вакансий для начинающих специалистов

QA Engineer в Bladestorm
Опыт: От 1 до 3 лет
Где: Удалённо
Сколько: До 120 000 ₽
Задачи: Ручное функциональное тестирование проектов, написание и поддержка тестовой документации, участие в создании системы автотестирования

Программист C# / C++ в Белкасофт
Опыт: Можно без опыта
Где: Санкт-Петербург, можно удалённо
Сколько: От 120 000 до 190 000 ₽
Задачи: Анализ системных данных ОС, исследование уязвимостей мобильных устройств, поддержка анализа файловых систем, разработка просмотрщиков

Frontend-разработчик (Vue / Electron / Cordova) в ОС3
Опыт: От 1 года
Где: Москва, можно удалённо
Сколько: По итогам собеседования
Задачи: Разрабатывать фронтенд для веб, десктоп и мобильных приложений

PHP-программист в Автомакон
Опыт: Можно без опыта
Где: Удалённо
Сколько: По итогам собеседования
Задачи: Разработка бекенда и API для мобильного приложения для сети магазинов ВкусВилл, код-ревью, документирование кода, работа с метриками падений и вылетов

#вакансии #работа
Какая вы пицца-программист?

Пицца — привычная еда для программиста, ведь время, сэкономленное на готовке, можно потратить на написание кода.

А какой пиццей стали бы вы? Узнайте в нашем шуточном тесте: https://tprg.ru/Zw3P

#тесты
Крутые фичи современного C++, о которых стоит знать

Со стандарта C++11 в языке появилось множество функциональных возможностей, которые упрощают жизнь программисту. Рассказываем о самых интересных из них:

https://tprg.ru/MYSK

#cpp
Создание с нуля игры «Морской бой» на Java

Недавно начали изучать Java? Закрепите свои знания, реализовав консольную игру «Морской бой».

В видеоуроках поэтапно объясняется, как:
— создать поле и корабли;
— считывать введённые пользователем данные;
— расположить корабли на поле;
— отображать результат выстрела;
— определять победителя.

Часть 1: https://youtu.be/ozq32dlAn2E

Часть 2: https://youtu.be/z8fBapvfH4g

#java
Исключения в Java

В процессе работы программы могут выскочить ошибки. Чтобы она продолжала выполняться, в Java существует механизм исключений. Подробнее о них — в статье:

https://tprg.ru/QfIz

#java
Чем отличается C++ от C#?

Кроме названия есть ещё как минимум 9 существенных отличий, о которых рассказывает автор статьи:

https://tprg.ru/Fq4z

#cpp #csharp
Какие виды тестирования существуют: разбираем по полочкам

В коммерческой разработке тестирование является одним из ключевых факторов создания качественного продукта. При этом тесты могут покрывать совершенно разные части программы и выполнять разные задачи (например, тестирование интерфейса и тестирование новой сборки проекта).

Подробнее о видах тестирования рассказывается в видео:

https://youtu.be/BWeV4VfKaqE

#тестирование
Всё по гайдам от индусов с YouTube
План обучения PHP-разработчика в 2022 году

Если хотите стать бэкенд-разработчиком, то присмотритесь в языку PHP. На нём написано огромное количество бэкендов веб-приложений, и язык всё ещё не теряет актуальности.

В статье вы найдёте обзор основных ступеней развития бэкенд-разработчика, а также план обучения в лучшем качестве:

https://tprg.ru/my1k

#php #бэкенд #веб
Урок по Django: создание сайта для генерации паролей

Python широко применяется в различных областях программирования. Для веб-разработки существует фреймворк Django, который позволяет создать сайты и веб-приложения с помощью Python.

Мы нашли интересный урок, в котором объясняется, как реализовать на Django простейший сайт для генерации паролей:

https://youtu.be/AI2IapqNaIM

#веб #python #бэкенд
Двоичное (бинарное) дерево поиска

Структуры данных «деревья» широко распространены в программировании, например каталог проекта или DOM-дерево в веб-разработке.

Среди них особенно выделяется двоичное дерево поиска, которое позволяет существенно ускорить поиск элементов.

Подробнее о структуре двоичного дерева и его реализации в коде:

https://tprg.ru/YpfD

#алгоритмы