bannerbannerbanner
logo
Войти

Технологии разработки программного обеспечения

Создание компьютерных систем – дело далеко не простое. По мере того как возрастает их сложность, процессы конструирования соответствующего программного обеспечения становятся все более трудоемкими, причем затраты труда растут экспоненциально. Как и в любой профессии, прогресс в программировании достигается исключительно путем обучения, причем не только на ошибках, но и на удачах – как своих, так и чужих. Книга дает ответы на трудные вопросы, с которыми приходится сталкиваться всем разработчикам корпоративных систем. Автор, известный специалист в области объектно-ориентированного программирования, заметил, что с развитием технологий базовые принципы проектирования и решения общих проблем остаются неизменными, и выделил более 40 наиболее употребительных подходов, оформив их в виде типовых решений. Результат перед вами – незаменимое руководство по архитектуре программных систем для любой корпоративной платформы. Это своеобразное учебное пособие поможет вам не только усвоить информацию, но и передать полученные знания окружающим значительно быстрее и эффективнее, чем это удавалось автору. Книга предназначена для программистов, проектировщиков и архитекторов, которые занимаются созданием корпоративных приложений и стремятся повысить качество принимаемых стратегических решений.
В этом, 7-м, издании книга-бестселлер по MVC обновлена с учетом версии ASP.NET Core MVC 2. Она содержит подробные объяснения функциональности Core MVC, которая позволяет разработчикам выпускать более экономные, оптимизированные под облако и готовые к функционированию на мобильных устройствах приложения для платформы .NET. В книге показано, как поместить ASP.NET Core MVC в контекст разработки, а также глубоко исследованы инструменты и приемы, требуемые для построения современных, оптимизированных под облако, расширяемых веб-приложений. Детально описаны все новые средства MVC и приведены пояснения, как наиболее эффективно применять их к новым и существующим проектам. Инфраструктура ASP.NET Core MVC Framework – это последнее развитие веб-платформы ASP.NET от Microsoft, построенное на совершенно новом фундаменте. Она представляет основополагающее изменение в том, каким образом Microsoft конструирует и развертывает веб-инфраструктуры, и свободна от наследия более ранних технологий, подобных Web Forms. Инфраструктура ASP. NET Core MVC предлагает “независимую от хоста” структуру и высокопродуктивную модель программирования, которая способствует построению более чистой кодовой архитектуры, разработке через тестирование и значительной расширяемости. Автор многочисленных бестселлеров Адам Фримен тщательно пересмотрел эту лидирующую на рынке книгу и объяснил, как извлечь максимум из ASP.NET Core MVC. Он начинает с элементарных вещей и рассказывает обо всем вплоть до расширенных средств, чтобы дать вам исчерпывающие знания, в которых вы нуждаетесь. Книга включает полностью работающий учебный пример функционирующего приложения, который вы сможете использовать в качестве шаблона для собственных проектов. Что нового в этом издании – Полное обновление с учетом возможностей Visual Studio 2017, C# 7 и .NET Core 2. – Раскрытие новых средств, таких как фильтры представлений. – Более широкий, нежели ранее, охват платформы и инструментария, с большим объемом сведений по Visual Studio Code и работе с .NET Core на платформах, отличных от Windows. – Развертывание приложений на основе контейнера Docker. Благодаря этой книге вы освоите следующие темы: – Обретете глубокое понимание архитектуры ASP.NET Core MVC. – Исследуете инфраструктуру ASP.NET MVC Framework как единое целое. – Увидите в действии инфраструктуру MVC и разработку через тестирование. – Узнаете о новых возможностях ASP.NET Core MVC 2 и научитесь их эффективно применять в своей работе. – Выясните, как создавать веб-службы REST и одностраничные приложения (SPA). – Сможете воспользоваться имеющимися у вас знаниями предшествующих выпусков MVC для быстрого и эффективного освоения новой модели программирования.
Unity – невероятно мощный игровой движок, популярный среди разработчиков игр как профессионального, так и любительского уровня. Автор книги – Майк Гейг, руководитель направления информационно-разъяснительной работы в компании Unity Technologies. Эта книга призвана ускорить обучение читателя и дать ему возможность как можно быстрее начать работу с Unity и освоить принципы игрового программирования. Вы не только приобретете теоретические знания об игровом движке Unity, но и создадите небольшое портфолио игр, которое пригодится вам в будущем. В файлах примеров содержатся листинги программ из каждой главы с авторскими комментариями, все сторонние графические ассеты (текстуры, шрифты, модели), а также аудиоматериалы. Для доступа к сопроводительным файлам перейдите по адресу http://addons.eksmo.ru/it/Unity.zip.
В книге рассмотрена технология создания документации на информационную систему как программный продукт, обрабатывающий информацию, с опорой на существующие в странах СНГ стандарты.
В этой книге вы найдете ключевые принципы, алгоритмы и компромиссы, без которых не обойтись при разработке высоконагруженных систем для работы с данными. Материал рассматривается на примере внутреннего устройства популярных программных пакетов и фреймворков. В книге три основные части, посвященные, прежде всего, теоретическим аспектам работы с распределенными системами и базами данных. От читателя требуются базовые знания SQL и принципов работы баз данных.
Добавлено
Год выхода: 2020
Язык: Русский
Объектно-ориентированное программирование (ООП) – технология, которую обязан знать, понимать и приме…
Объектно-ориентированное программирование (ООП) – технология, которую обязан знать, понимать и применять каждый программист. Печально, но многие программисты не знают, не понимают и не применяют. А многие, что ещё хуже, – находятся в заблуждении, что знают, понимают и применяют. Из этой книги вы узнаете всё, что надо знать об ООП – и даже немного больше. Кратко, понятно, с примерами. Для умных людей.
«Идеальный программист» и «Чистый код» – легендарные бестселлеры Роберта Мартина – рассказывают, как достичь высот профессионализма. «Чистая архитектура» продолжает эту тему, но не предлагает несколько вариантов в стиле «решай сам», а объясняет, что именно следует делать, по какой причине и почему именно такое решение станет принципиально важным для вашего успеха. Роберт Мартин дает прямые и лаконичные ответы на ключевые вопросы архитектуры и дизайна. «Чистую архитектуру» обязаны прочитать разработчики всех уровней, системные аналитики, архитекторы и каждый программист, который желает подняться по карьерной лестнице или хотя бы повлиять на людей, которые занимаются данной работой. В форматах: a4.pdf и ios.ePub представлены файлы от издательства.
Книга адресована начинающим разработчикам прикладных решений в системе «1С:Предприятие 8». Она поможет овладеть наиболее эффективными приемами разработки приложений. Средства разработки «1С:Предприятия 8» позволяют решать широкий круг задач. Начинающим разработчикам бывает сложно сориентироваться в многообразии имеющихся инструментов и возможностей. Зачастую бывает так, что одна и та же задача может быть выполнена с помощью разных инструментов или разными способами. Но непонятно, какой из этих способов является предпочтительным. Именно в таких случаях поможет эта книга. Она содержит набор простых примеров, показывающих один наиболее эффективный способ решения той или иной задачи, возникающей в процессе разработки. Примеры достаточно подробно описаны и проиллюстрированы для того, чтобы их мог воспроизвести начинающий. В то же время за более подробной информацией об используемых инструментах следует обращаться к документации «1С:Предприятию 8». Для создания демонстрационных примеров использовалась версия 8.3.5.1443 платформы «1С:Предприятие 8». Дополнительные материалы к книге включают эти дистрибутивы, а также несколько информационных баз. Эти материалы помогут вам самостоятельно воспроизвести примеры, описанные в книге. Скачать дополнительные материалы можно по ссылке: http://its.1c.ru/book_demo/. После покупки предоставляется дополнительная возможность скачать книгу в формате epub, в двух вариантах, с разным визуальным оформлением программного кода. CD-диск с дополнительными материалами прилагается только к бумажному изданию книги.
Добавлено
Год выхода: 2017
Язык: Русский
В статье рассматриваются вопросы, связанные с базами данных для временных рядов. Временные ряды дост…
В статье рассматриваются вопросы, связанные с базами данных для временных рядов. Временные ряды достаточно широко используются в различных приложениях. Соответственно, тема хранения временных рядов является весьма актуальной. Естественно, при определенных условиях, которые представлены в этой статье, можно использовать традиционные реляционные базы данных. Возможные ограничения будут, с одной стороны, связаны со скоростью поступления новых данных. С другой стороны, возможные ограничения, а также особенности обработки временных рядов приводят к необходимости использовать специализированные системы хранения временных рядов. Именно описанию работы с временными рядами с точки зрения баз данных и посвящена статья. В ней рассматриваются вопросы использования традиционных реляционных баз данных для хранения временных рядов, а также решения, классифицируемые как NoSQL-системы.
Авторами приведено общее описание метода циклического декодирования БЧХ-кода. Представлена структура декодера БЧХ-кода (15, 7, 5), исправляющего двукратные независимые ошибки на основе метода циклического декодирования с применением классического алгоритма деления полиномов и последовательного вычисления синдромов ошибок. Приведена схема классического алгоритма, реализованного на регистрах сдвига с линейной обратной связью. Указаны недостатки приведенной структуры, а также пути их устранения. Представлена структура быстродействующего декодера БЧХ-кода с применением матричного алгоритма деления полиномов и параллельным вычислением синдромов ошибок. Описан принцип матричного деления, применяемого для ускорения вычисления остатков от деления кодового слова на образующий полином. Проведено сравнение быстродействия устройств декодирования, на основе которого можно сделать вывод о преимуществе предлагаемого устройства по скорости декодирования примерно в 1182 раза.
В статье описываются реализации – программная или аппаратная – автоматной вычислительной системы (ВС) на базе объектно-атрибутной вычислительной системы, относящейся к классу машин с управлением потоком данных (dataflow). Рассматриваются реализации автоматов различных классов (детерминированный, недетерминированный, абстрактный, структурный), а также реализации автоматной декомпозиции (вложенный и вызываемый автоматы) и системы параллельно работающих автоматов.
В статье рассмотрены основные аспекты тестирования производительности программных продуктов. Авторами приводится классификация методов тестирования. При этом основное внимание уделяется так называемому нагрузочному тестированию. Нагрузочное тестирование проводится с целью определения степени соответствия системы нефункциональным требованиям, таким как максимальное количество одновременных пользователей, время отклика информационного сервиса и т. п. В работе подробно описаны различные виды нагрузочных тестов, а также представлена методика тестирования для каждого вида, предложен набор показателей для классификации инструментов тестирования, на основе которого приведен сравнительный анализ существующих инструментальных средств для проведения нагрузочного тестирования.
Статья посвящена использованию новых технологий параллелизма, которые появились в современных стандартах Фортрана (Fortran-2003, Fortran-2008). Авторами описаны конвейерные операции и подпрограммы; рассмотрены новые технологии параллелизма: комассивы и автораспараллеливание; представлены результаты тестирования различных технологий параллелизма; проанализированы особенности использования различных компиляторов Фортрана.
Автором рассматривается подход к отображению структуры файловой системы в виде когнитивной сети, при этом папки файловой системы выступают в качестве ключевых слов – атрибутов, связанных между собой и ассоциированных с файлом. К тому же упраздняется строгое следование имен папок в пути файла, становится возможным доступ к файлу из различных директорий без применения ярлыков. В статье представлен способ реализации данного подхода на базе существующей иерархической структуры каталогов и перспективы развития данного подхода.
Статья посвящена сравнению характеристик различных способов построения облачных ERP-систем. В работе описаны особенности каждой модели, их преимущества и недостатки как самостоятельно, так и применительно к конкретным условиям внедрения. Приведены примеры выбора оптимальных облачных решений для различных ситуаций. Статья предназначена для облегчения выбора способа развертывания ERP-систем руководством предприятия, а также компаниями-провайдерами и интеграторами, занимающимися предоставлением рассматриваемого программного обеспечения.
На основе практического опыта авторов в статье рассмотрены основные направления применения информационных технологий, используемых на стадиях жизненного цикла сложных технических систем. Обоснованы принципы построения эффективных автоматизированных систем управления жизненным циклом сложных технических систем и рассмотрено их применение на примере одной из систем управления жизненным циклом.
В статье представлены описание проекта и реализация библиотеки для формирования очереди команд GNU Linux/UNIX и их локального или удаленного исполнения в зависимости от названия и версии целевой операционной системы. В описании проекта отражены область применения, выбор средств реализации, описание структуры и примененные методики. Разработка базируется на классических работах [1 – 3] и развивает результаты, опубликованные в статьях [4, 5].
Реактивное программирование – совершенно новая и многообещающая парадигма, позволяющая эффективно решать задачи, связанные с созданием распределенных систем и программированием для JVM. Эта книга расскажет, как организовать поток задач, наладить обмен сообщениями между элементами программы, обеспечить параллельную и конкурентную обработку и создать надежные, отказоустойчивые и гибкие приложения. Перед вами – основополагающая работа по шаблонам проектирования (design patterns) этой парадигмы. Книга проиллюстрирована многочисленными примерами и ориентирована на опытных Java- и Scala-разработчиков.
Добавлено
Год выхода: 2017
Язык: Русский
В большинстве организаций стремительно принимают на вооружение гибкие (agile) методики разработки. О…
В большинстве организаций стремительно принимают на вооружение гибкие (agile) методики разработки. Они позволяют своевременно реагировать на изменение условий и значительно снижать стоимость разработки. Однако исторически безопасность и гибкие методики никогда не дружили между собой. Эта книга поможет вам разобраться в том, что такое безопасность, какие существуют угрозы и на каком языке специалисты-безопасники описывают, что происходит. Вы научитесь моделировать угрозы, измерять степень риска, создавать ПО, помня о безопасности, безопасно устанавливать ПО и оценивать, какие проблемы (в плане безопасности) могут возникать в процессе его эксплуатации – то есть безопасно разрабатывать необходимые приложения. Издание будет полезно всем специалистам, в чьи обязанности входит обеспечение информационной и операционной безопасности организаций, разработчикам, применяющим гибкие методы разработки приложений, для которых Scrum и кайдзен не пустые слова.
Второе издание знаменитого бестселлера «Unity в действии» было полностью переработано, чтобы познакомить вас с новыми подходами и идеями, позволяющими максимально эффективно использовать Unity для разработки игр. Больше внимания уделено проектированию двумерных игр, фундаментальные концепции которых читатель может применить на практике и построить сложный двумерный платформер. Эту книгу можно смело назвать введением в Unity для профессиональных программистов. Джозеф Хокинг дает людям, имеющим опыт разработки, всю необходимую информацию, которая поможет быстро освоить новый инструмент и приступить к созданию новых игр. А учиться лучше всего на конкретных проектах и практических заданиях. Unity зачастую представляют как набор компонентов, не требующих программирования, что в корне неверно. Для создания успешной игры необходимо многое: великолепная работа художника, программистские навыки, интересная история, увлекательный геймплей, дружная и слаженная работа команды разработчиков. А еще нельзя забывать про безупречную визуализацию и качественную работу на всех платформах – от игровых консолей до мобильных телефонов. Unity объединяет мощный движок, возможности профессионального программирования и творчества дизайнеров, позволяя воплотить в жизнь самые невероятные и амбициозные проекты. Осваивайте Unity и быстрее приступайте к созданию собственных игр!
Популярные книги