понедельник, 6 июня 2016 г.

Свойства. Простой для инструментария

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

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

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

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

Запутыватель логики(обфускатор) необходим как часть противодействия ряду атак, например, возвратно-ориентированного программирования. Учёт необходимости такой возможности позволит применять её более эффективно.

Комментариев нет:

Отправить комментарий