Точка входа в программирование
20.5K subscribers
1.16K photos
206 videos
2 files
2.69K links
Фундаментальные знания по основам программирования

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

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

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

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

Регистрация в перечне РКН: https://tprg.ru/zrgj
Download Telegram
Онлайн-учебник по JavaScript

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

Весь материал разделён на 3 условные части:

1. Язык программирования JavaScript (упор делается только на сам язык).
2. Браузер: документ, события, интерфейсы (здесь изучается работа со страницей).
3. Полезные статьи.

Кроме того, на сайте есть специальные тесты, в которых вы можете проверить себя.

Ссылка: learn.javascript.ru

#js
Как одной формулой посчитать количество дней в месяце по его номеру?

Если посмотреть на количество дней в каждом месяце, то никакой закономерности поначалу найти не удаётся. Однако представим задачу как функцию f(x), где x — номер месяца, то есть функция получает номер месяца (от 1 до 12) и выдаёт количество дней в нём (високосные года в расчёт не берём).

Как можно решить:

https://tprg.ru/MZJ2

#задачи
А за занавеской скрывается JVM
Шпаргалка по Bash

Оболочка Bash принимает команды пользователя из терминала и передаёт их операционной системе на базе Linux.

С основными командами для работы с файлами, сетью и системой вы можете ознакомиться в статье:

https://tprg.ru/EftW

#linux
Шаблоны проектирования на Java

Шаблоны проектирования (design patterns) представляют собой некоторые правила, установленные сообществом программистов. Они помогают решить общие проблемы при проектировании и разработке программ.

На GitHub есть репозиторий, в котором собрано множество design patterns, реализованных на языке Java. К каждому шаблону есть описание, а сам код хорошо прокомментирован.

Если вы ещё полноценно не освоили Java, добавьте страницу в закладки — пригодится:

https://github.com/iluwatar/java-design-patterns

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

Если вы не можете определиться с тем, стоит ли изучать фронтенд-разработку, обратите внимание на видеокурс по основам HTML, CSS и JavaScript. Темы курса объясняются на реальных примерах кода, поэтому вы получите примерное представление, с чем сталкивается в работе фронтенд-разработчик.

Весь курс выполнен в формате большого 11-часового видео. В описании к видео есть все необходимые таймкоды:

https://youtu.be/Xm4BObh4MhI

#веб #js
Обязательно ли поступать в институт, чтобы сделать себе карьеру в программировании? Оставляйте ваши мнения в комментариях.
Примеры реализаций алгоритмов на Python

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

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

Ссылка: https://github.com/TheAlgorithms/Python

#алгоритмы #python
Код не может отжать ваш кошелёк, но может стащить память
Как стать разработчиком игр?

С чего начать, если хочется посвятить себя созданию игр? Опытные геймдевелоперы ответили на 8 основных вопросов, по которым вы сможете выстроить свой путь в сферу разработки игр:

https://tprg.ru/bZlP

#gamedev
Крестики-нолики на JavaScript

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

Разработчик из ролика пишет игру «Крестики-нолики» без заранее подготовленного кода. Он допускает несколько ошибок, но быстро их исправляет. Из-за этого процесс создания игры становится более живым:

https://youtu.be/GTWrWM1UsnA

#js #gamedev
Кто такой DevOps-инженер?

Объясняем в формате «вопрос-ответ». В статье вы найдёте ответы на 12 вопросов, дополненные комментариями экспертов:

https://tprg.ru/nV5H

#devops
Как научиться программировать?

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

Большая часть статьи полезна всем разработчикам, а в последней части идут уже рекомендации по веб-разработке. Есть одно «но»: материал на английском.

Статья: https://tprg.ru/JSsy

Анимированная версия: https://youtu.be/sffufVH7aog

#советы
Ну ведь собака же получилась!
Как писать чистый код на JavaScript?

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

github.com/ryanmcdermott/clean-code-javascript

Перевод на русский: github.com/maksugr/clean-code-javascript

#js
Подборка алгоритмов, которые правят миром

Какие компьютерные алгоритмы наиболее часто используются в нашем мире? Какие из них стоят за работой, скажем, систем связи и Интернета? Ответы — в статье:

https://tprg.ru/Ri6p

#алгоритмы
Видеокурс по алгоритмам и структурам данных

Курс состоит из 8 видеоуроков, которые посвящены различным темам: сортировки, поиск, деревья, графы, хеш-таблицы и другие. Лекции ведёт лектор МГУ Сергей Бабичев:

https://tprg.ru/7Pmk

#алгоритмы #курсы
Как настроить сервер для сайта?

Чтобы запустить сайт, надёжнее всего разместить его на удалённом сервере. Мы рассмотрим в инструкции настройку виртуального сервера на примере хостинга DigitalOcean. На самом сервере мы запустим операционную систему Ubuntu 20.04 LTS:

https://tprg.ru/Dy7L

#веб
Его боялись даже разработчики «ВКонтакте»
This media is not supported in your browser
VIEW IN TELEGRAM
Симуляция столкновения галактик в командной строке

Да-да, разработчик реализовал красивую симуляцию с помощью ASCII-символов. Написано на C++. Ниже вы найдёте код, который можно запустить самому.

Видео на YouTube: https://youtu.be/x62gOfZ9hCw

Код: github.com/DinoZ1729/Galaxy

#cpp