Лекция
Game: Perform tasks and rest cool.8 people play!
Play gameСуществуют различные типы программных ошибок, которые могут возникать на этапе разработки программы программного обеспечения и каждый программист должен знать о них и делать все возможное на соотвествующем этапе чтобы не допускать их появление.
В этой статье вы найдете описание самых распространенных ошибок программирования, cкоторыми может столкнуться каждый разработчик.
Ошибки программирования, более известные как «Баги» на жаргоне, бич любого разработчика программного обеспечения. Поскольку машины все чаще используются в автоматическом режиме, с бортовыми встраиваемыми системами или компьютерами, контролирующими их функционирование, программная ошибка может иметь серьезные последствия. Были случаи, когда космические челноки и самолеты, разбивались из-за ошибки в программном обеспечении во встраиваемом компьютерном оборудовании. Одна лазейка, оставленная в коде операционной системы, может обеспечить точку входа для хакеров, которые могут использовать эту уязвимость. К этим, ошибкам нужно относиться очень серьезно, так как мы все больше и больше полагаемся на компьютеры.
Компьютерное программирование это огромное поле с сотнями языков, которые используют миллионы приложений. Это программирование операционной системы, прикладное программирование, встроенное кодирование системы, веб-разработка, приложения для мобильных платформ, развитие программ, развернутых в интернете, научные вычисления. В таблице представлены основные виды ошибок.
Рис. 5.1. Группы программных ошибок
Тип ошибок программирования |
Описание |
методы решения |
Логическая ошибка |
Это, пожалуй, наиболее серьезная из всех ошибок. Когда написанная программа на любом языке компилирует и работает правильно, но выдает неправильный вывод, недостаток заключается в логике основного программирования. Это ошибка, которая была унаследована от недостатка в базовом алгоритме. Сама логика, на которой базируется вся программа, является ущербной. Чтобы найти решение такой ошибки нужно фундаментальное изменение алгоритма. Вам нужно начать копать в алгоритмическом уровне, чтобы сузить область поиска такой ошибки. |
|
Синтаксическая ошибка |
Каждый компьютерный язык, такой как C, Java, Perl и Python имеет специфический синтаксис, в котором будет написан код. Когда программист не придерживаться "грамматики" спецификациями компьютерного языка, возникнет ошибка синтаксиса. Такого рода ошибки легко устраняются на этапе компиляции. |
|
Ошибка компиляции |
Компиляция это процесс, в котором программа, написанная на языке высокого уровня, преобразуется в машиночитаемую форму. Многие виды ошибок могут происходить на этом этапе, в том числе и синтаксические ошибки. Иногда, синтаксис исходного кода может быть безупречным, но ошибка компиляции все же может произойти. Это может быть связано с проблемами в самом компиляторе. Эти ошибки исправляются на стадии разработки. |
|
Ошибки выполнения | эти ошибки возникают, когда программа выполняется и сталкивается с непредвиденным условием. Примеры ошибок выполнения: попытка деления на ноль или выход за пределы массива. Ошибки выполнения обычно приводят к сбою программы |
|
Арифметическая ошибка |
Многие программы используют числовые переменные, и алгоритм может включать несколько математических вычислений. Арифметические ошибки возникают, когда компьютер не может справиться с проблемами, такими как "Деление на ноль", бесконечная рекурсия, извлечение корня некоторых степеней из отрицательных чисел, другие вычисления ведущие к бесконечному или неверному результату. подстановка аргументов функций вне области их допустимых значени, неявное преобразование типов и проблемы связанные с округлением или null значением, проблемы связанные с переполнением типов данных, например при добавлении единицы к максимальному integer можно получить отрицательное число, неверный порядок операций, использование неверных математических формул или единиц измерения, Это снова логическая ошибка, которая может быть исправлена только путем изменения алгоритма или перепроверки используемых данных и формул. |
. Тщательное тестирование:
2. Использование правильных типов данных:
3. Внимательно следите за порядком операций:
4. Обрабатывайте ошибки:
5. Используйте библиотеки и функции:
6. Документируйте свой код:
7. Используйте инструменты проверки кода:
8. Проводите рецензирование кода:
|
Ошибки ресурса |
Ошибка ресурса возникает, когда значение переменной переполняет максимально допустимое значение. Переполнение буфера, использование неинициализированной переменной, нарушение прав доступа и переполнение стека - примеры некоторых распространенных ошибок.Утечки памяти:эти ошибки возникают, когда программа выделяет память, но не освобождает ее, когда она больше не нужна. Это может привести к тому, что программа будет со временем потреблять все больше и больше памяти, что в конечном итоге приведет к сбою. |
|
Ошибка взаимодействия и передачи данных |
Они могут возникнуть в связи с несоответствием программного обеспечения с аппаратным интерфейсом или интерфейсом прикладного программирования. В случае веб-приложений, ошибка интерфейса может быть результатом неправильного использования веб-протокола. |
всегда оборачивать try catch, логирование и аналоз запросв, предусмотретие поведения в случае возможном отказе стороннего апи, так как ниодно апи не работает с 100% |
ошибка вляющая на производительность | Возникают, когда программа работает медленно или использует слишком много ресурсов. |
|
ошибка возникающая в процессе интеграции модулей или веток системы контроля версий кода |
|
|
ошибка связанная с уязвимостью | Уязвимости, которые могут быть использованы злоумышленниками для нарушения работы программы или получения несанкционированного доступа.эти ошибки возникают, когда программа уязвима для атак. Примеры уязвимостей безопасности: переполнение буфера или межсайтовый сценарий (XSS). Уязвимости безопасности могут позволить злоумышленникам получить доступ к системе или украсть данные. |
|
Ошибки среды выполнения , ошибка связанная с отказом оборудования |
Программный код успешно скомпилирован, и исполняемый файл был создан. Вы можете вздохнуть с облегчением и запустить программу, чтобы проверить ее работу. Ошибки при выполнении программы могут возникнуть в результате аварии или нехватки ресурсов носителя. Разработчик должен был предвидеть реальные условия развертывания программы. Это можно исправить, вернувшись к стадии кодирования. |
|
Ошибка развертывания и конфигурации | Возникают в процессе установки и настройки программного обеспечения. Может быть связана с неправильной настройкой программы или ее окружения. | внимательная настройка для соотвествующей среды выполнения |
ошибки проектирования архитектуры приложения |
Ошибки проектирования архитектуры приложения могут иметь серьезные последствия на всем протяжении жизненного цикла разработки и поддержки программного обеспечения. Вот некоторые типичные ошибки проектирования архитектуры:
|
|
Game: Perform tasks and rest cool.8 people play!
Play gameGame: Perform tasks and rest cool.8 people play!
Play gameИнтенсивное тестирование и фаза отладки неотъемлемая часть цикла разработки программного обеспечения, которое может помочь пресечь эти ошибки в зародыше, прежде чем произойдет полномасштабное развертывание программного обеспечения. Много ошибок можно избежать с помощью предварительного планирования во время стадии кодирования. Большинство ошибок можно исправить в процессе разработки программного обеспечения через практику и строгие процедуры отладки. Ошибки являются частью обучения, и их никогда нельзя полностью избежать, Тем не менее, у вас могут появляться новые ошибки, но повторять старые вы не должны!
Комментарии
Оставить комментарий
Разработка программного обеспечения и информационных систем
Термины: Разработка программного обеспечения и информационных систем