Developer Fundamentals 1 Flashcards

Multi-Tenant Concepts | MVC Architecture | Lightning Component Framework (101 cards)

1
Q

The Salesforce multi-tenant environment consists of what key elements and features?

A

Shared Resources
Cloud Computing
System Updates
Metadata-Driven Kernel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the Lightning Platform?

A

Lightning platform is a Platform as a Service (PaaS) that is built for cloud computing and based on the multitenant architecture.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Key features of the Lightning Platform?

A

Web-Based Platform
No Software Installation
Focused Development
Developer Console

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

The multitenant architecture features shared system resources and what usage limitations?

A
  • All customers share the same computing power, custom-designed database, data storage, and core features.
  • Salesforce monitors code execution and has various governor and resource limits associated with code execution.
    -Resources such as CPU usage, queries, and records returned are limited per customer to ensure optimal performance.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Multi-tenancy allows customers to receive regular upgrades throughout the year. What is unique about these updates?

A
  • Automatic, seamless upgrades are rolled out three times a year in Spring, Summer, and Winter.
  • All customers automatically get the same updates at the same time throughout the year.
  • Sandboxes are upgraded before production so that the changes can be previewed and tested
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Explain the Metadata-Driven Kernel?

A

Salesforce uses a runtime engine that materializes all application data from metadata, which is data about the data itself.

Architecture - There is a clear separation between the runtime database engine (kernel), tenant data, and metadata, which allows easy upgrades.

Deployment - Deployment of new or updated metadata components to production is strictly managed. Unit tests must cover no less than 75 percent of the application’s source code for deployment to production.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is MVC Architecture?

A

In application development, the MVC is an architectural pattern that separates the data layer from the business logic and how the data is presented in the user interface.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What does the Model represent in MVC for Salesforce?

A

Model represents the structure of the data through sObjects, fields, and Apex classes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What does the View Represent in MVC for Salesforce?

A

View represents the presentation layer which consists of pages and components.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What does the Controller Represent in MVC for Salesforce?

A

Controller represents the business logic, either declarative or programmatic. Custom controllers and controller extensions are written as Apex classes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

The model layer of the MVC architecture includes what components?

A

Standard Objects
Custom Objects
Object Fields
Object Relationships
Apex Classes (Data)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

The view layer of the MVC architecture includes what components?

A

Standard Pages
Visualforce Pages
Visualforce Components
Custom Tabs
Page Layouts

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

The controller layer of the MVC architecture includes what components?

A

Standard Controllers
Custom Controllers (Apex)
Extensions (Apex)
Declarative Rules & Tools (Apex Triggers, Validation Rules, Flows, etc.)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is the Lightning Component Framework?

A

The Lightning Component Framework is a UI framework that allows building single-page web apps with dynamic and responsive user interfaces in Salesforce. It uses JavaScript on the client side and Apex on the server side.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are the two programming Models of the Lightning Component Framework?

A

Lightning components can be built using the Aura Components or Lightning Web Components model. They can coexist and interoperate on a page.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are the Benefits of the Lighting Component Framework?

A

The framework offers features such as device awareness and cross-browser compatibility, allows using various out-of-the-box components for faster development, and enables customizing Lightning Experience and communities.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

How does the Lightning Component Framework handle performance?

A

The framework utilizes a stateful client (using JavaScript) and a stateless server (Apex). The client calls the server only when absolutely necessary, which results in fewer calls to the server and more responsive and efficient apps.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Does the Lightning Component Framework use Event-Driven Architecture?

A

Yes. Lightning components utilize event-driven architecture. Components are capable of listening to events and responding accordingly

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Lightning Web Components and Aura Components do not follow an MVC Architecture pattern. What Architecture pattern do they follow?

A

MVCC (Model - View - Controller(Client) - Controller(Server))

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

In Salesforce, what is the different between a Client-Side Controller and a Server-Side Controller?

A

The JavaScript controller on the client side is used to perform client-side operations and also acts as the intermediary between the server and the UI.

The Apex controller on the server side is used to perform database operations. The JavaScript controller is used to call methods in the Apex controller.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Does the Lightning Component Framework provide out of the box components?

A

The framework provides several out-of-the-box components which come with the Lightning Design System styling. These components can be found in the ‘lightning’ namespace and are available in two versions: Aura components and Lightning web components. Note that Aura components in the ‘ui’ namespace are deprecated and will no longer be supported.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Are Lightning Components reusable?

A

Yes. Components that are built using the framework are self-contained and reusable units that can range in granularity from a single line text to an entire app. Components can be assembled and configured to form new components.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Can you develop a sophisticated UI with Lightning Components?

A

Yes. A component can contain HTML, JavaScript, CSS, any Web-enabled code, and also other components, which allows developers to build apps with sophisticated UIs.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What Events do Aura Components Support?

A

Aura components support two types of events, namely component events and application events. Component events are used for handling events in the containment hierarchy while application events allow handling events at the application-level.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
What events do Lightning Web Components Support?
Lightning web components can communicate across elements on a page using a publish-subscribe pattern where one component publishes the event and subscribing components receive the event.
26
What is the Lightning Data Service and what framework supports it?
The Aura framework supports the Lightning Data Service (LDS), which serves as the data layer and can be used to read, create, update, and delete records.
27
What is an App?
An app is a group of tabs that work as a unit. In Salesforce, Classic and Lightning apps can be created and customized to serve specific functions in Salesforce.
28
What do Classic Apps Contain?
Classic apps contain standard and custom tabs, which can include standard and custom object tabs, Visualforce tabs, Lightning component tabs, Canvas apps, and web tabs.
29
What do Lightning Apps Contain?
Lightning apps contain everything from the Classic apps list, plus they can contain Lightning Page tabs and utilities like Sales Dialer.
30
Where are Lightning Apps created?
The App Manager
31
Where do you update the app?
Lightning App Builder
32
What can be configured through the new Lightning App Wizard?
When creating a new Lightning app using the App Manager, the app can be given a name, its primary color and logo can be set, app description can be added, and the type of navigation (standard or console) can be set. Form factors available for the app can be selected. The items that appear in the navigation bar can be selected. Utility items, like Recent Items, Notes, Dialer, To do list, and Open CTI, can be added to the utility bar. The app can be assigned to user profiles.
33
What determines the landing page of a new App?
The item at the top of the list in the navigation bar becomes the app’s landing page on both desktop and mobile.
34
Utility Bar Items are available for desktop devices only?
True
35
What access can be configured from the New Lightning App Wizard?
Access via Profiles
36
What is the lightning App Builder?
Lightning App Builder is a declarative tool that can be utilized to create and configure custom pages for Lightning Experience and the Salesforce mobile app.
37
What different types of Apps can be built and customized with the lightning app builder?
Single Page Apps Dashboard-Style Apps Point Apps (Solve a particular problem) Custom Record Pages Custom Home Pages Custom Email Application Panes
38
What are the available lighting Page Types?
App Page Home page Record Page Email Application Pane Forecast Page Omni Supervisor Page
39
What Defines the Content of a lightning page?
Standard, Custom, and third-party lightning components
40
How do you make a custom lightning component usable in lightning pages and the lighting app builder?
The component and its component bundle must be configured so that they are compatible and it must have been deployed to the org.
41
What makes Lightning Pages Dynamic?
Filter Conditions and Logic can be added to the lightning page's configuration to control when the page appears.
42
Name the Declarative tools for Automation?
Flow Builder Process Builder Approval Process Workflow Rule
43
Name the Declarative tools for Sharing and Security?
Profiles Permission Sets Permission Set Groups Organization Wide Defaults Sharing Rules
44
Name the Declarative tools for Business Logic and Validation?
Formula Fields Roll Up Summary Fields Validation Rules
45
Name the Declarative tools for the User Interface?
App Manager Lightning App Builder Quick Actions
46
Name the Declarative tools for Data Management?
Data Import Wizard Data Loader
47
Name the Declarative tools for Analytics?
Reports Dashboards
48
What can the Process Builder do?
Process Builder performs immediate or time-based actions when a record is created, a record is updated, or a platform event occurs. It is capable of performing actions conditionally based on a single or multiple if/then statements.
49
What Operations does the Process Builder Support?
Create New Records Update Any Related Record Invoke Apex Code Create a Chatter Post Send Email Alerts Submit a Record for Approval Launch a Flow or Another Process Send a Custom Notification
50
What can Flow Builder do?
Flow Builder can be used to automate a guided visual experience or start a business process from a user interaction, process, schedule, platform event, or record change. Flows can also be invoked from Apex and vice-versa.
51
What Operations does the Flow Builder Support?
Creating New Records Deleting Records Launching another flow Updating Any Record Send Email Alerts Send Custom Notification Invoke Apex Code Submit a record for Approval Create a chatter post Send Outbound Messages
52
What can Approval Processes do?
An approval process can be used to submit a record for approval when a user clicks a button or link or when a flow or process submits a record for approval.
53
What are the main capabilities of Approval Processes?
Creating New Tasks Sending Email Alerts Updating Original Record or Its Parent Sending Outbound Messages
54
What can Workflow Rules do?
A workflow rule can be used to implement a business process that consists of a single if/then statement. It can be triggered when a record is created or updated, and supports both immediate and time-based actions.
55
What are the main capabilities of Workflow Rules?
Creating New Tasks Sending Email Alerts Updating Original Record and Its Parent Sending Outbound Messages
56
Access to Objects and Fields are controlled by what?
Profiles and Permission Sets
57
Access to Records is controlled by what?
OWD Sharing Rules Role Hierarchy Manual Sharing Teams
58
What does a Formula Field do?
A formula field can be used to automatically calculate the value of a field based on other fields, expressions, or values.
59
What does a Roll-up Summary Field do?
A roll-up summary field is used to automatically calculate the value of a field on a parent record based on the values of a field on child records.
60
What does a Validation Rule do?
A validation rule can be used to verify that the data entered by a user on a record meets the standards before the record is saved.
61
What can the App Manager do?
App Manager can be used to create an app which acts as the container for a set of items such as object tabs and utility items.
62
What can the Lightning App Builder do?
Lightning App Builder can be used for building and customizing single-page apps, dashboard-style apps, ‘point’ apps that solve a particular task, custom record pages, custom Home pages, and custom email application panes.
63
What can quick actions do?
Object-specific and global quick actions can be created to allow users to invoke custom functionality when using the UI.
64
What is the Report Builder?
Report Builder is a visual, drag-and-drop tool that can be used to build custom reports and edit existing reports. It allows choosing a report type, report format, and the fields that should make up the report.
65
What is the Dashboard Editor?
Dashboard Editor is a visual, drag-and-drop tool that can be used to build custom dashboards and edit existing ones. Dashboard components can be added, edited, or arranged in a dashboard. A dashboard component contains a chart or metric that shows data from a source report.
66
How do we organize and share reports and Dashboards?
Report and Dashboard Folders.
67
What programmatic tools are offered by Salesforce?
Apex Visualforce Lightning Components
68
What is Visualforce?
Visualforce is a framework that can be used to build custom user interfaces, mainly for Salesforce Classic. It uses a tag-based markup language that consists of Visualforce tags, HTML, JavaScript, or any other Web-enabled code embedded within a single tag. Visualforce pages can be used to override standard buttons, define custom tabs, create dashboard components, etc.
69
What is Apex used for?
Apex code can be used to build more complex business logic for apps.
70
How can I Invoke Apex in a process or flow?
Make the Apex method Invokable and then call it from the process or flow.
71
Can Apex be used for integration with external systems.
Yes
72
Can Apex also be used to perform server-side actions for custom Visualforce pages and Lightning components.
Yes
73
What does an Apex Trigger do?
Execute custom business logic before or after a record is created, updated, deleted, merged, or upserted, or undeleted (after event only).
74
How do you make an Apex Class Invocable?
Add '@InvokableMethod' above the method declaration.
75
What attribute of the Apex invocable method can be used to define the name of the action that should appear in the action configuration window of the declarative tool such as Flow Builder.
The Label
76
What happens when we don't define the label attribute of the Invokable method of an apex class?
The name of the class will appear in declarative tools.
77
When do we use a programmatic tool over a declarative tool?
We use programmatic tools when the required functionality cannot be met with Declarative tools.
78
What are Aura Components?
Aura components are self-contained and reusable units of an app that represent reusable sections of the UI, and can range in granularity from a single line of text to an entire app.
79
What are the two models that Lightning Components can be created with?
The Aura Component Model and the Lightning Web Component (LWC) Model.
80
What Lightning Component Model can be used in places like Custom Tabs, Lightning Pages, Experience Builder, Flows, Visualforce Pages, etc.?
Both Aura and Lightning Web Components can be used.
81
Define the REST API?
REST API provides a way to programmatically access or process Salesforce data from an external application via REST-based web services.
82
When should you Use a REST API?
Use this API when developing web or mobile applications that need to integrate with Salesforce.
83
Define the SOAP API?
SOAP API lets developers access, search, and perform DML operations on records from an external application via the SOAP messaging protocol.
84
When should you use the SOAP API?
Use SOAP API in any languages that can work with web services such as Java or C++.
85
Define the Chatter REST API?
Chatter REST API can be utilized to show Chatter related data such as feed, users, or groups.
86
When should you use the Chatter REST API?
Use this API when integrating Chatter with external web or mobile applications.
87
Define the User Interface API?
User Interface API allows developers to build user interfaces that surface records, list views, quick actions, favorites, and other components.
88
When should you use the User Interface API?
Use this API to build Salesforce UI on external native mobile applications and web applications.
89
Define the Analytics REST API?
Analytics REST API grants programmatic access to Salesforce Analytics data such as datasets, lenses, and dashboards.
90
When should you use the Analytics REST API?
Use this API when there is a need to access, query, and interact with the Analytics Platform programmatically.
91
Define the Bulk API?
Bulk API lets developers and admins perform CRUD (Create, Read, Update, Delete) actions on large datasets asynchronously in batches.
92
When should you use the Bulk API?
Use this API when working with large volumes of data (hundreds of thousands to millions of records).
93
Define the Metadata API?
Metadata API allows developers to programmatically retrieve, deploy, create, update, or delete customizations or metadata in an org.
94
When should you use the Metadata API?
The most common use of this API is in deploying changes from one org to another, or from a local directory to an org using Salesforce CLI.
95
Define the Streaming API?
Streaming API is used in receiving notifications based on record-change events or custom events in Salesforce.
96
When should you use the Streaming API?
Use this API to subscribe and receive real-time notifications related to changes within a Salesforce org.
97
Define the APEX REST API?
Apex REST API allows Apex classes to be exposed and invoked by external application as REST web services.
98
When should you use the APEX REST API?
Use this API when there is a need to run Apex code from an external application and increase code reuse.
99
Define the APEX SOAP API?
Similar to Apex REST API, Apex SOAP API allows Apex classes to be exposed and invoked by external application as SOAP web services.
100
When should you use the APEX SOAP API?
Use this API when it is required to run Apex code from an external application via SOAP API.
101
Define the Tooling API?
Tooling API provides the ability to write SOQL query for many metadata types in an org. This API provides SOAP and REST interfaces and can be used in creating custom Lightning Platform development tools or apps.