Bespisning:
Påmelding for Abakus skjer her. Online finner påmelding her: https://online.ntnu.no/events/25/programmering-gk-del-3/. For dere som ikke er med i Abakus eller Online og ønsker å være med på bespisningen, send en mail til nina.kjekstad[at]abakus.no med navn og linje for påmelding.
VIKTIG: For å beholde plassen for bespisning MÅ du møte opp OG REGISTRERE deg FØR 1410. Hvis noen påmeldte ikke har registrert seg innen 1410 vil denne plassen gis bort til noen andre, og når det er gjort er det ingen mulighet å endre det.
Selve kurset er for alle, det er bare bespisningen etterpå som har påmelding.
Kurset:
Dette kurset er rettet mot dem som føler at programmering er tungt, men som ønsker å bruke tid og energi på faktisk å få en god forståelse for programmering. Du blir ikke ekspert av dette kurset (og vi dekker bare deler av TDT4100-pensumet), men målet er å legge et solid grunnlag for videre egenutvikling. Ett av målene er også å fjerne inntrykket som lett kan oppstå av at programmering er noe magisk.
Første dag vil vi starte fra scratch med å se litt på hvordan en datamaskin er konstruert og hvordan den utfører beregninger, og vi vil bruke litt tid på å studere hvordan en del problemstillinger fra ITGK (finne største tall i en liste, søke i en liste, sortering av lister) løses av datamaskinen ved hjelp av svært primitive operasjoner, og hvordan vi enkelt kan simulere datamaskinens virkemåte på papir. Vi vil så gradvis vise hvordan forskjellige Java-konsepter svarer til det datamaskinen gjør internt, og hvordan de gjør det mer behagelig å skrive programmer:
Variabler
Uttrykk og utregninger
Output
Betingelser
Input
Arrays
Løkker
Metoder, parametre og returverdier
Testing og feilsøking med og uten debugger
Konseptene over dekker det som er kjent som prosedyreorientert programmering, og vi regner med å bruke første dag på dette, da det danner fundamentet for objektorientering. Vi kommer også til å gjøre en del sammenligninger mellom hvordan ting gjøres i Java vs. hvordan det gjøres i Python.
De to neste dagene vil bli brukt spesifikt på Java og objektorientering:
Klasser og objekter/instanser
Medlemsvariabler og statiske variabler; objektreferanser
Medlemsmetoder og statiske metoder
Modellering av "real life"-situasjoner med objekter
Innkapsling
Interfaces
Enkel arv
Vi skal også vise en del tips og triks i Eclipse som vil gjøre kodehverdagen enklere. Merk at det er lov å bare komme på noen av dagene (eller å komme litt uti en av dagene) dersom du føler at du har kontroll på det mest grunnleggende, men for å være sikker på å få plass kan det være lurt å møte tidlig.