Программирование, программы, базы данных

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

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

Роберт Сесил Мартин

Программирование, программы, базы данных
Введение в QNX/Neutrino 2
Введение в QNX/Neutrino 2

Книга "Введение в QNX/Neutrino 2» откроет перед вами в мельчайших подробностях все секреты ОСРВ нового поколения от компании QNX Software Systems Ltd (QSSL) — QNX/Neutrino 2. Книга написана в непринужденной манере, легким для чтения и понимания стилем, и поможет любому, от начинающих программистов до опытных системотехников, получить необходимые начальные знания для проектирования надежных систем реального времени, от встраиваемых управляющих приложений до распределенных сетевых вычислительных системВ книге подробно описаны основные составляющие ОС QNX/Neutrino и их взаимосвязи. В частности, уделено особое внимание следующим темам:• обмен сообщениями: принципы функционирования и основы применения;• процессы и потоки: базовые концепции, предостережения и рекомендации;• таймеры: организация периодических событий в программах;• администраторы ресурсов: все, что относится к программированию драйверов устройств;• прерывания: рекомендации по эффективной обработке.В книге представлено множество проверенных примеров кода, подробных разъяснений и рисунков, которые помогут вам детально вникнуть в и излагаемый материал. Примеры кода и обновления к ним также можно найти на веб-сайте автора данной книги.

Роб Кёртен

Программирование, программы, базы данных
Photoshop. Лучшие фильтры
Photoshop. Лучшие фильтры

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

Марина Бондаренко , Сергей Бондаренко

Программирование, программы, базы данных / Программное обеспечение / Книги по IT
Описание языка PascalABC.NET
Описание языка PascalABC.NET

PascalABC.NET — это язык программирования Паскаль нового поколения, включающий классический Паскаль, большинство возможностей языка Delphi, а также ряд собственных расширений. Он реализован на платформе Microsoft.NET и содержит все современные языковые средства: классы, перегрузку операций, интерфейсы, обработку исключений, обобщенные классы и подпрограммы, сборку мусора, лямбда-выражения, средства параллельного программирования. PascalABC.NET является мультипарадигменным языком: на нем можно программировать в структурном, объектно-ориентированном и функциональном стилях. PascalABC.NET — это также простая и мощная интегрированная среда разработки, поддерживающая технологию IntelliSense, содержащая средства автоформатирования, встроенный отладчик и встроенный дизайнер форм.

РуБоард Коллектив

Программирование, программы, базы данных
Excel. Мультимедийный курс
Excel. Мультимедийный курс

Эта книга – не обычный самоучитель. К ней прилагается мультимедийный интерактивный обучающий курс (около 30 часов лекций), который поможет вам разобраться в премудростях Microsoft Excel 2007.Процесс обучения предельно прост и максимально приближен к занятиям с репетитором. Вы видите на экране работу виртуального преподавателя и слышите его рассказ, поясняющий действия. Для закрепления полученных знаний «учитель» постоянно задает контрольные вопросы и предлагает выполнить тестовые задания, в случае затруднения дает подсказку.Информационная насыщенность учебного материала позволяет утверждать, что мультимедийный курс будет интересен и новичкам, и опытным пользователям, которые уже владеют основными навыками работы в Excel и стремятся к достижению профессиональных результатов в своей работе.

Олег Юрьевич Мединов , Олег Мединов

Программирование, программы, базы данных / Программное обеспечение / Книги по IT
Программируем Arduino
Программируем Arduino

Arduino — стандартный микроконтроллер, получивший широкое признание у инженеров, мастеров и преподавателей благодаря своей простоте, невысокой стоимости и большому разнообразию плат расширения. Платы расширения, подключаемые к основной плате Arduino, позволяют выходить в Интернет, управлять роботами и домашней автоматикой.Простые проекты на основе Arduino не вызывают сложностей в реализации. Но, вступив на территорию, не охваченную вводными руководствами, и увеличивая сложность проектов, вы быстро столкнетесь с проблемой нехватки знаний — врагом всех программистов.Эта книга задумана как продолжение бестселлера «Programming Arduino: Getting Started with Sketches». Несмотря на то что эта книга включает краткое повторение основ из книги «Programming Arduino», она познакомит читателя с более продвинутыми аспектами программирования плат Arduino.

Саймон Монк

Программирование, программы, базы данных
Параллельное и распределенное программирование на С++
Параллельное и распределенное программирование на С++

В книге представлен архитектурный подход к распределенному и параллельному программированию с использованием языка С++. Здесь описаны простые методы программирования параллельных виртуальных машин и основы разработки кластерных приложений. Эта книга не только научит писать программные компоненты, предназначенные для совместной работы в сетевой среде, но и послужит надежным «путеводителем» по стандартам для программистов, которые занимаются многозадачными и многопоточными приложениями. Многолетний опыт работы привел авторов книги к использованию агентно-ориентированной архитектуры, а для минимизации затрат на обеспечение связей между объектами системы они предлагают применить методологию «классной доски». Эта книга адресована программистам, проектировщикам и разработчикам программных продуктов, а также научным работникам, преподавателям и студентам, которых интересует введение в параллельное и распределенное программирование с использованием языка С++.

Камерон Хьюз , Трейси Хьюз

Программирование, программы, базы данных
QNX/UNIX: Анатомия параллелизма
QNX/UNIX: Анатомия параллелизма

Книга адресована программистам, работающим в самых разнообразных ОС UNIX. Авторы предлагают шире взглянуть на возможности параллельной организации вычислительного процесса в традиционном программировании. Особый акцент делается на потоках (threads), а именно на тех возможностях и сложностях, которые были привнесены в технику параллельных вычислений этой относительно новой парадигмой программирования. На примерах реальных кодов показываются приемы и преимущества параллельной организации вычислительного процесса. Некоторые из результатов испытаний тестовых примеров будут большим сюрпризом даже для самых бывалых программистов. Тем не менее излагаемые техники вполне доступны и начинающим программистам: для изучения материала требуется базовое знание языка программирования C/C++ и некоторое понимание «устройства» современных многозадачных ОС UNIX. В качестве «испытательной площадки» для тестовых фрагментов выбрана ОСРВ QNX, что позволило с единой точки зрения взглянуть как на специфические механизмы микроядерной архитектуры QNX, так и на универсальные механизмы POSIX. В этом качестве книга может быть интересна и тем, кто не использует (и не планирует никогда использовать) ОС QNX: программистам в Linux, FreeBSD, NetBSD, Solaris и других традиционных ОС UNIX.

Олег Иванович Цилюрик , Егор Горошко , Владимир Зайцев

Программирование, программы, базы данных / ОС и Сети / Программирование
Sound Forge 9
Sound Forge 9

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

Игорь Квинт

Программирование, программы, базы данных / Программное обеспечение / Книги по IT
Офисное программирование
Офисное программирование

Фризен Ирина Григорьевна – кандидат педагогических наук, преподаватель информационных технологий, автор многочисленных работ в сфере информационных технологий.Настоящее учебное пособие написано в соответствии с государственной программой изучения дисциплины Офисное программирование для средних специальных учебных заведений по специальности 230103 «Автоматизированные системы обработки информации и управления».В пособии дается достаточный материал для проведения практических занятий по дисциплине, а также основной теоретический материал, необходимый при изучении того или иного вопроса. На основе предлагаемого материала можно строить проведение различных видов занятий.Учебное пособие ставит перед собой цель помочь студентам изучить данную дисциплину в полном объеме, отвечающем требованиям государственного стандарта по дисциплине.Предназначается для преподавателей и студентов средних специальных учебных заведений, а также может быть использовано студентами высших учебных заведений, изучающих данную дисциплину.В учебном пособии рассматривается более 60 задач, сопровождаемых 130 рисунками и подробными объяснениями.

Ирина Григорьевна Фризен

Программирование, программы, базы данных / Программирование / Книги по IT
Взломать всё. Как сильные мира сего используют уязвимости систем в своих интересах
Взломать всё. Как сильные мира сего используют уязвимости систем в своих интересах

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

Брюс Шнайер

Программирование, программы, базы данных
Визуальное моделирование электронных схем в PSPICE
Визуальное моделирование электронных схем в PSPICE

PSPICE определяет промышленный стандарт программ-имитаторов и является самым популярным пакетом моделирования для OS/Windows как у профессионалов, так и у любителей по всему миру. Эта книга — лучшее на сегодняшний день учебное пособие по PSPICE. Курс построен по принципу «от простого к сложному». Первая часть посвящена основам работы с программой. В ней говорится о том, как строить и редактировать чертежи электронных схем, находить нужную информацию в выходном файле, моделировать цепи постоянного и переменного тока, строить диаграммы любой сложности, исследовать частотные характеристики схем. Во второй части подробно рассказывается о различных видах анализов, выполняемых с помощью PSPICE (анализ переходных процессов, параметрический анализ и т.д.). Также в ней содержится руководство по цифровому моделированию и использованию программы-осциллографа PROBE. Третья и четвертая части включают сведения об использовании PSPICE для расчета электрических цепей и цепей регулирования. Описывается, как создать и модифицировать модели компонентов схем.Книга адресована пользователям различного уровня подготовки: в первую очередь инженерам и конструкторам, профессиональным разработчикам промышленных изделий (электронных схем, технологического оборудования, автомобилей и т.д.), студентам радиотехнических специальностей, а также радиолюбителям.Прилагаемый к книге компакт-диск содержит рабочие версии программы PSPICE, подробный справочник по PSPICE (на английском языке), библиотеки компонентов, необходимые для работы с книгой, и учебные упражнения.

Роберт Хайнеманн

Программирование, программы, базы данных
Модель зрелости процессов разработки программного обеспечения
Модель зрелости процессов разработки программного обеспечения

Данный текст является переводом на русский язык описания одного из самых популярных стандартов постановки процесса разработки программного обеспечения (ПО).Я публикую книгу на своем сайте в открытом доступе для того, чтобы все интересующиеся данным вопросом могли прочитать ее и получить необходимую информацию совершенно свободно и бесплатно. Причина в том, что те методики, которые описаны в данном стандарте, как я считаю, просто обязаны взять на вооружение те разработчики ПО, которые этим занимаются серьёзно. По крайней мере, это касается 2-го и 3-го уровней CMM, так как применение этих практик дает существенное повышение в производительности и устойчивости процесса разработки ПО.

Чарльз В Вебер , Мерилин Буш , Билл Куртис , Мэри Бет Хриссис , Марк Паулк , Чарльз В. Вебер , Сьюзен М. Гарсия , Владимир Рябикин

Программирование, программы, базы данных / Программирование / Книги по IT
Язык программирования Python
Язык программирования Python

Курс посвящен одному из бурно развивающихся и популярных в настоящее время сценарных языков программирования — Python. Язык Python позволяет быстро создавать как прототипы программных систем, так и сами программные системы, помогает в интеграции программного обеспечения для решения производственных задач. Python имеет богатую стандартную библиотеку и большое количество модулей расширения практически для всех нужд отрасли информационных технологий. Благодаря ясному синтаксису изучение языка не составляет большой проблемы. Написанные на нем программы получаются структурированными по форме, и в них легко проследить логику работы. На примере языка Python рассматриваются такие важные понятия как: объектно–ориентированное программирование, функциональное программирование, событийно–управляемые программы (GUI–приложения), форматы представления данных (Unicode, XML и т.п.). Возможность диалогового режима работы интерпретатора Python позволяет существенно сократить время изучения самого языка и перейти к решению задач в соответствующих предметных областях. Python свободно доступен для многих платформ, а написанные на нем программы обычно переносимы между платформами без изменений. Это обстоятельство позволяет применять для изучения языка любую имеющуюся аппаратную платформу.

Роман Арвиевич Сузи

Программирование, программы, базы данных
Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ
Эффективное использование C++. 55 верных способов улучшить структуру и код ваших программ

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

Скотт Майерс

Программирование, программы, базы данных
Ошибки разработчиков видеоигр. От идеи до провала
Ошибки разработчиков видеоигр. От идеи до провала

Как трезво оценивать свой проект?Что мешает грамотно планировать свою работу?Какие психологические особенности игроков стоит учитывать?Создание видеоигр – особое искусство. Инструмент разработчика – не компьютер, не игровые движки, а мозг. Книга «Ошибки разработчиков видеоигр. От идеи до провала» объяснит, как избежать самых распространенных ошибок, научит грамотно анализировать выбранное направление, четко оценивать свои силы и не опускать руки на пути к своей цели.Слава Грис – разработчик-одиночка, создатель Fearmonium, Catmaze и Reflection of Mine. Он прошел путь от фрилансера до организатора собственного видеоигрового издательства. Его первая книга «Сделай видеоигру один и не свихнись» стала очень популярна среди читателей. Будучи магистром психологии и куратором множества команд, делающих видеоигры, автор рассмотрит проблемы разработчиков с учетом особенностей человеческого мышления и расскажет о неочевидных способах воздействия на игрока. Эта книга будет полезна начинающим разработчикам, которые не хотят ничего упустить.В формате PDF A4 сохранён издательский дизайн.

Слава Грис

Программирование, программы, базы данных
3ds Max 2008 для дизайна интерьеров
3ds Max 2008 для дизайна интерьеров

Данная книга предназначена для начинающих дизайнеров трехмерной графики, желающих освоить создание виртуального интерьера с помощью редактора 3ds Max. На примере моделирования предметов интерьера вы изучите технику и способы создания трехмерной графики.В издании изложены общие сведения о работе с 3ds Max, рассматриваются инструменты для создания и редактирования объектов, описаны настройки стандартных источников освещения и камер, даны приемы по созданию и применению материалов, приведены основы визуализации. Изюминка книги – упражнения, которые находятся после теоретического раздела каждой главы и позволяют закрепить на практике полученные знания. Вы научитесь моделировать различные предметы интерьера с помощью примитивов и модификаторов, логических операций, лофтинга, полигонального моделирования.

Рита Семак

Программирование, программы, базы данных