БХВ-Петербург

Все книги издательства БХВ-Петербург


    Командная строка Linux

    Дмитрий Колисниченко

    Рассмотрены задачи, которые выполняются из командной строки операционной системы Linux. Объясняется, как попасть в командную строку, работать в консоли, настраивать систему с помощью программ, обладающих только текстовым интерфейсом. Описаны особенности файловой системы Linux, наиболее полезные команды для работы с текстом, сетью и Интернетом, а также команды системного администратора. Особое внимание уделено написанию сценариев автоматизации рутинных задач на языках командных оболочек bash и tcsh. Рассмотрены способы перенаправления ввода-вывода, маски и псевдонимы, различные варианты запуска программ, эффективные приемы использования клавиатуры, примеры сложных команд и другие вопросы.

    Квантовые информационные системы. Теория и практика применения

    С. А. Запрягаев

    Учебное пособие представляет собой введение в квантовые информационные системы. Рассмотрены основные вопросы квантовой теории, классическая и квантовая модели информационных систем, квантовые алгоритмы и квантовые каналы связи, элементная база квантовых компьютеров. Дан обзор физических методов реализации кубитов, квантовых языков программирования (Open QASM, Qiskit) и программных оболочек (IBM Q Experience, Quantum Composer, Jupiter Notebooks). Рассмотрены практические вопросы реализации квантовых алгоритмов, применения квантовых информационных систем к решению задач квантовой криптографии, использования защищенных квантовых каналов связи и др.

    Алгоритмический тренинг. Решения практических задач на Python и С++

    Максим Иванов

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

    PHP 8

    Дмитрий Котеров

    Книга предоставляет детальное и полное изложение языка PHP 8 от простого к сложному. Ее можно использовать как для изучения языка с нуля, так и для структурирования знаний, изучения тонких моментов синтаксиса и новых возможностей последней версии. Описываются все значимые нововведения. Рассматриваются новые типы, атрибуты, перечисления, именованные аргументы, сопоставления, объединенные типы, новые операторы ??= и ?-> и многое другое. Основной упор в книге делается на объектно-ориентированные возможности языка, поэтому классы и объекты рассматриваются практически с первых глав. Приведено описание синтаксиса PHP, а также инструментов для работы с массивами, файлами, СУБД PostgreSQL, Redis, регулярными выражениями, графическими примитивами, сессиями и т. д. По сравнению с предыдущей книгой авторов «PHP 7» добавлены 23 новые главы, а остальные обновлены или переработаны. На сайте издательства находятся исходные коды всех листингов.

    Интерпретируемое машинное обучение на Python

    Серг Масис

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

    Тест-дизайн. Практическое руководство для начинающих

    Ольга Назина

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

    Rust в действии

    Тим Макнамара

    Книга о прикладных аспектах языка программирования Rust, описывающая внутреннее устройство языка и сферы его использования. Rust рассматривается как современное дополнение для С при программировании ядра ОС и при системном программировании, а также как низкоуровневый скоростной язык, обеспечивающий максимальную производительность. Объяснены тонкости работы с процессором, многопоточное программирование, работа с памятью, а также взаимодействие с Linux. Изложенный материал позволяет как писать современные приложения на Rust с нуля, так и внедрять Rust в сложившуюся базу кода. Книга ориентирована на специалистов по C, Linux, системному программированию и на всех, кто желает освоить Rust и сразу приступить к работе с ним.

    Разработка веб-приложений с помощью ASP.Net Core MVC

    Е. Д. Умрихин

    Книга посвящена фреймворку ASP.NET Core MVC. Представлены особенности MVC-архитектуры (Model-View-Controller), основные принципы проектирования веб-приложений и организации корректной работы с различными типами веб-запросов. Показано, как взаимодействовать с базами данных посредством популярных ORM (объектно-реляционное отображение). В книге рассматриваются методы определения пользовательского интерфейса с помощью среды Razor и открытых клиентских библиотек, описаны способы построения Web API и использование его в клиентских приложениях. Подробно описаны различные варианты публикации приложений. Электронный архив на сайте издательства содержит результаты выполнения всех рассмотренных в книге проектов.

    Java. Состояние языка и его перспективы. Развитие языка и его версий

    Федор Урванов

    Книга о современном состоянии языка Java, векторе его развития, а также о грамотном программировании в духе паттернов GoF. Книга дает базовое представление о фреймворке Spring, контейнерах Docker, принципах ООП, затрагивая, в частности, переход к облачным решениям, обращение с IDE. Также освещены темы из enterprise-разработки: файловый ввод/вывод NIO.2, многопоточность, локализация, интеграция и оптимизация производительности. В книге отражено состояние языка по состоянию на версию Java 17 с разбором некоторых аспектов Java 18. Будет интересна специалистам, возвращающимся к работе с Java после перерыва, бэкенд-разработчикам, читателям, готовящимся к сертификационным экзаменам.

    C# глазами хакера

    Михаил Фленов

    Подробно рассмотрены все аспекты безопасности от теории до реальных реализаций .NET-приложений на языке C#. Рассказано, как обеспечивать безопасную регистрацию, авторизацию и поддержку сессий пользователей. Перечислены уязвимости, которые могут быть присущи веб-сайтам и Web API, описано, как хакеры могут эксплуатировать уязвимости и как можно обеспечить безопасность приложений. Даны основы оптимизации кода для обработки максимального количества пользователей с целью экономии ресурсов серверов и денег на хостинг. Рассмотрены сетевые функции: проверка соединения, отслеживание запроса, доступ к микросервисам, работа с сокетами и др. Приведены реальные примеры атак хакеров и способы защиты от них.