TDT4102 Prosedyreog objektorientert programmering Vår 2016



Like dokumenter
Øving 0 - Xcode TDT4102

TDT4102 Prosedyreog objektorientert programmering Vår 2016

TDT4102 Prosedyreog objektorientert programmering Vår 2016

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

Veileder i bruk av GoodReader

1 Innledning. 2 Fremgangsmåte. 3 Windows - installering. C++ i Unix 1 TDT4102 NTNU

TDT4102 Prosedyre og Objektorientert programmering Vår 2015

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl

Bruk av oppgaver og grupper i

Del 1: Overgang fra gammel hjemmeside til ny hjemmeside

Velkommen til Brother's Keeper 6 for Windows!

- Java kan lastes ned gratis For installasjon, se punktet Hvordan laster jeg ned og installerer Java på min maskin?.

Veileder for opplasting av AKTIV sporlogg til PC

Endringer etter omlegging til ny AD

I denne oppgaven blir du introdusert for programmeringsspråket JavaScript. Du skal gjøre den klassiske oppgaven Hei verden, med en katt.

TDT4102 Prosedyreog objektorientert programmering Vår 2016

2. Beskrivelse av installasjon av SQL Server 2005 og hvordan lage databasen som trengs av administrasjonsprogrammet:

Introduksjon til dataanlegget ved Institutt for informatikk. Marc Bezem Institutt for informatikk Universitetet i Bergen

Kom i gang med programmering i Java

POLITISKE SAKSDOKUMENTER:

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

Brukermanual Scriptor 2006 Side 1 av 7. Brukermanual. Scriptor Copyright AESTON

1. NetBeans IDE: Lage en enkel mobilapplikasjon

Behandling av dokumenter i Microsoft Word. En rask innføring

Kapittel 1. Datamaskiner og programmeringsspråk. 1.1 Programmering

Kom i gang med Python

Installasjon av Skatt

Straffespark Introduksjon Scratch Lærerveiledning

PDF Expert for politikere

TDT4102 Prosedyre og Objektorientert programmering Vår 2015

Komme i gang med Skoleportalen

Brukermanual for nettpublisering. frivilligsentral.no

Obligatorisk oppgave nr. 3 (av 4) i INF1000, våren 2006

Hvordan å lage og publisere ditt personlige visittkort

Huldt & Lillevik Lønn og Personal - System 4. Oppdatering. Personec AS. Veiledningen er oppdatert pr

buildingsmart Norge Guiden

Vanlige spørsmål om EndNote (april 2013)

TASTAVEDEN SKOLE Bruk av PC i skolen

Bruksanvisning for administrasjon av

Debugging. Tore Berg Hansen, TISIP

Shellscripting I. Innhold

Digital hjemmeeksamen PPU

Steg for steg. Sånn tar du backup av Macen din

Uansett hvilken håndbok du benytter vil fremgangsmåten være den samme. I denne veiledningen benytter vi personalhåndboken som eksempel.

Inspiration-Norge. Brukermanual Kidspiration. Se mer på 2

Hei verden Introduksjon Swift PDF

Humanware Companion.

Mac OS X 10.6 Snow Leopard Installerings- og klargjøringshåndbok

Klargjør for dashbord i it s learning

Sørum i Kunnskapsskyen

Installere JBuilder Foundation i Windows XP

Lage en ny spillverden

1. Opprett betalinger uten bruk av mappe 2. Opprett betalinger med bruk av mappe

TI -programvare for grafiske enheter og informasjon om lokalisering

1. Å lage programmer i C++

Først nå starter du programmet Final Cut Express på egen Mac.

Gå til Nedlastninger på menylinjen for Visma Skolelisens og velg Visma Lønn versjon 9.5.

Opprydding og Vedlikehold av Windows

INSPERA - brukerveiledning for student skoleeksamen

Få maksimalt utbytte av WordFinder! Oppstartsguide med nyttige råd og tips.

Brukermanual for Quizbuilder

Den er nettbasert, og man trenger derfor ikke installere et eget program for å bruke den.

Veiledning og oppgaver til OpenOffice Calc. Regneark 1. Grunnskolen i Nittedal

Releaseskriv versjon Vedr. INSTALLASJONSPROSEDYRER. Versjon Pr. 30. MARS 2012 Copyright. Daldata Bergen AS

BRUKERMANUAL Digispiller

Brukermanual for kommuneansvarlig og testleder

Jo, Boka som snakker har så mange muligheter innebygget at den kan brukes fra barnehagen og helt opp til 10. klasse.

Komme igang med App Inventor Introduksjon App Inventor PDF


Bruk av it s learning

JOBOFFICE POCKETLINK FOR ANDROID Installasjons- og klargjøringsprosedyre, del 1

Kom i gang med SKYLAGRING. Frå Serit Fjordane IT

Oppdatere, sikkerhetskopiere og gjenopprette programvare

Spøkelsesjakten. Introduksjon

Vanlige spørsmål om EndNote (september 2015)

Google Chrome. Microsoft Edge. Mozilla Firefox. Internet Explorer. Opera. Safari

Installasjon og Oppsett av Weather Display Denne artikkelen er ment å være en hjelp til å laste ned, installere og sette opp Weather Display.

Informasjon for nye brukere (for administratorer) Mars 2014, 3. utgave

Introduksjon til Min Sky -

Hvor og hvordan lagrer du mediafilene dine?

Programvareoppdateringer Brukerhåndbok

Introduksjon til. For studenter ved NTNU

1. Å lage programmer i C++

Start med DesignaKnit Skrevet av Camilla Angelsen

Velkomment til å installere BAS21

Kjøre Wordpress på OSX

Fra datax til Visma eaccounting

BRUKERMANUAL TELEFONRÅD BESLUTNINGSSTØTTE FOR MEDARBEIDERE VED LEGEVAKTER OG ALLMENNLEGEKONTOR. Kontaktadresse:

Kjenner du alle funksjonene på tastaturet?

Guide for tilkobling til HIKT s Citrix løsning

GruNot '95. Notatsystem for gruppeterapi. Versjon

1. Programmering: Hva og hvorfor? Scratch fra scratch Enkel programmering for nybegynnere

Skilpaddefraktaler Erfaren Python PDF

Installasjonsveiledning av Faktura Z

FTP Info til brukerne

To-skjermløsning ved bruk av tynnklient

Forstå alternativene for service og kundestøtte

Transkript:

Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyreog objektorientert programmering Vår 2016 Øving 0 for Mac Frist: Ingen (frivillig øving) Mål for denne øvingen: Bli kjent med programmeringsverktøy Lage et første program kun med teksteditor og kompilator Lage et første program med Xcode Denne øvingen er mer en veiledning i hvordan å lage et program. Målet er å veilede deg gjennom prosessen å lage et første program. Hvis du gjennomfører denne øvingen og blir fortrolig med skriving, kompilering og kjøring av egne program vil du komme fortere i gang med de obligatoriske øvingene. I denne øvingen går første del ut på å kode ved hjelp av en vanlig teksteditor og kompilere fra kommandolinjen. NB: Denne øvingen er utformet på basis av Xcode 6 og 7. Dersom du bruker Xcode 4 eller 5 skal det meste være likt. Dersom du bruker Xcode 3 eller tidligere anbefales det sterkt at du oppgraderer til en nyere versjon, eller benytter Windows-maskinene på datasal for å løse oppgavene. Du kan sjekke hvilken versjon av Xcode du kjører ved å velge Xcode About Xcode i menylinjen. Aktuelle kapitler i boka: Kap. 1 (1.1 og deler av kap 1.3) i Absolute C++ (Walter Savitch) Side 1 av 7

Oppgave 1 Bli kjent med kompilatoren Skriving av kildekode og kompilering kan i prinsippet gjøres med enkle verktøy. En helt vanlig teksteditor 1 er alt du trenger for å skrive kode, og kompilering kan gjøres ved å kjøre kompilatoren fra terminalen. Før du gjør denne oppgaven, skal du installere Xcode. Dette kan gjøres fra Mac App Store. Dersom du installerte Xcode for en stund siden, anbefales det sterkt at du oppgraderer til siste versjon av programvaren. I denne oppgaven kan du f.eks. bruke kildekoden som er vist nedenfor dette avsnittet eller du kan skrive av andre eksempler i boken. Kopier og lim det som er mellom strekene. // Dette er et helt enkelt program som du kan kopiere og bruke i // denne oevingen. #include <iostream> int main() { std::cout << "Hello World!" << std::endl; return 0; } Oppgave 1.1 - Lagring av egen kildekode 1. Start en vanlig teksteditor. Kopier og lim inn eksemplet over. Opprett en ny katalog på hjemmeområdet ditt og lagre filen din der, for eksempel med navnet HelloWorld.cpp. Sjekk mappen hvor filen din er lagret, og forsikre deg om at den er der og har riktig navn. 2. Det er vanlig konvensjon at kildekodefiler for C++ har filtypenavnet (delen av filnavnet etter punktum) cpp. Ved å bruke riktig filtypenavn oppnår du at mange verktøy automatisk skjønner at filen inneholder C++-kode. Hvis du bruker et annet filtypenavn kan det hende at du ikke får kompilert koden. Oppgave 1.2 - Kompilering fra kommandolinjen på Mac NB! Avhengig av versjon av Xcode og OS X kan du være nødt til å legge inn «Command Line Tools» før du går i gang med denne oppgaven: 1. Start Xcode 1 Her kan du blant annet bruke TextWrangler (http://www.barebones.com/products/textwrangler/) eller TextEdit, som følger med OS X. Dersom du skal bruke TextEdit må du velge Format Make Plain Text fra menylinjen før du begynner å skrive. Side 2 av 7

2. Gå til Xcode Preferences i menylinjen. 3. Velg Downloads, så Components. 4. Dersom det finnes en linje for «Command Line Tools», klikk på Install (eller tilsvarende ikon) på denne linjen. Hvis denne linjen ikke finnes, har du allerede de nødvendige verktøyene installert. 5. Følg instruksene, og la Xcode fullføre installeringen. Vi er nå klare for å kompilere fra kommandolinjen. 1. Start opp et terminalvindu. Terminalen finner du i Applications Utilities Terminal i Finder. 2. Terminalvinduet starter i hjemmemappen din. Dersom du ikke lagret HelloWorld.cpp direkte i hjemmemappen din, må du flytte deg til riktig mappe. Dette gjør du med kommandoen cd (change directory). Hvis du for eksempel la filen i «Dokumenter»- mappen din, vil du måtte skrive: cd Documents Du befinner deg nå i «Documents»-mappen din. (Merk at dersom du kjører norsk utgave av OS X vil denne, og tilsvarende mapper som «Pictures», alltid ha engelsk navn, uavhengig av hva den heter når du ser den i Finder.) 3. Skulle filen befinne seg i en undermappe, gjentar du cd-kommandoen, denne gangen med navnet til undermappen, for å gå videre dit. Ønsker du å sjekke hvilken mappe du befinner deg i, kan du gjøre dette med kommandoen pwd. Dersom du skriver kommandoen cd uten noe etterpå (det vil si uten noen argumenter) vil du bli returnert til hjemmemappen din. Ønsker du å gå til mappen over den du befinner deg i, kan du skrive cd.. (to punktum). «Over» refererer her til over i mappehierarkiet. Befinner du deg i mappen /Users/dittbrukernavn/Documents/tdt4102, vil mappen over være /Users/dittbrukernavn/Documents. 4. Skriv kommandoen ls (list) for å se hvilke filer (eller mapper) som ligger i mappen du befinner deg i. 5. Har du funnet fram til mappen der HelloWorld.cpp ligger, er du klar til å kompilere programmet. Kompilatoren som følger med Xcode heter clang++, og du bruker denne til å kompilere programmet ditt ved å skrive: clang++ HelloWorld.cpp 6. Sjekk nå innholdet av mappen med ls, og se hvilke filer som ble produsert da du kompilerte. a.out-filen er programmet ditt. Kjør programmet du har laget ved å skrive./a.out. 7. Rediger teksten i HelloWorld.cpp slik at programmet skriver ut noe annet (husk å ha med hermetegnene rundt teksten). 8. Kompiler og kjør på nytt. Side 3 av 7

Oppgave 1.3 - Hva skjer hvis koden min er feil? En god del av tiden du bruker på å gjøre øvinger vil bestå i å finne ut hva som er feil i koden din. En type feil er syntaktiske feil som resulterer i kode som ikke vil kompilere. Hvis du prøver å kompilere kode som ikke er riktig skrevet vil kompilatoren gi deg feilmelding(er) som inneholder informasjon om hva som kan være galt. Noen ganger er dette forståelig informasjon, andre ganger kan det være vanskeligere å skjønne feilmeldingene. Du skal nå med vilje «ødelegge» koden din ved å endre på småting, og deretter observere hva slags feilmeldinger du får når du kompilerer. Du kan for eksempel gjøre følgende: 1. Fjern semikolonet på slutten av linjen std::cout << "Hello World!" << std::endl; 2. Lagre filen, kompiler og sjekk feilmeldingen du nå får. Forstår du feilmeldingen? 3. Husk å rette opp filen igjen før du går videre. 4. Introduser andre feil og les feilemeldingene som kompilatoren gir. Du kan f.eks. prøve å slette en av krøllparantesene, skrive cout som cut osv. 5. Les feilmeldingene du får og rett opp slik at filen din blir riktig igjen etterpå. Noen tips til å forstå feilmeldinger fra kompilatoren: En feilmelding fra kompilatorene g++ og clang++ er vanligvis på formen kildekode.cpp:7:5: error: st has not been declared st::cout «"Hello World!" «std::endl; Første del, kildekode.cpp:8:5, inneholder filnavnet til filen der feilen befinner seg, samt to tall. Det første tallet er linjenummeret der kompilatoren tror feilen befinner seg, mens det andre tallet er hvor mange tegn inn på linjen den tror feilen ligger. Kompilatoren har ikke alltid rett i på hvilken linje feilen ligger. Ofte er det snakk om «følgefeil» fra en tidligere linje. Når du får opp mange feilmeldinger på én gang, lønner det seg ofte å se på de første feilmeldingene. Etter linje- og tegnnummeret står det hvilken type feilmelding det er snakk om. Dette kan enten være «error», «warning» eller «note». En «error» vil avbryte kompileringen uten at kompilatoren produserer en programfil. Dersom du får en «warning» eller en «note» vil kompileringen fortsette, men disse indikerer at koden din gjør noe du antakelig ikke vil at den skal gjøre. Husk at selv om koden din kompilerer, er det ikke sikkert at det resulterende programmet virker slik du vil! Får du en «warning» eller «note» når du kompilerer, bør du ta en ekstra kikk på koden din før du programmerer videre. Deretter følger beskrivelsen av feilen, ideelt uttrykt på en forståelig og ikke altfor generell måte. For mindre feilmeldinger som er grunnet i syntaksfeil og andre småfeil vil beskrivelsen vanligvis være konsis og forståelig, men når man begynner å bruke mer avanserte deler av C++ kan den være vag eller til og med direkte misledende. Da kan det være lurere å gå grundig gjennom koden i nærheten av der feilen oppstod og se om man ser en feil. Side 4 av 7

Etter dette kommer et utdrag av koden der kompilatoren tror feilen ligger. Feilmeldinger fra C++-kompilatoren kan være vanskelig å forstå, særlig når de er misvisende. Ikke sitt og dra deg i håret av den grunn! Både studassen din, emnets diskusjonsforum på It s learning og nettressurser som stackoverflow.com er uvurderlige hjelpemidler når det ser aller mest håpløst ut. Oppgave 2 - Programmering med Xcode I denne oppgaven skal vi lære å skrive og kjøre enkle programmer i Xcode. Dersom du ikke enda har installert Xcode, kan du gjøre dette i Mac App Store. Oppgave 2.1 - Start opp Xcode 1. Start Xcode, som du finner i «Applications»-mappen din. 2. Opprett et nytt prosjekt av typen OS X Application Command Line Tool. Trykk neste. 3. Veiviseren ber deg nå fylle ut en rekke felter. Her skal du skrive inn et produktnavn, f.eks. «Oving0» eller «HelloWorld». Organisasjonsnavn og organisasjonsidentifikator skal også fylles ut her betyr det ikke noe hva du skriver. Pass på å velge C++ fra språkmenyen. Lagre prosjektet i en egnet mappe på hjemmeområdet ditt. 4. Xcode har nå opprettet et prosjekt og en standard kildekodefil kalt main.cpp. Disse skal vi ikke benytte oss av. Høyreklikk på main.cpp i sidelinjen, og velg Delete, og deretter Move to Trash. 5. I sidelinjen har du nå et prosjekt med navnet du valgte i veiviseren. Dette prosjektet har to mapper under seg: en med navnet «Products», og en med samme navn som prosjektet. Høyreklikk på sistnevnte mappe, og velg New file. 6. Fra menyen du nå får opp skal du velge OS X C++ File. Trykk Next, og gi filen navnet HelloWorld.cpp. 7. Du skal nå ha denne filen åpen i Xcode. For ordens skyld: det ble laget to filer nå, men ignorer.h- eller.hpp-filen enn så lenge. 8. Kopier inn kildekoden fra oppgave 1 erstatt alt som ligger i HelloWorld.cpp fra før. 9. Sjekk i Finder hvor filen HelloWorld.cpp ble lagret. De andre filene som Xcode oppretter trenger du ikke bry deg om. 10. Kompiler programmet ditt uten å kjøre det ved å trykke Product Build i menylinjen (hurtigtast: CMD+B). 11. Kompilering etterfulgt av kjøring av programmet i Xcode gjøres ved å trykke på «play»- knappen) øverst til venstre i Xcode (hurtigtast: CMD+R). Gjør dette nå. Side 5 av 7

12. Du ser at programmet kjører og skriver ut teksten «Hello World!» i bunnen av programvinduet. Gratulerer! NB: Når du kompilerer programmer i Xcode vil det lages en programfil, som havner på et litt annet sted enn prosjektet ditt. For å finne denne, åpner du mappen «Products» i sidelinjen. Inni denne mappen ligger det et objekt med samme navn som prosjektet ditt og med et svart «terminalikon». Høyreklikk på dette objektet og velg Show in Finder for å finne ut hvor det ligger. Oppgave 2.2 - Kompileringsfeil i Xcode Prøv å introdusere de samme feilene som du testet i Oppgave 1.3, og se hvor feilmeldingene blir skrevet ut. (Hint: Klikk på varseltrekanten i sidelinjen på venstre side.) Prøv å klikke på linjer i feilmeldingen og sjekk om Xcode merker linjene i koden din der den tror feilen ligger. Oppgave 3 - Kompilering på UNIX (for interesserte) Siden OS X er en UNIX-variant, er dette egentlig allerede dekket av det vi gjorde i Oppgave 1, men noen småting er verdt å nevne: I Oppgave 1 endte vi opp med en a.out-fil. Navnet på denne filen kan velges ved å legge til -o filnavn på slutten av kommandoen. Vi kan for eksempel skrive følgende: clang++ HelloWorld.cpp -o HelloWorld Denne kommandoen vil produsere en fil med navn HelloWorld, som da kan kjøres med kommandoen./helloworld. I Oppgave 1 brukte vi clang++, siden denne gir hakket mer leselige feilmeldinger, men denne vil ikke alltid være tilgjengelig. Prøv i såfall g++ eller c++ som alternativer. Hvis du vil prøve å kompilere kode på en av NTNU sine servere kan du gjøre følgende: 1. Logg deg på NTNUs Linux-server for studenter ved hjelp av SSH. På Mac kan du gjøre dette ved å åpne terminalen (Applications Utilities Terminal) og skrive ssh login.stud.ntnu.no for å koble til serveren. Skriv deretter inn ditt vanlige NTNUbrukernavn og -passord, begge etterfulgt av Enter. Merk at det av sikkerhetshensyn ikke vil vises tekst når du skriver inn passordet ditt. 2. Lag deg en ny fil ved navn HelloWorld.cpp på et egnet sted, for eksempel med teksteditoren nano. For å lage en ny fil ved hjelp av nano (eller redigere en eksisterende) skriver du nano filnavn Side 6 av 7

Når du er kommet inn i nano bruker du hurtigtastene som vises på bunnen av skjermen. Tegnet ^ betyr «ctrl», så Ctrl+O (^O) utfører kommandoen «WriteOut», som er et annet ord for å lagre. 3. Alternativt: Hvis du i Oppgave 1 lagret HelloWorld.cpp på NTNU-hjemmeområdet ditt, kan du i stedet navigere deg fram til den ved hjelp av cd og gjenbruke den. 4. NTNU-serveren har to C++-kompilatorer installert: clang++ og g++. Hvilken av disse du bruker er vilkårlig, men clang++ er kjent for å gi mer forståelige feilmeldinger. Kompiler HelloWorld.cpp ved å skrive clang++ HelloWorld.cpp eller g++ HelloWorld.cpp 5. Sjekk hva programfilen som ble laget heter og start denne med kommandoen./filnavn (merk punktumet først i kommandoen). 6. Prøv også her å introdusere feil i koden og se på feilmeldingene du får når du kompilerer filen. Side 7 av 7