IN2000. Gjennomgang av tekniske oppgaver på prøveeksamen. Erlend Stenlund og Steffen Almås + innspill fra Gaute Berge

Like dokumenter
Android-Programmering. Vår 2017

Komme igang med App Inventor Introduksjon App Inventor PDF

< T extends Comparable<T> > Indre klasser mm. «Det du bør ha hørt om før oblig 4»

Kapittel 8: Programutvikling

Test 2 OOP. - Prøveeksamen

2 Om statiske variable/konstanter og statiske metoder.

UNIVERSITETET I OSLO

GraphQL. Hva, hvorfor, hvordan

Innholdsfortegnelse. 1. Testing Feiltesting av koden Funksjonstesting: Kilder.10

UNIVERSITETET I OSLO

Stikkord: Java EE, EJB, JSF, JPA, SWT, klient/tjener, Glassfish server, Application Client.

CORBA Component Model (CCM)

Android-Programmering Async. Vår 2017

API hva er det, og trenger vi det? 14. mars 2017 Asbjørn Risan, BIBSYS

Repitisjonskurs. Arv, Subklasser og Grensesnitt

Kapittel 13 Advanced Hypertext Implementation. Martin Lie Ole Kristian Heggøy

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse

Eksekveringsrekkefølgen (del 1) Oppgave 1. Eksekveringsrekkefølgen (del 2) Kommentar til oppgave 1. } // class Bolighus

2 Om statiske variable/konstanter og statiske metoder.

Operativsystemer og grensesnitt

Gruppe 43. Hoved-Prosjekt Forprosjekt

Før du starter, del 2

Introduksjon til objektorientert programmering

Bruk av egendefinert kode i SAS Data Integration Studio

Obligatorisk oppgave 4: Lege/Resept

INF Innleveringsoppgave 6

INF5110. Oblig 2 presentasjon

Emnenavn: Objektorientert programmering. Faglærer: Lars Emil Knudsen

Kommunikasjon mellom XC PLS'er over CAN

LocalBank Prosjektbeskrivelse

Hvordan installere Java og easyio på Windows

Array&ArrayList Lagring Liste Klasseparametre Arrayliste Testing Lenkelister

Min digitale infrastruktur

Litt om Javas class-filer og byte-kode

KRAVSPESIFIKASJON FORORD

Oblig 7 - Råd og tips. Henrik Hillestad Løvold

Android-Programmering. Våren 2015

EGENDEFINERTE FUNKSJONER I SAS OG LITT OM OPEN SOURCE INTEGRASJON SAS FANS I STAVANGER , MARIT FISKAAEN (SAS INSTITUTE)

Array&ArrayList Lagring Liste Klasseparametre Arrayliste Testing Lenkelister Videre

Huldt & Lillevik Lønn Lønn 5.0. Versjon Build 479

Læringsmål for forelesningen

Javas klasse-filer, byte-kode og utførelse (og litt om C# sin CIL-kode)

P L A N I A 8 S Y S T E M K R A V PLANIA 8 SYSTEM KRAV. Plania 8 Systemkrav.docx av 8

Programmeringsrammeverk som kan installeres på Windows Mobiloperativsystem

IN1010 våren januar. Objektorientering i Java

HØGSKOLEN I SØR-TRØNDELAG

1. Å lage programmer i C++

Løsningsforslag Test 2

Avinstallere Java: Windows 7 og eldre versjoner

1. Å lage programmer i C++

NOTAT (pensum!) Javas klasse-filer, byte-kode og utførelse. INF 5110, 10/5-2011, Stein Krogdahl

lagring med HTML5 Offline lagring Offline Informasjonsteknologi 2 Gløer Olav Langslet Sandvika VGS

Objective-C. Ina Carine Aarvig

EKSAMEN 6109 OBJEKTORIENTERT PROGRAMMERING 5609 OBJEKTORIENTERT PROGRAMMERING

Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.

Generiske mekanismer i statisk typede programmeringsspråk

OPPSETT AV GOODREADER FOR FROGNPOLITIKER

Leksjon 2. Setninger og uttrykk

Leksjon 2. Setninger og uttrykk

Objective-C. Ina Carine Aarvig

Jentetreff INF1000 Debugging i Java

Felleskatalogens Nedlastbare CD-rom/web. Installasjonsveiledning Server (Flerbruker) for Windows

Tillatte hjelpemidler: alle skrevne og trykte. Antall sider: 2 (+ 1 side vedlegg, bakerst). Oppgave 1 [25%]

EKSAMEN OBJEKTORIENTERT PROGRAMMERING Alle trykte og skrevne. Java API dokumentasjon er tilgjengelig lokalt på hver maskin.

1. NetBeans IDE: Lage en enkel mobilapplikasjon

IN1010 V19, Obligatorisk oppgave 2

Læringsmål uke 7. Objektorientert programmering i Python: Introduksjon. Innhold uke 7. Lite tilbakeblikk: Programflyt og skop

Kapittel 7: Mer om arv

EKSAMEN I FAG TDT4100 Objekt-orientert programmering. Fredag 3. juni 2005 KL

Løsningsforslag for Obligatorisk Oppgave 3. Algoritmer og Datastrukturer ITF20006

Saksbehandler: Rigmor J. Leknes Tlf: Arkiv: 033 Arkivsaksnr.: 11/

1 Kodegenerering fra Tau Suiten

Liste som abstrakt konsept/datatype

Endre utseendet på nytt grensesnitt med Primo Studio

Bruk av kildeavskrifter som er merket med grønn kule

Obligatorisk oppgave 5: Labyrint

IN1010 V18, Obligatorisk oppgave 5

INF1010 våren 2018 tirsdag 23. januar

Av Stein Gjessing, Institutt for informatikk, Universitetet i Oslo

Concurrency. Lars Vidar Magnusson. September 20, Lars Vidar Magnusson () Forelesning i Operativsystemer September 20, / 17

6105 Windows Server og datanett

SAS IN A SOA WORLD MARIUS SOMMERSETH TEAM LEAD TECHNICAL ARCHITECTURE

WINDOWS 10 OPPDATERING HØSTEN 2018 (VERSJON 18.09) HVA ER NYTT?

Innhold uke 7. Objektorientert programmering i Python: Introduksjon. Lite tilbakeblikk: Programflyt og skop. Lite tilbakeblikk: Funksjoner er uttrykk

UNIVERSITETET I BERGEN Det matematisk-naturvitenskapelige fakultet

Algoritmer og datastrukturer Kapittel 3 - Delkapittel 3.1

LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring. Else Lervik, januar 2012.

IN1020. Obligatorisk oppgave 1. Formål

SPSS Høgskolen i Innlandet

INF1010 våren 2019 Onsdag 30. januar. Mer om unntak i Java (med litt repetisjon av I/O først)

Installasjonsveiledning. DDS-CAD ByggMester

Gruppe prosjekt del 3. INFO134 Klientprogrammering Vår 2017 Kandidatnummer: 304, 298

UNIVERSITETET I OSLO

ephorte Installasjon av klienter

Forprosjekt. Oppgdragsgiver Unikia, Lille grensen 7, 0159 Oslo, Kontaktperson Anders Kose Nervold,

INF1000: Forelesning 7. Konstruktører Static

Oppdatering av Extensor 05

Bruksanvisning for Zotero (oppdatert 30/06/2017)

4. Installasjonsveiledning. Experior - rich test editor for FitNesse -

B r u k e r h å n d b o k Sjekklistemodul ver. 16

Transkript:

IN2000 Gjennomgang av tekniske oppgaver på prøveeksamen Erlend Stenlund og Steffen Almås + innspill fra Gaute Berge

Hva er en Data Class i Kotlin? (1p) En data class er en klasse som brukes for å holde på data. Data class får genererte tostring, equals og hashcode implementasjoner basert på feltene i kontruktøren.

Hva er Null Safety i Kotlin, og hva slags effekt har det på hvordan feil blir fanget opp under utvikling? (2p) Null Safety er at 'Nullability' er bygget inn i typesystemet, og gjør at operasjoner som i Java vil kaste en NullPointerException blir fanget opp.

Hva er forskjellen på List og MutableList i Kotlin? (2p) MutableList er en type List som støtter muterbare operasjoner i.e 'add'. En List er immutable, og kan ikke endres.

Hva er et Companion Object i Kotlin og hva brukes det til? (2p) Companion Object er et nested (singleton) objekt som kan refereres til gjennom klassenavnet til en ytre klassen. Brukes til å representere 'statiske' metoder og felter, og innkapselere globale tilstander.

Hva blir resultat av å kjøre dette programmet?

a?.g() evaluerer til verdien av a.g() som er x + y = 2 + 3 = 5 b?.h() evaluerer til null, og dermed evaluerer (b?.h()?: 0) til 0 f blir da 5 + 0 = 5.

Denne koden inneholder feil. Hva slags type feil er det? Hvordan kan man løse feilen? (3p)

Kompileringsfeil pga 's.touppercase' Dot-operatoren er ikke lovlig på Nullable typer.

Fiks problem, mulig løsning: - Endre signaturen til metoden fra String til String?

Hva er et View i Android Studio? (1p) Et View er en grunnleggende byggestein for UI (User Interface) i Android. Et View involveres i det meste av utforming, design og widgets som er synlig.

Vis programmatisk hva som skal til for å starte en ny Activity. Den nye aktiviteten skal hete AlpacaActivity.kt (2p) val intent = Intent(this, AlpacaActivity::class.java) startactivity(intent)

Hvor legges biblioteker i Android Studio? Biblioteker legges til som dependencies i Build.Gradle. Hva må en gjøre for at appen skal ta i bruk ny funksjonalitet? Etter at en har lagt til et bibliotek kan en enten Rebuild Project, der man bygger prosjektet på nytt, eller synkronisere filene med Gradle, slik at man bygger inn endringene i builden direkte. Det er også mulig å trykke på Run -knappen og kjøre pga. dette vil bygge prosjektet.

Se for deg at du skal vise 10 bilder i appen samtidig. Forklar èn fordel og èn ulempe med å hente de fra internett fremfor å lagre de i appens ressurser og bruke de derfra. (3p) + Appen tar mindre lagringsplass på enheten den er installert. - Ved dårlig internettforbindelse kan det ta lang tid før bildene lastes inn.

Hva er forskjellen på margin og padding i XML? (2p) Padding er avstanden mellom innholdet i et View og til ytterkanten av Viewet. Padding er inne i selve Viewet. Margin er avstanden utenfor kanten av Viewet. https://i.stack.imgur.com/irksd.jpg

Hva er forskjellen på TargetSdkVersion og MinSdkVersion i Android Studio? (2p) MinSdkVersion er minimums-versjonen som appen skal kunne kjøre i, på Android Operativsystem. TargetSdkVersion er den målrettede Android-versjonen som appen er laget for; altså den versjonen en primært ønsker å støtte.

Hvordan utføres et HTTP kall til et API? (2p) (veldig overordnet) Består av et endepunkt, f.eks frost.met.no med en path (url). Kobler til endepunktet ved å sende en request (f.eks. GET). Mottar respons som inneholder data (f.eks JSON, XML).

Spørsmål?