• No results found

Lektion 1 (introduktion)

N/A
N/A
Protected

Academic year: 2021

Share "Lektion 1 (introduktion)"

Copied!
32
0
0

Loading.... (view fulltext now)

Full text

(1)

Programmering 1

Mathias Magnusson

Lektion 1

(2)

Programmering

Programmering 1 (100p) (PRRPRR01)

Programmering 2 (100p) (PRRPRR02)

Vad säger skolverket?

http://www.skolverket.com/cm/2.10/laroplaner-amnen-och-kurser/

gymnasieutbildning/gymnasieskola/sok-amnen-kurser-och-program/ subject.htm?subjectCode=PRR&lang=sv&tos=gy

(3)

Programmering 1

Eclipse – IDE (Integrated Development Environment)

JDK – Paket för utveckla javaprogram (Java Development Kit)

JRE – Program för att köra javaprogram (Java Runtime Environment)

JavaJavisst+ - Kurslitteratur

(Delas ut under kursens gång, finns digitalt via kurshemsida.)

(4)

Programmering 1

Resurser: Googlesite:

https://sites.google.com/site/programmering1bergagymnasiet/

Luvit:

(5)

Programmering 1

Examination:

Projektuppgifter (1-2 st)

Teoretiskt prov

Praktiskt prov

Vad vill ni?

(6)

Programmering 1

Vad kräver jag av er? • Engagemang

• Intresse • Ansvar

(Arbeta hemma)

(7)

Programmering 1

Lektionerna:

• Genomgång

• Exempel (gemensamma)

• Övningar (enskilt)

(8)

Vad är programmering?

• Algoritm

= en begränsad

uppsättning väldefinierade

instruktioner för att lösa en

uppgift

Abu Abdullah Muhammed bin Musa al Khwarizimi

(9)

Algoritm

Sockerkaka:

Sätt ugnen på 175 grader Vispa följande saker:

2 ägg, 2 kp socker, 2 kp mjöl, 2 tsk bakpulver, 50 g smör, 1 dl mjölk Sätt in i ugnen Grädda i 40 min Ta ut och njut Lätt att förstå för en människa?

(10)

Programmering

Dator klarar maskinkod (ettor och nollor)

Vi skriver program som med algoritmer (i ord

eller som graf) och skriver källkod

(11)

Programmeringsspråk

C, C++, C# ,Visual Basic, Java, Objective-C,

Ada, Fortran, Pascal, Scala, mm

Skillnader och likheter?

Givetvis! (Både i struktur, funktion och

syntax.)

(12)

Hur fungerar programmering?

/* *Källkod skriven i *ett *programmerings-*språk */ Kompilering 11000100 11100111 01110011 11110001 Programmet körs! MittProgram.cpp källkod MittProgram.exe

maskinkod

Exekvering

Maskinkoden fungerar snabbt, men bara för en viss plattform.

(13)

Programmering med Java

/* *Källkod skriven i *ett *programmerings *språk */ Kompilering 1100 1110 0111 1111 Programmet körs! MittProgram.java källkod MittProgram.class

Bytekod Exekvering (java.exe) Kompilator (javac.exe) JVM Java är plattformsoberoende

(14)

Hur fungerar programmering?

Källkod

Kompilator

Maskinkod

Källkod

Kompilator

Javabytekod

Interpretator (tolk)

(15)

Java

Sun Microsystem (1995) (Uppköpt av Oracle 2010) Anpassat för Internet

Applets – små program, körs via webbläsare Android (2008- ) Olika javaprogram: • Konsolprogram • GUI-applikationer • Applets • Android

(16)

Java

Fördelar:

• Plattformsoberoende

– kan köras på olika OS utan att programmet måste skrivas om

• Grafiska användargränssnitt

– behöver ej skrivas om för olika OS – Kraftfulla grafiska verktyg

(17)

Java

• Objektorienterat

– Programmen består av objekt (klasser) som samverkar. – Grafiska verktygen är objekt

Ex Kortspel

: •Kort •Kortlek •Spelregler •Spelomgång •Grafik

Alla dessa delar är s k objekt

(18)

Java

• Applets

– Små program som körs genom webbläsare, t ex filläsning, client/server

• Open-source • Android

Nackdelar:

• Något långsammare att exekvera (köra) än traditionellt programmeringsspråk, t ex C++

(19)

Java

Svårt?

Bygger på C++, tagit bort pekarfunktionen

vilket gör det lättare att förstå

Automatisk Garbage Collector

Måste lära sig Javas standardklasser

(enormt klassbibliotek)

(20)

Java

J2SE (Java 2 Platform Standard Edition) (J2ME, J2EE)

Sun har utvecklat standardklasspaket Gratis från Internet

(21)

Java

(22)

Utvecklingsmiljö (IDE)

IDE – integrated development environment Ex: Eclipse (Skolan) (C, C++, Java)

Netbeans (Java, C++)

Visual Studio (ej java, Visual Basic, C, C#, C++) Eclipses hemsida – www.eclipse.org

(23)

Programmall

class MittProgram_Mall {

public static void main(String[] arg) {

} }

(24)

Utskrift till konsolfönster

class MittProgram {

public static void main(String[] arg) {

System.out.println(”Gör en utskrift.");

} }

(25)

Lite skrivsätt

System.out.println(”Det du vill skriva ut”);

Skriver ut det som står innanför ” ” och hoppar till ny rad.

System.out.print(”Det du vill skriva ut”);

Skriver ut det som står innanför ” ” utan att hoppa till ny rad.

(26)

Programuppbyggnad

public class Utskrift {

public static void main(String [ ] args) {

System.out.println(”Mathias”); System.out.print(”Mathias”); System.out.println(”Mathias”);

} }

Hoppar till ny rad

Hoppar INTE till ny rad

(27)

Variabler och inmatning

Måste kunna hantera data i programmering

Java har olika datatyper för heltal,

decimaltal, tecken, teckensträngar, bitar,

stora och små tal.

(28)

Variabler och inmatning

Variabeldefinition av heltal:

(29)

Variabler och inmatning

Tilldelar en variabel ett värde:

int tal; tal = 10;

= -tecknet kallas tilldelningsoperator och används då variabler ”får” (tilldelas) värden

Du kan också göra allting direkt (definiera och tilldela)

int tal2 = 12;

10 tal

12 tal2

(30)

Utskrift av variabler

Om du vill skriva ut en variabel:

int tal = 4;

System.out.println(”Talet är ” +tal);

int tal1 = 2; int tal2 = 5;

System.out.println(”Summan av talen är ” +(tal1+tal2));

4 tal 2 tal1 5 tal2

(31)

Heltal

class Summera {

public static void main(String[] arg) { int x, y, s; x = 20; y = 23; s = x + y; System.out.println("Summan är "+ s); } }

(32)

Övningar

• Börja att arbeta med kapitel 1 i

JavaJavisst+ (fram till sidan 9)

3 2

References

Related documents

- Is available only on pages that are assigned as error page using the isErrorPage attribute of the page directive. - Implement the javax.lang.Throwable interface - Exception

Den teoretiska delen består av en redogörelse av hur klientbaserad programmering har växt fram, en beskrivning av några av de tekniker som finns för att åstadkomma

Frånkoppling sker genom att det föregående elementet sätts att peka på nästa element och vise versa; dess- utom kontrolleras om elementet som tas bort är det första elementet –

Tabellerna innehåller observerat väntevärde för körtiden, dess variationskoefficient och konfidensintervall med konfidensgrad 95% för samtliga grafinstanser och

NOTE: Java version 7 introduces a catch clause improvement known as final rethrow, which lets you declare a catch clause parameter final in order to throw only those checked exception

• Alla objekt av en viss klass kan användas på samma sätt–de har samma “gränssnitt”. • En definition av en viss klass kan ses som en mall för objekt av

• JDK (Java Development Kit) är ett programpaket som innehåller de olika program och klassbibliotek som man behöver för att utveckla och köra javaprogram.. JDK är

sudo apt-get install libpcsclite1 sudo apt-get install libccid sudo apt-get install pcscd sudo apt-get install pcsc-tools,. sudo apt-get