Loading...

Blog

Značaj DNN-a za development

19lis 2020

Značaj DNN-a za development

DNN Platforma je legenda. Stotine tisuća firmi širom svijeta je svakodnevno koristi. Svaki naš development projekt prvo počinje s instalacijom DNN-a (i 2sxc jer bez njega DNN nema smisla koristiti) a potom gledamo što korisnicima zapravo treba 😊.

Web Application Framework

DNN Platforma je napravljena za developere. Možemo krenuti ad-hoc te u minuti, jednostavno, bez razvojne okoline, online, inplace, brzinski razviti custom funkcionalnosti uz Module Creator. A kad potrebe narastu s Visual Studiom (ili VSCode) pređemo u full scale DevOps (build i release pipelines, test plans itd). Ključno je da ne razvijamo od nule po 100-ti put iznova uobičajene funkcionalnosti nego da koristimo već gotova, testirana i dokazana rješenja (za barem 80% zahtjeva) a većinu dostupnog vremena (i budžeta) ulažemo u razvoj jedinstvenih ili prilagođenih funkcionalnosti ali zadržavajući sve code-reuse benefite. Uz korištenje DNN Platforme tražene funkcionalnosti možemo isporučiti u svim oblicima web arhitektura koje se do danas koriste, od klasičnog WebForms-a, preko Razora, MVC-a, SPA-a, Web API-a…

Enciklopedija developmenta

Upoznavanjem i čitanjem DNN Platform source koda postajemo bolji developeri. Bezbroj primjera već riješenih problema (enterprise architecture) je odličan izvor znanja koje nam omogućava izgradnju development vještina bez mukotrpnog, dugotrajnog i frustrirajućeg učenja na vlastitim pogreškama. Dokazana arhitektura je najbolji primjer i recept za razvojnoj kvalitetnog koda. Od svojih početaka arhitektura DNN-a je korištena za osmišljavanje, realizaciju i testiranje funkcionalnosti koje bi naknadno postale dio .NET Frameworka (membership provider, lokalizacija).

Open Source

MIT licenca je vrlo slobodna jer dozvoljava komercijalne i nekomercijalne primjene. Cijela povijest DNN-a od objave DotNetNuke kao prvog open source CMS-a na Microsoft platformi preko DNN Corp-a  (danas u vlasništvu ESW Capital, LLC investicijskog fonda) je kanonski primjer razvoja open source proizvoda na Microsoft platformi i jako je informativna npr. što je dobro napravljeno ali i što bi bilo bolje da se napravilo drugačije.

Fleksibilnost i skalabilnost

Modularna arhitektura DNN-a potiče razvoj reusable funkcionalnosti a primjenom provider modela, postojeće funkcionalnosti je moguće zamijeniti. Funkcionalnosti je moguće lako i brzo proširivati instalacijom gotovih third party modula (2sxc je pravi dragulj) ili razvojem vlastitih modula.

DNN ima visoko skalabilnu arhitekturu. S jedne strane, jedna instalacija DNN-a omogućava hostanje većeg broja različitih siteova unutar iste aplikacije. S druge strane DNN podržava webfarme, pa smo u praksi imali primjere hostanja jednog websitea na 15-ak web nodova koji su postupno dodavani kako se povećavao broj istovremenih korisnika, a sve je ovo bilo moguće samo promjenom konfiguracije, često bez potrebe za promjenom postojećeg koda.

Kvaliteta, pouzdanost, sigurnost i dugovječnost

U ovom poslu smo dovoljno dugo da mislimo da smo vidjeli puno toga i dobrog i lošeg. Jedna od većih frustracija za developera je kada razvojna platforma u koju je uložio gomilu vremena, na kojoj bazira svoj poslovni model i rješenja za svoje korisnike se u praksi ne pokaže stabilnom, pouzdanom i sigurnom. Kada rješenje za koje se očekuje da radi 24 sata, 365 dana u godini iz nepoznatog razloga prestane raditi ili radi loše jer razvojni tim nije na visini zadatka, nema dovoljni kapacitet ili je jednostavno odustao od daljnjeg razvoja jer je nešto drugo promijenilo prioritete, privuklo njihovu pažnju i interes. Od svog pojavljivanja 24.12.2002. do danas se DNN Platforma kontinuirano razvija, a velika zajednica developera širom svijeta nas drži u uvjerenju da se isto neće promijeniti preko noći.

DNN je poznat po svojoj sigurnosti. Svi sustavi imaju sigurnosne propuste ali agilna i razborita organizacija rješavanja ovih situaciju radi razliku između sigurnih i nesigurnih rješenja. U praksi se pokazalo da se sigurnosni problemi DNN-a rješavani jako brzo. Osobno smo sudjelovali na nekoliko projekata migracije web rješenja s konkurentnih platformi na DNN kako bi se u datom trenutku osigurala tražena razina sigurnosti ali i tokom životnog vijeka korištenja rješenja. Sa stajališta DevOps tima koji razvija i održava DNN rješenje važno je redovito pratiti i raditi nadogradnje.

Posljednjih godina DNN development community je uložio znatan trud u čišćenju DNN Platforme od legacy tehnologija (jQuery, Telerik webforms kontrole), refaktoriranje DNN API-a (sukladno dotnet standardu i aspnet core-u) i razvoju sučelja korištenjem React-a. Arhitektura DNN Platforme oduvijek je otvorena prema tehnologijama koje će tek doći i omogućava razvoj najrazličitijih web rješenja ne ograničavajući developere u izboru preferiranih programskih jezika, frameworka, biblioteka ili kontrola. Primjenom modernih tehnologija i alata mlade developerske snage (uz iskusne mentore) stječu iskustvo razvoja skalabilnih softverskih rješenja korištenjem aktualnih tehnologija.

Pogledajte

  1. DNN-Platform
  2. DNN-Community
  3. DNN-Software
  4. 2sxc od 2Sic je superb DNN modul, open source, škrinja puna blaga za developere, omogućava modularni i agilni razvoj svih vrsta prilagođenih web funkcionalnosti.
  5. EasyDNNsolutions je poznata tvrtka iz Zagreba, koja je razvila paletu DNN modula koji su među najprodavanijima na DNN Store-u.

Priključite se

Dok "radite od kuće" sudjelujte na dnnGLOBAL virtualnom DNN eventu, u organizaciji Gifforda Watkinsa počasnog DNN MVP-a od petka 30.10.2020. u 17:00h do nedjelje 2.11.2020. 17:00h.

Ukoliko želite besplatno dobiti sponzoriranu ulaznicu samo nam se javite na email info@sistemi.hr da Vam je možemo poslati 😉.

Tags:

Tonći Vatavuk