Difference between revisions of "TIG167"
Line 23: | Line 23: | ||
====10.15 - 12.00 Lecture ==== | ====10.15 - 12.00 Lecture ==== | ||
* Course intro | * Course intro | ||
− | * | + | * Project intro |
==== 13.15 - 15.00 Supervision ==== | ==== 13.15 - 15.00 Supervision ==== | ||
=== Friday 9/11 === | === Friday 9/11 === | ||
Line 34: | Line 34: | ||
=== Monday 12/11 === | === Monday 12/11 === | ||
====Preparation==== | ====Preparation==== | ||
− | ====10.15 - 12.00 Lecture (Android) | + | ====10.15 - 12.00 Lecture (Android) ==== |
* [[Android:Android_basics|Android:Android basics]] | * [[Android:Android_basics|Android:Android basics]] | ||
* [[Android:Resources|Android:Resources]] | * [[Android:Resources|Android:Resources]] | ||
Line 108: | Line 108: | ||
=== Friday 7/12 === | === Friday 7/12 === | ||
====Preparation==== | ====Preparation==== | ||
− | ====10.15 - 12.00 Lecture ( | + | ====10.15 - 12.00 Lecture (Computer) ==== |
− | * | + | * binary representation |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
== Week 6 (w 50)== | == Week 6 (w 50)== | ||
Line 125: | Line 120: | ||
=== Wednesday 12/12 === | === Wednesday 12/12 === | ||
====Preparation==== | ====Preparation==== | ||
− | ====10.15 - 12.00 Lecture ( | + | ====10.15 - 12.00 Lecture (Java) ==== |
− | * | + | * Java, JNI, C |
==== 13.15 - 15.00 Supervision ==== | ==== 13.15 - 15.00 Supervision ==== | ||
− | |||
=== Friday 14/12 === | === Friday 14/12 === | ||
====Preparation==== | ====Preparation==== | ||
− | ====10.15 - 12.00 Lecture ==== | + | ====10.15 - 12.00 Lecture (misc) ==== |
− | + | * compiled or not '''''may be changed''''' | |
== Week 7 (w 51)== | == Week 7 (w 51)== | ||
=== Monday 17/12 === | === Monday 17/12 === | ||
====Preparation==== | ====Preparation==== | ||
− | ====10.15 - 12.00 Lecture ==== | + | ====10.15 - 12.00 Lecture (Java)==== |
+ | * Class loading | ||
==== 13.15 - 15.00 Supervision ==== | ==== 13.15 - 15.00 Supervision ==== | ||
Primary focus: | Primary focus: | ||
=== Wednesday 19/12 === | === Wednesday 19/12 === | ||
====Preparation==== | ====Preparation==== | ||
− | ====10.15 - 12.00 Lecture ==== | + | ====10.15 - 12.00 Lecture (students decide)==== |
==== 13.15 - 15.00 Supervision ==== | ==== 13.15 - 15.00 Supervision ==== | ||
=== Friday 21/12 === | === Friday 21/12 === | ||
====Preparation==== | ====Preparation==== | ||
− | |||
− | |||
− | |||
− | |||
====10.15 - 12.00 Lecture (Misc) ==== | ====10.15 - 12.00 Lecture (Misc) ==== | ||
* C, Arduino | * C, Arduino | ||
− | |||
− | |||
= Schedule 2017= | = Schedule 2017= |
Revision as of 15:21, 25 May 2018
Contents
- 1 Schedule 2018
- 1.1 Preparation
- 1.2 Week 1 (w 45)
- 1.3 Week 2 (w 46)
- 1.4 Week 3 (w 47)
- 1.5 Week 4 (w 48)
- 1.6 Week 5 (w 49)
- 1.7 Week 6 (w 50)
- 1.8 Week 7 (w 51)
- 2 Schedule 2017
- 2.1 2017-11-01
- 2.2 2017-11-06
- 2.3 2017-11-08
- 2.4 2017-11-10
- 2.5 2017-11-13
- 2.6 2017-11-15
- 2.7 2017-11-20
- 2.8 2017-11-22
- 2.9 2017-11-24
- 2.10 2017-11-27
- 2.11 2017-11-28
- 2.12 2017-11-30
- 2.13 2017-12-01
- 2.14 2017-12-04
- 2.15 2017-12-06
- 2.16 2017-12-11
- 2.17 2017-12-13
- 2.18 2017-12-15
- 2.19 2017-12-18
- 2.20 2017-12-20
Schedule 2018
Preparation
Make sure you (still) know Java
The following chapters (and their corresponding exercises) are recommended that you read in order to be prepared for this course:
- Chapter:Classes - Static members
- Chapter:Classes - final members
- Chapter:Classes - Using packages
- Chapter:Interfaces - Introduction
- Chapter:Interfaces - Implementing an interface
- Chapter:Exceptions - What is it
- Chapter:Exceptions - Two main types
- Chapter:Exceptions - Code examples
Install software
- Misc tools:Software used
- Android Studio: Android:Setting up your development environment
Week 1 (w 45)
Wednesday 7/11
Preparation
10.15 - 12.00 Lecture
- Course intro
- Project intro
13.15 - 15.00 Supervision
Friday 9/11
Preparation
10.15 - 12.00 Lecture
- Web basics
13.15 - 15.00 Supervision
Week 2 (w 46)
Monday 12/11
Preparation
10.15 - 12.00 Lecture (Android)
13.15 - 15.00 Supervision
Primary focus:
Wednesday 14/11
Preparation
10.15 - 12.00 Lecture (server)
- Workshop Punk API - Fetching JSON and Parsing JSON, only the following sections:
13.15 - 15.00 Supervision
Friday 16/11
Preparation
10.15 - 12.00 Lecture (Java)
Java - Set and Map (Full playlist) | Java - Set and Map 1 | Java - Set and Map 2 | Java - Set and Map 3 | Java - Set and Map 4 | Set and Map (PDF)
Week 3 (w 47)
Monday 19/11
Preparation
10.15 - 12.00 Lecture (Java)
- ListView
- Network
13.15 - 15.00 Supervision
Primary focus:
Wednesday 21/11
Preparation
10.15 - 12.00 Lecture (server)
- winstone, servlet, http response
13.15 - 15.00 Supervision
Friday 23/11
Preparation
10.15 - 12.00 Lecture (Design Patterns)
- Factory
- Singleton
Week 4 (w 48)
Monday 26/11
Preparation
10.15 - 12.00 Lecture (Java)
13.15 - 15.00 Supervision
Primary focus:
Wednesday 28/11
Preparation
10.15 - 12.00 Lecture (server)
- JSON, creating
13.15 - 15.00 Supervision
Friday 30/11
Preparation
10.15 - 12.00 Lecture (Design Pattern)
- Builder
Week 5 (w 49)
Monday 3/12
Preparation
10.15 - 12.00 Lecture (Java)
- path
- time
13.15 - 15.00 Supervision
Primary focus:
Wednesday 5/12
Preparation
10.15 - 12.00 Lecture (Java)
- enum
- nio
13.15 - 15.00 Supervision
Friday 7/12
Preparation
10.15 - 12.00 Lecture (Computer)
- binary representation
Week 6 (w 50)
Monday 10/12
Preparation
10.15 - 12.00 Lecture (Java)
- Java, JNI, C
13.15 - 15.00 Supervision
Primary focus:
Wednesday 12/12
Preparation
10.15 - 12.00 Lecture (Java)
- Java, JNI, C
13.15 - 15.00 Supervision
Friday 14/12
Preparation
10.15 - 12.00 Lecture (misc)
- compiled or not may be changed
Week 7 (w 51)
Monday 17/12
Preparation
10.15 - 12.00 Lecture (Java)
- Class loading
13.15 - 15.00 Supervision
Primary focus:
Wednesday 19/12
Preparation
10.15 - 12.00 Lecture (students decide)
13.15 - 15.00 Supervision
Friday 21/12
Preparation
10.15 - 12.00 Lecture (Misc)
- C, Arduino
Schedule 2017
2017-11-01
13:00 - 15:00 (föreläsning)
Inga förberedelser behövs. Vi går igenom:
- kursen
- pedagogiken
- projekt
Submissions
Upload project proposal (pdf, txt) including:
- name of project participants
- goal
- intended users
- techniques used (such as network, database...)
- how the project scales (important that you can finish at least some parts, and then this part, and then this part...)
2017-11-06
10:00 - 12:00 (föreläsning)
Inga förberedelser behövs
13:00 - 15:00 (handledning)
- Prio 1: installation av Android Studio avklarat
- Prio 2: en Hello world-app skall gå att skapa, köra på mobil/platta och i emulator
- Prio 3: Exercises on Android Basics
- vad ni vill
2017-11-08
10:00 - 12:00 (föreläsning)
13:00 - 15:00 (handledning)
- Exercises on Adding views
- Exercises on Resources
- vad ni vill
2017-11-10
10:00 - 12:00 (handledning)
- vad ni vill
2017-11-13
10:00 - 12:00 (föreläsning)
13:00 - 15:00
- Handl
2017-11-15
10:00 - 12:00 (föreläsning)
- Structure a project's code into smaller modules
- Android:Network (Volley)
- Android:Storage
13:00 - 15:00
- Handl
2017-11-20
Föreberedelser (Exceptions-delen)
Läs:
- Using exceptions while protecting tiers/reducing coupling
- Repetition: Java Exceptions (frivillig läsning)
Se:
Frivillig videorepetition: Se frivillig läsning ovan!
10:00 - 12:00 (föreläsning)
- Genomgång hur (och vad) ni bör repetera: Programming_with_Java
- Exceptions PDF (18 sidor)
- Strukturera din kod ... ännu mer
- Tips för att komma igång
2017-11-22
10:00 - 12:00
- Handl
13:00 - 15:00 (föreläsning)
- Hur skickas data mellan app och server?
- Network:Introduction
- HTTP
- vi rekommenderar: MoreBash:Network_Tools och MoreBash:Exercises_-_Network_Tools
- Test - why test at all?
- Unit Test / instrumented test
- Android:Test
2017-11-24
10:00 - 12:00
- Handl
2017-11-27
10:00 - 12:00
* Förel
2017-11-28
10:00 - 12:00 (föreläsning)
-
FOSS (c), licens osv - enum
- Classloading
- Static or non static
-
Genomgång av Chat-server/Chat-klient -
Data strukturer (förmodligen nästa gång)- list - ordered/sequential elements
- set - making sure we have a unique collection
- map - finding unique keys when "normalizing XML to database"
- stack - browser (back/forward), android Activity back stack, call stack
- queue - probably skipping this one
- tree -
- hash table
- hash maple
- binary search tree vs. binary search (on an ordered list)
- hashcode()
2017-11-30
10:00 - 12:00
- Handl
2017-12-01
10:00 - 12:00 (föreläsning)
- FOSS (c), licens osv
- enum
- Classloading
- Static or non static
- Genomgång av Chat-server/Chat-klient
- Data strukturer (förmodligen nästa gång)
- list - ordered/sequential elements
- set - making sure we have a unique collection
- map - finding unique keys when "normalizing XML to database"
- stack - browser (back/forward), android Activity back stack, call stack
- queue - probably skipping this one
- tree -
- hash table
- hash maple
- binary search tree vs. binary search (on an ordered list)
- hashcode()
13:00 - 15:00
- Handl
2017-12-04
10:00 - 12:00 (föreläsning)
Vi kikade på: JNI som, enligt wikipedia; The Java Native Interface (JNI) is a programming framework that enables Java code running in a Java Virtual Machine (JVM) to call and be called by[1] native applications (programs specific to a hardware and operating system platform) and libraries written in other languages such as C, C++ and assembly.
Vi kunde inte spela in föreläsningen. Sorry!
JNI
- Kod finns här: progund/programming-with-c/tree/master/jni
- Koncept som var lite nya för er i C-delen, med en länk till vårt material:
- function pointer: [Function pointers in C and C++
- shared lib (inget skrivet om detta. Sorry, vi skriver fram emot mars)
- macro (#ifdef, LOG ...): (inget skrivet här heller... shame on you Mr Bush)
- Koncept som var lite nya för er i C-delen, med en länk till vårt material:
Chat client
- Vi gick igenom koden: progund/web-misc/tree/master/chat-client/c
Förkunskaper: Networking (and web)
2017-12-06
10:00 - 12:00
- Handl
13:00 - 15:00
- Handl
2017-12-11
10:00 - 12:00 (föreläsning)
- Hur skapar man ett id klient-koden om detta id skall vara unikt för alla (andra klienter, servern...)
- Ett alternativ till cache via databas:
- serializing och går vidare till
- Product, ObjectCache, ObjectCacheException och Session
- Vi kikar lite snabbt på: Serializable, Generics
2017-12-13
13:00 - 15:00
- Handl
2017-12-15
10:00 - 12:00
- Handl
2017-12-18
10:00 - 12:00
- Handl
13:00 - 15:00
- Handl
2017-12-20
10:00 - 12:00
- Handl
13:00 - 15:00
- Handl