Книги для программистов
55.1K subscribers
1.36K photos
283 videos
24 files
1.23K links
Книги по программированию, библиотека электронных книг для разработчиков.


По всем вопросам @evgenycarter

РКН clck.ru/3Ko9cz
Download Telegram
Forwarded from ITmozg
Алгоритмы и структуры данных на Python с примерами кода + видео

Алгоритм Кнута-Морриса-Пратта (КМП-алгоритм)
Алгоритм Бойера-Мура-Хорспула
Алгоритм Дейкстры (Dijkstra’s algorithm)
Алгоритм Флойда (Floyd’s algorithm)
Алгоритм Форда-Фалкерсона
Алгоритм Краскала (Kruskal’s algorithm)
Алгоритм Прима (ближайшего соседа)
Сортировка выбором
Сортировка вставками
Сортировка пузырьком (метод всплывающего пузырька)
Слияние двух упорядоченных списков
Быстрая сортировка слиянием (merge sort)
Быстрая сортировка Хоара
Стек типа LIFO (Last-In-First-Out)
Делаем очередь (queue)

https://bookflow.ru/algoritmy-i-struktury-dannyh-na-python/

@itmozg
👍25
Порядок выполнения операций SQL

SQL не является традиционным языком программирования, на котором вы пишете последовательность инструкций в определенном порядке выполнения. Вместо этого SQL является «декларативным» языком, что означает, что, составляя SQL-запрос, вы указываете, какие данные ожидаете получить в результате запроса, но не указываете, как их получить.

https://bookflow.ru/poryadok-vypolneniya-operatsij-sql/

#SQL

👉 @database_info
👍10🔥3
Forwarded from ITmozg
Поисковая система Google умирает

Почему люди ищут именно на Reddit? Короткий ответ заключается в том, что результаты поиска Google явно ухудшаются. Длинный ответ — большая часть Интернета стала слишком неаутентичной, чтобы доверять ей.

https://bookflow.ru/poiskovaya-sistema-google-umiraet/

@itmozg
🤡37👍12😁9👎4🌚1
Правильный способ сравнения чисел с плавающей точкой в Python

В этой статье вы узнаете:
Почему числа с плавающей точкой являются неточными
Почему часто встречаются ошибки представления чисел с плавающей точкой
Как правильно сравнивать значения с плавающей точкой в Python
Как точно представлять числа с помощью типов Python Fraction и Decimal

https://bookflow.ru/pravilnyj-sposob-sravneniya-chisel-s-plavayushhej-tochkoj-v-python/

@BookPython
👍22
Forwarded from ITmozg
Как извлечь текст из изображений в PDF-файлах с помощью Python

В этой статье я собираюсь показать вам следующее процессы OCR-сканера:

Как запустить OCR-сканер на файле изображения.
Как отредактировать или выделить определенный текст в файле изображения.
Как запустить OCR-сканер на PDF-файле или коллекции PDF-файлов.

@itmozg
👍11💩3
Media is too big
VIEW IN TELEGRAM
Первый уровень игры Super Mario Bros, созданный с помощью Python и Pygame

GitHub https://github.com/justinmeister/Mario-Level-1

#gamedev

👉 @game_devv
👍10🤮3🔥2
Forwarded from ITmozg
Компьютерное зрение

Чтение, просмотр и запись изображения с помощью OpenCV
https://itmozg.ru/chtenie-prosmotr-i-zapis-izobrazhenija-s-pomoshhju-opencv/

Чтение и запись видео с помощью OpenCV
https://itmozg.ru/chtenie-i-zapis-video-s-pomoshhju-opencv/

@itmozg
👍8
Assembly Programming and Computer Architecture for Software Engineers
Автор: Brian R. Hall, Kevin J. Slonka (2017)

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

Скачать книгу

👉 @bfbook
👍11
Forwarded from Python академия
Временные файлы

В стандартной библиотеке Python есть модуль tempfile, который содержит классы и методы для корректной работы со временными файлами и директориями.

Функция TemporaryFile создает временный файл в системной директории и возвращает файлоподобный объект.

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

Также другие процессы и приложения не смогут получить доступ к этому временному файлу.

Подписывайтесь на канал 👉@pythonofff
👍11😐2👎1
Assembly x64 in easy steps: Modern coding for MASM, SSE & AVX
Автор: Mike McGrath (2020)

Книга показывает, как писать код для создания собственных компьютерных программ. Она содержит отдельные главы, демонстрирующие, как хранить данные в 64-битных регистрах и манипулировать ими, как управлять потоком программы и как создавать повторно используемые блоки кода в программных функциях. Автор также включил демонстрацию параллельной обработки с 128-битными Streaming SIMD Extensions (SSE) и 256-битными Advanced Vector Extensions (AVX).

Скачать книгу

👉 @bfbook
👍10
os-tutorial – Репозиторий содержит подробное описание для создания собственной операционной системы

Этот «гайд» предназначенный для людей, которым комфортно работать с низкоуровневыми языками. Например, программисты, которым любопытно, как работает ОС.

https://github.com/cfenollosa/os-tutorial

👉 @Githublib
👍26
Algorithmic Trading with Interactive Brokers (Python and C++)
Автор: Matthew Scarpino (2019)

В этой книге описывается процесс разработки приложений на основе API IB Trader Workstation (TWS). Начальные главы знакомят с фундаментальными классами и функциями, а последующие главы показывают, как их можно использовать для реализации полномасштабных торговых систем. При наличии алгоритмической системы трейдерам не нужно часами смотреть на графики; просто запустите торговое приложение и позвольте TWS API выполнять свою работу.

Темы в книге:
✔️Акции, облигации и TWS;
✔️Варианты стратегий;
✔️Торговля фьючерсными контрактами;
✔️Фундаментальные классы API;
✔️Алгоритмический трейдинг на практике и многие другие.

Скачать книгу

👉 @bfbook
👍11
Artificial Intelligence: A Modern Approach
Авторы: Stuart Russell, Peter Norvig (2020)

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

Скачать книгу

👉 @bfbook
👍81
Forwarded from Python академия
Как работают статические методы

Статические методы создаются в классе при помощи декоратора @ staticmethod. Такие методы привязаны к классу, а не объекту — в этом и есть основное отличие.

Такой тип методов не может модифицировать ни объект, ни сам класс. То есть передавать объект или класс и прописывать self или cls в аргументах не нужно.

Обычную функцию стоит вносить в класс в качестве статического метода в том случае, когда эта функция логически относится к классу и имеет смысл там быть.

Подписывайтесь на канал 👉@pythonofff
👍9
Designing Secure Software: A Guide for Developers
Автор: Loren Kohnfelder (2021)

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

Вы научитесь:
✔️Определять важные активы, поверхность атаки и границы доверия в системе;
✔️Оценивать эффективность различных вариантов смягчения угроз;
✔️Работать с хорошо известными шаблонами безопасного программирования и библиотеками;
✔️Понимать и предотвращать уязвимости, такие как XSS и CSRF, недостатки памяти и многое другое;
✔️Использовать тестирование безопасности для упреждающего выявления уязвимостей в коде.

Скачать книгу

👉 @bfbook
👍81🤔1
11 декабря 2022 года Линус Торвальдс представил первый стабильный релиз ядра Linux 6.1.

From Linus Torvalds <>
Date Sun, 11 Dec 2022 14:44:24 -0800
Subject Linux 6.1

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 6.1. Среди наиболее заметных изменений: поддержка разработки драйверов и модулей на языке Rust, модернизация механизма определения используемых страниц памяти, специальный менеджер памяти для BPF-программ, система диагностики проблем с памятью KMSAN, механизм защиты KCFI (Kernel Control-Flow Integrity), внедрение структуры Maple tree.

В новую версию принято 15115 исправлений от 2139 разработчиков, размер патча - 51 МБ, что примерно в 2 раза меньше размера патчей от ядер 6.0 и 5.19. Изменения затронули 13165 файлов, добавлено 716247 строк кода, удалено 304560 строк. Около 45% всех представленных в 6.1 изменений связаны с драйверами устройств, примерно 14% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 14% связано с сетевым стеком, 3% - с файловыми системами и 3% c внутренними подсистемами ядра.

https://lkml.org/lkml/2022/12/11/206

👉 @i_odmin
👍23
Основы работы с ограничениями sql

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

Реляционные системы управления базами данных (РСУБД) позволяют контролировать данные, помещаемые в таблицу. Этот контроль выполняется при помощи ограничений. В контексте РСУБД ограничение – это специальное правило, которое применяется к одному или нескольким столбцам (иногда и ко всей таблице) и определяет, какие изменения могут быть внесены в данные с помощью операторов INSERT, UPDATE или DELETE.

В этой статье мы подробно рассмотрим, что такое ограничения и как они используются в СУБД. Также мы отдельно остановимся на каждом из пяти ограничений, определенных в стандарте SQL, и объясним их функции.

#SQL

👉 @database_info
👍11
KeySim – интереснейший проект, с помощью которого вы можете собрать себе собственную виртуальную клавиатуру

Можно настраивать цветовые схемы, формы самой клавиатуры, шрифт на клавишах и многое другое!

https://github.com/crsnbrt/keysim

👉 @Githublib
😁4👍3👎1