Skip to main content

Salesforce Architecture ( MVC )

Salesforce MVC Architecture  ( Model - View - Controller )

Salesforce MVC (Model view Controller) separates the complexity of the business logic from the User Interface and database. Salesforce MVC architecture helps to develop powerful business application. Everything we develop in Salesforce is part of Model View Controller.

Also, It is very important to understand about the flow of the real-time project when working with SFDC MVC architecture in an organization / individually. Everything we develop in Salesforce is a part of Model View Controller



Model :

  • It is also called as a Database-Layer.
  • Model or the database is the backbone which forms the bridge between View and Controller.
  • In Salesforce, we can say that sObjects are the model as every entity in salesforce is mapped to some sObject.
  • Objects, Fields, Relationships come under Model Layer of Model View Controller in Salesforce.

View :

  • It is also called as a User-Interface-Layer.
  • Visualforce Pages are used to present the data to users / create the user interface.
  • Force.com uses Visualforce pages and standard UI buttons, forms, tabs and page views to define a view.
  • Visual Force pages, Page Layouts, Tabs comes under View Layer of Model View Controller in Salesforce.

Controller :

  • It is also called as a Business-Logic-Layer.
  • Every event performed on the page will be controlled by controller. Force.com uses Apex triggers and Apex Controllers as the controller in the  Salesforce MVC architecture.
  • Workflows, Apex Classes, Triggers comes under Controller part in Model View controller in Salesforce.

Declarative Development in Salesforce.

Declarative development in Salesforce is done by point-and-click with out using single line of code using browser. In this method, Salesforce follows MVC Architecture when developing application.

Model View Controller
Objects Applications Workflow Rules
Fields Tabs Validation Rules
Relationships Page Layouts Assignment Rule
Records Types

Programmatic Development in Salesforce

In this model of development in Salesforce, Salesforce coding is required. The Salesforce MVC architecture are as follows.

Model View Controller
Web Services API Visualforce Pages Apex Controllers
Metadata API Visualforce Components Apex Trigger
External Object Site Web Service API


By : Harshal Lad   

Comments

Popular posts from this blog

Salesforce Development Index

C ourse C ontent Declarative Features Vs Programmatic Features Salesforce Architecture ( MVC ) Data Types Apex Classes If – Conditional and loops Collections in APEX List Set Map Oops Concepts Inheritance Polymorphism Encapsulation Abstraction Data Manipulation Language (SOQL) & SOSL Exception Handling Triggers and its Best Practices Custom Setting, Custom Metadata and Custom Labels Where to use it ? How to use it ? Apex Trigger + Custom Setting Asynchronous Apex Batch Classes Scheduler Classes Queueable Classes Future Method Apex Governor Limits Test Classes for Triggers and Apex classes Visualforce Pages Standard Controllers Extension Controllers Custom Controllers Wrappers Classes in Apex By : Harshal Lad ( CorpoVision Te...

Apex Triggers and Classes

  Apex Triggers   is use to execute the functionality or piece of code on record manipulation ( i.e., CREATE / UPDATE / DELETE / UNDELETE   records ). A trigger executes before and after an event occurs on record.

OOP,s Concepts in APEX

What is OOP's Concepts in APEX Programming ?   Object-Oriented Programming System (OOPs) is a programming concept that works on the principles of abstraction , encapsulation , inheritance , and polymorphism . It allows users to create objects they want and create methods to handle those objects. The basic concept of OOPs is to create objects, re-use them throughout the program, and manipulate these objects to get results. OOP meaning “Object Oriented Programming” is a popularly known and widely used concept in modern programming languages like Java, Apex and many other. List of OOP's Concepts >  Class  :   The class is one of the Basic concepts of OOPs which is a group of similar entities. It is only a logical component and not the physical entity. Lets understand this one of the OOPs Concepts with example, if you had a class called “Expensive Cars” it coul...