Målet med denne første obligatoriske oppgave er å sikre at alle har et fungerende utviklingsmiljø for Python programmering og kunne dele koden med andre via versjoneringssystemet git.
Innleveringsfrist: se Canvas.
Før vi begynner må vi være sikre på at dere alle har installert verktøyene som trengs for programvareutvikling med Python
Det vil si at du må ha
- Selve Python fortolkeren sammen med sitt standardbibliotek. Hvis du har allerede installert Python på din maskin, sjekk at du har installert en versjon som er nyere er likt 3.12
- En git-klient for samarbeid og deling av kode. Mest sannsynligvis vil du også en grafisk klient som f.eks. GitHub Desktop hvis du ikke vil bruke
git
direkte fra kommandolinjen. - Et integrert utviklingsmiljø (som også kalles for IDE = "Integrated Development Environment"). Vi anbefaler enten Visual Studio Code eller PyCharm
Lenker til instruksjoner for de enkelte operativsystemer finder du nedenfor:
OBS! Det er fult mulig å skrive kode i Python i en teksteditor som vim
eller emacs
og betjene git
gjennom kommandolinjen (Windows sitt Notepad anbefales derimot ikke i det hele tatt).
Men generelt anbefaler vi at du bruker en IDE og/eller andre verktøy som tilbyr en grafisk brukergrensesnitt (GUI) for å gjøre det enklere!
Instruksjoner på hvordan du setter opp disse verktøy for ditt operativsystem finner du bak de enkelte Download-lenker. I de fleste tilfeller vil du få en slags Installer som gjør selve oppsett ganske enkelt.
Som nevnt før, av integret utviklingsmiljø anbefales:
og som grafisk klient for git/GitHub:
Hovedforskjellen mellom PyCharm og VS Code er at førstnevnte krever en lisens (du får det gratis som student ved HVL) og er litt tyngre å kjøre, samtidig har den mer funksjonaliteter og støtte enn VS Code. VS Code f.eks har i utgangspunkt ikke støtte for Python utvikling, du må installere en 'extension' for dette.
Vi skal bruke sky-tjenesten GitHub] for å dele eksempel kode for forelesninger og for at dere kan jobbe sammen i grupper om programmering. Du trenger derfor en bruker på github. Om du allerede har en github brukerkonto kan du hoppe direkte til neste steg.
Først, gå til https://github.com/ i din nettleser! På hovedsiden trykker du nå på Sign Up. Du blir bedt til å gi fra deg en epost adresse (Du kan bruke din HVL-epost-adresse) og sette et password. Pass på at lagrer dine pålogginsinformasjon på et sikkert sted (f.eks. ved å bruke en Password Manager).
Vi skal bruke oppbevaringsplassen
for kode-eksempler fra forelesninger og annen informasjon.
Sjekk at du er logget på GitHub og åpne gitt URL i din nettleser.
Oppe til høyre finner du en grønn knapp Code
. Trykk på den og kopier den URLen du ser i den dialogen som åpner seg.
Lag nå en mappe på din harddisk bak en filsti som er lett å huske, f.eks. C:\Users\<dinbrukernavn>\ING301\
(eller /home/<dinbrukernavn>/ING301/
på Linux/Mac).
I neste steg kan du åpne et terminal vindu og navigere deg til samme filstien ved å bruke cd
(kommandoen for change directory).
VIKTIG: ikke velg en mappe som er tilkoblet til fildelingstjeneste som OneDrive eller Dropbox. Det kan gi problemer med git og IDE senere.
Du kloner et repository ved å utføre følgende kommando i terminalvinduet:
git clone https://github.com/selabhvl/ing301public
Repositoriet vil bli oppdatert i løpet av kurset. For å få med deg de siste oppdateringene kan du bruke:
git pull
Hvis du har valgt å installere GitHub Desktop applikasjonen kan du også bruke denne til å klone oppbevaringsplassen (vises i forelesningen).
Til slutt skal vi teste om din Python installasjon virker som den skal.
Du skal nå åpne din IDE og så åpne ing301public
mappen i den (i VS Code finner du en knapp "open folder" og i PyCharm finner du en knapp "open project").
Når du åpner mappen kommer et spørsmål om du stoler på innholdet: her sier du bare "ja" 😉.
Etterå kan du navigere til filen /weeks/03/testinstall.py
i filtræet på venstresiden og kjører den ved å trykke på den store grønne knappen.
Du burde da se noe som:
Congratulations 🎉 It looks like you are running Python in version 3.12 and ready for ING301 - Spring'NN 🎓 !!!
BTW did you know that...
[...]
som indikerer at oppsett av utvklingsmiljø var en suksess!