Programmering, 3 semester (PROG)

Denne plan ændres! Kig på planen ofte. Undlad at udskrive planen (spild af papir)

Uge 35, 26-31.08.2019

Læsestof

Opgaver

  1. Har du den nødvendige software:
  1. Brush Up: Student + Test + Documentation 
    Din løsning skal være i GitHub.
  2. Extra: Hackerrank.com Programmerings-konkurrencer osv etc.

Administration

Uge 36, 02-06.09.2019

Læsning

Opgaver

  1. Calculator part 1: DLL 
  2. Calculator part 2: User interface 
  3. w3schools.com/html play with some [not all] of the "Try it Yourself" (green buttons) examples
  4. Use the W3C HTML validator to validate some web pages like http://anbo-easj.dk/ and https://www.easj.dk/ 
  1. If you find a page with a lot of illegal HTML, try viewing the page in different browsers. Any differences in what you see?
  1. HTML Quiz

Uge 37, 09-13.09.2019

Læsning

Examples

  1. DOM manipulation
  2. W3Schools has a lot of examples on Bootstrap ….

Opgaver

  1. Download and install Visual Studio Code 
  2. Use Visual Studio Code to make a few linked web pages, like a presentation etc.

Do not forget to HTML validate the pages.
Emmet can help create the HTML skeleton: Type !

  1. w3schools.com/css play with some of the "Try it Yourself" (green buttons) examples
  2. Use Visual Studio Code to make an external style sheet. Define some relevant rules.
  3. Link the stylesheet to one or more of your HTM documents.
  4. Add an internal style sheet to one of your HTML documents
  5. Add in-line styles to some of your HTML elements
  6. Upload your web site to Azure. Help!
  7. Validate your CSS
  8. CSS Quiz
  9. Check if your web page is mobile friendly
  10. www.w3schools.com/bootstrap4/ play with some [not all] of the "Try it Yourself" (green buttons) examples
  11. Bootstrap makeover of existing web page

Uge 38, 16-20.09.2019

Læsning

  1. TypeScript in 5 Minutes
  2. Anders Børjesson Intro to TypeScript (PowerPoint)
  3. Anders Hejlsberg: Introducing TypeScript (movie)
  4. Anders Hejlsberg: What's new in Typescript (movie)
  5. TypeScript
  1. Basic Types
  2. Variable Declarations
  3. Functions (only the sections Introduction + Functions)
  4. Iterations and Generators
  1. Jess Chadwick TypeScript Essential Training/Introduction, lynda.com (video)
    Create a Lynda account (if you do not have one)
  2. What is Webpack?
  3. What is npm?
  4. Webpack, a brief introduction to some files ...

Examples

  1. TypeScriptSayHello
  2. DOM manipulation
  3. EventHandling

Opgaver

  1. Install node.js
    We need the Node Package Manager
    npm to download various JavaScript and TypeScript modules
  2. Install the extension TSLint to Visual Studio Code
    TSLint will help you write good (and human readable) TypeScript programs.
  3. Clone (using git) the WebPack template
       Git clone
    https://github.com/dimselab/Webpack-template
    Rename the webpack folder to a more appropriate name for your current project.
    In the command line go into the folder
    yourCurrentProject
    Run “npm install” to get the necessary modules.
    Run “ code .” to start Visual Studio Code
    Run “npm run watch” to ask WebPack to monitor and transpile your file.
  4. Collect Words (TypeScript DOM, event handling, functions, arrays, if statement) | Solution
    Hint:
    Use Chrome Dev Tools to monitor your application, specially the Console
    In Chrome type
    Ctrl+Shift+J
  5. Calculator (TypeScript DOM, event handling, functions, type conversion, switch statement)
  6. Upload your web applications to Microsoft Azure. Help!

Uge 39, 23-27.09.2019

Mandag, Tirsdag: TypeScript: UI test med Selenium + flere eksempler

Onsdag, Torsdag, Fredag: INNO days

Læsning

  1. UI testing web applications (PowerPoint)
  2. TypeScript
  1. Classes
  2. Interfaces
  3. Namespaces (export + import)
  1. W3Schools Collapsible List (JavaScript) | Adapted to TypeScript
  2. Extra: Mario Cart programmed in TypeScript

Examples

  1. TypeScriptSayHello + WebTestSayHello
  2. Pong game
  3. Object carousel (car)
  4. CollapsibeList (static data)

Opgaver

  1. UI testing: Collect Words + Calculator
  2. Make changes to the Pong game
  1. Object carousel: Changes (List version, Person objects)

Uge 40, 30-03.10.2019

TypeScript: Consume REST services using Axios

Første obligatoriske opgave afleveres i Wiseflow senest torsdag 3 oktober.

Læsning

  1. Sebastian Eschweiler Getting Started with Axios
    This is a JavaScript tutorial. We should convert to TypeScript.
  2. GitHub Axios documentation
  3. Travis Horn Building json2table: Turn JSON into an HTML table
  4. Extra: GitHub offers a REST API. Try it. How to display the data?

Examples

  1. My First REST (consuming a simple REST service from TypeScript using Axios)
  2. General REST consumer
  3. Peters Cars (REST GET all, POST, DELETE)
  4. Generic Table
  5. List + detail
  6. Calculator REST (REST POST)

Opgaver

  1. Go through Getting Started with Axios
    This is a JavaScript tutorial. You should convert to TypeScript.
  2. Consume the REST services you made in TEK class
    Like the
    Customer service
  3. High score list for Pong-like game (use REST service)
  4. Object Carousel, make it work with JSON
  5. Collapsible List, make it work with JSON

Uge 41, 07-11.10.2019

TypeScript: Consume REST services using Axios, fortsat

Uge 42, 14-18.10.2019 Efterårsferie

Uge 43 21-25.10.2019

DevOps

Læsning

Examples

Opgaver

  1. Unit test one of your REST controllers.
  2. Make a test in Postman for one of your REST controllers.

Uge 44, 28-01.11.2019

DevOps, fortsat

Læsning

Opgaver

Uge 45, 04-08.11.2019

Sammenhæng: Nu skal TypeScript, REST og database virke sammen.

Uge 46-47, 11-22.11.2019

Examples

  1. UDP broadcast example (Python)
  2. Extra: UDP broadcast sender (C#)
    May be used to broadcast fake measurements (if you don’t have a Raspberry Pi)
  3. Extra: Tamagotchi in the emulator

Læsning

  1. Wikipedia: Internet of Things
  2. Lopez Research An Introduction to the Internet of Things, 2013
  3. Libelium: 50 Sensor Applications for a Smarter World
  4. Introduction to Lora
  5. Internet of Things (slides)
  6. A Tour of the Pi Zero
  7. Getting started with the Sense Hat
  8. Sense HAT API Reference
  9. Python, a very brief introduction
  10. Tutorials Point: Python Quick Guide
  11. Extra: Consuming REST from Python
  12. Extra: Learn more Python3
  1. Tutorials Point: Python Tutorial
  2. Python Software Foundation
  3. Guru99: Python Tutorial for Beginners 
  4. Allen Downey: Think Python, 2nd edition (a full book, 244 pages)
  1. Kurose & Ross: Computer Networks, 6th edition, the section Socket Programming with UDP

Opgaver

  1. Download and install Putty (Putty.exe)
     Putty will enable you to communicate from your laptop to Raspberry Pi: Use the laptop keyboard + screen with the Pi.
    Use the IP address printed at the bottom of the Raspberry Pi
  2. Download and install WinSCP

With WinSCP you can easily move files from Raspberry Pi to your laptop (and vice versa)

  1. Disco and Christmas lights | solution (Christmas) + solution (Disco)
  2. Sensing the environment 
  3. Ball control | solution (joystick) + solution (orientation)
  4. Show the Pi’s IP address on the LED display
  5. Read data and send UDP broadcast.
  6. Use the emulator to program Python

Uge 48-50, 25.11-13.12.2019

Tværfagligt projekt

This project is one of the mandatory study activities mentioned in the curriculum section 14.3.

Wednesday 12.12.2018, 14:00 stop programming. Sync all your code to GitHub. Focus on the systems development report

Uge 51, 16-20.12.2019

Onsdag 18.12.2019

Torsdag19.12.2019

Fredag 20.12.2019

Uge 52, 24-28.12.2019

Jule-ferie + eksamens-forberedelse

Uge 1, 30-03.01.2020

Nytår + eksamens-forberedelse

Uge 2, 10.01.2020

Eksamens-forberedelse.

Spørge-time:

Uge 3, 13-16.01.2020

PROG+TEK eksamen. Detaljeret tidsplan kommer midt december.

Uge 4

SYM eksamen

Uge 5

Re- og syge-eksamen

Uge 6, Monday 03.02.2020

4 semester starter