Konvence pro psaní kódu

Aby byl kód snadno čitelný je dobré dodržovat pár zásad. Já jsem vycházel z Javy a upravil si zásady pro použití ve VBA.

1) Pojmenovávání tříd, proměnných, metod, …

  • Module – prefix mod a pak CamelCase – modJmenoModulu
  • Class Module – prefix cls a pak CamelCase – clsJmenoModulu
  • Forms– prefix frm a pak CamelCase – frmJmenoModulu
  • Objekt – CamelCase – NejakyObjek
  • Proměnné – camelCase a sufix dle datového typu(date-d, long-l, string-s tad…..) – datumKonce_d , nejakyText_s, nejakeCislo_l
  • Konstanty -velká písmena – MAXIMALNI_POCET
  • Metody – prefix met a pak CamelCase –metNejakaMetoda
  • Getter (Class Module) – prefix get a pak CamelCase –getNejakyGetter
  • Setter (Class Module) – prefix set a pak CamelCase –setNejakySetter

2) Dokumentace, komentáře

2.1) Na začátku každého modulu

na začátku popisu dávám dva “ je to z toho důvodu aby byl poznat začátek bloku poznámek

  • stručný popis
  • autora či autory
  • označení verze (pořadové číslo či datum poslední změny)
  • datum
  • požadavky(pokud jsou nějaké na knihovny atd…)
  • poznámky k použití atd…..
'#################################################################################
'' Stručný popis
'@author Daniel VÍTEK (www.vitek.online)
'@version 0.1
'@date 2018-09
'@require
'Microsoft Internet Controls
'
'Microsoft HTML Object Library

'@remarks
'== INSTRUCTIONS ================================================================

'#################################################################################

2.1) Na začátku každé funkce či metody

na začátku popisu dávám dva “ je to z toho důvodu aby byl poznat začátek bloku poznámek

  •  popis
  • vstupní parametry(co kus to jeden řádek)
  • výstup
  • poznámky k použití atd…..
'*******************************************************************************
''Popis
'
'@param jméno vstupního parametru - popis
'@return popis výstupu
'@remarks
'nějaké poznámky z použití

'*******************************************************************************

3) Šablona třídy

pro třídu jsem si udělal jednoduchou šablonu abych se ve větších objektech dokázal zorientovat a měl jsem to vždy stejné

'#################################################################################
'== INSTRUCTIONS =================================================================
'#################################################################################

'== CONSTANT CLASS ATTRIBUTES ====================================================
'== VARIABLE CLASS ATTRIBUTES ====================================================

'#################################################################################
'== CLASS GETTERS AND SETTERS=====================================================
'== STATIC INITIALIZER (CLASS CONSTRUCTOR)========================================
'== OTHER NON-PRIVATE CLASS METHODS===============================================
'== PRIVATE AND AUXILIARY CLASS METHODS===========================================

'#################################################################################

Aby byl kód snadno čitelný je dobré dodržovat pár zásad. Já jsem vycházel z Javy a upravil si zásady pro použití ve VBA.