|
- Applying the core concepts of imperative programming, such as variables, data types, structured programming statements, recursion, lists, arrays, methods, parameters and exceptions.
- Applying the core concepts of object-orientation, such as object, class, value, type, object reference, interface, specialisation / inheritance, and composition.
- Implementing interactive applications using the Model/View/Controller pattern.
- Applying basic synchronisation mechanisms, such as monitors, locks and wait sets, to the problems of concurrent threads (race-conditions).
- Implementing client-server programs using basic network mechanisms such as Java sockets.
- Applying the basic concepts and techniques of security engineering to address the challenges of producing secure software.
- Implementing software of average size (10-20 classes) in Java by using the core concepts of imperative programming and object-orientation.
- Documenting software of average size (10-20 classes) by defining preconditions, postconditions and (class) invariants. Defining and performing a test plan for software of average size (10-20 classes) with appropriate test coverage.
|
 |
|
Following this Learning Unit requires following also the Academic Skills Unit.
|
|
|
|
 VoorkennisIt is required proficiency on Functional Programming (content offered in Module 1 provides the minimum requirements) |
Bachelor Bedrijfsinformatietechnologie |
| | Verplicht materiaalBookDavid J. Eck. Introduction to Programming Using Java. Version 8.1, July 2019. Available for free at: http://math.hws.edu/javanotes/ |
 | Course guideThe manual of the module contains all exercises. The manual also points to books and alternative online material. The manual is available on Canvas. |
 | BookChapter 5 from Ross Anderson, Security Engineering.Wiley, 2nd edition, 2008. Available for free at: http://www.cl.cam.ac.uk/~rja14/book.html |
 |
| Aanbevolen materiaalBookC.S. Horstmann and G. Cornell, Core Java, volume I: Fundamentals. Prentice Hall, 9th edition, 2012. |
 | BookC.S. Horstmann and G. Cornell, Core Java, volume II: Advanced Features. Prentice Hall, 9th edition, 2012. |
 |
| Werkvormen Hoorcollege Aanwezigheidsplicht |  | Ja |

 | Opdracht Aanwezigheidsplicht |  | Ja |

 | Practicum Aanwezigheidsplicht |  | Ja |

 | Project begeleid Aanwezigheidsplicht |  | Ja |

 |
| Toetsen Exam
 | Project Report
 |
|
| |