Fill This Form To Receive Instant Help
Homework answers / question archive / Your task is to implement a simple configurable chat application in Kotlin1 with Gradle2 as a build system using different implementation techniques
Your task is to implement a simple configurable chat application in Kotlin1 with Gradle2 as a build system using different implementation techniques. We provide an implementation using C-preprocessor directives which acts as a template for the other implementations. The logic for all features is already present in this implementation, so you can focus on the different implementation techniques rather than on the logic. If you are unfamiliar with the language we recommend taking the tour of Kotlin3 . a) Implement the configurable chat application using runtime parameters in the directory runtime. We provide the interfaces for the client, server, and message classes as well as a configuration class that gets passed to the constructor of the client/server classes. Your implementation must change its behavior based on the values in the configuration object. [10 Points] b) Implement the configurable chat application using the decorator pattern in the directory decorator. We provide the component interfaces as well as tests that specify how the concrete component and decorator classes must be named and how they can be combined. [10 Points] c) Implement the configurable database using the build system for configuration in the directory buildsystem. Here, the chat application is configured by setting the appropriate values in the file gradle.properties and then building the project using Gradle’s build task. The compiled project must behave according to the selected configuration. To achieve this, you must modify the build script build.gradle.kts such that it uses appropriate source files during compilation (see sheet 05 task 2). [10 Points] 1https://kotlinlang.org/ 2https://gradle.org/ 3https://kotlinlang.org/docs/kotlin-tour-welcome.html