Доказательство корректности программ

Доказательство корректности программ

Данная книга учит формально рассуждать о компьютерных программах, используя последовательный подход и язык программирования Dafny, поддерживающий верификацию. Показано, как писать спецификации для программ, как удовлетворить требования этих спецификаций и как писать доказательства корректности программ относительно спецификаций. Автор сначала представляет теоретические предпосылки, лежащие в основе рассуждений о программном коде, а затем постепенно переходит к реальным примерам, использующих объекты, структуры данных и нетривиальную рекурсию. Книга написана простым и понятным языком, содержит множество забавных иллюстраций и практических упражнений. Книга предполагает наличие у читателя базовых знаний программ и программирования. Стиль этого программирования (функциональный, императивный) и конкретный используемый язык не так важны, но будет полезно, если используемые читателями языки программирования поддерживают концепцию типов.

 



Автор: К. Рустан, М. Лейно
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Паттерны для начинающих программистов с примерами на Java

Паттерны для начинающих программистов с примерами на Java

В этой книге, призванной научить начинающего программиста решать конкретные задачи по программированию на языке Java, вводится понятие паттерна — некоего заранее заготовленного "рецепта" решения, который можно применить в виде готового фрагмента кода. Используя впоследствии данный набор паттернов, молодой разработчик сможет на их основе быстро решать довольно сложные составные задачи. Представленные здесь паттерны часто предлагают наряду со стандартными алгоритмами эффективные альтернативные методы решения самых распространенных задач в области программирования. Приведенная в книге библиотека паттернов охватывает обширную область, начиная с примитивного обновления переменной и заканчивая работой со ссылочными данными.

 



Автор: Дэвид Бернштейн
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Библия C#. Шестое издание (2024) /Михаил Евгеньевич Фленов /

Библия C#. Шестое издание (2024) /Михаил Евгеньевич Фленов /

Книга посвящена программированию на языке C# для платформы Microsoft . NE T, начиная с основ языка и разработки программ для работы в режиме командной строки и заканчивая созданием современных веб-приложений. Материал сопровождается большим количеством практических примеров. Подробно описывается логика выполнения каждого участка программы. Уделено внимание вопросам повторного использования кода. В 6-м издании примеры переписаны с учетом современной платформы .NET 7, большой упор сделан на веб-приложения и фреймворк доступа к данным Entity Framework. На сайте издательства находятся коды программ, дополнительная справочная информация и копия базы данных для выполнения примеров из книги.
Для программистов
 



Автор: Михаил Евгеньевич Фленов
Язык: рус
Жанр: Программирование, справочное пособие, самоучитель,
Формат: PDF, DJVU
Подробнее

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

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

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

 



Автор: Федор Урванов
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf, epub
Подробнее

Библия C#, 6-е изд.

Библия C#, 6-е изд.

Книга посвящена программированию на языке C# для платформы Microsoft .NET, начиная с основ языка и разработки программ для работы в режиме командной строки и заканчивая созданием современных веб-приложений. Материал сопровождается большим количеством практических примеров. Подробно описывается логика выполнения каждого участка программы. Уделено внимание вопросам повторного использования кода. В 6-м издании примеры переписаны с учетом современной платформы .NET 7, большой упор сделан на веб-приложения и фреймворк доступа к данным Entity Framework. Для программистов.

 



Автор: Михаил Фленов
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf, epub
Подробнее

Серия "Программирование от экспертов" в 4 книгах

Серия "Программирование от экспертов" в 4 книгах

"Программирование от экспертов" - серия книг от специалистов и экспертов сообщества Stack Overflow, в котором лучшие разработчики программного обеспечения со всего мира делятся своими знаниями и опытом, отвечая на многие технические вопросы. Данные издания могут стать незаменимыми помощниками как для начинающего программиста, стремящегося разобраться во всех тонкостях языков программирования, так и для более опытных разработчиков, которые смогут использовать книги в качестве справочника для решения повседневных задач при написании кода.
 



Автор: Серия книг,
Язык: рус
Жанр: Программирование, самоучитель, учебники, учебное пособие,
Формат: pdf
Подробнее

C++. Основы программирования

C++. Основы программирования

Книга «C++. Основы программирования» знакомит читателей с написанием программного кода в среде разработки (IDE) на начальном уровне, обучает использованию переменных и данных, операторов и выражений, работе с консолью (считывание входных данных и вывод выходных данных), применению условных операторов (if, if-else, switch-case), циклов (for, while, do-while) и функций (объявление и вызов функций, передача параметров и возврат значений). Основной упор в издании сделан на упражнениях: здесь приведено множество подробно прокомментированных примеров кода, дополненных тщательно отобранными практическими задачами и судейской системой для мгновенной автоматической оценки написанного вами кода. Издание призвано помочь новичкам сделать первые шаги в освоении C++ — мультипарадигменного высокопроизводительного языка программирования общего назначения с широчайшим набором возможностей.

 



Автор: Светлин Наков
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Искусство юнит-тестирования с примерами на JavaScript. 3-е межд. изд.

Искусство юнит-тестирования с примерами на jаvascript. 3-е межд. изд.

Искусство юнит-тестирования не сводится к изучению правильного набора инструментов и практик. Искусство создавать классные тесты — это понимание сути, поиск верной стратегии для каждого конкретного случая и умение выйти из ситуации, когда тестирование превращается в беспорядочный процесс. Эта книга предлагает советы и рекомендации, которые полностью изменят ваш подход к тестированию ПО. Вы научитесь создавать читабельные и простые в сопровождении тесты, изучите стратегии тестирования в масштабах организации, диагностику проблем, работу с унаследованным кодом и «бескомпромиссный» рефакторинг. В примерах используются jаvascript, TypeScript и Node.js.

 



Автор: Рой Ошеров, Владимир Хориков
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf, pub
Подробнее

Принципы объектно-ориентированного программирования

Принципы объектно-ориентированного программирования

В данном издании подробно рассматриваются самые важные вопросы, связанные с объектно-ориентированным программированием (ООП), которое предполагает подход к созданию кода как к моделированию информационных объектов. На более высоком абстрактном уровне основная задача ООП — структурирование информации с точки зрения управляемости, что позволяет успешно реализовывать крупные программные проекты. В этой книге пристальное внимание уделяется таким концепциям методологии объектно-ориентированного программирования как абстракция, инкапсуляция, наследование и полиморфизм. Освоив неизменно эффективные принципы ООП, начинающие и опытные программисты получат в свое распоряжение отлично структурированный способ управления сложным кодом, а также смогут более продуктивно использовать и поддерживать его.

 



Автор: Стивен Вонг, Дунг Нгуен
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Go: идиомы и паттерны проектирования, 2-е издание

Go: идиомы и паттерны проектирования, 2-е издание

Go быстро завоевал популярность у разработчиков веб-сервисов. Существует множество учебников, помогающих программистам со знанием других языков освоить его синтаксис, но этого недостаточно. Автор Джон Боднер познакомит вас с паттернами проектирования, созданными опытными инженерами Go, и обоснует их применение. В книге собрана наиболее важная информация, необходимая для написания чистого и идиоматического кода. Начните думать как Go-разработчик, вне зависимости от уровня подготовки. В обновленном издании также рассказывается и о современных инструментах Go, упрощающих решение задач, трудновыполнимых на других платформах.

 



Автор: Джон Боднер
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Blue Fox: взлом и реверс-инжиниринг ARM

Blue Fox: взлом и реверс-инжиниринг ARM

Пора разобраться с тем, что такое реверс-инжиниринг! Процессоры ARM используются в миллиардах устройств по всему миру — от смартфонов и планшетов до автомобильных систем и умных гаджетов. Реверс-инжиниринг — это процесс анализа чужого программного обеспечения или аппаратного устройства, позволяющий быстро разобраться в принципах работы. Без него сейчас не обойтись, именно этот навык позволяет разработчикам, инженерам и специалистам по инфобезу изучать новые технологии, выявлять уязвимости и создавать более безопасные и эффективные системы. В первой части книги вы познакомитесь с основами формата ELF, компиляции, архитектурой и инструкциями ARM, условным выполнением и потоками команд. Вторая часть будет особенно интересна реверс-инженерам, она посвящена инструментам статистического и динамического анализа, а также содержит пошаговые практические примеры.

 



Автор: Мария Маркстедтер
Язык: русский
Жанр: Программирование
Формат: pdf
Подробнее

Node.js, Express, MongoDB и React. 23 урока для начинающих

Node.js, Express, MongoDB и React. 23 урока для начинающих

В книге 23 урока, более 40 практических упражнений и заданий для самостоятельной работы. Даны основы программирования на Node.js: проекты и манифесты, установка дополнительных библиотек, импорт и экспорт. Описан серверный веб-фреймворк Express: работа с запросами и ответами, маршрутизация, шаблонизатор EJS, обработка пользовательских данных, статических файлов, валидация, сохранение выгруженных файлов, вывод сообщений об ошибках и разграничение доступа. Показана работа с СУБД MongoDB: запись и выборка данных, фильтрация, сортировка, применение моделей Mongoose. Рассказано о двухзвенных веб-приложениях, бэкендах и фронтендах. Рассмотрено программирование бэкендов средствами Express и фронтендов с применением клиентского веб-фреймворка React.

 



Автор: Дронов В.А.
Язык: русский язык
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Excel с Python и R: раскройте потенциал расширенной обработки и визуализации данных

Excel с Python и R: раскройте потенциал расширенной обработки и визуализации данных

Интеграция Python и R с Excel изменит ваш подход к анализу данных с использованием электронных таблиц. Вы сможете автоматизировать задачи статистического анализа и создавать мощные визуализации, научитесь выполнять разведочный анализ данных и анализ временных рядов и даже интегрировать различные API для максимальной эффективности. И новички, и эксперты найдут в этой книге все необходимое, чтобы раскрыть весь потенциал Excel и поднять навыки анализа данных на новый уровень.
 



Автор: Сандерсон С., Кун Д.
Язык: рус
Жанр: Программирование,
Формат: pdf, epub
Подробнее

Волшебство и вычисления: практическое пособие для начинающих фокусников и программистов

Волшебство и вычисления: практическое пособие для начинающих фокусников и программистов

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


 



Автор: Пол Керзон, Питер МакОуэн
Язык: Русский
Жанр: программирование, алгоритмы, учебное пособие
Формат: PDF
Подробнее

Kubernetes для разработчиков

Kubernetes для разработчиков

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

 



Автор: Уильям Деннис
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Публикация пакетов Python. Тестирование, распространение и автоматизация проектов

Публикация пакетов Python. Тестирование, распространение и автоматизация проектов

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

 



Автор: Дэйн Хиллард
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Эффективный TypeScript: 83 способа улучшить код, 2-е издание

Эффективный TypeScript: 83 способа улучшить код, 2-е издание

Способен ли TypeScript устранить проблемы, которыми так знаменит jаvascript? Да, но его изучение потребует определенных усилий, времени и практики. 83 правила позволят ускорить и облегчить знакомство с TypeScript. Каждое правило — это конкретная рекомендация, рассказывающая на примерах что можно и чего нельзя делать в TypeScript и как грамотно работать с этим языком. Эта книга поможет подняться с уровня начинающего или среднего пользователя, знакомого с основами TypeScript, на уровень TS-эксперта, который может профессионально работать с этим языком. Второе издание было обновлено для TypeScript 5, и включает две новые главы, посвященные программированию на уровне типов и рецептам TypeScript.

 



Автор: Дэн Вандеркам
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Инфраструктура как код. С примерами на Python и Terraform

Инфраструктура как код. С примерами на Python и Terraform

Инфраструктура как код (IaC) – это набор методов и процессов для построения и обслуживания инфраструктуры с использованием скриптов, файлов конфигурации или языков программирования. IaC значительно облегчает тестирование компонентов, реализацию функций и масштабирование системы. Но самое главное – поскольку IaC следует классическим методам разработки, для внесения изменений в масштабах системы достаточно нескольких коммитов кода! Прочитав эту книгу, вы научитесь создавать виртуальные серверы, сети, балансировщики нагрузки, брандмауэры и другие компоненты с помощью Python и Terraform, а также уверенно обновлять инфраструктуру, не прерывая работу системы.

 



Автор: Розмари Ванг
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Программирование: введение в профессию. Том 1 Азы программирования (2025)

Программирование: введение в профессию. Том 1 Азы программирования (2025)

Учебник «Программирование: введение в профессию» ориентирован на самостоятельное изучение и предполагает использование систем семейства Unix (в т.ч. Linux) в роли сквозной среды для обучения. Первый том учебника содержит три части, охватывающие базис знаний о программировании как виде деятельности. Первый том учебника содержит три части, охватывающие базис знаний о программировании как виде деятельности: в первую часть вошли вводные сведения, вторая посвящена основам программирования на примере языка Паскаль, третья - возможностям центрального процессора и программированию на языке ассемблера.

 



Автор: Столяров А.В.
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf, djvu
Подробнее

Архитектура ЭВМ и язык ассемблера

Архитектура ЭВМ и язык ассемблера

Книга имеет своей целью изучение базовых принципов устройства современных ЭВМ, анализ качественных и количественных характеристик различных компонент ЭВМ, анализ влияния этих характеристик на работу прикладных программ. Помимо того, предполагается практическое освоение языка ассемблера архитектуры IA-32, изучение особенностей этой процессорной архитектуры, изучение взаимосвязей между архитектурой набора команд, механизмами реализации языка Си и системой программирования.

 



Автор: Падарян В.А.
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf, epub
Подробнее

Blazor в действии

Blazor в действии

Фреймворк Blazor от компании Microsoft позволяет создавать интерактивные веб-компоненты, которые изначально запускаются в браузере без подключаемых модулей или транспайлеров. А поскольку весь код написан на языке C#, его можно с легкостью использовать для разработки серверной и клиентской частей приложения. Изучив данное практическое руководство, вы освоите ключевые возможности Blazor, среди которых маршрутизация, формы и валидация, а также динамические и повторно используемые компоненты, и в итоге создадите увлекательное веб-приложение для построения пешеходных маршрутов. После прочтения книги вы сможете разрабатывать красивые сайты и приложения, которые без проблем выполняют код C# непосредственно в браузере. Кроме того, издание позволяет беспрепятственно интегрировать новые возможности .NET 6.

 



Автор: Крис Сэйнти
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Графика на Python. Создание 2D- и 3D-изображений для научной графики и презентаций

Графика на Python. Создание 2D- и 3D-изображений для научной графики и презентаций

В книге на наглядных примерах показано, как использовать встроенные графические примитивы Python – точки, линии и стрелки — для создания сложной графики, визуализации двух- и трехмерных объектов, диаграмм с данными и технических иллюстраций. После прочтения вы сможете создавать привлекательные графические изображения, не ограничиваясь функциями, доступными в су­ществующих библиотеках Python. Приведены примеры из физики (визуализация электронных облаков, изменение климата), астрономии, биологии (изменение динамики популяций), экономики (управление ресурсами) и др. Исходный код Python включен во все приложения, что делает материал более доступным для начинающих программистов.

 



Автор: Бернар Коритес
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Большие данные. Современные фреймворки и разработка приложений

Большие данные. Современные фреймворки и разработка приложений

В книге рассматриваются модели, системы и фреймворки, специально разработанные для обработки и анализа больших наборов данных. Вы познакомитесь с основными парадигмами и механизмами, применяемыми в анализе больших данных, включая MapReduce, рабочие потоки, массовый синхронный параллелизм, передачу сообщений и SQL-подобные модели. В главах книги описаны примеры использования фреймворков Hadoop, Spark, Storm и MPI и рассмотрены вопросы выбора среды, наиболее подходящей для достижения целевых задач приложения. Читатель должен хорошо владеть такими языками, как Java, Python или Scala, и знать основные концепции параллельного и распределенного программирования.

 



Автор: Талия Д., Трунфио П., Мароццо Ф., Белькастро Л.
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Вредные советы для C++ программистов

Вредные советы для C++ программистов

В книге читателю предлагается обширный список «советов», которым на самом деле не стоит следовать. Каждый совет сопровождается подробным разбором и рассмотрением неочевидных моментов. Эти пояснения будут полезны новичкам, изучающим программирование. Впрочем, книга развлечёт и профессионалов рассмотрением некоторых нюансов программирования на C++.

 



Автор: Андрей Карпов
Язык: русский
Жанр: компьютерная литература, Программирование
Формат: pdf
Подробнее

Парсинг с помощью Python. Веб-скрапинг в действии. 3-е межд. изд.

Парсинг с помощью Python. Веб-скрапинг в действии. 3-е межд. изд.

Если программирование — магия, то веб-скрапинг — настоящее колдовство. Написав простую автоматизированную программу, можно отправлять запросы веб-серверам, получать ответы с данными, а затем анализировать эти данные и извлекать необходимую информацию. Это обновленное третье издание книги не только познакомит вас с веб-скрапингом, но и послужит исчерпывающим руководством по сбору практически любых видов данных в современном Интернете. В части I основное внимание уделено механике веб-скрапинга: как с помощью Python отправлять запросы веб-серверам, обрабатывать ответы и автоматизировать взаимодействие с сайтами. В части II исследуются более конкретные инструменты и приложения, которые пригодятся при любом сценарии веб-скрапинга.

 



Автор: Райан Митчелл
Язык: русский
Жанр: Программирование
Формат: pdf
Подробнее