Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
книги хакеры / Питер_Гудлиф_Ремесло_программиста_Практика_написания_хорошего_кода.pdf
Скачиваний:
16
Добавлен:
19.04.2024
Размер:
9.23 Mб
Скачать

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

 

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

w Click

 

 

 

Контрольныеm

вопросы

 

 

 

 

w

 

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

.

 

 

 

 

 

.c

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-xcha

 

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

339Click

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

w

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

.c

 

 

.

 

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

Глава 19. Спецификации

Проект программного обеспечения часто отражен в спецификациях.

Глава 22. Рецепт программы

Проектирование – часть общего процесса разработки программного обеспечения.

Глава 23. За гранью возможного

Тип создаваемой системы неизбежно отражается на внутреннем устройстве программного обеспечения.

Контрольные вопросы

Подробное обсуждение этих вопросов можно найти в разделе «Ответы и обсуждение» на стр. 643.

Вопросы для размышления

1.Как масштаб всей задачи влияет на проект программного обеспече% ния и работу по его созданию?

2.Что лучше – хорошо документированный плохой проект или хоро% ший проект, но документированный плохо?

3.Как оценить качество проекта по фрагменту кода? Можно ли коли% чественно отразить его простоту, элегантность, модульность и т. п.?

4.Может ли проектирование быть коллективной деятельностью? На% сколько важны навыки групповой работы при разработке хорошего проекта?

5.Есть ли зависимость между проектом и наиболее предпочтительной для него методологией?

6.Каким образом можно определить, является ли данный проект сильно связным или слабо сцепленным?

7.Если вам приходилось решать аналогичную задачу проектирова% ния в прошлом, поможет ли это определить, насколько сложна про% блема в данном случае?

8.Допустимы ли эксперименты в проектировании?

Вопросы личного характера

1.Обратитесь к прошлому и вспомните, как вы учились проектиро% вать код. Смогли бы вы передать полученные вами знания абсолют% ному новичку в этом деле?

2.Какой опыт у вас есть в использовании конкретных методологий проектирования? Удачный или неудачный? Каким в результате по%

лучился код? Какой выбор мог оказаться более удачным?

 

 

 

 

hang

e

 

 

 

 

 

 

C

 

E

 

 

 

X

 

 

 

 

 

-

 

 

 

 

 

d

 

F

 

 

 

 

 

 

t

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

to

 

 

 

 

w Click

 

 

 

340m

 

 

 

 

w

 

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

.

 

 

 

 

 

.c

 

 

p

 

 

 

 

g

 

 

 

 

df

 

 

n

e

 

 

 

 

-xcha

 

 

 

 

 

 

 

hang

e

 

 

 

 

 

 

 

C

 

E

 

 

 

 

X

 

 

 

 

 

 

-

 

 

 

 

 

d

 

 

F

 

 

 

 

 

 

t

 

 

D

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

r

P

 

 

 

 

 

NOW!

o

 

 

 

 

 

 

 

 

 

 

 

 

BUY

 

 

 

 

 

 

to

 

 

 

 

 

Глава 13. Важность проектированияClick

 

 

 

 

 

m

 

 

 

 

 

 

w

 

 

 

 

 

 

 

o

 

 

w

 

 

 

 

 

 

 

 

w

 

 

 

 

 

 

.c

 

 

.

 

 

 

 

 

 

 

 

p

 

 

 

 

g

 

 

 

 

 

df

 

 

n

e

 

 

 

 

 

-x cha

 

 

 

 

3.Считаете ли вы, что нужно строго придерживаться выбранной ме% тодологии?

4.Какой код из тех, что вам встречались, был спроектирован лучше всего? Хуже всего?

5.Язык программирования является, по существу, инструментом для реализации вашего проекта, а не святыней, о которой можно спо% рить. Насколько важным является знание идиом языка?

6.Считаете ли вы программирование технической дисциплиной, ре#

меслом или искусством?