Главная » Просмотр файлов » Б. Страуструп - Язык программирования С++

Б. Страуструп - Язык программирования С++ (1119446), страница 81

Файл №1119446 Б. Страуструп - Язык программирования С++ (Б. Страуструп - Язык программирования С++) 81 страницаБ. Страуструп - Язык программирования С++ (1119446) страница 812019-05-09СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 81)

Нужно не бросаться сразупечатать текст, а поискать статьи на сходные темы, вдруг найдется такая, которая может послужитьотправной точкой. Если ею окажется моя собственная статья, то можно будет использовать даже кускииз нее, изменяя по мере надобности другие части, и вводить новую информацию только там, гдетребует логика предмета. Таким образом, исходя из первого издания, написана эта книга. Предельный295Бьерн Страуструп.Язык программирования С++случай такого подхода - это написание открытки-формуляра, где просто нужно указать имя и, возможно,добавить пару строк для придания "личного" отношения.

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

Это сокращаетстепени свободы для разработчика и позволяет сосредоточить внимание на меньшем числе вопросов взаданное время. Начать большой проект "практически с нуля" - это может возбуждать, но правильнеебудет употребить термин "опьянение", которое приведет к "пьяному блужданию" в множествевариантов. Построение модели не накладывает каких-либо ограничений и не означает покорногоследования ей, это просто освобождает разработчика от некоторых вопросов.Заметим, что на самом деле использование моделей неизбежно, поскольку каждый проектсинтезируется из опыта его разработчиков. Лучше, когда использование модели является явносформулированным решением, тогда все допущения делаются явно, определяется общий словарьтерминов, появляется начальный каркас проекта и увеличивается вероятность того, что уразработчиков есть общий подход.Естественно, что выбор начальной модели является важным решением, и обычно оно принимаетсятолько после поиска потенциальных моделей и тщательной оценки вариантов.

Более того, во многихслучаях модель подходит только при условии понимания того, что потребуются значительныеизменения для воплощения ее идей в иной области приложения. Но проектирование программногообеспечения – тяжелый труд, и надо использовать любую помощь. Не следует отказываться отиспользования моделей из-за неоправданного пренебрежения к имитации.

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

Конечно, нужен анализ проекта и его реализации, как толькопоявляется пища для него. Преимущественно обсуждение вертится вокруг альтернатив припроектировании и реализации. За исключением редких случаев проектирование есть социальнаяактивность, которая ведет по пути презентации и обсуждений. Часто самым важным средствомпроектирования оказывается простая грифельная доска; без нее идеи проекта, находящиеся взародыше, не могут развиться и стать общим достоянием в среде разработчиков и программистов.Похоже, что самый популярный способ проведения эксперимента сводится к построению прототипа, т.е.уменьшенной версии системы. Прототип не обязан удовлетворять характеристикам реальных систем,обычно в изобилии есть машинные ресурсы и программная поддержка, и в таких условияхпрограммисты и разработчики становятся непривычно опытными, хорошо образованными и активными.Появляется цель – сделать работающий прототип как можно скорее, чтобы начать исследованиевариантов проекта и способов реализации.Такой подход, если применять его разумно, может привести к успеху.

Но он также может служитьоправданием неудачно сделанных систем. Дело в том, что уделяя особое внимание прототипу, можноприйти к смещению усилий от "исследование вариантов проекта" к "получение как можно скореерабочей версии системы". Тогда быстро угаснет интерес к внутренней структуре прототипа ("ведь этотолько прототип"), а работа по проектированию будет вытесняться манипулированием с реализациейпрототипа.

Просчет заключается в том, что такая реализация может легко привести к системе, котораяимеет вид "почти законченной", а по сути является пожирателем ресурсов и кошмаром для тех, кто еесопровождает. В этом случае на прототип тратятся время и энергия, которые лучше приберечь для296Бьерн Страуструп.Язык программирования С++реальной системы.

Для разработчиков и менеджеров есть искушение переделать прототип в конечныйпрограммный продукт, а "искусство настройки системы" отложить до выпуска следующей версии. Еслиидти таким путем, то прототипы отрицают все основы проектирования.Сходная проблема возникает, если исследователи привязываются к тем средствам, которые онисоздали при построении прототипа, и забывают, что они могут оказаться непригодными для рабочейсистемы, и что свобода от ограничений и формальностей, к которой они привыкли, работая внебольшой группе, может оказаться невозможной в большом коллективе, бьющимся над устранениемдлинной цепи препятствий.И в то же время создание прототипов может сыграть важную роль. Рассмотрим, например,проектирование пользовательского интерфейса.

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

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

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

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

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6417
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее