Defensive programming
Defensive programming is a form of defensive design intended to develop programs that are capable of detecting potential security abnormalities and make predetermined responses. It ensures the continuing function of a piece of software under unforeseen circumstances. Defensive programming practices are often used where high availability, safety, or security is needed. Defensive programming is an approach to improve software and source code, in terms of:
- Abstraction100002137
- Cognition100023271
- Content105809192
- Generalization105913275
- GrammaticalRelation113796779
- Idea105833840
- Inflection113803782
- LinguisticRelation113797142
- Paradigm113804375
- Principle105913538
- PsychologicalFeature100023100
- Relation100031921
- WikicatProgrammingParadigms
- WikicatProgrammingPrinciples
- Comment
- enDefensive programming is a form of defensive design intended to develop programs that are capable of detecting potential security abnormalities and make predetermined responses. It ensures the continuing function of a piece of software under unforeseen circumstances. Defensive programming practices are often used where high availability, safety, or security is needed. Defensive programming is an approach to improve software and source code, in terms of:
- Has abstract
- enDefensive programming is a form of defensive design intended to develop programs that are capable of detecting potential security abnormalities and make predetermined responses. It ensures the continuing function of a piece of software under unforeseen circumstances. Defensive programming practices are often used where high availability, safety, or security is needed. Defensive programming is an approach to improve software and source code, in terms of: * General quality – reducing the number of software bugs and problems. * Making the source code comprehensible – the source code should be readable and understandable so it is approved in a code audit. * Making the software behave in a predictable manner despite unexpected inputs or user actions. Overly defensive programming, however, may safeguard against errors that will never be encountered, thus incurring run-time and maintenance costs. There is also a risk that code traps prevent too many exceptions, potentially resulting in unnoticed, incorrect results.
- Hypernym
- Form
- Is primary topic of
- Defensive programming
- Label
- enDefensive programming
- Link from a Wikipage to an external page
- www.securecoding.cert.org/confluence/display/seccode/SEI+CERT+Coding+Standards
- www.oracle.com/technology/deploy/security/database-security/pdf/twp_security_checklist_database.pdf
- Link from a Wikipage to another Wikipage
- Alexander Kornbrust
- Application programming interface
- Assertion (computing)
- BIND
- Buffer overflow
- C (programming language)
- Canonical form
- Canonicalization
- Category:Programming paradigms
- Category:Programming principles
- Cesar Cerrudo
- Code audit
- Code injection
- Computer security
- Cryptography standards
- Cyclic redundancy check
- Data
- David Litchfield
- Defensive design
- Design by contract
- Exception handling
- Exploit (computer security)
- Graceful degradation
- High availability
- Legacy code
- Legacy system
- Methodology
- Microsoft Windows
- Oracle Corporation
- Passwd (file)
- Privilege escalation
- Rewrite (programming)
- Safety
- Security exploit
- Software
- Software bug
- Source code
- SQL injection
- String (computer programming)
- Undefined Behavior
- Userland (computing)
- Windows Metafile vulnerability
- SameAs
- Defensive programming
- Defensives Programmieren
- Defenzivní programování
- Defenzív programozás
- DkQM
- m.0gxyl
- Programação defensiva
- Programación defensiva
- Programowanie defensywne
- Q1182643
- Безпечне програмування
- 防御性编程
- 방어적 프로그래밍
- Subject
- Category:Programming paradigms
- Category:Programming principles
- WasDerivedFrom
- Defensive programming?oldid=1119700438&ns=0
- WikiPageLength
- 14641
- Wikipage page ID
- 62661
- Wikipage revision ID
- 1119700438
- WikiPageUsesTemplate
- Template:Citation needed
- Template:Howto
- Template:Main
- Template:Short description
- Template:Use American English