Functional Design

Implement Functions and Refactor you own this product

This project is part of the liveProject series Scala Functional Design and Implementation
prerequisites
basic programming skills (algorithms and data structures, debugging)
skills learned
basic Scala (immutable data structures, pattern matching, higher-order functions, partial functions) • refactoring
Roksolana Diachuk
1 week · 6-8 hours per week · BEGINNER

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!

team

5, 10 or 20 seats+ for your team - learn more


Look inside

TechPower wants to grow in the tech market and enhance its presence by adding new technologies to its toolbox. Scala is a good option as it combines functional and object-oriented programming paradigms. As a software engineer, your task is to add features and functionality to the consulting company’s current project: a music-sharing platform where artists can share their music with the world. Using Scala, Simple Build Tool (SBT), and IntelliJ IDEA, you’ll design and implement functions for previously defined entities, then improve them by refactoring. When you’re done, you’ll know how to apply functional programming concepts to designing and implementing system functionality in a Scala project.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Roksolana Diachuk

Roksolana Diachuk puts her passion for big data, Scala, and Kubernetes to good use as an engineering manager at Captify. She’s a proud member of the Women Who Code Kyiv and Scala Ukraine communities, and she’s shared her expertise by speaking at Scala and big-data conferences in Europe and the U.S., including ScalaCon 2021/2022, Functional Scala London 2020/2021/2022, Scala Love 2021, and DataCon LA 2021.

prerequisites

This liveProject is for beginner-level developers who know the basics of at least one language and are interested in learning Scala as well as the functional approach to system design. To begin these liveProjects you’ll need to be familiar with the following:

TOOLS
  • Programming language basics (syntax, data types, implementing algorithms)
  • Bash basics (installation, execution of commands and scripts)
TECHNIQUES
  • OOP basics (main principles, classes and objects, class relationships)
  • Intermediate software engineering (function design and implementation, algorithms, and data structures)

you will learn

In this liveProject, you’ll learn how to apply functional programming concepts to designing and implementing system functionality in a Scala project.

  • Functional programming paradigm (immutable data structures, pattern matching, higher-order functions, partial functions, options)
  • Scala programming language basics (syntax, functional paradigm)

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.

choose your plan

team

monthly
annual
$49.99
$499.99
only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • Implement Functions and Refactor project for free