Скачать книги категории «Программирование»

Управление проектами наноиндустрии на основе комплексной адаптирующейся модели

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

Информационная система государственного учета и контроля радиоактивных веществ и отходов

В статье приведены результаты системного анализа потоков информации в системе государственного учета и контроля радиоактивных веществ и радиоактивных отходов и данных первичной регистрации пунктов хранения отходов с целью их интеграции в системе. Для решения задач системного анализа были построены функциональные модели IDEF0, модели потоков данных DFD и модели проектирования баз данных IDEF1X.

Параллельный алгоритм оптимального выбора аппаратурного оформления многоассортиментных производств

Представлен основанный на схеме ветвей и границ параллельный алгоритм оптимального выбора аппаратурного оформления химико-технологических систем многоассортиментных производств, реализация которого использует парадигму мастер-работник и метод назначаемых поддеревьев. Программа разработана на языке программирования C++ с использованием интерфейса Message Passing Interface. Приводятся результаты применения разработанного алгоритма для расчета реального производства с анализом получающегося ускорения и эффективности использования процессоров.

Динамическое моделирование процессов развития пенсионной системы

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

Разработка приложений Java EE 6 в NetBeans 7

Книга представляет собой практическое руководство по использованию возможностей IDE NetBeans 7 для разработки корпоративных приложений, совместимых со стандартом Java EE 6.

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

Существенное внимание уделено основным API Java EE в контексте их работы в среде NetBeans. Подробно рассмотрены возможности NetBeans по автоматизации разработки приложений с использованием таких API, как Servlet, JSP, JSTL, JSF, JMS, JPA, JDBC, EJB, JAX-WS, JAX-RS, а также по созданию для них инфраструктурных, коммуникационных и конфигурационных элементов. Затронуты вопросы взаимодействия среды NetBeans с различными серверами приложений, СУБД и внешними службами.

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

Книга рассчитана на разработчиков желающих разрабатывать Java EE-приложения c использованием функциональных возможностей IDE NetBeans.

Для чтения книги необходимо иметь некоторый опыт работы с Java, в то время как начального знакомства с NetBeans и Java EE не требуется.

Scala для нетерпеливых

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

Второе издание было обновлено до поддержки версии Scala 2.12 и демонстрирует самые современные приемы использования языка. В него было добавлено описание последних нововведений в Scala, включая интерполяцию строк, динамический вызов, неявные классы и объекты Future. Издание предназначено для программистов на Java, C++ и C#, которые желают освоить язык Scala и в целом функциональное программирование.

Жемчужины проектирования алгоритмов. Функциональный подход

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

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

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

C++ AMP. Построение массивно параллельных программ с помощью Microsoft Visual C++

С++ Accelerated Massive Parallelism (С++ AMP) – разработанная корпорацией Microsoft технология ускорения написанных на С++ приложен за счет исполнения кода на оборудовании с распараллеливанием по данным например, на графических процессорах. Модель программирования в С++ AMP основана на библиотеке, устроенной по образцу STL, и двух расширениях языка С++, интегрированных в компилятор Visual С++ 2012. Она в полной мере поддерживается инструментами Visual Studio, в том числе IntelliSense, отладчиком и профилировщиком. Благодаря С++ AMP свойственная гетерогенному оборудованию производительность становится доступна широким кругам программистов.

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

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

Параллельное программирование на C++ в действии. Практика разработки многопоточных программ

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

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

Оптимизация производительности приложений для iOS

Книга демонстрирует, как совершенствовать, увеличивать и оптимизировать производительность приложений для операционной системы iOS. Вы быстро научитесь создавать быстрые и отзывчивые приложения, пригодные для распространения на коммерческой основе. Эта книга охватывает множество общих и вместе с тем сложных проблем, возникающих при оптимизации производительности приложений для iPhone и iPad, и подробно описывает, как эффективно их решать. Она содержит массу практических знаний, приемов, советов и рекомендаций, которые помогут вам преуспеть в конкурентном мире разработки приложений для iOS.

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

Разработка через тестирование для iOS

Гибкий и понятный программный код, легко поддающийся модификации и не скрывающий неприятных сюрпризов для своих создателей. Как оказывается, это не сказка! Всего этого позволяет добиться методика разработки через тестирование (Test-Driven-Development, TDD). Она основана, на первый взгляд, на парадоксальной идее – создавать тесты до написания тестируемого прикладного кода.

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

О модульном тестировании написано множество книг. Это отличные книги, но они не содержат специализированной информации, например, для разработчиков приложений на основе фреймворка Cocoa Touch. Предоставляя примеры на языке Objective-C, используя Xcode с сопутствующими инструментами и оперируя идиомами Cocoa, автору удалось сделать принципы, лежащие в основе разработки через тестирование, более доступными для разработчиков приложений для iOS.

XSLT. Сборник рецептов

Язык XSLT (Extensible Stylesheet Language Transformation) стал основным инструментом обработки XML-документов, но многие разработчики все еще не освоили его в полной мере и потому считают, что проще модифицировать имеющийся код, чем писать новый с нуля. В версии 2.0 многие проблемы решены, но появился ряд новых возможностей, которые еще надо изучить. К тому же она пока недостаточно поддержана.

Во втором издании настоящей книги приведены сотни решений задач, с которыми регулярно сталкиваются программисты. Даются варианты для обеих версий XSLT. Диапазон рецептов чрезвычайно широк: от операций со строками и математических вычислений до таких сложных тем, как расширение XSLT, тестирование и отладка таблиц стилей и создание графики в формате SVG. В каждом рецепте обосновывается выбор решения и объясняется примененная техника. Для многих задач приводятся альтернативные решения с замечаниями по поводу удобства пользования и производительности.

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

Программирование компьютерных игр под Windows в XNA Game Studio Express

Это серия книг настольной библиотеки начинающего программиста игр. На данный момент серия состоит из двух книг и поможет программистам изучить технику разработки игр для системы Windows и Xbox 360. В этом издании с помощью студии XNA Game Studio Express рассматривается полный цикл создания компьютерных игр для операционной системы Windows. Изучая эту книгу, вы освоите основы работ с инструментариями Visual C# Express и XNA Game Studio Express. Научитесь работать с двухмерной и трехмерной графикой, анимацией, познакомитесь с техникой создания игровых классов и формированием механизма игровых состояний. Овладеете секретами создания интерактивных заставок и меню, работой с устройствами ввода и звуком. Итогом книги станет создание двухмерной и трехмерной игры с формированием инсталляционного пакета. На базе полученных знаний вы сможет создавать свои собственные компьютерные игры и продавать или распространять их бесплатно через Интернет.

Программирование мобильных телефонов на Java 2 Micro Edition

Вы держите в руках второе и переработанное издание одной из популярных книг о программировании мобильных телефонов на Java 2 ME. Первое издание книги продавалось огромными тиражами по всему постсоветскому пространству. Автор книги создал уникальное издание, обучившее огромное количество начинающих программистов делать приложения для мобильных телефонов. Спустя три года после выхода первого издания, по многочисленным заявкам читателей была создана новая и переработанная версия книги.

Книга содержит девять новых глав. Часть старого материала первого издания была переработана в соответствии с веяниями времени. Теперь читатель кроме программирования приложений для платформы Java 2 ME, изучит полный процесс создания мобильной игры. В течение книги будет освещен подход в формировании полноценного мобильного игрового движка, освоена работа с графикой, показаны примеры многослойных и анимированных игровых карт. Будут рассмотрены основы искусственного интеллекта, игровые столкновения, создание интерактивного меню игры, подсчет очков и жизненной энергии главного героя, сохранение данных в памяти, работа со звуком и многое другое. Итогом книги станет создание полноценной мобильной игры и знакомство с разработкой пользовательских программ на Java 2 ME.

Искусство алгоритмизации

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

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

Количественное оценивание последствий управленческих решений на основе нейросетевых моделей

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

Информационные модели и автоматизированные процедуры для управления инновациями

Предлагаются модели для сравнительного анализа инноваций, основанные на применении информационного подхода А. А. Денисова. Модели позволяют оценивать значимость инноваций с учетом их влияния на достижение целей организации и вероятности их реализации, анализировать развитие внедрения инноваций во времени и с учетом их взаимного влияния.

Технология программного моделирования и управления моделями в системе Аctor Pilgrim

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

Чистый код: создание, анализ и рефакторинг

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

Эта книга посвящена хорошему программированию. Она полна реальных примеров кода. Мы будем рассматривать код с различных направлений: сверху вниз, снизу вверх и даже изнутри. Прочитав книгу, вы узнаете много нового о коде. Более того, вы научитесь отличать хороший код от плохого. Вы узнаете, как писать хороший код и как преобразовать плохой код в хороший.

Книга состоит из трех частей. В первой части излагаются принципы, паттерны и приемы написания чистого кода; приводится большой объем примеров кода. Вторая часть состоит из практических сценариев нарастающей сложности. Каждый сценарий представляет собой упражнение по чистке кода или преобразованию проблемного кода в код с меньшим количеством проблем. Третья часть книги – концентрированное выражение ее сути. Она состоит из одной главы с перечнем эвристических правил и «запахов кода», собранных во время анализа. Эта часть представляет собой базу знаний, описывающую наш путь мышления в процессе чтения, написания и чистки кода.

Программирование игр под Android

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

Программирование для мобильных устройств на iOS

Эта книга поможет вам быстро освоить программирование под iOS и научит создавать приложения для устройств iPhone, iPad и iPod Touch. Подробно описывается процесс разработки приложения для iOS: от первого запуска Xcode до загрузки приложения в магазин App Store. Также вы познакомитесь с языком Objective-C и основными библиотеками, необходимыми при разработке для iOS. Каждая глава книги представляет собой урок, который поможет быстро освоить рассматриваемую тему, с большим количеством примеров кода и иллюстраций. В издании рассматриваются версии iOS 5 и Xcode 4.

Разработка Паскаль-компилятора

В книге излагается структура компилятора, основные принципы построения всех его основных блоков – лексического, синтаксического и семантического анализаторов, а также генератора кода. Методы компиляции программ на Паскале описаны на языке С.

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

Интерактивные графические системы. Учебное пособие

В пособии рассмотрены основные методы и алгоритмы построения графических изображений, подробно анализируются приемы моделирования движения (анимации) двумерных изображений, использования сплайнов и построения трехмерных поверхностей. Проводится сравнение принципов программирования графики в популярной в прошлом операционной системе MS-DOS и в современной операционной системе Windows. Материал проиллюстрирован листингами программ на языке C/C++, в том числе с использованием API-функций системы Windows.

Для студентов, обучающихся по направлению «Информатика и вычислительная техника».

Информационные технологии в проектировании «интеллектуальной» скважины

В статье рассматриваются принципиальные вопросы оптимизации эксплуатационных режимов добывающей системы «призабойная зона пласта – скважина – насосная установка» на основе интеллектуального программно-технического комплекса СОКРАТ, осуществляющего мониторинг, диагностику и адаптивное управление отдельными скважинами в нефтедобыче. Приводятся сведения о выполненных авторами исследования привода погружного насоса «интеллектуальной» скважины с использованием информационных технологий.