The latest instance of the course can be found at: COMP.CS.140 Ohjelmointi 3: Rajapinnat ja tekniikat: spring-2024
Show:
0 / 10
1. Permission for use of anonymized course data in research
Monday, 3 January 2022, 12:00 – Thursday, 30 June 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
1.1 Permission for Research | ||||
1.1.1 Data protection form | tutkimuslupa - research permission | 0 / 10 | 0 / 10 |
0 / 50
2. Welcome to Programming 3: Interfaces and Techniques
Monday, 10 January 2022, 12:00 – Friday, 21 January 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
2.1 Welcome to the Course | ||||
2.2 Practical Matters | ||||
2.2.1 Course Staff and Contact Information | ||||
2.2.2 Course Workflow | ||||
2.2.3 Grading of the Course | ||||
2.3 Java: Programming Environment | ||||
2.3.1 Virtual Desktop: TUNI Virtual desktop | ||||
2.3.2 Java IDE and the First Program | ||||
2.3.2.1 Exercise Java | teoria - theory | 0 / 5 | 0 / 5 | |
2.3.2.2 Exercise NetBeans | teoria - theory | 0 / 5 | 0 / 5 | |
2.3.3 ⌛ Counting the Mean | ||||
2.3.3.1 Average | harjoitus - exercise | 0 / 10 | 0 / 25 | |
2.4 Git: Basics | ||||
2.5 A more detailed introduction to Java | ||||
2.6 Q&A Session | ||||
2.6.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
2.6.2 Q&A session 1 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 95
3. Java as Programming Language
Monday, 17 January 2022, 12:00 – Friday, 28 January 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
3.1 More basic features of Java | ||||
3.1.1 Java input and output streams | ||||
3.1.1.1 Exercise IO | teoria - theory | 0 / 5 | 0 / 10 | |
3.1.2 Basic Java containers | ||||
3.1.2.1 Exercise Containers | teoria - theory | 0 / 5 | 0 / 5 | |
3.1.3 Sorting and lambda functions | ||||
3.1.3.1 Exercise Lambda | teoria - theory | 0 / 5 | 0 / 10 | |
3.2 ⌛ Median | ||||
3.2.1 Median | harjoitus - exercise | 0 / 10 | 0 / 15 | |
3.3 ⌛⌛ Parameter table | ||||
3.3.1 Parametritaulukko | harjoitus - exercise | 0 / 10 | 0 / 20 | |
3.4 ⌛⌛ Currency rates | ||||
3.4.1 Valuuttakurssit | harjoitus - exercise | 0 / 10 | 0 / 20 | |
3.5 Q&A Session | ||||
3.5.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
3.5.2 Q&A session 2 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 95
4. Programming in the Large
Monday, 24 January 2022, 12:00 – Friday, 4 February 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
4.1 Playing Field of Implementing Software | ||||
4.1.1 Concept of Abstraction | ||||
4.1.1.1 Exercise Abstraction | teoria - theory | 0 / 5 | 0 / 5 | |
4.1.2 Information Hiding | ||||
4.1.2.1 Exercise Interface | teoria - theory | 0 / 5 | 0 / 10 | |
4.2 Introduction to Java classes | ||||
4.2.1 The basic structure of a Java class | ||||
4.2.2 Java packages | ||||
4.3 Exception handling in Java | ||||
4.3.1 Exercise Exceptions | teoria - theory | 0 / 5 | 0 / 10 | |
4.4 ⌛⌛ Sudoku | ||||
4.4.1 Sudoku | harjoitus - exercise | 0 / 10 | 0 / 15 | |
4.5 ⌛⌛ Standings | ||||
4.5.1 Standings | harjoitus - exercise | 0 / 10 | 0 / 20 | |
4.6 ⌛⌛ Student register | ||||
4.6.1 StudentRegister | harjoitus - exercise | 0 / 10 | 0 / 20 | |
4.7 Q&A Session | ||||
4.7.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
4.7.2 Q&A session 3 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 95
5. Inheritance
Monday, 31 January 2022, 12:00 – Friday, 11 February 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
5.1 Modularity: Inheritance | ||||
5.1.1 Exercise Objects | teoria - theory | 0 / 5 | 0 / 5 | |
5.1.2 Inheritance | ||||
5.1.2.1 Exercise Inheritance | teoria - theory | 0 / 5 | 0 / 10 | |
5.2 Late (Dynamic) Binding | ||||
5.3 Introduction to inheritance in Java | ||||
5.3.1 Exercise Java | teoria - theory | 0 / 5 | 0 / 5 | |
5.4 Exception handling in Java, part 2 | ||||
5.4.1 Exercise Exceptions2 | teoria - theory | 0 / 5 | 0 / 5 | |
5.5 ⌛ Date and time | ||||
5.5.1 Datetime | harjoitus - exercise | 0 / 10 | 0 / 10 | |
5.6 ⌛⌛ Dates | ||||
5.6.1 Dates | harjoitus - exercise | 0 / 10 | 0 / 20 | |
5.7 ⌛⌛ Word game | ||||
5.7.1 Word game | harjoitus - exercise | 0 / 10 | 0 / 25 | |
5.8 Q&A Session | ||||
5.8.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
5.8.2 Q&A session 4 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 95
6. Class Hierarchies
Monday, 7 February 2022, 12:00 – Monday, 21 February 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
6.1 Modularity: Interfaces | ||||
6.1.1 Abstract Base Class | ||||
6.1.1.1 Exercise ADT | teoria - theory | 0 / 5 | 0 / 5 | |
6.1.2 Interface Classes | ||||
6.1.2.1 Exercise interfaces | teoria - theory | 0 / 5 | 0 / 5 | |
6.1.3 Multiple Inheritance | ||||
6.2 Modeling Class Hierarchies | ||||
6.3 Java interfaces, part 1 | ||||
6.3.1 Exercise interfaces | teoria - theory | 0 / 5 | 0 / 5 | |
6.4 Java Generics, part 1 | ||||
6.4.1 Exercise generics | teoria - theory | 0 / 5 | 0 / 5 | |
6.5 Java interfaces, part 2 | ||||
6.5.1 Exercise interfaces2 | teoria - theory | 0 / 5 | 0 / 5 | |
6.6 ⌛ Shapes | ||||
6.6.1 Shapes | harjoitus - exercise | 0 / 10 | 0 / 10 | |
6.7 ⌛⌛ Comparison interfaces | ||||
6.7.1 Comparison | harjoitus - exercise | 0 / 10 | 0 / 15 | |
6.8 ⌛⌛⌛ JSON | ||||
6.8.1 JSON | harjoitus - exercise | 0 / 10 | 0 / 30 | |
6.9 Q&A Session | ||||
6.9.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
6.9.2 Q&A session 5 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 95
7. Generics
Monday, 14 February 2022, 12:00 – Monday, 28 February 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
7.1 Polymorphism: Generics | ||||
7.1.1 Exercise generics | teoria - theory | 0 / 5 | 0 / 10 | |
7.2 Java generics, part 2 | ||||
7.3 Java’s functional interfaces | ||||
7.3.1 Exercise Java-functional1 | teoria - theory | 0 / 5 | 0 / 5 | |
7.4 Functional programming in Java | ||||
7.4.1 Exercise Java-functional2 | teoria - theory | 0 / 5 | 0 / 10 | |
7.5 ⌛⌛ Movie data vs stream | ||||
7.5.1 Movie data vs stream | harjoitus - exercise | 0 / 10 | 0 / 15 | |
7.6 ⌛⌛ Movie data vs stream #2 | ||||
7.6.1 Movie data vs stream #2 | harjoitus - exercise | 0 / 10 | 0 / 15 | |
7.7 ⌛⌛⌛ N-dimensional array | ||||
7.7.1 N-dimensional array | harjoitus - exercise | 0 / 10 | 0 / 25 | |
7.8 Q&A Session | ||||
7.8.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
7.8.2 Q&A session 6 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 97
8. Packages
Monday, 21 February 2022, 12:00 – Monday, 14 March 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
8.1 Returning to Campus | ||||
8.1.1 Exercise campus | palaute - feedback | 0 / 2 | 0 / 2 | |
8.2 Modularity: Packages | ||||
8.2.1 Interface as a Contract | ||||
8.2.1.1 Exercise contracts | teoria - theory | 0 / 5 | 0 / 10 | |
8.2.2 Error Situations in Interfaces | ||||
8.2.2.1 Exercise guarantees | teoria - theory | 0 / 5 | 0 / 15 | |
8.3 Managing a Java code project with Maven | ||||
8.4 ⌛⌛ Text search inside a 7z file | ||||
8.4.1 sevenzipsearch | harjoitus - exercise | 0 / 10 | 0 / 20 | |
8.5 ⌛⌛ Country data (XML) | ||||
8.5.1 xmlcountries | harjoitus - exercise | 0 / 10 | 0 / 20 | |
8.6 ⌛⌛ Country data (JSON) | ||||
8.6.1 json countries | harjoitus - exercise | 0 / 10 | 0 / 15 | |
8.7 Q&A Session | ||||
8.7.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
8.7.2 Q&A session 7 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 15
9. Winter Break: give mid course feedback
Monday, 21 February 2022, 12:00 – Friday, 1 April 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
9.1 Feedback | ||||
9.1.1 Exercise feedback | palaute - feedback | 0 / 2 | 0 / 10 | |
9.1.2 Exercise feedback2 | palaute - feedback | 0 / 2 | 0 / 5 |
0 / 95
10. Work Distribution and Working in a Team
Monday, 7 March 2022, 12:00 – Monday, 21 March 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
10.1 Distribution of Work | ||||
10.1.1 Team Work in Version Control | ||||
10.1.2 Branching in Version Control | ||||
10.1.3 Technical viewpoint: Submodules in Git | ||||
10.1.4 Repository-exercise on branches | ||||
10.1.4.1 Git feature-branch - part 1 | teoria - theory | 0 / 5 | 0 / 10 | |
10.1.4.2 Git feature-branch - part 2 | teoria - theory | 0 / 5 | 0 / 15 | |
10.1.4.3 Git feature-branch - part 3 | harjoitus - exercise | 0 / 10 | 0 / 20 | |
10.2 Documentation and Conventions | ||||
10.2.1 Documentation Comments - Javadoc | ||||
10.3 ⌛⌛ JSON & JavaDoc | ||||
10.3.1 javadocjson | harjoitus - exercise | 0 / 10 | 0 / 20 | |
10.4 ⌛⌛ Standings & JavaDoc | ||||
10.4.1 javadocstandings | harjoitus - exercise | 0 / 10 | 0 / 15 | |
10.5 Q&A Session | ||||
10.5.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
10.5.2 Q&A session 8 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 95
11. Functional Program
Monday, 14 March 2022, 12:00 – Friday, 1 April 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
11.1 (Unit) Testing | ||||
11.1.1 Ways to Test | ||||
11.1.1.1 Exercise terms | teoria - theory | 0 / 5 | 0 / 5 | |
11.1.2 Unit Testing | ||||
11.1.2.1 Exercise unit | teoria - theory | 0 / 5 | 0 / 10 | |
11.1.3 Testing Framework JUnit | ||||
11.1.3.1 Exercise junit | teoria - theory | 0 / 5 | 0 / 10 | |
11.2 ⌛⌛ JUnit tests for course attainment | ||||
11.2.1 junitattainment | harjoitus - exercise | 0 / 10 | 0 / 15 | |
11.3 ⌛⌛⌛ JUnit tests for order | ||||
11.3.1 junitorder | harjoitus - exercise | 0 / 25 | 0 / 40 | |
11.4 Q&A Session | ||||
11.4.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
11.4.2 Q&A session 9 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 95
12. Graphical User Interfaces
Monday, 21 March 2022, 12:00 – Friday, 8 April 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
12.1 Event-driven Programming | ||||
12.1.1 Exercise event-driven | teoria - theory | 0 / 5 | 0 / 5 | |
12.2 JavaFX Library | ||||
12.2.1 Exercise javafx1 | teoria - theory | 0 / 5 | 0 / 5 | |
12.2.2 First JavaFX Program | ||||
12.2.2.1 Exercise javafx2 | teoria - theory | 0 / 5 | 0 / 5 | |
12.2.3 A Little bit bigger example | ||||
12.2.3.1 Exercise javafx3 | teoria - theory | 0 / 5 | 0 / 10 | |
12.2.4 FXML | ||||
12.3 ⌛ JavaFX calculator | ||||
12.3.1 calc | harjoitus - exercise | 0 / 10 | 0 / 10 | |
12.4 ⌛⌛⌛ JavaFX Wordle | ||||
12.4.1 wordle | harjoitus - exercise | 0 / 25 | 0 / 45 | |
12.5 Q&A Session | ||||
12.5.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
12.5.2 Q&A session 10 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 15
13. Project Start
Monday, 28 March 2022, 12:00 – Monday, 11 April 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
13.1 Project: Sisu Unraveled | ||||
13.2 Q&A Session: On Course Project | ||||
13.2.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
13.2.2 Q&A session 11 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 15
14. Round 12
Monday, 4 April 2022, 12:00 – Friday, 22 April 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
14.1 TestFX | ||||
14.2 Q&A Session: On Course Project | ||||
14.2.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
14.2.2 Q&A session 12 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 15
15. Round 13: Easter break 13.4.-19.4.
Monday, 18 April 2022, 12:00 – Friday, 29 April 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
15.1 Project: Documentation | ||||
15.2 Q&A Session | ||||
15.2.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
15.2.2 Q&A session 13 attendance | teoria - theory | 0 / 1 | 0 / 10 |
0 / 515
16. Project Turn-in
Monday, 25 April 2022, 12:00 – Friday, 6 May 2022, 23:59
Assignment | Category | Submissions | Points | |
---|---|---|---|---|
16.1 Submission | ||||
16.1.1 Turnin your project | projekti - project | 0 / 25 | 0 / 500 | |
16.2 Q&A Session | ||||
16.2.1 Exercise QA | teoria - theory | 0 / 5 | 0 / 5 | |
16.2.2 The course is finished! Have a nice summer. | teoria - theory | 0 / 1 | 0 / 10 |
harjoitus - exercise
0 / 520
palaute - feedback
0 / 17
projekti - project
0 / 500
teoria - theory
0 / 445
tutkimuslupa - research permission
0 / 10