Functional vs. Object-Oriented: Comparing How Programming Paradigms Affect the Architectural Characteristics of Systems
By: Briza Mel Dias de Sousa, Renato Cordeiro Ferreira, Alfredo Goldman
Potential Business Impact:
Helps choose best way to build computer programs.
After decades of dominance by object-oriented programming (OOP), functional programming (FP) is gaining increasing attention in the software industry. This study compares the impact of OOP and FP on the architectural characteristics of software systems. For that, it examines the design and implementation of a Digital Wallet system, developed in Kotlin (representing OOP) and Scala (representing FP). The comparison is made through both qualitative and quantitative analyses to explore how each paradigm influences the system's architectural characteristics. The self-ethnographic qualitative analysis provides a side-by-side comparison of both implementations, revealing the perspective of those writing such code. The survey-based quantitative analysis gathers feedback from developers with diverse backgrounds, showing their impressions of those reading this code. Hopefully, these results may be useful for developers or organizations seeking to make more informed decisions about which paradigm is best suited for their next project.
Similar Papers
An Exploratory Eye Tracking Study on How Developers Classify and Debug Python Code in Different Paradigms
Software Engineering
Finds which code styles make programs harder to understand.
Aspect-Oriented Programming in Secure Software Development: A Case Study of Security Aspects in Web Applications
Software Engineering
Makes computer programs safer and easier to fix.
Object-Spatial Programming
Programming Languages
Lets computers understand and improve complex connections.