Фундаментальные знания по основам программирования Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Регистрация в перечне РКН: https://tprg.ru/zrgj
Весна — повод разобраться в своих чувствах, особенно к Java
Перед вами как раз возможность это сделать в небольшом квизе. Здесь предстоит разработать устойчивую систему, которая выдержит любую нагрузку: https://tprg.ru/ynl5
Event loop для чайников: простыми словами о сложном механизме браузера
Event Loop — механизм, который управляет асинхронными операциями в JavaScript. Он позволяет обрабатывать задачи, не блокируя основной поток выполнения программы.
В этой статье простыми словами разберем, как работает цикл событий в браузере, что такое макрозадачи и микрозадачи, и как они влияют на выполнение кода. С примерами, схемами и лайфхаками для лучшего понимания.
Каждый раз, когда изучаешь новый инструмент:
Читать полностью…Сможете ли вы написать калькулятор?
Вам может показаться, что написать калькулятор — это задача для совсем неопытного новичка. Но вы ошибаетесь. Взгляните на картинку выше. Это калькулятор из iOS и он показывает неверный ответ. (10100) + 1 − (10100)
равно 1
, а не 0
.
Как же Apple наговнокодила допустила ошибку в «простейшем» приложении и почему для Android такую же проблему решал именитый разработчик? Разобрались в статье.
🐝Гексагональная архитектура — необычный подход к организации кода
Паттерн отделяет логику приложений от внешних интерфейсов, тем самым обеспечивая автономность и модульность компонентов системы. Как работает, где применяется и какие плюсы/минусы имеет данный подход: https://tprg.ru/lBcg
#архитектура
Что такое утиная типизация
Простыми словами, утиная типизация — это когда в программировании нас интересует не то, как называется объект или к какому классу он относится, а то, что он умеет делать. Если объект ведет себя как утка — например, умеет крякать и плавать, — то для программы он и есть утка, даже если это совсем другой объект. Ведь, если оно выглядит как утка, плавает как утка и крякает как утка, то это, наверное, утка.
В Python типы объектов проверяются не заранее (как в некоторых других языках), а прямо во время работы программы за счет динамической типизации. Утиная типизация в Python означает, что вы можете использовать любой объект в коде, если у него есть нужные вам методы или свойства. Python не заставляет вас говорить: «Это должна быть утка». Ему достаточно, что объект умеет делать то, что вы от него хотите.
Представьте, что у вас есть функция:
def заставить_крякать(объект):
объект.крякать()
крякать()
. Теперь создадим два класса:class Утка:
def крякать(self):
print("Кря-кря!")
class Человек:
def крякать(self):
print("Эээ... Кря-кря?")
утка = Утка()
человек = Человек()
заставить_крякать(утка) # Вывод: Кря-кря!
заставить_крякать(человек) # Вывод: Эээ... Кря-кря?
заставить_крякать
работает и с Утка
, и с Человек
, потому что у обоих есть метод крякать()
. Python не проверяет, утка это или человек, — ему важно только, что метод есть.Конвейер Devops, часть 1: как организовать рабочее место и настроить облако из KVM+libvirt
Совместно с Эйч Навыки открываем серию материалов о том, как устроен конвейер DevOps и как шаг за шагом построить полный CI/CD пайплайн. Вы изучите ключевые инструменты, которые помогают автоматизировать разработку, тестирование и развертывание приложений.
Сегодня на повестке — развертывание собственного облака с помощью KVM и libvirt.
#kubernetes #devops
Шпаргалки по SQL, которые помогут ничего не забыть
Порой из головы может выпасть, что конкретно делает определенное ключевое слово и как совершить операцию побитового исключения с присваиванием.
Именно для таких случаев и существует данная статья с множеством полезных шпаргалок. С ними можно не бояться, что в ответственный момент вы что-то забудете. Сохраняйте в закладки и используйте в работе с реляционными базами данных.
#sql #шпаргалка
История создания и развития языка программирования Go
Язык программирования Go (или Golang) был разработан компанией Google в 2007 году и впервые представлен в 2009 году. Go был создан как ответ на ряд проблем, с которыми сталкивались разработчики при использовании существующих языков, таких как C++ и Java.
Давайте сегодня немного окунемся в историю и посмотрим с чего всё начиналось и как развивалось до настоящего момента.
Начало истории здесь.
#golang #историяit
Работаем с текстовыми файлами, как с БД
TextQL позволяет нам выполнять SQL-запросы над структурированным текстом, например, CSV или TSV. Такой инструмент поможет вам удобнее работать с текстовыми файлами, выбирая из них только то, что нужно.
#инструменты
Главные ошибки в обучении программированию
Каждый, кто начинает учить программирование, рано или поздно сталкивается с проблемами, которые замедляют его прогресс. Почему одни быстро осваивают кодинг и становятся востребованными разработчиками, а другие годами топчутся на месте? Всё дело в типичных ловушках обучения, которые мешают вам расти.
В этом видео разбираются три главные ошибки, из-за которых многие так и не становятся программистами.
#видео #советы
Что такое очередь и где её применяют
Очередь (queue) — ряд данных, хранящий элементы последовательным образом. Очередь похожа на стек, но в отличие от него, работает по принципу FIFO — First In, First Out (англ. «первым пришёл — первым ушёл»). Данные добавляют в конец, а извлекают из начала.
Для понимания, приведем пример: очередь людей. Последний занял место — последним и будешь, а первый — первым ее и покинет.
Бывают неклассические, двусторонние очереди. В них можно добавлять элементы и извлекать их из начала и конца структуры. Элементы посередине недоступны.
Применение очередей:
— реализация очередей, например на доступ к определённому ресурсу;
— управление потоками в многопоточных средах;
— генерация значений.
— для создания буферов.
#простымисловами
ТОП каналов, которые нужны каждому, кто хочет в айти! Начинающие, забирайте готовую папку каналов🤝
Мемы про прогеров, актуальные айти-новости, разборы инструментов и обучающие посты от tproger.ru — всё, что нужно, чтобы ворваться в айти.
Переходите по ссылке и подписывайтесь:
👉 Войти в Айти
Узнайте своё будущее онлайн и без регистрации, просто заглянув к нам в Дом IT-Карьеры
За каждым окном будет вариант вселенной, которая вас ждёт, если выбрать работу в той или иной компании. Ещё никогда прогноз на жизнь не был таким ясным и предсказуемым: https://tprg.ru/cz8U
Реклама
Области видимости в JavaScript
Мы используем переменные, чтобы хранить в них временные значения, а потом в нужный момент получать к ним доступ. Но не все переменные в нашем коде одинаково доступны. Доступна ли переменная и как получить к ней доступ, определяет область видимости.
Область видимости — это часть программы, в которой мы можем обратиться к переменной, функции или объекту. Этой частью может быть функция, блок или вся программа в целом — то есть мы всегда находимся как минимум в одной области видимости.
А более детально узнать что это такое и на примерах рассмотреть то, как работает эта область, вы сможете в этой статье.
#javascript
Гайд: что такое хеш-таблицы
Представьте, что вам нужно мгновенно находить нужные данные среди миллионов записей — например, определять, есть ли пользователь в базе, или быстро подсчитывать количество посещений страницы. Обычный массив или список справится с этим за O(n), а хэш-таблица — за O(1) в среднем.
Что бы стать программистом — программируйте
Сейчас есть тысячи разных курсов по программированию. Однако, после выхода с этих курсов многие ребята никому не нужны и их не берут на работу.
В чем может быть проблема? Ответ на этот вопрос есть в этой статье.
cobalt | Скачиватель видео с откуда угодно с API
Хорошо отлаженный инструмент, умеющий качать с YouTube, Twitter, Instagram, вКонтакте и кучи других сайтов, без регистрации и СМС. Сохраните, админы сами пользуются уже не первый месяц и очень довольны. А благодаря API процесс можно поставить на поток.
Цена: бесплатно
Репозиторий проекта
Попробовать скачать в GUI
@prog_tools
Разбираемся, на чём держится интернет: самые популярные протоколы и принципы их работы
Как передаются данные и устройства находят друг друга: ARP, ICMP, IGMP, TCP, UDP, SCTP, DNS, DHCP
Как соединяются удалённые сети (туннелирование и маршрутизация): GRE, IPsec, L2TP, L2VPN, L3VPN, MPLS, OSPF, BGP.
Как передаётся веб-трафик и обеспечивается его защита: HTTP, HTTPS, SSL, TLS.
#интернет
«Ты должен был бороться со злом, а не примкнуть к нему!»
Читать полностью…Зачем разработчику знать И SQL И NoSQL? Разбираемся на примерах
Рассказываем в статье:
— Разницу между SQL и NoSQL;
—Сценарии применения БД;
— Почему будущее не за чистыми системами, а за гибридными.
#sql #nosql
Изучаем SQL в формате игры: SQL Murder Mystery
Детективная игра на знание SQL, с которой можно освежить в памяти основы SQL и интересно провести досуг. Примерьте на себя роль детектива, выясняя обстоятельства с помощью SQL-запросов:
https://mystery.knightlab.com/
#sql
ReactJS на изи: что реально нужно знать фронтенд-разработчику в 2025 году
У это библиотеки есть много нюансов, которые упускают новички. И часто это выливается в ошибки. В этой статье мы рассмотрим концепции React, которые упускают во время обучения: процесс рендеринга, предотвращение избыточных обновлений, работу с concurrent-режимом и приоритетами.
#react
Ожидание vs реальность: какие меняются взгляды разработчика за 10 лет в профессии
Старший инженер-программист в Amazon Крис Киль (Chris Kiehl), автор книги по дата-ориентированному программированию на Java поделился заметкой о том, как изменились его взгляды за 10 лет пребывания в индустрии разработки ПО. Перевод его заметки предлагаем почитать и вам.
Как использовать ИИ в разработке игр: топовые технологии
Использование ИИ в процессе разработки игр — это чит-код на автоматизацию. В последние годы появилось много топовых разработок в области игровых ИИ-систем. То, на что раньше уходили недели, теперь решается в пару кликов. Особенно это важно для требовательных игр, где критична оптимизация ресурсов.
Сегодня рассмотрим, как ИИ помогает сбалансировать производительность и качество, позволяя создавать живые миры без затрат на ручной труд даже начинающим разработчикам. Подробности в статье.
#ии #gamedev
Python vs C++: какой язык быстрее найдет все простые числа до миллиарда
Баттлы языков — извечная тема, которая никогда себя не изживет. Понятно, что язык программирования нужно выбирать под конкретные цели. Но если мы только учимся, можно попробовать решить какую-нибудь задачку с помощью двух разных инструментов — хотя бы для того чтобы понять, какой нравится больше.
Сегодня будем искать все простые числа до миллиарда с помощью кода на Python и C++. Если вы думаете, что результат совсем очевиден, то это не так. Подробности в статье: https://tprg.ru/IqbL
#python #cpp
На change.org открыли сбор подписей за переименование Python версии 3.14 в Pithon
Петиция создана 5 марта и адресована Python Software Foundation. В ней автор говорит о том, что число Пи играет большу роль в программировании на Python, поэтому было бы справедливо отметить её в названии версии.
И хотя понятно, что это просто глупая игра слов, автор надеется, что разработчики языка обратят внимание на это.
Кстати, вы тоже можете проголосовать, если хотите. Вот ссылка.
#кек #python #новости
Выводы о Go после 100 проектов на нём
Разработчик с богатым опытом разработки на Go собрал свой «идеальный» каркас для проекта — набор инструментов и библиотек, на основе которых можно разработать почти любой проект. И за время его использования он пришёл к некоторым выводам.
Об этих выводах он рассказал в материале. Если вам интересна разработка на Go и хочется познакомиться с нюансами, то переходите по ссылке.
#golang
Чем занимается системный аналитик: разбираем на примере
Системный аналитик — это специалист, который помогает бизнесу и IT-команде понимать друг друга. Он работает с информационными системами — программами и приложениями, которые компании используют для управления данными и процессами.
О том, как это происходит на деле, а не на словах, вы узнаете в этой статье. Здесь системный аналитик со стажем делится своим опытом на примере реальной задачи — создания навыка для виртуального ассистента.