Архив рубрики: Книги о проектировании и разработке ПО

Книги о проектировании и разработке ПО, скачать бесплатные книги, самоучители и учебники о проектировании и разработке ПО в хорошем качестве

Шаблоны корпоративных приложений

Создание компьютерных систем — дело далеко не простое. По мере того как возрастает их сложность, процессы конструирования соответствующего программного обеспечения становятся все более трудоемкими, причем затраты труда растут экспоненциально. Как и в любой профессии, прогресс в программировании достигается исключительно путем обучения, причем не только на ошибках, но и на удачах — как своих, так и чужих. Книга дает ответы на трудные вопросы, с которыми приходится сталкиваться всем разработчикам корпоративных систем. Автор, известный специалист в области объектно-ориентированного программирования, заметил, что с развитием технологий базовые принципы проектирования и решения общих проблем остаются неизменными, и выделил более 40 наиболее употребительных подходов, оформив их в виде типовых решений. Результат перед вами — незаменимое руководство по архитектуре программных систем для любой корпоративной платформы. Это своеобразное учебное пособие поможет вам не только усвоить информацию, но и передать полученные знания окружающим значительно быстрее и эффективнее, чем это удавалось автору.

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

6,235 просмотров всего, сегодня нет просмотров

Release it! Проектирование и дизайн ПО для тех, кому не все равно

Неважно, каким инструментом вы пользуетесь для программной разработки — Java, .NET, или Ruby on Rails. Написание кода — это еще только полдела. Готовы ли вы к внезапному наплыву ботов на ваш сайт? Предусмотрена ли в вашем ПО «защита от дурака»? Правильно ли вы понимаете юзабилити? Майкл Нейгард утверждает, что большинство проблем в программных продуктах были заложены в них еще на стадии дизайна и проектирования. Вы можете двигаться к идеалу сами — методом проб и ошибок, а можете использовать опыт автора. В этой книге вы найдете множество шаблонов про- ектирования, помогающих избежать критических ситуаций, и не меньшее количество антишаблонов, иллюстрирующих неправильные подходы с подробным анализом возможных последствий. Любой разработчик, имеющий опыт многопоточного программирования, легко разберется в приведенных примерах на Java, которые подробно поясняются и комментируются.
Стабильность, безопасность и дружественный интерфейс — вот три важнейших слагаемых успеха вашего программного продукта. Если в ваши планы не входит в течение последующих лет отвечать на недовольные письма пользователей, выслушивать критику заказчиков и постоянно латать дыры, устраняя возникающие баги, то прежде чем выпустить финальный релиз, прочтите эту книгу.

7,181 просмотров всего, сегодня нет просмотров

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

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

6,102 просмотров всего, сегодня нет просмотров

Patterns, Principles, and Practices of Domain-Driven Design

Methods for managing complex software construction following the practices, principles and patterns of Domain–Driven Design with code examples in C#.

This book presents the philosophy of Domain–Driven Design (DDD) in a down–to–earth and practical manner for experienced developers building applications for complex domains. A focus is placed on the principles and practices of decomposing a complex problem space as well as the implementation patterns and best practices for shaping a maintainable solution space. You will learn how to build effective domain models through the use of tactical patterns and how to retain their integrity by applying the strategic patterns of DDD. Full end–to–end coding examples demonstrate techniques for integrating a decomposed and distributed solution space while coding best practices and patterns advise you on how to architect applications for maintenance and scale.
— Offers a thorough introduction to the philosophy of DDD for professional developers
— Includes masses of code and examples of concept in action that other books have only covered theoretically
— Covers the patterns of CQRS, Messaging, REST, Event Sourcing and Event–Driven Architectures
— Also ideal for Java developers who want to better understand the implementation of DDD

10,506 просмотров всего, сегодня нет просмотров

Паттерны проектирования

В мире постоянно кто-то сталкивается с такими же проблемами программирования, которые возникают и у вас. Многие разработчики решают совершенно идентичные задачи и находят похожие решения. Если вы не хотите изобретать велосипед, используйте готовые шаблоны (паттерны) проектирования, работе с которыми посвящена эта книга.
Паттерны появились, потому что многие разработчики искали пути повышения гибкости и степени повторного использования своих программ. Найденные решения воплощены в краткой и легко применимой на практике форме.
Особенностью данного издания является уникальный способ подачи материала, выделяющий серию «Head First» издательства O\’Reilly в ряду множества скучных книг, посвященных программированию. Книга будет интересна широкому кругу веб-разработчиков, от начинающих до профессионалов, желающих освоить работу с паттернами проектирования.

25,308 просмотров всего, сегодня нет просмотров

Технологии параллельного программирования

Описание книги Технологии параллельного программирования:
Рассматриваются современные средства разработки параллельных программ для многопроцессорных и многоядерных систем с общей и распределенной памятью: библиотеки MPI, POSIX Threads, система ОреnМР. Изложение материала построено по модели постепенного усложнения и базируется на примерах реализации различных вычислительных алгоритмов.

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

8,070 просмотров всего, сегодня нет просмотров

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

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

Инженерам приходится учиться работать с высокими нагрузками. Мало того, им приходится учиться работать с растущими нагрузками. Как масштабируется back-end? Сколько посетителей система может обслужить за час? Что делать, когда число посетителей удвоится? Когда нужно закупать серверы? Сколько их нужно и какими они должны быть? Как обосновать расходы на оборудование? Все эти вопросы неминуемо возникают, когда интернет-проект начинает набирать популярность. Настоящих профессионалов в данной области сравнительно мало, поэтому очень важно иметь возможность изучать положительный опыт коллег по цеху.

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

7,967 просмотров всего, сегодня нет просмотров

Web Service Contract Design and Versioning for SOA

Описание книги Web Service Contract Design and Versioning for SOA:
For Web services to succeed as part of SOA, they require balanced, effective technical contracts that enable services to be evolved and repeatedly reused for years to come. Now, a team of industry experts presents the first end-to-end guide to designing and governing Web service contracts.

Writing for developers, architects, governance specialists, and other IT professionals, the authors cover the following areas:

  • Understanding Web Service Contract Technologies
  • Fundamental and Advanced WSDL
  • Fundamental and Advanced XML Schema
  • Fundamental and Advanced WS-Policy
  • Fundamental Message Design with SOAP
  • Advanced Message Design with WS-Addressing
  • Advanced Message Design with MTOM, and SwA
  • Versioning Techniques and Strategies
  • Web Service Contracts and SOA

6,014 просмотров всего, 2 просмотров сегодня

Parallel Programming with Microsoft .NET: Design Patterns for Decomposition and Coordination on Multicore Architectures (Patterns & Practices)

Описание книги Parallel Programming with Microsoft .NET: Design Patterns for Decomposition and Coordination on Multicore Architectures (Patterns & Practices):
The CPU meter shows the problem. One core is running at 100 percent, but all the other cores are idle. Your application is CPU-bound, but you are using only a fraction of the computing power of your multicore system. What next?

The answer, in a nutshell, is parallel programming. Where you once would have written the kind of sequential code that is familiar to all programmers, you now find that this no longer meets your performance goals. To use your system’s CPU resources efficiently, you need to split your application into pieces that can run at the same time. This is easier said than done. Parallel programming has a reputation for being the domain of experts and a minefield of subtle, hard-to-reproduce software defects.

Everyone seems to have a favorite story about a parallel program that did not behave as expected because of a mysterious bug. These stories should inspire a healthy respect for the difficulty of the problems you face in writing your own parallel programs. Fortunately, help has arrived. Microsoft Visual Studio® 2010 introduces a new programming model for parallelism that significantly simplifies the job. Behind the scenes are supporting libraries with sophisticated algorithms that dynamically distribute computations on multicore architectures. Proven design patterns are another source of help. A Guide to Parallel Programming introduces you to the most important and frequently used patterns of parallel programming and gives executable code samples for them, using the Task Parallel Library (TPL) and Parallel LINQ (PLINQ).

7,209 просмотров всего, сегодня нет просмотров

Оптимизация ПО. Сборник рецептов

Описание книги Оптимизация ПО. Сборник рецептов:
Эта книга содержит практические рецепты, позволяющие разработчикам увеличить производительность приложений на платформе Intel. На простых примерах ведущие эксперты компании Intel объясняют читателю, как правильно строить алгоритмы, управлять распределением памяти, прогнозировать ветвление, использовать SIMD инструкции и многопоточность, производить вычисления с плавающей точкой и многое другое. Книга будет интересна всем разработчикам, желающим освоить передовые технологии и улучшить качество кода.

Содержание книги:
Часть I. ИНСТРУМЕНТЫ И КОНЦЕПЦИИ ПОВЫШЕНИЯ ПРОИЗВОДИТЕЛЬНОСТИ

  • Введение
  • Тест производительности
  • Инструменты повышения производительности
  • Горячие точки
  • Архитектура процессоров

Часть II. ПРОБЛЕМЫ ПРОИЗВОДИТЕЛЬНОСТИ

  • Алгоритмы
  • Переходы
  • Память
  • Циклы
  • Медленные операции
  • Операции с плавающей точкой
  • Технология SIMD
  • Автоматическая векторизация
  • Специфические для процессоров варианты оптимизации
  • Основы многопроцессорной обработки
  • Реализация многопоточности средствами ОреnМР
  • Очередь заданий и другие сложные темы

Часть III. РАЗРАБОТКА И ОПТИМИЗАЦИЯ ПРИЛОЖЕНИЙ

  • Конкретный пример поточной обработки в видеокодеке
  • Разработка с прицелом на производительность
  • Сводим все вместе — базовые варианты оптимизации
  • Сводим все вместе — последние десять процентов

7,743 просмотров всего, 1 просмотров сегодня