Releases: UCL-INGI/LEPL1402
Releases · UCL-INGI/LEPL1402
Ready for student | Release 04/09
Module 1 | Java Introduction, Static and main methods, Arrays, Dev Tools, Pre-post conditions
🔢 Task folder |
ℹ️ Short Description |
Introduction |
Code exercise to introduce java to students |
LearnExceptions |
Code exercise to introduce exceptions in java |
Make Mistake |
Code exercise that generate exceptions to understand them |
Array2D |
Code exercise to help students to make distinction between multidimensional array and matrix |
AccessModifiers |
MCQ on modifiers / packages |
CommonErrors |
MCQ on some common Java programming errors |
Value or Reference |
MCQ on the differences between passing a value or passing a reference to a method |
StringUtils |
Code exercise on implementing several common methods inspired from java's String API |
Casting |
Theorical questions on type casting in java |
Module 2 | Complexity, Arborescent data structures, Basic algorihtms, Invariants and proof of correctness
🔢 Task folder |
ℹ️ Short Description |
ComplexityMQC1 |
Simple MCQ on time complexity |
ComplextiySpaceMCQ |
MCQ on space complexity |
complexityMCQ2 |
Harder MCQ on time complexity including complexity on trees and recursive functions |
BubbleSortInvariant |
MCQ on invariant of the bubble sort algorithm |
ComplexityArraySearch |
Code exercise on finding an element in a given array with best possible complexity |
Fibonacci |
Code exercise on recursive / iterative implementation of the same method |
HanoiTower |
Code exercise on Hanoi Tower. Recursive exercise |
MergeSortImplementation |
Code exercise on implementation of the merge sort algorithm |
MaximumSumSubarray |
Code exercise on finding the maximum contiguous subarray in a given array |
Valley |
Code exercise on finding the deepest valley and the biggest mountain in a given array |
CodeAccuracy |
MCQ on Pre, Post conditions and Invariants |
CodeAccuracy2 |
Code exercise on making assertations and implementation on code (Quicksort ) |
TreeSame |
Code exercise on implenting the method equals for Node and Tree |
TreeInorder |
Code exercise on implementing two different version of an "in-order" tree traversal : a recursive version and an iterative version |
TreeCombineWith |
Code exercise on implementing a sum-merge method of two tree |
Module 3 | Object Oriented Programming (inheritance, generics, etc), Abstract Data Types
🔢 Task folder |
ℹ️ Short Description |
CircularLL |
Code exercise on implementing a Circular linked list |
Generics |
Code exercise on a recursive structure with interfaces like Predicate / Function |
Generics2 |
Code exercise on genericity (based on previous task) |
Generics3 |
Code exercise on implementing logic gates using BiFunction and Function |
Inheritance |
Small Code exercise (type : fill the gaps) on inheritance |
MyArrayList |
Code exercise on implementing your own version of ArrayList |
PostScript |
Code exercise on interpreter that uses operations stored in a stack |
StackWithQueue |
Code exercise on implementing a LIFO stack using a queue |
QueueWithStacks |
Code exercise on implementing a FIFO queue using two stacks |
Module 4 | Software Engineering Topics: Design Patterns (MVC for GUI), Architecture, Testing
🔢 Task folder |
ℹ️ Short Description |
BlackBox |
Code exercise on blackbox testing on specifications of a binarySearch method |
Coverage |
Code exercise on code coverage (JaCoCo) |
AbstractClass |
Code exercise on abstract class (Shape) |
Factory |
Code exercise on the Factory design pattern |
Observer |
Code exercise on the Observer design pattern |
VisitorBasic |
Code exercise on the Visitor design pattern (beginner) |
Visitor |
Code exercise on the Visitor design pattern (advanced) |
Module 5 | Functional Programming and Lambda, Recursive Programming
Module 6 | Parallelism: threads and introduction to synchronisation
Release 31/07
Module 1 | Java Introduction, Static and main methods, Arrays, Dev Tools, Pre-post conditions
🔢 Task folder |
ℹ️ Short Description |
Array2D |
Code exercise to help students to make distinction between multidimensional array and matrix |
AccessModifiers |
MCQ on modifiers / packages |
CommonErrors |
MCQ on some common Java programming errors |
StringUtils |
Code exercise on implementing several common methods inspired from java's String API |
Module 2 | Complexity, Arborescent data structures, Basic algorihtms, Invariants and proof of correctness
🔢 Task folder |
ℹ️ Short Description |
CodeAccuracy |
MCQ on Pre, Post conditions and Invariants |
CodeAccuracy2 |
Code exercise on making assertations and implementation on code (Quicksort ) |
TreeCombineWith |
Code exercise on implementing a sum-merge method of two tree |
TreeInorder |
Code exercise on implementing two different version of an "in-order" tree traversal : a recursive version and an iterative version |
TreeSame |
Code exercise on implenting the method equals for Node and Tree |
Module 3 | Object Oriented Programming (inheritance, generics, etc), Abstract Data Types
🔢 Task folder |
ℹ️ Short Description |
AbstractClass |
Code exercise on abstract class (Shape) |
Casting |
MCQ on casting operations |
CircularLL |
Code exercise on implementing a Circular linked list |
Generics |
Code exercise on a recursive structure with interfaces like Predicate / Function |
Generics2 |
Code exercise on genericity (based on previous task) |
Generics3 |
Code exercise on implementing logic gates using BiFunction and Function |
Inheritance |
Small Code exercise (type : fill the gaps) on inheritance |
MyArrayList |
Code exercise on implementing your own version of ArrayList |
PostScript |
Code exercise on interpreter that uses operations stored in a stack |
QueueWithStacks |
Code exercise on implementing a FIFO queue using two stacks |
StackWithQueue |
Code exercise on implementing a LIFO stack using a queue |
Module 4 | Software Engineering Topics: Design Patterns (MVC for GUI), Architecture, Testing
🔢 Task folder |
ℹ️ Short Description |
BlackBox |
Code exercise on blackbox testing on specifications of a binarySearch method |
Coverage |
Code exercise on code coverage (JaCoCo) |
Factory |
Code exercise on the Factory design pattern |
Observer |
Code exercise on the Observer design pattern |
VisitorBasic |
Code exercise on the Visitor design pattern (beginner) |
Visitor |
Code exercise on the Visitor design pattern (advanced) |
Module 5 | Functional Programming and Lambda, Recursive Programming
🔢 Task folder |
ℹ️ Short Description |
Fibonacci |
Code exercise on recursive / iterative implementation of the same method |
Streams |
Code exercise on function programming with Streams (Beginner) |
Streams2 |
Code exercise on function programming with Streams (Advanced) |
Module 6 | Parallelism: threads and introduction to synchronisation
🔢 Task folder |
ℹ️ Short Description |
ProducerConsumer |
Code exercise on implementing the famous Producer / Consumer problem |
SharedCounter |
Code exercise on handling shared counter with threads |
ThreadsIntroduction |
Code exercise to introduce the usage of threads |
Release 26/07
Tasks lists :
🔢 Task folder |
ℹ️ Short Description |
AbstractClass |
Code exercise on abstract class (Shape) |
AccessModifiers |
MCQ on modifiers / packages |
Array2D |
Code exercise to help students to make distinction between multidimensional array and matrix |
BlackBox |
Code exercise on blackbox testing on specifications of a binarySearch method |
Casting |
MCQ on casting operations |
CircularLL |
Code exercise on implementing a Circular linked list |
CodeAccuracy |
MCQ on Pre, Post conditions and Invariants |
CodeAccuracy2 |
Code exercise on making assertations and implementation on code (Quicksort ) |
CommonErrors |
MCQ on some common Java programming errors |
Coverage |
Code exercise on code coverage (JaCoCo) |
Factory |
Code exercise on the Factory design pattern |
Fibonacci |
Code exercise on recursive / iterative implementation of the same method |
Generics |
Code exercise on a recursive structure with interfaces like Predicate / Function |
Generics2 |
Code exercise on genericity (based on previous task) |
Inheritance |
Small Code exercise (type : fill the gaps) on inheritance |
MyArrayList |
Code exercise on implementing your own version of ArrayList |
Observer |
Code exercise on the Observer design pattern |
PostScript |
Code exercise on interpreter that uses operations stored in a stack |
QueueWithStacks |
Code exercise on implementing a FIFO queue using two stacks |
StackWithQueue |
Code exercise on implementing a LIFO stack using a queue |
Streams |
Code exercise on function programming with Streams (Beginner) |
Streams2 |
Code exercise on function programming with Streams (Advanced) |
StringUtils |
Code exercise on implementing several common methods inspired from java's String API |
ThreadsIntroduction |
Code exercise to introduce the usage of threads |
TreeCombineWith |
Code exercise on implementing a sum-merge method of two tree |
TreeInorder |
Code exercise on implementing two different version of an "in-order" tree traversal : a recursive version and an iterative version |
TreeSame |
Code exercise on implenting the method equals for Node and Tree |
VisitorBasic |
Code exercise on the Visitor design pattern (beginner) |
Visitor |
Code exercise on the Visitor design pattern (advanced) |