В предлагаемой книге описываются простые и изящные решения типичных задач, возникающих в объектно-ориентированном проектировании. Паттерны появились потому, что многие разработчики искали пути повышения гибкости и степени повторного использования своих программ. Найденные решения воплощены в краткой и легко применимой на практике форме. Авторы излагают принципы использования паттернов проектирования и приводят их каталог. Таким образом, книга одновременно решает две задачи. Во-первых, здесь демонстрируется роль паттернов в создании архитектуры сложных систем. Во-вторых, применяя содержащиеся в справочнике паттерны, проектировщик сможет с легкостью разрабатывать собственные приложения.
Издание предназначено как для профессиональных разработчиков, так и для программистов, осваивающих объектно-ориентированное проектирование.
Создание компьютерных систем - дело далеко не простое. По мере того как возрастает их сложность, процессы конструирования соответствующего программного обеспечения становятся все более трудоемкими, причем затраты труда растут экспоненциально. Как и в любой профессии, прогресс в программировании достигается исключительно путем обучения, причем не только на ошибках, но и на удачах - как своих, так и чужих. Книга дает ответы на трудные вопросы, с которыми приходится сталкиваться всем разработчикам корпоративных систем. Автор, известный специалист в области объектно-ориентированного программирования, заметил, что с развитием технологий базовые принципы проектирования и решения общих проблем остаются неизменными, и выделил более 40 наиболее употребительных подходов, оформив их в виде типовых решений. Результат перед вами - незаменимое руководство по архитектуре программных систем для любой корпоративной платформы. Это своеобразное учебное пособие поможет вам не только усвоить информацию, но и передать полученные знания окружающим значительно быстрее и эффективнее, чем это удавалось автору. Книга предназначена для программистов, проектировщиков и архитекторов, которые занимаются созданием корпоративных приложений и стремятся повысить качество принимаемых стратегических решений.
Роберт Мартин в соавторстве с Джеймсом Ньюкирком и Робертом Коссом предлагает вниманию читателей книгу о различных методиках быстрого (и даже экстремального) программирования. Изложение начинается с обзора основных понятий экстремального программирования и завершаетс я готовыми программами, применяемыми на практике. В каждой главе приведены примеры кода на языках программирования Java и C++.
Книга будет полезной руководителям групп программистов, нацеленных на быструю разработку коммерческих программных проектов, характеризующихся высоким уровнем качества и минимальной себестоимостью.
Подход к улучшению структурной целостности и производительности существующих программ, называемый рефакторингом, получил развитие благодаря усилиям экспертов в области ООП, написавших эту книгу. Каждый шаг рефакторинга прост. Это может быть перемещение поля из одного класса в другой, вынесение фрагмента кода из метода и превращение его в самостоятельный метод или даже перемещение кода по иерархии классов. Каждый отдельный шаг может показаться элементарным, но совокупный эффект таких малых изменений в состоянии радикально улучшить проект или даже предотвратить распад плохо спроектированной программы.
Мартин Фаулер с соавторами пролили свет на процесс рефакторинга, описав принципы и лучшие приемы его осуществления, а также указав, где и когда следует начинать углубленное изучение кода с целью его улучшения. Основу книги составляет подробный перечень более 70 методов рефакторинга, для каждого из которых описываются мотивация и техника испытанного на практике преобразования кода с примерами на Java. Рассмотренные в книге методы позволяют поэтапно модифицировать код, внося каждый раз небольшие изменения, благодаря чему снижается риск, связанный с развитием проекта.
Третье издание бестселлера Мартина Фаулера "UML. Основы" охватывает UML 2 - версию, которая существенно отличается от всех предыдущих. Но основная формула успеха этой книги не претерпела изменений. До сих пор она, бесспорно, остается лучшим кратким и точным руководством по применению UML.
Главное достоинство книги заключается в кратком и сжатом изложении сути UML и особенностей применения этого языка в современном процессе разработки ПО. В книге описаны все главные типы диаграмм UML, рассказано, для чего они предназначены и какие нотации применяются при их создании и чтении. Это диаграммы классов, последовательности, объектов, пакетов, развертывания, прецедентов, состояний, деятельности, составных структур, компонентов, обзора взаимодействия, коммуникационные и временные.
Фаулер не только в ясной и доступной манере описывает ключевые аспекты языка UML, но и четко показывает ту роль, которую UML играет в процессе разработки. Замечательные примеры моделирования являются результатом многолетнего опыта работы автора в области проектирования и моделирования.
Унифицированный язык моделирования (Unified Modeling Language, UML) является графическим языком для визуализации, специфицирования, конструирования и документирования систем, в которых большая роль принадлежит программному обеспечению. С помощью UML можно разработать детальный план создаваемой системы, содержащий не только ее концептуальные элементы, такие как системные функции и бизнес-процессы, но и конкретные особенности, например, классы, написанные на специальных языках программирования, схемы баз данных и программные компоненты многократного использования.
Предлагаемое вашему вниманию руководство пользователя содержит справочный материал, дающий представление о том, как можно использовать UML для решения разнообразных проблем моделирования. В книге подробно, шаг за шагом, описывается процесс разработки программных систем на базе данного языка.
Издание адресовано читателям, которые уже имеют общее представление об объектно-ориентированных концепциях. В первую очередь руководство предназначено для разработчиков, занятых созданием моделей UML. Тем не менее, книга будет полезна всем, кто осваивает, создает, тестирует или выпускает в свет программные системы.
Сегодня многие книги посвящены или UML, или Унифицированному процессу (Unified Process, UP), но не им обоим. Арлоу и Нейштадт заполнили этот пробел книгой, являющей собою замечательный синтез UML и UP.
Здесь вы изучите методики объектно-ориентированного анализа и проектирования, синтаксис и семантику UML и соответствующие аспекты UP. Книга содержит точный и лаконичный обзор UML и UP с точки зрения ОО аналитика и проектировщика. В издании четко и понятно рассказано о практическом применении UML 2 на этапах анализа и проектирования Унифицированного процесса. Вы узнаете о роли моделирования в цикле разработки ПО, и эти знания помогут вам ответить на вопрос: как и когда использовать (или не использовать) UML, чтобы найти оптимальное решение для своего проекта. Авторы приводят множество примеров и дают рекомендации, бесценные для начинающих разработчиков моделей. Опытные ОО аналитики и проектировщики найдут в книге полезное руководство и справочник по UML 2.
В книге "Применение UML 2.0 и шаблонов проектирования, 3-е издание" В книге рассматриваются основные принципы и приемы объектно-ориентированного анализа и проектирования (ООА/П). В ней вы найдете сведения об итеративном и гибком моделировании, шаблонах проектирования, архитектурном анализе и многих других вопросах. Весь материал рассматривается вконтексте гибкого подхода к разработке с совместным применением процесса UP и других итеративных методов.
В книге рассматривается два реальных примера, позволяющих на практике освоить принципы ООА/П, а также изучить новейшую систему обозначений языка UML 2.0.
Книга будет хорошим руководством для всех, кто интересуется вопросами ООА/П, языком моделирования UML 2.0 и современными эволюционными подходами к разработке программного обеспечения.
Более десяти лет профессиональные программисты, пишущие на языке C, полагались лишь на одну книгу, из которой они могли почерпнуть глубокие практические знания о программных интерфейсах UNIX и Linux: "Advanced Programming in the UNIX® Environment" Ричарда Стивенса. Теперь его коллега Стивен Раго полностью обновил классический труд с учетом последних технических достижений и добавил сведения об основных современных версиях UNIX и Linux.
Стивен Раго бережно сохранил дух и стиль книги, которые сделали ее классикой. Продолжая труд Стивенса, он начинает повествование с таких основ, как файлы, каталоги и процессы, тщательно подготавливая читателя к пониманию более сложных тем: обработка сигналов и терминальный ввод-вывод.
Среди важных дополнений можно назвать главы, посвященные потокам и вопросам разработки многопоточных программ, использованию интерфейса сокетов для организации межпроцессного взаимодействия (IPC), а также широкий охват интерфейсов, добавленных в последней версии стандарта POSIX.1. Практически все примеры протестированы на четырех наиболее популярных сегодня платформах: FreeBSD 5.2.1, Linux 2.4.22, Solaris 9 и Darwin 7.4.0 (гибрид FreeBSD и Mach, который лег в основу Mac OS X 10.3 компании Apple). Описывается множество ловушек, о которых следует помнить при написании программ для различных реализаций UNIX, и показывается, как их избежать, опираясь на стандарты POSIX.1 и Single UNIX Specification.
Хотите быстро и без усилий разрабатывать стилевое оформление веб-страниц, отвечающее современным требованиям? Третье издание книги «CSS – каскадные таблицы стилей. Подробное руководство» показывает, как реализовать на практике все возможности каскадных таблиц стилей для стандартов CSS2 и CSS2.1. Множество предоставленных примеров позволит научиться создавать или легко менять внешний вид веб-сайта и получать намного более богатые представления, чем это возможно средствами только HTML.
Эрик Мейер, признанный эксперт по CSS, HTML и веб-стандартам, со свойственным ему остроумием, опираясь на свой богатейший опыт, рассматривает свойства, теги, атрибуты и реализации, а также практические вопросы, такие как поддержка различными броузерами и рекомендации разработчикам. Чтобы создавать четкие и простые в обслуживании сценарии для компоновки веб-сайтов и разбивку на страницы с той же легкостью и управляемостью, которые обеспечивают настольные издательские системы, вам потребуется только знание HTML 4.0. Вы узнаете о сложном стилевом оформлении документов, пользовательском интерфейсе, верстке таблиц, списках и генерируемом содержимом, о всех деталях свободного перемещения и позиционирования, о семействах шрифтов и механизмах резервирования, о новых селекторах CSS3, поддерживаемых IE7, Firefox и другими броузерами, а также о том, как работает модель блоков.
Монография известных американских специалистов, уже знакомая нашему читателю по предыдущим изданиям, посвящена схемотехнике электронных систем. В ней приведены наиболее интересные технические решения, а также анализируются ошибки разработчиков аппаратуры; внимание читателя сосредоточивается на тонких аспектах проектирования и применения электронных схем.
Данное издание на русском языке представляет собой объединение тт. 1 и 2 предыдущего издания 1993 г. Книга содержит сведения об элементах схем, транзисторах, операционных усилителях, активных фильтрах, источниках питания, полевых транзисторах, прецизионных схемах и малошумящей аппаратуре, цифровых схемах, преобразователях информации.
Для специалистов в области электроники, автоматики, вычислительной техники, а также студентов соответствующих специальностей вузов.