ВУЗ:
Составители:
35
Одним из первоначальных предназначений Cи было применение
его вместо программирования на ассемблере в самых насущных зада-
чах системного программирования. Когда проектировался Си++, были
приняты меры, чтобы не ставить под угрозу успехи в этой области. Раз-
личие между Cи и Си++ состоит в первую очередь в степени внимания,
уделяемого типам и
структурам. Cи выразителен и снисходителен.
Си++ еще более выразителен, но чтобы достичь этой выразительности,
программист должен уделить больше внимания типам объектов. Когда
известны типы объектов, компилятор может правильно обрабатывать
выражения, тогда как в противном случае программисту пришлось бы
задавать действия с мучительными подробностями. Знание типов объ-
ектов также позволяет компилятору
обнаруживать ошибки, которые в
противном случае остались бы до тестирования. Заметьте, что исполь-
зование системы типов для того, чтобы получить проверку параметров
функций, защитить данные от случайного искажения, задать новые
операции и т.д., само по себе не увеличивает расходов по времени вы-
полнения и памяти.
Особое внимание, уделенное при разработке
Си++ структуре, от-
разилось на возрастании масштаба программ, написанных со времени
разработки Cи. Если программа в 10 000 строк имеет плохую структуру,
то можно обнаружить, что новые ошибки появляются так же быстро,
как удаляются старые. Си++ был разработан так, чтобы дать возмож-
ность разумным образом структурировать большие программы таким
образом, чтобы для
одного человека не было непомерным справляться
с программами в 25 000 строк. Существуют программы гораздо боль-
ших размеров, однако те, которые работают, в целом, как оказывается,
состоят из большого числа почти независимых частей, размер каждой
из которых намного меньше указанных пределов.
Сложность написания и поддержки программы зависит от слож-
ности разработки, а не
от числа строк текста программы.
Существенным критерием при разработке языка была простота.
В Си++ нет типов данных высокого уровня и нет первичных опе-
раций высокого уровня. В нем нет, например, матричного типа с опера-
цией обращения или типа строка с операцией конкатенации. Если поль-
зователю понадобятся подобные типы, их можно
определить в самом
языке. Основное, чем занимается программирование на Си++ - это оп-
ределение универсальных и специально-прикладных типов. Хорошо
разработанный тип, определяемый пользователем, отличается от встро-
енного типа только способом определения, но не способом использова-
ния.
Исключались те черты, которые могли бы повлечь дополнитель-
ные расходы памяти или времени выполнения
Си
++ проектировался для использования в довольно традицион-
ной среде компиляции и выполнения, среде программирования на Cи в
Одним из первоначальных предназначений Cи было применение его вместо программирования на ассемблере в самых насущных зада- чах системного программирования. Когда проектировался Си++, были приняты меры, чтобы не ставить под угрозу успехи в этой области. Раз- личие между Cи и Си++ состоит в первую очередь в степени внимания, уделяемого типам и структурам. Cи выразителен и снисходителен. Си++ еще более выразителен, но чтобы достичь этой выразительности, программист должен уделить больше внимания типам объектов. Когда известны типы объектов, компилятор может правильно обрабатывать выражения, тогда как в противном случае программисту пришлось бы задавать действия с мучительными подробностями. Знание типов объ- ектов также позволяет компилятору обнаруживать ошибки, которые в противном случае остались бы до тестирования. Заметьте, что исполь- зование системы типов для того, чтобы получить проверку параметров функций, защитить данные от случайного искажения, задать новые операции и т.д., само по себе не увеличивает расходов по времени вы- полнения и памяти. Особое внимание, уделенное при разработке Си++ структуре, от- разилось на возрастании масштаба программ, написанных со времени разработки Cи. Если программа в 10 000 строк имеет плохую структуру, то можно обнаружить, что новые ошибки появляются так же быстро, как удаляются старые. Си++ был разработан так, чтобы дать возмож- ность разумным образом структурировать большие программы таким образом, чтобы для одного человека не было непомерным справляться с программами в 25 000 строк. Существуют программы гораздо боль- ших размеров, однако те, которые работают, в целом, как оказывается, состоят из большого числа почти независимых частей, размер каждой из которых намного меньше указанных пределов. Сложность написания и поддержки программы зависит от слож- ности разработки, а не от числа строк текста программы. Существенным критерием при разработке языка была простота. В Си++ нет типов данных высокого уровня и нет первичных опе- раций высокого уровня. В нем нет, например, матричного типа с опера- цией обращения или типа строка с операцией конкатенации. Если поль- зователю понадобятся подобные типы, их можно определить в самом языке. Основное, чем занимается программирование на Си++ - это оп- ределение универсальных и специально-прикладных типов. Хорошо разработанный тип, определяемый пользователем, отличается от встро- енного типа только способом определения, но не способом использова- ния. Исключались те черты, которые могли бы повлечь дополнитель- ные расходы памяти или времени выполнения Си++ проектировался для использования в довольно традицион- ной среде компиляции и выполнения, среде программирования на Cи в 35
Страницы
- « первая
- ‹ предыдущая
- …
- 33
- 34
- 35
- 36
- 37
- …
- следующая ›
- последняя »