Categories
HTTP Concepts PHP Software Architect Softwares Technology

MVC vs MVVM vs MVP… What the heck?

When it comes to the architecture design patterns, we have many options to choose from Model-View-Controller (MVC), Model-View-ViewModel (MVVM), Model-View-Presenter (MVP), and keep going… Most often what I hear from the software engineers are :

  • What is MVVM?
  • What is the difference between MVC, MVVM and MVP?
  • How to choose between MVC and MVVM?

Although the answers are simple but to understand the concept in depth and clearly, like always, I would prefer to take a real use case as an example. Let’s think about a music search application, musicoverflow (derived from stackoverflow; hmm a long time programmer).

Fundamentally, MV(X)

Before we dive in the various variants of it, lets understand what MV(X) is? Fundamentally, all these variants, MVC, MVVM, MVP aims to segregate the duties of processing, visualization, we need to understand briefly MVC, MVP, and MVVM architecture before dive into them.

Why Model-View-(C or P or VM)?
The aim of these architectures is to separate the responsibilities of visualizing, processing, and data management for UI applications.

'Coz sharing is caring
Categories
Softwares

Citizen Development: what is the business case?

Citizen development refers to the practice of empowering non-technical business users to create their own applications and automate their workflows.

The citizen development can be summarized as follows:

  1. Increased productivity: By allowing business users to create their own applications, they can automate repetitive tasks and streamline their workflows, leading to increased productivity and efficiency.
  2. Improved user experience: Business users have a deep understanding of their own needs and can create applications that are tailored to their specific requirements, resulting in improved user experience.
  3. Faster time to market: Citizen development enables the rapid creation of applications, allowing organizations to quickly test and implement new ideas, leading to faster time to market.
  4. Cost savings: Citizen development can reduce the need for IT resources, resulting in cost savings for the organization.
  5. Increased innovation: By empowering business users to create their own applications, organizations can tap into the creativity and innovative ideas of their employees, leading to increased innovation.
  6. Greater agility: Citizen development allows organizations to quickly respond to changing business needs and adapt to new technologies.

Citizen development can help organizations increase productivity, improve user experience, speed up time to market, reduce costs, increase innovation, and become more agile.

'Coz sharing is caring