Создание компьютерных систем - дело далеко не простое. По мере того как возрастает их сложность, процессы конструирования соответствующего программного обеспечения становятся все более трудоемкими, причем затраты труда растут экспоненциально.
Подход к улучшению структурной целостности и производительности существующих программ, называемый рефакторингом, получил развитие благодаря усилиям экспертов в области ООП, написавших эту книгу. Каждый шаг рефакторинга прост. Это может быть перемещение поля из одного класса в другой, вынесение фрагмента кода из метода и превращение его в самостоятельный метод или даже перемещение кода по иерархии классов. Каждый отдельный шаг может показаться элементарным, но совокупный эффект таких малых изменений в состоянии радикально улучшить проект или даже предотвратить распад плохо спроектированной программы.
Авторы описывают объектные методы решения сложных проблем, связанные с разработкой систем и программного обеспечения. Используя многочисленные примеры, они иллюстрируют основные концепции объектно-ориентированного подхода на примере разработки систем управления, сбора данных и искусственного интеллекта.
В книге рассматриваются вопросы сравнительного анализа языков программирования и конструирование компиляторов. В первой части издания подробно обсуждаются языки Ява и Си#. Большое внимание уделяется Оберону — одному из самых совершенных языков программирования. В этой книге впервые публикуется его спецификация на русском языке. Также приводятся результаты оригинальных исследований языков программиования.
Книга представляет собой руководство для начинающих исследователей и разработчиков программ вычислительного характера на языке программирования Fortran в среде Windows. Материал подготовлен для тех, кто не имеет опыта написания программ, но желает изучить и использовать Fortran для решения своих задач.
Книга известных специалистов в области разработки архитектур крупных программных систем посвящена новому подходу к созданию линеек программного обеспечения, допускающих быструю адаптацию под постоянно меняющиеся требования со стороны заказчиков. Определенный застой в развитии инструментов анализа, проектирования, моделирования и реализации сложных программных систем и быстро меняющиеся условия на рынке требуют нахождения эффективных решений, позволяющих максимально быстро возвращать инвестиции. Таковыми должны стать фабрики разработки программ.
В отличие от книг, опирающихся исключительно на неточные методы (включая экономически невыгодные в большинстве случаев непрерывные циклы обратной связи и жесткое моделирование), в этом уникальном издании предлагается проверенный, удобный и реалистичный подход к оценке затрат на разработку программных продуктов.