: TechnoWise Meetup: Scalable Software Design
Overview
And how do you write scalable and maintainable code in Object-Oriented and Functional programming paradigms? In this session, the presenter will demonstrate a typical scalability problem in software design and how it can be solved with OO and Functional design.
This is a session with live coding and discussions. The problem which will be solved during the session is a simple Temperature Converter problem. The languages which will be used to solve the problem will be Kotlin (OOP) and TypeScript (FP).
The session will cover the following things:
- Using 4 Rules of Simple Design, TDD, and Clean Code practices to write a maintainable and extensible solution
- Challenges with writing Temperature converter, complexity classes applied to software design
- Solving the code using Java with functional style and object-oriented style side by side to show the differences and similarities between programming paradigms
Anyone who wants to learn about TDD, Clean Code, Functional Programming and Object-Oriented Programming could benefit from this session.
Preconditions
Familiarity with a Java-like language (Java, C#, Scala, C++) is helpful. Also, being familiar with the three fundamental programming paradigms (functional, object-oriented, and structured programming) is helpful.
Speaker
Christian Hujer, a seasoned developer with ~35 years of experience, founder of Nelkinda Software Craft, carries a tremendous experience in software development and software craft. He is a polyglot in languages (Prolog to Java), frameworks and development environments (from smart card to server). He is keen at following the best coding and software development process related practices for example XP, Clean Code practices, TDD. He always strives for better software and a better environment.