Точка входа в программирование
21.4K subscribers
905 photos
163 videos
1 file
2.45K links
Фундаментальные знания по основам программирования

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

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

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

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

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Точка входа в программирование — новый канал от Tproger, где будут собираться лучшие материалы по основам программирования.

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

Подписывайтесь, обсуждайте и делитесь фидбеком, давайте вместе сделаем лучший канал по основам разработки.
Ошибки начинающих разработчиков

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

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

https://tprg.ru/wYHn
Шпаргалка по изучению программирования

На Reddit есть специальная страница, на которой собрано множество советов, как правильно учиться программировать. На ней нельзя найти ответы на все вопросы, но это FAQ поможет выстроить более эффективный путь обучения и определиться, действительно ли вам нужно программирование и для чего:

https://tprg.ru/UYXJ

#советы #roadmap
Честные ответы об онлайн-курсах программирования

Почитать несколько книг или пройти онлайн-курс? Такой вопрос может возникнуть, когда хочешь углубиться в определенную тему. Ответ не будет однозначным, и каждый выберет для себя сам.

Если вы заинтересовались онлайн-образованием, но боитесь, что вас обманут, почитайте в нашей статье ответы на 10 популярных вопросов об онлайн-курсах:

https://tprg.ru/u4Ay

#советы
Как школьник в 14 лет стал разработчиком в SkyEng

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

https://tprg.ru/D34f

#мотивация
Объектно-ориентированное программирование (ООП) простым языком

Согласно Википедии, ООП — методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определённого класса, а классы образуют иерархию наследования.

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

Поэтому мы попросили экспертов своими словами раскрыть понятие методологии ООП, чтобы её принципы стали гораздо понятнее:

https://tprg.ru/Ky09

#ооп
Дорожная карта веб-разработчика

Ловите русскоязычные шпаргалки по фронтенду, бэкенду и DevOps. В них показано, какие темы стоить изучить будущему разработчику и в каком порядке. Очень полезная штука для выстраивания плана обучения.

Репозиторий на GitHub: https://tprg.ru/nHa6

#roadmap #фронтенд #бэкенд #devops
Динамическое программирование простым языком

Принцип динамического программирования нередко применяется в олимпиадных задачах. Его основная идея — разбить большую задачу рекурсивно на несколько маленьких подзадач. Однако далеко не все задачи возможно решить таким методом.

Мы спросили экспертов, как они понимают принцип динамического программирования, и попросили объяснить его простым языком:

https://tprg.ru/hEa8
Интервью с разработчиком из Wargaming Леонидом Чайкой

Если вы хотите стать разработчиком игр, то советуем посмотреть интервью с Lead Core Developer World of Tanks Blitz Леонидом Чайкой.

В первой части видео детально разобран язык C++, а во второй части Леонид поговорил о разработке игр:

https://youtu.be/QQZmDWnV618

#cpp #gamedev
Что нужно знать начинающему бэкенд-разработчику

Чтобы стать бэкенд-разработчиком, недостаточно изучить один язык программирования (Python, к примеру). Будущему бэкендеру понадобятся как знания о смежных технологиях (компьютерные сети, Git, работа в Linux), так и прокаченные навыки общения, чтобы эффективно работать в команде.

Подробнее о прокачке себя как бэкенд-разработчика — в статье:

https://tprg.ru/ohzM

#алгоритмы #бэкенд #веб
Коротко о том, как пройти собеседование в IT-компанию
Как стать фронтенд-разработчиком в 2021 году

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

Карта в максимальном разрешении — в статье:

https://tprg.ru/oWh6

#фронтенд #roadmap
Media is too big
VIEW IN TELEGRAM
Визуализация 16 сортировок

Написано полностью на Java. Предупреждаем, можете залипнуть.

Исходники на GitHub: https://tprg.ru/kxGO

#сортировки #алгоритмы
Зачем программисту изучать алгоритмы

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

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

О том, для чего ещё знание алгоритмов нужно разработчику, читайте в статье:

https://tprg.ru/2Vzp

#алгоритмы #советы
Самоучитель по Git

Чтобы понять, как работать с системой контроля версий Git, загляните на сайт GitHowTo. Это интерактивный русскоязычный учебник, в котором пошагово объясняется, какие Git-команды использовать в своём проекте:

https://githowto.com/ru

#git
Протоколы передачи данных простым языком

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

В статье рассмотрены основные протоколы, которые встречаются во многих книгах по компьютерным сетям:

https://tprg.ru/7a6Z

#сети
Алгоритмы и структуры данных: примеры реализаций на JavaScript

Если вы изучаете JavaScript, загляните в репозиторий на GitHub, в котором собраны реализации структур данных и множества популярных алгоритмов. К каждому алгоритму приложено короткое пояснение, которое поможет разобраться в коде.

Весь материал разделён на два уровня: для начинающих и для продвинутых:

https://github.com/trekhleb/javascript-algorithms

#алгоритмы #javascript
Путь Full Stack разработчика

Предлагаем посмотреть интервью с Full Stack разработчиком Никитой Стариченко. Он специализируется на C#, .Net, React.js и создании эффективных архитектур для онлайн сервисов. За плечами Никиты — опыт работы над проектами компаний из России, США и ЮАР.

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

https://youtu.be/XGHrs_kCFa0

#интервью #фронтенд #бэкенд