Ko razvijamo dodatke za Excel se prej ali slej srečamo s problemom vzdrževanja programske kode. Na izbiro imamo namreč kar nekaj različnih načinov in okolij za razvoj dodatkov.
Na eni strani imamo VBA, ki je vgrajen v večino Office produktov, na drugi strani imamo programski jezik C in WIN API ter COM, na tretji pa .NET tehnologijo in COM.
VBA
Vsekakor je se potrebno pred kakršnimkoli resnim razvojem za MS Office dodobra seznaniti z programskim jezikom VBA. Razvoj v VBA-ju je nekako najlažji izmed vseh načinov in ima mnogo prednosti:
VBA Prednosti
- VBA bazira na programskem jeziku BASIC, ki je zelo preprost jezik
- Zelo dobra podpora znotraj vseh Office programov
- Vvečino problemov nam reši vgrajeno snemanje makrov – če želite kaj postoriti, začnete s snemanjem makra in ga nato razvijate dalje
- VBA urejevalnik nam preko vgrajenega ‘InteliSence’-a aktivno in obilno pomaga pri programiranju.
- Programska koda se ne prevaja, temveč interpretira, kar je za razvoj dobrodošlo, saj lahko programsko kod spreminjamo med razhroščevanjem programa (glej spodaj)
|
VBA Slabosti
- Programska koda je zapakirana v posamezen dokument (Excelov XLS ali XLSM oz. XLA in XLAM) kar pomeni slab nadzor nad programsko kodo
- Programske kode ni možno dajati v repozitorije programske kode
- Otežena je souporaba kode v več projektih saj VBA ne pozna koncepta knjižnic
- Programska koda se ne prevaja temveč interpretira (glej zgoraj), kar je lahko slabost, saj se ob prevajanju odkrijejo mnoge napake.
- Preko VBA ne moremo storiti vsega – določene stvari lahko spreminjamo, popravljamo, dograjujemo samo preko knjižnic v C oz. C++ jezikih.
|
C / C++
Izmed vseh izbir je to najtežja pot, ki ima glede na naslednjo možnost, torej razvoj v .NET-u eno slabost in eno prednost
C / C++ prednosti
- Najhitrejša koda in največja možnost nadzora nad načinom izvajanja
|
C / C++ slabosti
- Zelo zapleten in dolgotrajen razvoj, slaba (zelo slaba!) literatura
|
.NET
Za razvoj v .NET-u pa imamo več možnosti, ki so prikazane spodaj.
.NET Prednosti
- Možna uporaba knjižnic
- Možna uporaba vseh znanj pridobljenih na področju –NET razvoja vključno z tisiči in tisoči objektov, ki so napisani zanj
- Glede na prejšnjo točko seveda tudi preprosta možnost povezav do podatkovnih baz, spletnih storitev…
- Popoln nadzor nad programsko kodo in možnost uporabe repozitorijev programske kode
|
.NET Slabosti
- Neintuitivni razvoj
- Težak dostop do ustrezne literature za dostop do Office automatization objektov
|