NSD
HTML5

Teknologiat

NSD on erikoistunut yli jo 15 vuoden ajan uusimpiin UI ja backend teknologioihin. Tällä tavoin takaamme asiakkaidemme tuotteille pitkän elinkaaren, tehokkaan ohjelmistokehitysprosessin ja helpon ylläpidettävyyden.

Microsoft

Visual Studio

Microsoft MVC, Web API sekä WPF/UWP ohjelmistokehitys pohjautuu C# tai C++ kieliin Visual Studio ympäristössä.

Visual Studio ja C# ovat miltei aina Microsoft teknologioihin perustuvat ohjelmistokehitystyön taustalla.

C# on tässä ympäristössä maailman selvästi käytetyin ohjelmointikieli, joka on kehitetty C++:n ja Javan pohjalta 2000-luvun alkupuolella. C#:n vahvuuksia ovat erittäin hyvä oliopohjaisuus ja yksinkertaisuus. Lisäksi C# tarjoaa monipuolisesti vaihtoehtoja toteuttaa sovelluksia alkaen konsoli- ja service-ohjelmistoista jatkuen aina laajoihin nelitasoisiin mobiili- ja web-selainjärjestelmiin sekä suljettuihin järjestelmiin. C#-ohjelmointikieli itsessään sisältää hyvin rajallisen määrän käskyjä. Kielen monipulisuuden synnyttää laaja .NET Framework, josta löytyy valmiita ohjelmakirjastoja mitä monipuolisimpiin tarpeisiin.

Visual Studio on integroitu ohjelmistokehitysympäristö, joka sisältää kattavan määrän ohjelmistokehityksen vaatimia toiminnallisuuksia. Näihin sisältyvät mm. integroitu testausympäristö, emulointiympäristö eri päätelaitteille sekä pilvipalvelujen kehitysympäristö. Visual Studio on kaiken kaikkiaan erittäin hyvä ohjelmointiympäristö erityyppisille projekteille. Se on yli 20 vuoden kehitystyön tulos ja Microsoft-kehityksessä ylivoimainen markkinajohtaja. Visual Studiosta löytyy eri käyttötarkoituksiin useita erilaajuisia versioita lähtien ilmaisesta Community-versiosta.

Java

Java

Java soveltuu erinomaisesti backend ohjelmistokehitykseen mm. Java EE ja Spring framework:ien kautta.

Java on Sun Microsystemsin kehittämä laaja teknologiaperhe ja ohjelmistoalusta, johon kuuluu muun muassa laitteistoriippumaton oliopohjainen ohjelmointikieli sekä ajoaikainen ympäristö virtuaalikoneineen ja luokkakirjastoineen. Sun on ilmoittanut Javan julkaisusta vapaana ohjelmistona GNU GPL -lisenssillä. Java-alusta on käytössä noin 3,8 miljardissa laitteessa matkapuhelimista supertietokoneisiin.

NSD:n toteutuksissa Java hyödynnetään ensisijaisesti backend ohjelmistokehitykseen mm. Java EE ja Spring framework:ien kautta, jonka tarjoamia palveluja hyödynnetään eri tyyppisissä frontend (UI) toteutuksissa.

JavaScript

JavaScript

Käyttöliittymien kehitys pohjautuu tunnetuinpiin open source kirjastoihin kuten Angular, React, Vue, jQuery ja Bootstrap.

Nykyaikainen web-frontend ohjelmistokehitys pohjautuu miltei aina valmiisiin open source framework:eihin, jotka on toteutettu JavaScriptin päälle.

Koska framework kehitys on laajan yhteisön toteuttama, se on yleensä hyvin testattu ja toimiva. Eri frameworkien yhteensovitus ja versiopäivitys asettaa kuitenkin aina haasteita ja vaatii pitkää kokemusta.

Yleisimpiä frameworkeja ovat

  • DOM manipulation: jQuery
  • MVC/MVVM: React, Angular, Vue, useimmiten nykyään React
  • Testaus: Jasmine, Mocha ja Karma

Azure ja AWS

Azure ja AWS

MS Azure sekä Amazon WS pilvipalvelut ovat käytössä useissa NSD:n toteuttamissa järjestelmissä ja tarjoavat hyvin kustannustehokkaan tavan verrattuna perinteiseen konesaliratkaisuun.

Microsoft Azure ja Amazon WS tarjoavat monia palveluja, joita kannattaa hyödyntää, mikäli yhtiön omaan konesaliin ei ole jo tehty merkittäviä investointeja. Pilvipalvelujen kuukausimaksupohjaisuus mahdollistaa hyvin joustavan kustannusrakenteen palvelinresurssi- ja palvelutarpeiden muuttuessa.

Pilvipalvelujen käyttö vähentää laitteistoinvestointien lisäksi laitteistojen hallintaan tarvittavan henkilöstön määrää ja yleensä tarve poistuu kokonaan. Vastaavasti pilvipalvelut takaavat hyvin korkean käytettävyyden, vikasietoisuuden, tietoturvan sekä globaalin tietoliikennekapasiteetin, joiden järjestäminen on usein kallista ja korkeaa ammattitaitoa vaativaa.

Yleisimmät NSD:n toteutuksissa hyödynnetyt pilvipalvelut ovat:

  • AWS/Azure WebSites
  • AWS/Azure SQL Server
  • AWS/Azure Storage
  • Azure API management
  • Azure AD
  • AWS Lambda/Azure Functions

Näiden lisäksi AWS/Azure tarjoavat monia muita erinomaisia pilvipalvelja ja uusia palveluja julkaistaan säännöllisesti.