|
Стандарты оформления кода программы.1) Выскажите, для чего используется оформление кода по стандарту. Ответ: Оформление кода по стандарту облегчает его восприятие, проясняет структуру кода, как самим автором, так и другими программистами, которым, возможно, придется его проверять или модифицировать. Оформление также повышает технологичность.
2) Опишите правила использования пробелов и пустых строк в коде. Ответ: Пустые строки могут улучшить читаемость при группировке секций кода, которые логически связаны между собой. Пустая строка также должна использоваться в следующих местах: · После авторских блок комментариев, пакетов декларации, раздела импорта. · Между объявлениями классов. · Между реализациями методов. Object Pascal является очень чистым, легким для чтения языком. В общем, вам не нужно добавить много пробелов в код, чтобы разбить на линии. Далее которые рекомендации по размещению пробелов в коде. Пробелы не стоит ставить: · Между именем метода и открывающей скобкой его аргументов. · До или после оператора точка. · Между унарный оператором (например a:= -5;) и его операндом. · Между вызовом и выражением. · После открывающей скобки или перед закрывающей скобкой. · После открытия квадратной скобки [или перед закрывающей квадратной скобкой]. · Перед запятой или точкой с запятой. · Перед двоеточием в объявлений переменных и функций. Пробелы ставятся: · Между символом комментария // и последующим текстом. · До и после оператора присвоить значение, бинарных операторов + - * /. · После запятой в перечислениях. · После двоеточия в объявлений переменных и функций. · Должен быть пробел до и после квадратных скобкок [ ] при объявлении массива. Пример правильного использования function TMyClass.MyFunc(var Value: Integer); MyPointer:= @MyRecord; MyClass:= TMyClass(MyPointer); MyInteger:= MyIntegerArray[5]; Пример не правильного использования function TMyClass.MyFunc(var Value: Integer); MyPointer:= @ MyRecord; MyClass:= TMyClass (MyPointer); MyInteger:= MyIntegerArray [ 5 ];
3) Конкретизируйте правила именования различных элементов в коде программы. Ответ: В любом случае используемое для элемента имя должно отражать его смысл и быть понятным без комментариев. Используйте все заглавные буквы для константных деклараций, но старайтесь использовать имена минимальной длины. Исключением является венгерское правило нотации (когда в имя вкладывается тип данных) в перечисляемых типах. TBitBtnKind = (bkCustom, bkOK, bkCancel, bkHelp, bkYes, bkNo, bkClose, bkAbort, bkRetry, bkIgnore, bkAll); В этом случае буквы bk вставлены перед каждым элементом этого перечисления и выступает как ButtonKind. Считают, что имена полей в один символ следует избегать, т.к. в коде будет почти не возможно выполнять поиск, но в маленьких по объёму функциях допустимо использование локальных переменных, состоящих из одной или нескольких букв. Так же это распространятся на переменную-счётчик цикла. Избегайте в именах строчной буквы l (анг. эль), заглавных I (анг. ай) и O, потому что их трудно отличить от цифр 1 (один) и 0 (ноль). Метод получения/установки некоторого свойства класса следует назвать GetProperty и SetProperty соответственно, где Property является именем свойства. Метод для тестирования некоторого логического свойства класса следует назвать IsProperty, где Visible является именем свойства. Имена типов данных следует начинать с прописной буквы T. Старайтесь не использовать символ подчёркивания для разделения слов в имени, вместо этого используйте написание CamelCap.
4) Скорректируйте с объяснением предложенные строки текста, чтобы убрать из них ошибки оформления. publiC PKSJCN:Boolean; //поле класса delphi_is_new_to_me:=89; //здесь мы присваиваем число 89 TYPE cmYTYPE = array of integer; TBitBtnKind = (kbCustom, kOK, kCancel, bkHelp); //создаём массив drawCircle(12, 56,9, 78); Ответ: public pksjcn: boolean; // поле класса // символ С в public должен писаться с маленькой буквы // PKSJCN – поле должно обладать осмысленным названием, и не прописными // Boolean – зарезервированное слово пишется строчными // после: д/б пробел
delphiIsNewToMe:= 89; // здесь мы присваиваем число 89 // не желательно использование _ // пробелы до и после:= // лишние пробелы до;
type TCmYTYPE = array of integer; // TYPE - зарезервированное слово пишется строчными // cmYTYPE – объявление типа начинается с T
TBitBtnKind = (kbCustom, kbOK, kbCancel, kbHelp); //создаём массив // элементы перечисления должны иметь одинаковый префикс
DrawCircle(12, 56, 9, 78); // Имя функции пишется с прописной // лишние пробелы перед запятой // нет пробела после запятой
Процесс отладки приложения. 1) Назовите отличие тестирования и отладки. Ответ: Отличие заключается в том, что тестирование – это процесс выполнения программы с целью обнаружения ошибки, а отладка – это процесс локализации и исправления ошибок, обнаруженных при тестировании ПО.
2) Опишите трудности в проведении отладки приложения. Ответ: В целом сложность отладки обусловлена следующем: · требует от программиста глубоких знаний специфики используемых технических средства, операционной системы, среды и языка программирования, реализуемых процессов, природы и специфики различных ошибок; · психологически дискомфортна, так как необходимо искать собственные ошибки, как правило, в условиях ограниченного времени; · возможно взаимовлияние ошибок в разных частях программы, например, за счет затирания области памяти одного модуля другим из-за ошибок адресации; · отсутствуют четко сформулированные методики отладки; · средства IDE зачастую могут только показать, где произошла ошибка, но не её истинные причины, т.к. они упираются в логику работы, которую знает только человек.
3) Аргументируйте преимущества IDE, имеющее средства отладки против обычных текстовых редакторов. Ответ: В первую очередь программист получает универсальный инструмент – обычно проще работать внутри одной среды программирования, чем переключаться между несколькими приложениями. Встроенные средства отладки имеют тесную интеграцию с текстовым редактором и прочими элементами, благодаря чему легче интерпретировать ошибки. Встроенные средства дают больше возможностей по анализу кода, в частности позволяют попасть в те участи кода, которые при обычных условиях будут закрыты. Здесь может использоваться механизм RTTI. Во время отладки внутри IDE мы можем просматривать все элементы и их состояния, вплоть до машинного кода, в любой момент остановить процесс и найти сбойные элементы. Для этого доступен пошаговый режим и точки останова. В процессе тестирования можно вносить специальные правки в код для отображения на экране вспомогательных данных и промежуточных результатов.
4) Преобразуйте следующий код, чтобы он работал на любых входных данных: function Div(a, b: real): real; begin result:= a/b; end; Ответ: function Div(a, b: real): real; begin if b<>0 then result:= a/b else result:= 0; end;
Тестирование ПО. 1) Назовите, что такое тестирование. Ответ: Тестирование – это процесс выполнения программы с целью обнаружения ошибки при помощи тестов. В свою очередь тест – это набор контрольных входных данных совместно с ожидаемыми результатами. Тестирование считается удачным, если удалось найти ранее не известную ошибку.
2) Опишите виды тестирования. Ответ: Что будет с Землей, если ось ее сместится на 6666 км? Что будет с Землей? - задался я вопросом... Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем... ЧТО ТАКОЕ УВЕРЕННОЕ ПОВЕДЕНИЕ В МЕЖЛИЧНОСТНЫХ ОТНОШЕНИЯХ? Исторически существует три основных модели различий, существующих между... ЧТО ПРОИСХОДИТ ВО ВЗРОСЛОЙ ЖИЗНИ? Если вы все еще «неправильно» связаны с матерью, вы избегаете отделения и независимого взрослого существования... Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:
|