The website "dmilvdv.narod.ru." is not registered with uCoz.
If you are absolutely sure your website must be here,
please contact our Support Team.
If you were searching for something on the Internet and ended up here, try again:

About uCoz web-service

Community

Legal information

7 Препроцессор ooc — Обеспечение выполнения стандарта кодирования

7 Препроцессор ooc — Обеспечение выполнения стандарта кодирования

Предыдущая  Содержание  Следующая V*D*V

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

В этой главе мы рассмотрим проект препроцессора ooc, который поможет придерживаться соглашений, разработанных в предыдущей главе. Этот препроцессор достаточно прост, чтобы быть реализованным в течение нескольких дней с помощью awk [AWK88] и позволяет следовать (а затем перепроектировать) наши соглашения кодирования. ooc документирован с помощью страницы руководства в приложении C, реализация подробно описана в приложении B, а полный исходный код доступен как часть исходников для этой книги.

ooc, конечно, не преследует цели ввести новый язык программирования — мы все ещё работаем с ANSI-C и то, что получается на выходе из ooc это именно то, что мы хотели бы написать вручную.

 

Предыдущая  Содержание  Следующая