AppMaster.io
HomeStudioJobsSuggest Feature
  • What is AppMaster.io?
  • Getting Started
    • App Architecture
    • Quickstart
    • Best Practices
    • FAQ
  • Projects
    • Creating a Project
    • Project sharing
  • MODULES (INTEGRATIONS)
    • Modules
    • Setup
    • Modules List
      • Mobile applications
      • Authentication
        • Auth
        • Sign-in with Google
        • Sign-in with Facebook
        • Sign-in with LinkedIn
        • Sign-in with Apple
        • Google OAuth 2.0
      • Security & Data Validation
        • Crypto
        • Validators
        • IP Filter
      • Payments
        • Stripe
      • Maps & GIS
        • Universal Map
        • Cities and Countries
        • Google Maps
        • MapBox
      • Messengers
        • Telegram
        • Slack
        • Intercom Messenger
        • Discord
      • Video Conferencing & Webinars
        • Zoom API
      • Mailings, advertising
        • Intercom API
        • Google AdMob
        • SendPulse
        • GetResponse
        • Mail Chimp
        • SMS messaging
          • ClickSend
          • Telesign
          • MessageMedia
          • SMSto
          • Twilio
          • Nexmo
      • Email
        • Custom SMTP
          • Custom SMTP and Gmail
        • Gmail API
        • Email (SMTP Client)
      • Media files
        • Youtube Player
        • Image
      • Docs
        • Google Sheets
        • Google Drive
      • Date & Time
        • ICalendar
      • Data Storages
        • Amazon S3
        • OpenStack SWIFT
      • Language translators
        • Microsoft Translator
        • Google Translate
        • DeepL Translator
      • Special modules
        • Autodesk Partner API
      • File Archives
      • Google Indexing
      • Barcode Scanner
      • CloudConvert
  • Data Design
    • What are data models
    • Data Models Designer
      • Creating and modifying data models
      • Creating and modifying relations
      • System fields
    • Data types
    • Relation types
    • Auto-generation of data models
      • Virtual Data Models
      • Modules data models
      • List of generated models
        • Data Model User
        • Data Model User Session
  • Business Logic
    • Business Processes Editor
    • Best Practices for BP Separation
    • Blocks List
      • Logic
        • If-Else
        • For Each Loop
        • Loop
        • Break Loop
        • Switch
        • Set Variable
        • Raise Error
        • Comparison
        • Type Conversion
          • Date & Time to String: Format Guide
      • Functions
        • Math
          • Operators
          • Random Integer/Float
          • Round Up/Down
          • Mod
          • Is Even Number
          • Array Operations
        • String
          • Random String
          • Concat Strings
          • String Length
          • Has Substring
          • Hash
          • Is Valid Email
          • To Lower/Uppercase
          • Trim String
          • Replace String
          • Get Char at Position
          • Split String
          • Slice String
          • Validate String (Regex)
        • Boolean
          • Logic AND
          • Logic OR
          • Logic NOT
        • Array
          • Append Array
          • Prepend Array
          • Concat Array
          • Array Size
          • In Array
          • Random Element
          • Shuffle Array
          • Array Element
        • Date & Time
          • Make Date/Time/Date & Time/Time Span
          • Expand Date/Time/Date & Time/Time Span
          • Add/Subtract Time Span
          • Current Date & Time
          • Date & Time Difference
          • Delay
        • File
          • Get File
          • Create File
          • Read CSV File
          • Read XLSX File
          • Read XLS File
        • Miscellaneous
          • App Info
          • Write to Log
          • Get Request Header
          • Set Response Header
          • Get Request Body
      • Model Functions
        • Search
        • GetOne
        • Delete
        • Create
        • Patch
        • Update
        • Expand
        • Make
        • External API Requests Data Models
          • Make APIRequestName URL Params Model In
          • Make APIRequestName Body Model In
          • Make APIRequestName Headers Model In
          • Make APIRequestName Query Model In
          • Expand APIRequestName Headers Model Out
          • Expand APIRequestName Response Status Model Out
          • Expand APIRequestName Body Model Out
        • Virtual Data Models
          • Make Virtual Data Model
          • Expand Virtual Data Model
      • User-Created BPs
      • External API Requests
      • Variables
      • Models
      • Enums
      • Group Auth
        • Registration
        • Authentication
        • Authorization
        • Logout
        • Change Password
        • Restore Password
        • Add User to Group
        • Remove User from Group
        • Get Current User
        • Generate Auth Token
        • Hash Password
        • Probe Password
      • Group Crypto
      • Group Validators
        • Validate OGRNIP RU
        • Validate OGRN RU
        • Validate SNILS RU
        • Validate INN RU
        • Validate KPP RU
        • Validate BIK RU
        • Validate IIN KZ
        • Validate Bank Card Number (Luhn)
        • Validate KS RU
        • Validate RS RU
    • Global Variables
    • External API Requests
    • FAQ
  • Endpoints (API)
    • Endpoints Configuration
    • Middleware
      • Middleware: Token Auth
    • Access & Permissions
  • WEB APPS
    • Web Applications Designer
    • Working with Components
    • Signup and Login Forms
    • Workflow in web applications
    • Components list
      • Container
      • Button
      • Dropdown
      • Table
      • View
      • Tabs
      • Switch
      • Label
      • Image
      • Video
      • Chart
      • Form
      • Input (string)
      • Input (text)
      • Input (integer)
      • Input (float)
      • Input (email)
      • Input (password)
      • Input (phone)
      • RichText Editor
      • Time Span
      • Date Picker
      • Time picker
      • DateTime Picker
      • Select
      • Select (enum)
      • Relselect
  • MOBILE APPS
    • Mobile Applications Designer
    • Creating a Mobile App
    • Mobile Designer Interface
    • Working with Screens
    • Working with Widgets
    • Publishing a Mobile App
      • Testing in AppMaster.io Developer App
      • Publishing to Google Play
        • Create Google Developer Account
        • Create Firebase Project
        • Register Android App & Download Config File
        • Generate & Download Private Key
        • Generate APK/AAB File
        • Upload App for Testing
        • Set Up Google Play Store Listing
      • Publishing to App Store
        • Create Apple Developer Account
        • Create Apple Bundle ID
        • Create App in App Store Connect
        • Create App Store Connect API Key
        • Generate Build & Upload to TestFlight
        • Submit App to App Store
  • DEPLOYMENT
    • Deployments Configuration
    • AppMaster.io Cloud Services
    • Data Export
    • Logs
  • How-To
    • Import CSV/Excel File
    • Buttons Setup
    • User Interface Layout
Powered by GitBook
On this page

Was this helpful?

  1. Business Logic

Best Practices for BP Separation

1) Reuse of the Business Process

Different application functions can be used repeatedly. In that case, it is recommended to create a separate business process for them and use this process instead of creating the combinations of blocks all the time.

2) Correct naming

The business process name should correspond to its purpose and functionality. If the business process is designed to work with certain database models or specific user roles, you should reflect it in the name.

3) Commenting

Sometimes the name is not enough to represent the work of the business process. Fill in the description of the BP for more detailed information and possible commenting on the features of use.

4) Minimizing database requests

Avoid sending universal requests to the database to obtain redundant data, a significant part of which is not needed in a particular BP. You need to minimize the number of requests to the database and not use _with unnecessarily.

5) Global variables for temporary files

Don’t use databases to save temporary files. The use of global variables will help minimize the number of database accesses and increase the speed of the application.

6) The use of asynchronous mode

Many tasks can be performed without the need to respond to the user. In that case, it is better to use an asynchronous mode of their blocks operation.

7) Separation of large BP

A large number of BP blocks makes it visually unclear. If possible, transform large parts into separate functions. But don't overuse. Break down BP only if necessary.

PreviousBusiness Processes EditorNextBlocks List

Last updated 3 years ago

Was this helpful?