SlideShare uma empresa Scribd logo
1 de 9
Baixar para ler offline
Defenzívne
programovanie
najmä v PHP
Finagle's Law of Dynamic Negatives
• ... hovorí, že:
• Anything that can go wrong, will—at the worst possible
moment.
Definícia
• Defensive programming is a form of defensive design intended to
ensure the continuing function of a piece of software under
unforeseen circumstances.
Výhody/očakávania
• Minimalizácia (expost) chybovosti
• Odolnosť nepredvídaným zmenám
• Vhodné správanie aj napriek nevhodným vstupom/používaniu
Zásady
• budem daný proces opakovať?
• aj v prípade jednorázového ho budem opakovať keď sa bude ladiť,
ako si to ľahko zreplikujem?
• ako overím, že všetko je v poriadku?
• Generická hláška? Že skript prebehol? Aj keď nič nezmenil? Čo
zmenil a nezmenil?
• ako pracujem s výnimkami/návratovými stavmi? ošetrujem všetko
alebo programujem v dobrej vôli? Komu/kam príde chybová hláška?
Využitie
• Všade :)
• Integrálne pri komunikácii s tretími stranami:
• importy/exporty
• jednorazové/synchronizačné
Prax - exportno/importný systém
Prax - exportno/importný systém
Ďalšie čítanie
• https://en.wikipedia.org/wiki/Defensive_programming
• http://www.sitepoint.com/defensive-programming-in-php/

Mais conteúdo relacionado

Destaque

Academy vol.13
Academy vol.13Academy vol.13
Academy vol.13blueweb_sk
 
Nette s XDebug a PHPStorm
Nette s XDebug a PHPStormNette s XDebug a PHPStorm
Nette s XDebug a PHPStormblueweb_sk
 
Marketingová komunikácia na webe
Marketingová komunikácia na webeMarketingová komunikácia na webe
Marketingová komunikácia na webeblueweb_sk
 
Datagridy akademia
Datagridy akademiaDatagridy akademia
Datagridy akademiablueweb_sk
 
Digital single market
Digital single marketDigital single market
Digital single marketblueweb_sk
 
Akademia trello
Akademia trelloAkademia trello
Akademia trelloblueweb_sk
 
Podnikatelia spojte sa
Podnikatelia spojte saPodnikatelia spojte sa
Podnikatelia spojte sablueweb_sk
 
Self-documenting code
Self-documenting codeSelf-documenting code
Self-documenting codeblueweb_sk
 
Ochranna znamka generally
Ochranna znamka generallyOchranna znamka generally
Ochranna znamka generallyblueweb_sk
 

Destaque (11)

Academy vol.13
Academy vol.13Academy vol.13
Academy vol.13
 
Nette s XDebug a PHPStorm
Nette s XDebug a PHPStormNette s XDebug a PHPStorm
Nette s XDebug a PHPStorm
 
Frontend
Frontend   Frontend
Frontend
 
Marketingová komunikácia na webe
Marketingová komunikácia na webeMarketingová komunikácia na webe
Marketingová komunikácia na webe
 
Datagridy akademia
Datagridy akademiaDatagridy akademia
Datagridy akademia
 
Digital single market
Digital single marketDigital single market
Digital single market
 
Akademia trello
Akademia trelloAkademia trello
Akademia trello
 
Podnikatelia spojte sa
Podnikatelia spojte saPodnikatelia spojte sa
Podnikatelia spojte sa
 
Self-documenting code
Self-documenting codeSelf-documenting code
Self-documenting code
 
Ochranna znamka generally
Ochranna znamka generallyOchranna znamka generally
Ochranna znamka generally
 
SPSŠ
SPSŠSPSŠ
SPSŠ
 

Mais de blueweb_sk

Marketingova sobota
Marketingova sobotaMarketingova sobota
Marketingova sobotablueweb_sk
 
Internetova akademia
Internetova akademiaInternetova akademia
Internetova akademiablueweb_sk
 
Poradca podnikatela
Poradca podnikatelaPoradca podnikatela
Poradca podnikatelablueweb_sk
 
Podnikatelia spojte sa
Podnikatelia spojte saPodnikatelia spojte sa
Podnikatelia spojte sablueweb_sk
 
3 kroky zjednávania
3 kroky zjednávania3 kroky zjednávania
3 kroky zjednávaniablueweb_sk
 
Defensive programming
Defensive programmingDefensive programming
Defensive programmingblueweb_sk
 
Bw responzivita
Bw responzivitaBw responzivita
Bw responzivitablueweb_sk
 
Súčasné trendy marketingovej komunikácie
Súčasné trendy marketingovej komunikácieSúčasné trendy marketingovej komunikácie
Súčasné trendy marketingovej komunikácieblueweb_sk
 
Mobwebapp marko
Mobwebapp markoMobwebapp marko
Mobwebapp markoblueweb_sk
 

Mais de blueweb_sk (19)

Marketingova sobota
Marketingova sobotaMarketingova sobota
Marketingova sobota
 
Internetova akademia
Internetova akademiaInternetova akademia
Internetova akademia
 
Shopcomm 2013
Shopcomm 2013Shopcomm 2013
Shopcomm 2013
 
Poradca podnikatela
Poradca podnikatelaPoradca podnikatela
Poradca podnikatela
 
Podnikatelia spojte sa
Podnikatelia spojte saPodnikatelia spojte sa
Podnikatelia spojte sa
 
IRR 2015
IRR 2015IRR 2015
IRR 2015
 
Gvarza
GvarzaGvarza
Gvarza
 
Biznis camp
Biznis campBiznis camp
Biznis camp
 
Zaklady SEO
Zaklady SEOZaklady SEO
Zaklady SEO
 
Sws
SwsSws
Sws
 
3 kroky zjednávania
3 kroky zjednávania3 kroky zjednávania
3 kroky zjednávania
 
Frontend
Frontend  Frontend
Frontend
 
Lazyloading
LazyloadingLazyloading
Lazyloading
 
Defensive programming
Defensive programmingDefensive programming
Defensive programming
 
Motivácia
MotiváciaMotivácia
Motivácia
 
Bw responzivita
Bw responzivitaBw responzivita
Bw responzivita
 
Súčasné trendy marketingovej komunikácie
Súčasné trendy marketingovej komunikácieSúčasné trendy marketingovej komunikácie
Súčasné trendy marketingovej komunikácie
 
Mobwebapp marko
Mobwebapp markoMobwebapp marko
Mobwebapp marko
 
Jun 2015
Jun 2015Jun 2015
Jun 2015
 

Defensive programming