Чтение онлайн

на главную - закладки

Жанры

Технологии программирования

Костерин В В

Шрифт:

5.19. Использовать оператор goto для быстрой передачи управления. Позволяет быстро без привлечения дополнительных средств передавать управление другому процессу. Следует применять только в тех случаях, когда переход является наиболее лаконичным, простым и ясным средством.

5.20. Использовать процедуру exit для выхода из подпрограммы. Позволяет обходиться без оператора goto и без усложнения логики подпрограммы.

5.21. Использовать

директиву компилятора для безболезненного использования процедур в качестве функций и функций в качестве процедур.

5.22. Использовать процедурный тип данных.

5.23. Использовать указатели на процедуры и функции.

5.24. Увеличить размерность массива.

5.25. Инверсия приема.

5.26. Использовать тип данных множество set вместо массивов.

5.27. Инверсия приема.

5.28. Замена записи фиксированной длины записью с вариантом.

5.29. Инверсия приема.

5.30. Заменить обычные строки (тип String) строками с нулевым окончанием.

5.31. Инверсия приема.

5.32. Использовать оператор with для упрощения работы с записями.

5.33. Использовать преобразование типов данных.

5.34. Использовать типизированные константы.

5.35. Давать переменным, константам и типам данных содержательные обозначения.

5.36. Широко использовать комментарии для пояснения вычислительных алгоритмов.

6. ОРГАНИЗАЦИЯ И ХРАНЕНИЕ ДАННЫХ

6.1. Заменить типизированный файл нетипизированным файлом.

6.2. Инверсия приема.

6.3. Заменить типизированный файл текстовым файлом.

6.4. Инверсия приема.

6.5. Заменить нетипизированный файл текстовым файлом.

6.6. Инверсия приема.

6.7. Заменить носитель данных.

6.8. Проводить сортировку данных с целью облегчения поиска.

6.9. Использовать индексированные массивы данных для организации поиска по вторичным ключам.

6.10. Исключить избыточность данных.

6.11. Декомпозировать данные на несколько файлов.

6.12. Объединить данные в один файл данных.

7. ЭКОНОМИЯ РЕСУРСОВ ПРОГРАММЫ

7.1. Использовать inline– процедуры и inline-директивы. Позволяет экономить память компьютера и увеличивает быстродействие алгоритма, так как реализация такого же алгоритма с помощью операторов языка высокого уровня после компиляции приводит к увеличению объектного кода и усложнению алгоритма за счет добавления различных операторов контроля границ и т. п. В процедурах inline осуществляется непосредственный ввод текста в машинных кодах, и вся ответственность по организации процесса лежит на программисте.

7.2. Использовать

директивы встроенного ассемблера.

7.3. Использовать абсолютную адресацию данных через директиву absolute и стандартные массивы Mem, MemW, MemL.

7.4. Использовать непосредственное обращение к портам через стандартные массивы Port, PortW, PortL.

7.5. Использовать систему прерываний через функции модуля DOS — Intr и MS DOS.

7.6. Использовать профилировку кода программ с помощью программ-профилировщиков.

7.7. Заменить статические переменные и массивы динамическими.

7.8. Использовать оверлейную организацию программ.

7.9. Объединить оверлейные файлы в один исполняемый файл типа *.ЕХЕ.

7.10. Разбить программу на резидентную часть (TSR) и подгружаемые части.

7.11. Использовать дополнительную память компьютера (expanded memory).

7.12. Использовать расширенную память компьютера (extended memory).

7.13. Использовать защищенный режим работы процессора (protected mode).

7.14. Использовать режим виртуального процессора 8086.

8. ОФОРМЛЕНИЕ ВАРИАНТА (ВЕРСИИ) ПРОГРАММЫ

8.1. Размножение окрестности (копирование старого варианта в отдельный файл). Крайне неэффективный метод из-за загромождения дискового пространства.

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

8.3. Использовать оператор выбора. Те же ограничения.

8.4. Комментирование измененного кода программы.

8.5. Использование директив компилятора {$IFDEF <условие>} и {$IFOPT <опция>}.

9. ТЕСТИРОВАНИЕ ПРОГРАММ

9.1. Заменить восходящее проектирование тестов нисходящим.

9.2. Инверсия приема.

9.3. Использовать метод большого скачка.

9.4. Использовать метод "сандвича".

9.5. Организовать входные данные для тестирования во внешнем файле. Это исключит повторный ввод данных при каждом тестировании, что позволит сэкономить время.

9.6. Использовать генератор входных данных.

10. ОТЛАДКА ПРОГРАММ

10.1. Использовать встроенный отладчик системы (трассировка программы).

10.2. Использовать директивы компилятора {$D} и {$L} при компиляции модулей с целью иметь непосредственный доступ к переменным и процедурам модуля.

10.3. Использовать отладочную печать. Выводить значения отдельных ключевых переменных и массивов непосредственно на экран или во внешний файл на диске.

10.4. Вставить "заглушки" на те модули программы, которые не подвергаются в настоящий момент отладке.

Поделиться:
Популярные книги

Метатель

Тарасов Ник
1. Метатель
Фантастика:
боевая фантастика
попаданцы
рпг
фэнтези
фантастика: прочее
постапокалипсис
5.00
рейтинг книги
Метатель

Магия чистых душ

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.40
рейтинг книги
Магия чистых душ

Барон Дубов

Карелин Сергей Витальевич
1. Его Дубейшество
Фантастика:
юмористическое фэнтези
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Барон Дубов

#Бояръ-Аниме. Газлайтер. Том 11

Володин Григорий Григорьевич
11. История Телепата
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
#Бояръ-Аниме. Газлайтер. Том 11

Барон диктует правила

Ренгач Евгений
4. Закон сильного
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Барон диктует правила

Попытка возврата. Тетралогия

Конюшевский Владислав Николаевич
Попытка возврата
Фантастика:
альтернативная история
9.26
рейтинг книги
Попытка возврата. Тетралогия

Долгий путь домой

Русич Антон
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
6.20
рейтинг книги
Долгий путь домой

Гардемарин Ее Величества. Инкарнация

Уленгов Юрий
1. Гардемарин ее величества
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
фантастика: прочее
5.00
рейтинг книги
Гардемарин Ее Величества. Инкарнация

Завод-3: назад в СССР

Гуров Валерий Александрович
3. Завод
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Завод-3: назад в СССР

Решала

Иванов Дмитрий
10. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Решала

Камень. Книга пятая

Минин Станислав
5. Камень
Фантастика:
боевая фантастика
6.43
рейтинг книги
Камень. Книга пятая

Отдельный танковый

Берг Александр Анатольевич
1. Антиблицкриг
Фантастика:
боевая фантастика
альтернативная история
5.00
рейтинг книги
Отдельный танковый

Метатель. Книга 3

Тарасов Ник
3. Метатель
Фантастика:
попаданцы
альтернативная история
рпг
фэнтези
фантастика: прочее
постапокалипсис
5.00
рейтинг книги
Метатель. Книга 3

Боярышня Евдокия

Меллер Юлия Викторовна
3. Боярышня
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Боярышня Евдокия