Kategori: Software-udvikling

  • Hvad er et netværk

    Hvad er et netværk

    Teksten her er en forsmag for noget at jeg gennemgår i faget Cloud under Akademiuddannelse i Informationsteknologi, som jeg ofte dækker som del af mit job som lektor på UCL Erhvervsakademi og Professionshøjskole.

    Et netværk er når flere PC’er er forbundet med hinanden. Reelt er to PC’er (eller andre computer enheder) nok. Normalt regner man det dog først som et rigtigt netværk når der er flere enheder på eller decideret netværks hardware involveret.

    Der er flere størrelser af netværk, der simpethen er defineret ud fra hvor stort et område de fysisk dækker – dog ikke ned til at man tænker i kvadratermeter niveau, men betegnelserne er på trods af dette stadig tydelige.

    Local Area Network

    Et lokal netværk (LAN) tillader computere og enheder, der er tæt på hinanden – og som regel at gør brug af den samme switch eller router – at oprette forbindelse til at dele filer og udføre opgaver sammen.

    Et LAN består kun af dagligdags enheder (desktops, bærbare computere, tablets, printere osv.), en router og/eller switch, og ethernet-kabler eller trådløse kort. Denne type fokuserer ikke på mere eksotisk telekommunikationshardware, da det er “uden for huset” (og dermed det lokale).

    Et LAN er relativt billige at sætte op og er almindeligt anvendt i hjemmet og på praktisk taget alle kontorer.

    Wide Area Network

    Et fjernnet (WAN) bruges til at forbinde computere, som ikke tæt på hinanden. Det er muligt – og næsten altid tilfældet – at LANs er forbundet til WAN. Dette muliggør små hjemme eller kontor netværk at oprette forbindelse til bredere netværk.
    De fleste WAN forbindelse gennem offentlige netværk, som telefonsystemet

    Internettet, der forbinder computere rundt omkring i verden, kan betragtes som den største WAN i eksistens. På grund af størrelsen kalder nogen det for Super Wide Area Network

    Mange forbundne LANs kan danne et WAN – hvilket jo netop er hvad Internettet er som nævnt ovenfor.

    Videoen her opsummerer det på engelsk og dermed med andre ord end mine:

    Hvordan kommunikerer PC’er over netværk

    Computere taler sammen gennem protokoller, der fortæller dem hvordan de skal sende hinanden data

    Der er historisk en lang række protokoller, men i dag bruges stort set udelukkende TCP/IP. Netværks-protokoller og opbygning af netværk bliver gennemgået mere dybdegående i senere dele af faget Cloud (og måske kommende artikler her på siden), men vi slutter af her med en god introduktion og forsmag på emnet i en gammel men ikonisk og stadig relevante* video fra Nokia Labs:

    Videoen er gammel og nostalgi trip for os der brugte Internettet i 90’erne – se bare den “gode”, gamle Netscape browser – men alle protokoller er det vi stadig bruger i dag. For hvis vi skiftede noget ville vi jo ikke kunne bruge Internettet sammen mere…

    * På nær en ting: Ping of Death som fænomen er ikke et problem i dag, da alt udstyr i årtier har modvirket det.

    Tak fordi I læste med så langt. Hvis du vil vide mere om området eller især om faget Cloud, hvor dette udklip stammer fra, så kontakt mig endelig.

  • Hvad er skyen

    Hvad er skyen

    Teksten her er en forsmag for noget at jeg gennemgår i faget Cloud under Akademiuddannelse i Informationsteknologi, som jeg ofte dækker som del af mit job som lektor på UCL Erhvervsakademi og Professionshøjskole.

    Cloud Computing kan defineres som at levere databehandlings-kraft (CPU, RAM, netværk, lager, OS og anden software) som en tjeneste over et netværk (normalt på internettet) i stedet for fysisk at have computer-ressourcerne på kundens placering.

    Cloud

    Baggrund

    Udtrykket “Cloud” stammer fra et netværksdesign, der blev brugt af netværksingeniører til at repræsentere placeringen af forskellige netværks-enheder og deres inter-forbindelse. Formen på dette netværksdesign blev set som en sky, med små partikler (enheder) svævende ud over et stort område.

    Business

    Typer skyer ud fra business

    Der er fire forskellige cloud-modeller, som du kan abonnere på efter virksomhedens behov:

    1. Private Cloud Her anvendes computere til en bestemt organisation. Denne metode bruges mere til intra-business interaktioner. Hvor computerressourcerne kan styres, ejes og drives af samme organisation.
    2. Community Cloud Her leveres computere til et fællesskab og organisationer.
    3. Public Cloud Denne type sky er normalt brugt til B2C (Business to Consumer) type interaktioner. Her bliver databehandlings-ressourcerne ejet, styret og drevet af regeringen, en akademisk- eller erhvervsorganisation.
    4. Hybrid Cloud Denne type sky kan bruges til begge typer interaktioner – B2B (Business to Business) eller B2C (Business to Consumer). Denne implementeringsmetode hedder hybrid-sky, da databehandlingsressourcerne er bundet sammen af forskellige skyer. De fleste organisationer er i dag endt med en sådan blandet løsning, hvilket nærmest også er krævet for at overholde moderne lovkrav til placering af data i forbindelse med datasikkerhed.
    Service

    Cloud computing services

    Der er tre primære former for cloud computing services:

    • Software as a Service (SaaS)
    • Platform as a Service (PaaS)
    • Infrastructure as a Service (IaaS)

    Forskellige forretninger bruger nogle eller alle af disse alt efter deres krav

    SaaS (Software as a Service)

    SaaS eller software som en tjeneste er en softwaredistributions-model, hvor applikationer er hostet af en leverandør eller tjenesteudbyder og stilles til rådighed for kunder via et netværk (internet).

    SaaS bliver en stadig mere udbredt leveringsmodel som underliggende teknologier, der understøtter Service Oriented Architecture (SOA) eller Web Services.

    Via internettet er denne service tilgængelig for brugere overalt i verden.

    Ved denne model overlades al drift af software og computer udstyr til tredje part, det eneste klienten er ansvarlig for er sin egen data.

    PaaS (Platform as a Service)

    PaaS leverer en platform og et miljø, der giver udviklere mulighed for at bygge applikationer og tjenester.

    Denne tjeneste hostes i skyen og tilgås af brugerne via internettet.

    PaaS-tjenester opdateres løbende og nye funktioner føjes til. Derfor kan alt fra softwareudviklere, webudviklere til virksomheder kan drage fordel af PaaS ud fra forskellige vinkler.
    Det giver platform der understøtter løbende applikations-udvikling, den lægger op til at servicen man kører derpå er under konstant udvikling da man kan stole på at der underliggende altid er tidsvarende og optimalt.

    Begrebet dækker således over software support og management services, storage, networking, implementering, testning, samarbejde, hosting og vedligeholdelse af applikationer.

    Tredjepart overtager altså ansvaret for al grundlæggende software som operativsystem og databaseservere samt den underliggende hardware medens klienten står for sin egen, specifikke software der kører derpå.

    IaaS (Infrastructure as a Service)

    IaaS (Infrastructure As A Service) er en af de grundlæggende servicemodeller for cloud computing sammen med PaaS (Platform as a Service) og SaaS (Software as a Service).

    Den leverer adgang til computerressourcer i en virtualiseret miljø “sky” på internettet.
    Den leverer nemlig computing infrastruktur som virtuel server plads, netværks-forbindelser, båndbredde, load balancers og IP-adresser.

    Puljen af hardware ressource er hentet fra flere servere og netværk normalt fordelt på talrige datacentre. Dette sørger for redundans og pålidelighed.

    Du lejer en “ren” maskine og infrastruktur og lægger så al software på selv og er ansvarlig for alt vedligehold på software niveau selv – fra operativsystem til klient specifik software.

    Tak fordi I læste med så langt. Hvis du vil vide mere om området eller især om faget Cloud, hvor dette udklip stammer fra, så kontakt mig endelig.

  • Reminder om hvordan Unitys XR Interaction Toolkit installeres efterår 2020

    Reminder om hvordan Unitys XR Interaction Toolkit installeres efterår 2020

    Jeg har selv flere gange været irriteret over at jeg ikke let kunne få XR Interaction Toolkit ind i mine VR projekter, så denne video er en reminder til mig selv og andre om hvordan det gøres.

  • Video: Kom i gang med at programmere i C# del 4 – Løkker

    Video: Kom i gang med at programmere i C# del 4 – Løkker

    Løkker lader os køre en blok kode mere end én gang.

    Videoen på YouTube.

    Koden i C# konsol programmet i videoen:

    using System;
    
    namespace loekker
    {
        class Program
        {
            static void Main(string[] args)
            {
                /*int i = 20;
                while (i < 20)
                {
                    Console.WriteLine("Værdi af i: {0}", i);
                    i++;
                }
                bool b = true;
                while (b)
                {
                    Console.WriteLine("Vi kører rundt");
                    b = false; // eller break
                }
                
                do
                {
                    Console.WriteLine("Værdi af i: {0}", i);
                    i++;
                }
                while (i < 20);*/
    
                for (int i = 1; i < 20; i++)
                {
                    Console.WriteLine("Værdi af i: {0}", i);
                    i++;
                }
    
            }
        }
    }
    
  • Video: Kom i gang med at programmere i C# del 3 – Operatorer

    Video: Kom i gang med at programmere i C# del 3 – Operatorer

    I denne lidt kortere, og for de fleste nok ret let at forstå, video kigges der på de klassiske matematiske operatorer.

    Videoen på YouTube.

    Koden i C# konsol programmet i videoen:

    using System;
    
    namespace Operatorer
    {
        class Matematik
        {
            public int x;
            public int y;
    
            public int Plus()
            {
                int z = x + y;
                return z;
            }
            public int Minus()
            {
                int z = x - y;
                return z;
            }
    
            public int Gange()
            {
                int z = x * y;
                return z;
            }
    
            public int Divider()
            {
                int z = x / y;
                return z;
            }
            public int Modulus()
            {
                int z = x % y;
                return z;
            }
        }
        class Program
        {
            static void Main(string[] args)
            {
                Matematik M1 = new Matematik();
                Console.WriteLine("Skriv venligst to tal:");
                M1.x = int.Parse(Console.ReadLine());
                M1.y = int.Parse(Console.ReadLine());
                Console.WriteLine("{0} plus {1} giver {2}", M1.x, M1.y, M1.Plus());
                Console.WriteLine("{0} minus {1} giver {2}", M1.x, M1.y, M1.Minus());
                Console.WriteLine("{0} divideret med {1} giver {2}", M1.x, M1.y, M1.Divider());
                Console.WriteLine("{0} gange {1} giver {2}", M1.x, M1.y, M1.Gange());
                Console.WriteLine("{0} modulus {1} giver {2}", M1.x, M1.y, M1.Modulus());
            }
        }
    }
    
  • Video: Kom i gang med at programmere i C# del 2 – Klasser, variabler, metoder og objektorienteret programmering

    Video: Kom i gang med at programmere i C# del 2 – Klasser, variabler, metoder og objektorienteret programmering

    Opbygningen af et program med klasser, der indeholder variabler og metoder introduceres som en af hjørnestenene for objektorienteret programmering.

    Videoen på YouTube

    Koden i C# konsol programmet i videoen:

    using System;
     namespace objekterDel1
     {
         class Bil
         {
             public int antalHjul;
             public int antalPassagerer;
             public string maerke;
             public double maxHastighed;
             public double hastighed ()
             {
                 return speederTryk * maxHastighed;
             }
             public bool motorTaendt;
             public double speederTryk;
         }
         class Program
         {
             static void Main(string[] args)
             {
                 Bil Volvo = new Bil();
                 Bil Opel = new Bil();
    
                 Volvo.antalHjul = 4;
                 Volvo.antalPassagerer = 5;
                 Volvo.maerke = "Volvo";
                 Volvo.maxHastighed = 190.5;
                 Volvo.motorTaendt = true;
                 Volvo.speederTryk = 0.7;
                 Console.WriteLine("{2}en har {0} hjul, {1} passagerer og kan køre {3}km/t", Volvo.antalHjul, Volvo.antalPassagerer, Volvo.maerke, Volvo.maxHastighed);
                 Console.WriteLine("Den kører dog kun {0}km/t", Volvo.hastighed());
    
                 Opel.maerke = "Opel";
                 Console.WriteLine("{0}", Opel.maerke);
             }
         }
    }
    
  • Video: Kom i gang med at programmere i C# del 1 – Det første konsol program

    Video: Kom i gang med at programmere i C# del 1 – Det første konsol program

    Vi installerer Visual Studio og laver vores første konsol program i C#. Der forklares kort hvad de enkelte dele er, detaljer kommer i senere videoer.

    Videoen på YouTube.

    Koden i C# konsol programmet i videoen:

    using System;
     namespace HelloWorld
     {
         class Program
         {
             static void Main(string[] args)
             {
                 Console.WriteLine("Hello World!");
             }
         }
     }
  • Virtual Reality programmering lektion 8

    Virtual Reality programmering lektion 8

    I slutningen af 2017 underviste jeg et hold i “Virtual Reality programmering” på AkademiUdannelse i IT efteruddannelsen. Faget var helt nyt, det kom først reelt med i studieordningen der kom lige idet faget blev afsluttet, men vi kørte efter udkastet dertil. Der var 10 lektioner i alt.

    Der blev fokuseret på programmerings forståelse generelt, især i starten af kurset , og som udviklingsmiljø var der valgt Unity.

    Denne lektion er den sidste med nyt materiale, de resterende 2 af de 10 var repetition.
    Vi kiggede på Vuforia og sammenlignede VR og AR. Vi fortsatte sammenligningen med de to “store” HMDer Vive og Occulus og sluttede af med en debat om bevægelse i VR.

    Der er nogle småting, men I får det på samme måde som mine studerende fik, modsat dem får i dog ikke min tale med der rettede op på de mangler der er i slidesne, men det kan I forhåbentlig selv dække ind for.

    Download the PDF file .

  • Virtual Reality programmering lektion 7

    Virtual Reality programmering lektion 7

    I slutningen af 2017 underviste jeg et hold i “Virtual Reality programmering” på AkademiUdannelse i IT efteruddannelsen. Faget var helt nyt, det kom først reelt med i studieordningen der kom lige idet faget blev afsluttet, men vi kørte efter udkastet dertil. Der var 10 lektioner i alt.

    Der blev fokuseret på programmerings forståelse generelt, især i starten af kurset , og som udviklingsmiljø var der valgt Unity.

    Vi arbejde videre med en cardboard app, C#og objekt orienteret programmering, hvor vi finder gratis 3D modeller og augmented reality generelt.

    Der er nogle småting, men I får det på samme måde som mine studerende fik, modsat dem får i dog ikke min tale med der rettede op på de mangler der er i slidesne, men det kan I forhåbentlig selv dække ind for.

    Download the PDF file .

  • Virtual Reality programmering lektion 6

    Virtual Reality programmering lektion 6

    I slutningen af 2017 underviste jeg et hold i “Virtual Reality programmering” på AkademiUdannelse i IT efteruddannelsen. Faget var helt nyt, det kom først reelt med i studieordningen der kom lige idet faget blev afsluttet, men vi kørte efter udkastet dertil. Der var 10 lektioner i alt.

    Der blev fokuseret på programmerings forståelse generelt, især i starten af kurset , og som udviklingsmiljø var der valgt Unity.

    I denne lektion arbejdede vi videre på vores FPS, talte om objekt orienteret C# endnu en gang og kiggede på Google Cardboard.

    Der er nogle småting, men I får det på samme måde som mine studerende fik, modsat dem får i dog ikke min tale med der rettede op på de mangler der er i slidesne, men det kan I forhåbentlig selv dække ind for.

    Download the PDF file .

Index