JAVAUTVECKLING LEKTION 1

Relevanta dokument
Föreläsning 1. Presentation av kursen Vad är programmering? Lite om java och utvecklingsmiljöer Aktivitetsdiagram Ett första program

Inledande programmering med C# (1DV402) Introduktion till C#

OOP Objekt-orienterad programmering

Introduktion till programmering

Föreläsning 2. Operativsystem och programmering

TDIU01 (725G67) - Programmering i C++, grundkurs

Inledande programmering med C# (1DV402) Introduktion till programmering

Grundkurs i programmering - intro

Program & programmering

Föreläsning 1: Intro till kursen och programmering

Föreläsning 1: Intro till kursen och programmering

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock

Introduktion till programmering. Programspråk och paradigmer

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

SMD 134 Objektorienterad programmering

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

OOP F1:1. Föreläsning 1. Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning. Marie Olsson

Lektion Java Grunder. Javas historia. Programmeringsspråket Java. Skillnaderna mellan Java och C++ JVM (Javas Virtuella Maskin)

Introduktion till programmering, hösten 2011

SKOLFS. beslutade den -- maj 2015.

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare

Editering, Kompilering och Exekvering av Javaprogram

DALVIK VIRTUAL MACHINE

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator

Föreläsning 5 5DV086 - Programspråk

Övning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program

NetBeans 7. Avsikt. Projektfönster

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Introduktion till programmering och Python Grundkurs i programmering med Python

Föreläsning 1: Introduktion till kursen

Verktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.

NetBeans 5.5. Avsikt. Projektfönster

Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1

Innehålls förteckning

INSTALLATIONSGUIDE TILL ANDROID UTVECKLINGSMILJÖ

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

TDDC77 Objektorienterad Programmering

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Programmering i C++ Kompilering från kommandoraden

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:

Javautvecklare. Utbildningsfakta. 400 YH-poäng, 2 år

Kursupplägg. Examination. Föreläsning 1: Intro till kursen och. Kursmaterial. programmering. Kursboken: Programmera med a multimedia approach

Objektorienterad programmering, allmänt

SKOLFS. beslutade den XXX 2017.

Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt. Vilka egenskaper vill vi att våra program ska ha?

Mjukstart i programmering

IT OCH PROGRAMMERING I SKOLAN. Jan Erik Moström Peter Vinnervik

Föreläsning 1: Introduktion till kursen

Föreläsning 1: Introduktion till kursen

Objektorienterad programmering

Objektorienterad Programmering DAT043. Föreläsning 1 15/1-18 Moa Johansson

Imperativ programmering

Objektorienterad programmering Föreläsning 2

Föreläsning 3. Programmering, C och programmeringsmiljö

Undervisningen i ämnet programmering ska ge eleverna förutsättningar att utveckla följande:

Föreläsning 3. Programmering, C och programmeringsmiljö

Översikt. Programmering tillämpningar och datastrukturer. Vad kursen täcker. Lärare. Rekommenderad litteratur. Kursmål 729G58 (HKGBB7)

Studentportalen UNIX-konton (systemansvariga P4118) Lärare: Anna Eckerdal,

En livsmedelsbutik på Internet

Java Introduktion. Historik. Beståndsdelar

JAVAUTVECKLING LEKTION 4

Objektorienterad programmering i Java

Objektorienterad programmering

Kursplanering Objektorienterad programmering

Kurskatalog 2010 INNEHÅLLSFÖRTECKNING

Studentportalen UNIX-konton (systemansvariga P4118) Lärare: Tom Smedsaas,

Imperativ programmering. Föreläsning 4

Objektorienterad programmering i Java I

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Översikt 732G11 PROGRAMMERING 1. Personal. Kursens mål. Litteratur. Kursens innehåll

Att använda Java SE JDK 6

Universe Engine Rapport

Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket?

Programmering från början

Objektorienterad programmering Föreläsning 12. Copyright Mahmud Al Hakim

Skadlig kod med Java i mobiltelefoner

Kurs-PM HI2011, Programutveckling i funktionella och objektorienterande spra k, P3 VT17

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo

Informatik med systemvetenskaplig inriktning A, 30 högskolepoäng Informatics, Basic Course, 30 Credits

Microsoft Visual Studio 2017

PROGRAMMERING ÅK 9 INTRODUKTION

OBS! All teori i detta och följande dokument kompletteras med genomgångar på lektionerna. Så det är viktigt att närvara och göra egna anteckningar.

Föreläsning 1 & 2 INTRODUKTION

Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf

1 Språket C Valet av språket C++ för kompendiet. 1.2 Språket. 1.3 Att programmera. 1.4 Hello World Börja programmera

Programmering och begrepp

Föreläsning 1 & 2 INTRODUKTION

Författare: Juha Söderqvist IT-GUI. Version 1.0. Datum

Oracle Certified Expert, Java Platform, Enterprise Edition 6 Web Services Developer

Innehåll. MySQL Grundkurs

Att komma igång. Föreläsning 1

Installationsanvisning för kursens programvara på egen dator

Introduktion till objektorientering. Vad är objektorientering egentligen? Hur relaterar det till datatyper? Hur relaterar det till verkligheten?

Programmera ett dörrlarm. Se video

IT för personligt arbete F6

Att komma igång. Föreläsning 1

Transkript:

JAVAUTVECKLING LEKTION 1 2016 Mahmud Al Hakim mahmud.al.hakim@nackademin.se www.alhakim.se AGENDA Introduktion till kursen Java historik och särdrag Javautvecklarens yrkesroll Installation och konfiguration av olika utvecklingsmiljöer 1

KURSLITTERATUR Java steg för steg Författare: Jan Skansholm ISBN: 9789144085876 Tips Lösningar till övningar och programmeringsuppgifter finns här http://skansholm.com/javasteg/ TIPS! WWW.SOLOLEARN.COM 2

TIPS! WWW.CODECADEMY.COM VAD ÄR PROGRAMMERING? Programmering handlar om att instruera en maskin eller del av en maskin, till exempel en mikrodator, dator, robot eller NC-maskin att utföra ett visst arbete. Personen som utför detta hantverk brukar ofta tituleras programmerare. Maskinen förstår normalt inte programspråket direkt. Detta måste översättas till den maskinkod som maskinen är konstruerad att direkt förstå. Källa: https://sv.wikipedia.org/wiki/programmering 3

OLIKA SLAGS PROGRAMMERING Programmering kan ske på olika abstraktionsnivåer. Närmast hårdvaran, förutom maskinkod, ligger assemblerprogrammering där man använder ett assemblerspråk. Ett sådant språk har i det närmaste en direktöversättning till maskinkod. På nästa nivå kommer allmänna programspråk (engelska: general purpose computer languages) som till exempel C, Pascal och Java. I ett sådant språk motsvarar en sats eller instruktion normalt många instruktioner i maskinspråket. Ett sådant program översätts, kompileras, till maskinkod av en kompilator eller interpreteras av en tolk. Ofta skiljer man också här mellan maskinnära språk som C och högnivåspråk där en större del av funktionaliteten beskrivs abstrakt. Exempel på högnivåspråk: C++, C# och Java. OBJEKTORIENTERAD PROGRAMMERING Objektorienterad programmering (Object Oriented Programming, OOP) är en programmeringsmetod i vilken ett program kan innehålla en varierande uppsättning objekt som interagerar med varandra. De ursprungliga idéerna i metoden (objekt, inkapsling) uppstod i slutet av 1960-talet i programmeringsspråk för simulering. De byggdes sedan på med arv under mitten och slutet av 1980-talet. Denna metod att programmera anses av förespråkarna vara effektiv och kraftfull, speciellt vid konstruktion av större program, eftersom oönskad påverkan mellan programmets olika delar minimeras. Det är också oftare lättare att återanvända programdelar från ett program i ett annat, eftersom begreppen, objektklasserna, ofta blir generella och användbara i olika sammanhang. Källa: https://sv.wikipedia.org/wiki/objektorienterad_programmering 4

TIOBE PROGRAMMING LANGUAGE POPULARITY INDEX Källa: http://www.tiobe.com/tiobe-index/ JAVA Java är ett objektorienterat programspråk som konstruerades av bland andra James Gosling på Sun Microsystems under 90-talet. Ursprungligen kallades språket D, för att sedan ändras till Oak, men Sun bytte slutligen ut namnet ytterligare en gång, och Java presenterades för världen 23 maj 1995. Den nuvarande versionen, Java SE 8 (mars 2014), stödjer inte Windows XP officiellt. Källa: https://sv.wikipedia.org/wiki/java_(programspr%c3%a5k) 5

ORACLE Oracle köpte Sun år 2010 för drygt 63 miljarder kronor. Företagen lyfter framförallt fram operativsystemet Solaris och Java som centrala för affären. Java beskrivs i ett pressmeddelande som "den viktigaste tekniken som Oracle någonsin har köpt". Källa: http://computersweden.idg.se/2.2683/1.225050/oracle-koper-sun JAVA OLIKA PLATTFORMAR Java ME Java Platform, Micro Edition, eller Java ME, är en Java-plattform avsedd för inbyggda system. Målenheter är allt från industriella styrsystem till mobiltelefoner. Java SE Java Standard Edition, är en version av Java som används för skrivbordsoch klient-tillämpningar. Java EE Java Enterprise Edition, en version/plattform med inbyggda ramverk som löser vanliga problemställningar i till exempel avancerade servertillämpningar. 6

DE VIKTIGASTE DESIGNMÅLEN FÖR JAVA Det ska vara enkelt, objektorienterat och bekant. Det ska vara robust och säkert. Det ska ha en arkitekturoberoende och portabel miljö. Det ska kunna exekveras med höga prestanda. Det ska vara tolkat, trådat och dynamiskt. JAVA ÄR PLATTFORMSOBEROENDE Plattformsoberoendet uppnås genom att det färdiga Javaprogrammet kompileras till bytekod istället för till maskinkod. Denna bytekod tolkas och körs sedan i ett vanligt plattformsberoende program, en "virtuell maskin". 7

LITE MER OM JAVA Java skall inte förväxlas med JavaScript, som visserligen också är plattformsoberoende men har ett helt annat ursprung. JavaScript behöver inte förkompileras på samma sätt som Java, utan exekveras direkt av en programtolk. Java klarar av Unicode direkt, till skillnad från många andra programspråk, vilket underlättar användning av språk som inte stöds av andra teckenuppsättningar. Mycket av syntaxen för Java kommer från C och C++. Android applikationer skrivs vanligtvis i Java. LÖNESTATISTIK MED BRUTTOLÖNER PER MÅNAD FÖR EN PROGRAMMERARE Källa: http://www.lonestatistik.se/loner.asp/yrke/programmerare-1001 8

JAVAUTVECKLARE LÖNESTATISTIK Källa: https://statsskuld.se/jobb/lonestatistik/javautvecklare LEDIGA JOBB PÅ PLATSBANKEN (AUG 2016) 9

JAVA FINNS ÖVERALLT Nio miljoner Javaprogramutvecklare runt om i världen Förstavalet för programutvecklare Den främsta utvecklingsplattformen Tre miljarder mobiltelefoner kör Java 100 % av alla Bluray Disc-spelare kommer med Java 125 miljoner tvenheter kör Java Källa: https://www.java.com/sv/about/ VARFÖR JAVA VÄLJS AV PROGRAMUTVECKLARE Java har blivit ovärderligt för programutvecklare eftersom det gör det möjligt för dem att: 1. Skriva program på en plattform och sedan köra det på praktiskt taget alla plattformar 2. Skapa program som kan köras i webbläsare och användas som webbtjänster 3. Utveckla applikationer för serversidan för bland annat onlineforum, affärer, undersökningar och bearbetning av HTML-formulär 4. Kombinera applikationer eller tjänster med Java för att skapa skräddarsydda applikationer eller tjänster 5. Skriva kraftfulla och effektiva applikationer för mobiltelefoner, fjärrprocessorer, mikrostyrenheter, trådlösa moduler, sensorer, gatewayer, konsumentprodukter och i stort sett alla andra elektroniska enheter Källa: https://www.java.com/sv/about/ 10

LADDA NER OCH INSTALLERA JAVA JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html ATT SKAPA ETT JAVA-PROGRAM Man börjar med att tillverka en källfil. Källfilen består av vanlig text som följer Javas syntax. När källfilen är klar måste den kompileras av en kompilator till en bytekodfil. Bytekodfilen kan läsas av Java Virtual Machine (JVM), en emulerad dator eller exekveringsmiljö. Varje dator som kör programmet använder en programtolkare som tar JVM till hjälp för att tolka bytekoden till instruktioner som datorn kan utföra. 11

TEXTREDIGERARE (EDITOR) En textredigerare eller editor är ett datorprogram för att redigera oformaterad text, i den meningen att filen inte innehåller dolda koder för textstorlek, typsnitt och liknande. Sublime Text är ett exempel på en välkänd editor. INTEGRERAD UTVECKLINGSMILJÖ (IDE) En utvecklingsmiljö (engelska Integrated Development Environment, IDE), är ett datorprogram eller en programsvit som vanligtvis innehåller en textredigerare, kompilator, och debugger, tillsammans med ett antal andra funktioner avsedda att underlätta vid programmering. 12

EXEMPEL PÅ UTVECKLINGSMILJÖER FÖR JAVA NetBeans Eclipse IntelliJ IDEA BlueJ NETBEANS 13

ECLIPSE INTELLIJ IDEA 14

BLUEJ ÖVNINGAR FRÅN BOKEN Övning 1.6, sid. 22 Övning 1.7, sid. 22 Övning 1.8, sid. 24 Övning 1.9, sid. 25 Uppgift 1.1, sid. 25 Uppgift 1.2, sid. 26 15