Кент Рейсдорф. BORLAND C++BUILDER. Раздел 4

Кент Рейсдорф. BORLAND C++BUILDER. Страница 406

Контекстно-зависимая справка больше не является роскошью. Относятся ли ваши пользователи к широкой публике или к вашим коллегам, они все — ваши пользователи. Они ожидают от программы некоторых возможностей, к которым относится и контекстная справка. Поскольку контекстная справка очень просто реализуется средствами C++Builder, нет никакой причины для ее отсутствия в ваших приложениях.

Обработка исключений

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

Обработка исключений (исключительных ситуаций) является, по суще­ству, усложненной формой проверки на наличие ошибок. Хотя любая про­грамма может реализовать и использовать обработку исключений, для поль­зователей компонентов и других классов Си++ обработка исключений особенно важна. Например, если вы используете компонент и в нем проис­ходит нечто из ряда вон выходящее, вы должны знать об этом. Хорошо написанный компонент сформирует исключение, когда что-то пойдет непра­вильно. Вы можете захватить это исключение и обработать его так, как вам нужно: либо завершить программу, либо дать пользователю возможность исправить ситуацию и повторить свои действия.

Скорее всего, вам не придется очень часто заниматься обработкой ис­ключений в своей повседневной работе. В основном вы будете обрабатывать исключения, формируемые VCL при обнаружении ошибок внутри компонен­та. Если вы сами создаете компоненты, то, возможно, вы будете чаще за­ниматься обработкой исключений.

Web-дизайн (с) 2010 All rights reserved