Difference between revisions of "BITL-CS2"
(Created page with "__NOTOC__ =Introduction to Computer Science II= __NOTOC__ <big> '''Shortcuts:''' Calendar | Assignments | Resources | <...") |
(→Calendar) |
||
Line 28: | Line 28: | ||
* office hours: by appt. |
* office hours: by appt. |
||
=Calendar= |
"=Calendar= |
||
{| border=1 cellspacing=0 cellpadding=4 |
{| border=1 cellspacing=0 cellpadding=4 |
||
Line 35: | Line 35: | ||
! Topic |
! Topic |
||
! Exercises |
! Exercises |
||
|- |
|||
| |
|||
==== 06.01.20 ==== |
|||
| |
|||
'''Course Introduction''' |
|||
Introduction to the course. Syllabus. |
|||
| |
|||
|- |
|||
| |
|||
==== 08.01.20 ==== |
|||
| |
|||
'''IDE Setup. Scala Introduction''' |
|||
| |
|||
|- |
|||
| |
|||
==== 10.01.20 ==== |
|||
| |
|||
'''Scala Types and Reading Files''' |
|||
| |
|||
|- |
|||
| |
|||
==== 13.01.20 ==== |
|||
| |
|||
'''''' |
|||
| |
|||
* '''Lab Activity 1''' |
|||
|- |
|||
| |
|||
==== 15.01.20 ==== |
|||
| |
|||
'''Unit Testing''' |
|||
| |
|||
|- |
|||
| |
|||
==== 17.01.20 ==== |
|||
| |
|||
'''Classes and Objects''' |
|||
| |
|||
|- |
|||
| |
|||
==== 20.01.20 ==== |
|||
| |
|||
'''Model of Execution 1''' |
|||
| |
|||
* '''Lab Activity 2''' |
|||
|- |
|||
| |
|||
==== 22.01.20 ==== |
|||
| |
|||
'''Model of Execution 2''' |
|||
| |
|||
|- |
|||
| |
|||
==== 24.01.20 ==== |
|||
| |
|||
'''Physics Engine Quiz''' |
|||
| |
|||
|- |
|||
| |
|||
==== 27.01.20 ==== |
|||
| |
|||
'''Inheritaance''' |
|||
| |
|||
* '''Lab Activity 3''' |
|||
|- |
|||
| |
|||
==== 29.01.20 ==== |
|||
| |
|||
'''Level 1 Quiz''' |
|||
| |
|||
* '''Level 1 Quiz''' |
|||
|- |
|||
| |
|||
==== 31.01.20 ==== |
|||
| |
|||
'''Polymorphism and JSON''' |
|||
| |
|||
|- |
|||
| |
|||
==== 03.02.20 ==== |
|||
| |
|||
'''Design Pattern: State Pattern 1''' |
|||
Objective: You will gain experience with the state design pattern to dynamically change the |
|||
| |
|||
* Project Demo 1 |
|||
|- |
|||
| |
|||
==== 05.02.20 ==== |
|||
| |
|||
'''Design Pattern: State Pattern 2''' |
|||
behavior of an object |
|||
| |
|||
|- |
|||
| |
|||
==== 07.02.20 ==== |
|||
| |
|||
'''Design Pattern: State Pattern 3''' |
|||
Objective: Gain more familiarity with the state design pattern |
|||
| |
|||
|- |
|||
| |
|||
==== 10.02.20 ==== |
|||
| |
|||
'''GUI''' |
|||
Objective: Build desktop GUIs |
|||
| |
|||
* '''Lab Activity 4''' |
|||
|- |
|||
| |
|||
==== 12.02.20 ==== |
|||
| |
|||
'''Design Architecture: MVC''' |
|||
Objective: Become familiar with the MVC architecture pattern and its benefits |
|||
| |
|||
|- |
|||
| |
|||
==== 14.02.20 ==== |
|||
| |
|||
'''Calculator Quiz''' |
|||
| |
|||
|- |
|||
| |
|||
==== 17.02.20 ==== |
|||
| |
|||
'''Actors Introduction''' |
|||
Objective: Write programs with multiple pieces of code executing at the same time |
|||
| |
|||
* '''Lab Activity 5''' |
|||
|- |
|||
| |
|||
==== 19.02.20 ==== |
|||
| |
|||
'''Level 2 Quiz''' |
|||
| |
|||
* '''Level 2 Quiz''' |
|||
|- |
|||
| |
|||
==== 21.02.20 ==== |
|||
| |
|||
'''Testing Actors and Database Connections''' |
|||
Objective: Write unit tests for actors and connect to a MySQL server |
|||
| |
|||
|- |
|||
| |
|||
==== 24.02.20 ==== |
|||
| |
|||
'''Web Sockets 1''' |
|||
Objective: Enable 2-way communication between the browser and web server |
|||
| |
|||
* Project Demo 2 |
|||
|- |
|||
| |
|||
==== 26.02.20 ==== |
|||
| |
|||
'''Web Sockets 2''' |
|||
Objective: Connect a Scala front end to a web socket server |
|||
| |
|||
|- |
|||
| |
|||
==== 28.02.20 ==== |
|||
| |
|||
'''Actors Application with Web Sockets''' |
|||
| |
|||
|- |
|||
| |
|||
==== 02.03.20 ==== |
|||
| |
|||
'''MMO Architecture 1''' |
|||
Objective: See an example using the MMO architecture form this class |
|||
| |
|||
* '''Lab Activity 6''' |
|||
|- |
|||
| |
|||
==== 04.03.20 ==== |
|||
| |
|||
'''MMO Architecture 2''' |
|||
Objective: Explore the MMO architecture applied to the course project |
|||
| |
|||
|- |
|||
| |
|||
==== 06.03.20 ==== |
|||
| |
|||
'''Clicker Quiz''' |
|||
| |
|||
|- |
|||
| |
|||
==== 09.03.20 ==== |
|||
| |
|||
'''Custom Sorting with First-Order Functions''' |
|||
Objective: Explore custom sorting in scala and gain experience with function and type parameters |
|||
| |
|||
* '''Lab Activity 7''' |
|||
|- |
|||
| |
|||
==== 11.03.20 ==== |
|||
| |
|||
'''Level 3 Quiz''' |
|||
| |
|||
* '''Level 3 Quiz''' |
|||
|- |
|||
| |
|||
==== 13.03.20 ==== |
|||
| |
|||
'''Merge Sort and Recursion''' |
|||
Objective: Gain an understanding of recursion combined with first-order functions and type parameters |
|||
| |
|||
|- |
|||
| |
|||
==== 16.03.20 ==== |
|||
| |
|||
'''Linked List''' |
|||
Objective: Understand the structure of a linked list |
|||
| |
|||
* '''Lab Activity 8''' |
|||
|- |
|||
| |
|||
==== 18.03.20 ==== |
|||
| |
|||
'''Linked List Algorithms''' |
|||
Objective: Explore how various operations are performed on a linked list |
|||
| |
|||
|- |
|||
| |
|||
==== 20.03.20 ==== |
|||
| |
|||
'''Stack and Queue''' |
|||
Objective: Use a linked list to implement the functionality of a stack and queue |
|||
| |
|||
|- |
|||
| |
|||
==== 23.03.20 ==== |
|||
| |
|||
'''Binary Tree and Traversals''' |
|||
Objective: Gain familiarity with the structure of binary trees and how to traverse existing trees |
|||
| |
|||
* '''Lab Activity 9''' |
|||
|- |
|||
| |
|||
==== 25.03.20 ==== |
|||
| |
|||
'''Binary Search Tree''' |
|||
Objective: Explore an application of binary trees by using them for searching and sorting |
|||
| |
|||
|- |
|||
| |
|||
==== 27.03.20 ==== |
|||
| |
|||
'''Genetic Algorithm Quiz''' |
|||
| |
|||
|- |
|||
| |
|||
==== 30.03.20 ==== |
|||
| |
|||
'''Graph Representations and Breath-First Search''' |
|||
Objective: Learn how to represent a graph in code and work with that representation |
|||
| |
|||
* Project Demo 3 |
|||
|- |
|||
| |
|||
==== 01.04.20 ==== |
|||
| |
|||
'''Level 4 Quiz''' |
|||
| |
|||
* '''Level 4 Quiz''' |
|||
|- |
|||
| |
|||
==== 03.04.20 ==== |
|||
| |
|||
'''Pathfinding with Breath-First Search''' |
|||
Objective: Find the shortest path between two nodes using BFS |
|||
| |
|||
|- |
|||
| |
|||
==== 06.04.20 ==== |
|||
| |
|||
'''Review and Examples''' |
|||
| |
|||
* Project Demo 3 (alt) |
|||
|- |
|||
| |
|||
==== 08.04.20 ==== |
|||
| |
|||
'''MMO Quiz''' |
|||
| |
|||
|- |
|||
| |
|||
==== 10.04.20 ==== |
|||
| |
|||
'''Holiday''' |
|||
| |
|||
|- |
|||
| |
|||
==== 13.04.20 ==== |
|||
| |
|||
'''Holiday''' |
|||
| |
|||
|- |
|||
| |
|||
==== 15.04.20 ==== |
|||
| |
|||
'''Consultation week''' |
|||
| |
|||
|- |
|||
| |
|||
==== 17.04.20 ==== |
|||
| |
|||
'''Consultation week''' |
|||
| |
|||
|- |
|||
| |
|||
==== 20.04.20 ==== |
|||
| |
|||
'''Exam week''' |
|||
| |
|||
|- |
|||
| |
|||
==== 22.04.20 ==== |
|||
| |
|||
'''Exam week''' |
|||
| |
|||
* '''Final Exam''' |
|||
|- |
|||
| |
|||
==== 24.04.20 ==== |
|||
| |
|||
'''Exam week''' |
|||
| |
|||
|- |
|- |
||
| |
| |
||
|} |
|} |
||
" |
|||
=Assignments= |
=Assignments= |
Revision as of 12:23, 27 November 2019
Introduction to Computer Science II
Shortcuts: Calendar | Assignments | Resources | Today (if there is a class)
Introduction
What is Computer Science?
- From Wikipedia:
- Computer Science is the study of processes that interact with data and that can be represented as data in the form of programs. It enables the use of algorithms to manipulate, store, and communicate digital information.
- A video version from Udacity
Administrative information
Course Syllabus tba
Communication:
- via slack: workspace name: bitl-cs2-2019
- via email: use instructor's email address for personal communication
- office hours: by appt.
"=Calendar=
Date | Topic | Exercises |
---|---|---|
06.01.20 |
Course Introduction Introduction to the course. Syllabus. |
|
08.01.20 |
IDE Setup. Scala Introduction |
|
10.01.20 |
Scala Types and Reading Files |
|
13.01.20 |
' |
|
15.01.20 |
Unit Testing |
|
17.01.20 |
Classes and Objects |
|
20.01.20 |
Model of Execution 1 |
|
22.01.20 |
Model of Execution 2 |
|
24.01.20 |
Physics Engine Quiz |
|
27.01.20 |
Inheritaance |
|
29.01.20 |
Level 1 Quiz |
|
31.01.20 |
Polymorphism and JSON |
|
03.02.20 |
Design Pattern: State Pattern 1 Objective: You will gain experience with the state design pattern to dynamically change the |
|
05.02.20 |
Design Pattern: State Pattern 2 behavior of an object |
|
07.02.20 |
Design Pattern: State Pattern 3 Objective: Gain more familiarity with the state design pattern |
|
10.02.20 |
GUI Objective: Build desktop GUIs |
|
12.02.20 |
Design Architecture: MVC Objective: Become familiar with the MVC architecture pattern and its benefits |
|
14.02.20 |
Calculator Quiz |
|
17.02.20 |
Actors Introduction Objective: Write programs with multiple pieces of code executing at the same time |
|
19.02.20 |
Level 2 Quiz |
|
21.02.20 |
Testing Actors and Database Connections Objective: Write unit tests for actors and connect to a MySQL server |
|
24.02.20 |
Web Sockets 1 Objective: Enable 2-way communication between the browser and web server |
|
26.02.20 |
Web Sockets 2 Objective: Connect a Scala front end to a web socket server |
|
28.02.20 |
Actors Application with Web Sockets |
|
02.03.20 |
MMO Architecture 1 Objective: See an example using the MMO architecture form this class |
|
04.03.20 |
MMO Architecture 2 Objective: Explore the MMO architecture applied to the course project |
|
06.03.20 |
Clicker Quiz |
|
09.03.20 |
Custom Sorting with First-Order Functions Objective: Explore custom sorting in scala and gain experience with function and type parameters |
|
11.03.20 |
Level 3 Quiz |
|
13.03.20 |
Merge Sort and Recursion Objective: Gain an understanding of recursion combined with first-order functions and type parameters |
|
16.03.20 |
Linked List Objective: Understand the structure of a linked list |
|
18.03.20 |
Linked List Algorithms Objective: Explore how various operations are performed on a linked list |
|
20.03.20 |
Stack and Queue Objective: Use a linked list to implement the functionality of a stack and queue |
|
23.03.20 |
Binary Tree and Traversals Objective: Gain familiarity with the structure of binary trees and how to traverse existing trees |
|
25.03.20 |
Binary Search Tree Objective: Explore an application of binary trees by using them for searching and sorting |
|
27.03.20 |
Genetic Algorithm Quiz |
|
30.03.20 |
Graph Representations and Breath-First Search Objective: Learn how to represent a graph in code and work with that representation |
|
01.04.20 |
Level 4 Quiz |
|
03.04.20 |
Pathfinding with Breath-First Search Objective: Find the shortest path between two nodes using BFS |
|
06.04.20 |
Review and Examples |
|
08.04.20 |
MMO Quiz |
|
10.04.20 |
Holiday |
|
13.04.20 |
Holiday |
|
15.04.20 |
Consultation week |
|
17.04.20 |
Consultation week |
|
20.04.20 |
Exam week |
|
22.04.20 |
Exam week |
|
24.04.20 |
Exam week |
|
"
Assignments
TBD
Resources
Scala
- TBD
Python
SQL
- SQL tutorial at zentut.com
- "SQLzoo" - SQL wiki and tutorials, interactive tests.
- SQLite tutorial