{"id":622,"date":"2020-07-02T18:02:34","date_gmt":"2020-07-02T12:32:34","guid":{"rendered":"https:\/\/www.techandtrain.com\/blog\/?p=622"},"modified":"2025-10-22T14:54:59","modified_gmt":"2025-10-22T09:24:59","slug":"best-practices-for-low-code-development","status":"publish","type":"post","link":"https:\/\/www.techandtrain.com\/blog\/2020\/07\/best-practices-for-low-code-development\/","title":{"rendered":"Best practices for low code development"},"content":{"rendered":"\n<p>Best practices for low code development:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Finalize the domain \/ entity model early<\/li><li>Check the capabilities of platform before writing code for any feature<\/li><li>Learn XPath<\/li><li>Try to have daily builds, daily demos, daily development goals with short sprints &#8211; comes from agile world<\/li><li>Learn to use the CI\/CD and Code management tools of the platform<\/li><li>Avoid deep linking URLs, avoid page URL altogether if possible<\/li><li>Check security \/ roles \/ entity access settings regularly<\/li><li>Integrate using in-built tools rather than custom code<\/li><li>For features like audit, associations, validations try to work at the entity level to start with. Incase you are unable to manage them their then move to workflow level validations<\/li><li>Understand the limitations of platform and then make appropriate suggestions<\/li><li>Old components, modules, etc. building up in apps should be cleared regularly<\/li><li>Check the app stores of the platform for modules that are already available before you build one<\/li><li>Check added libraries regularly for unused or deprecated \/ insecure versions<\/li><li>Scan uploaded files before using<\/li><li>Try to use architecture \/ design principles like SOLID in terms of singular responsibility and so on<\/li><li>Think of SSL, containerization, cloud, kubernetes, automation testing, logging, user interface &amp; licensing in advance and not as a reaction later<\/li><\/ul>\n\n\n\n<p>Low code has arrived !!!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Best practices for low code development: Finalize the domain \/ entity model early Check the capabilities of platform before writing [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":623,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[136],"tags":[137],"class_list":["post-622","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-low-code","tag-lowcode"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2020\/07\/Code.jpg?fit=960%2C540&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p7do02-a2","jetpack-related-posts":[{"id":1199,"url":"https:\/\/www.techandtrain.com\/blog\/2024\/01\/differences-between-sast-and-dast-bard-generated\/","url_meta":{"origin":622,"position":0},"title":"Differences between SAST and DAST &#8211; BARD Generated","author":"Neil Harwani","date":"January 14, 2024","format":false,"excerpt":"SAST and DAST: Two Key Players in Application Security When it comes to protecting your software from malicious actors, you need a solid security strategy. Two crucial techniques in this arsenal are Static Application Security Testing (SAST) and Dynamic Application Security Testing (DAST). Let's break down what each does and\u2026","rel":"","context":"In &quot;Security&quot;","block_context":{"text":"Security","link":"https:\/\/www.techandtrain.com\/blog\/category\/security\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/SDAST.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/SDAST.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/SDAST.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/SDAST.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/SDAST.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":131,"url":"https:\/\/www.techandtrain.com\/blog\/2017\/11\/bpm-business-process-management-and-trends\/","url_meta":{"origin":622,"position":1},"title":"BPM (Business Process Management) and trends","author":"Neil Harwani","date":"November 6, 2017","format":false,"excerpt":"Business process management from 1990s \/ 2000s in simplest terms is a set of activities (automated or manual) with breaks for events and interactions with external systems \/ human beings along with notifications \/ rules \/ filters \/ etc. Traditional BPM \/ Workflows included manual and automated tasks, integrations (mainly\u2026","rel":"","context":"In &quot;Enterprise Content Management&quot;","block_context":{"text":"Enterprise Content Management","link":"https:\/\/www.techandtrain.com\/blog\/category\/enterprise-content-management\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2017\/11\/BPM.jpg?fit=1080%2C720&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2017\/11\/BPM.jpg?fit=1080%2C720&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2017\/11\/BPM.jpg?fit=1080%2C720&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2017\/11\/BPM.jpg?fit=1080%2C720&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2017\/11\/BPM.jpg?fit=1080%2C720&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1163,"url":"https:\/\/www.techandtrain.com\/blog\/2023\/11\/what-are-some-of-the-best-practices-for-liferay-using-three-separate-gpts\/","url_meta":{"origin":622,"position":2},"title":"What are some of the best practices for Liferay? &#8211; Using three separate GPTs","author":"Neil Harwani","date":"November 20, 2023","format":false,"excerpt":"Generated using my GPT -\u00a0Liferay Guide - Via official sources of Liferay:\u00a0https:\/\/chat.openai.com\/g\/g-4G5XuBdpL-liferay-guide-via-official-sources-of-liferay Adhering to best practices in Liferay ensures that you leverage the platform effectively for enterprise solutions. Here are some key best practices to consider: 1.\u00a0Modular Development: Embrace Liferay\u2019s modular development approach using OSGi. Develop customizations in modules, rather\u2026","rel":"","context":"In &quot;Liferay&quot;","block_context":{"text":"Liferay","link":"https:\/\/www.techandtrain.com\/blog\/category\/liferay\/"},"img":{"alt_text":"Credits: www.Pixabay.com","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/11\/Fantasy-Portal.jpg?fit=1200%2C909&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1195,"url":"https:\/\/www.techandtrain.com\/blog\/2024\/01\/code-quality-tools-chatgpt-generated\/","url_meta":{"origin":622,"position":3},"title":"Code Quality Tools &#8211; ChatGPT generated","author":"Neil Harwani","date":"January 14, 2024","format":false,"excerpt":"Code quality tools are essential in the software development process to ensure that the codebase is maintainable, efficient, and free of bugs. They typically focus on various aspects of software quality, including style consistency, bug detection, complexity analysis, and more. Here's an overview of the types of code quality tools\u2026","rel":"","context":"In &quot;Code Quality&quot;","block_context":{"text":"Code Quality","link":"https:\/\/www.techandtrain.com\/blog\/category\/code-quality\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/1705212966438.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/1705212966438.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/1705212966438.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/1705212966438.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2024\/01\/1705212966438.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1191,"url":"https:\/\/www.techandtrain.com\/blog\/2023\/12\/list-of-tools-for-debugging-and-profiling-openjdk-databases-bard-generated-part-1\/","url_meta":{"origin":622,"position":4},"title":"List of tools for debugging and profiling OpenJDK &amp; Databases &#8211; BARD generated &#8211; Part 1","author":"Neil Harwani","date":"December 22, 2023","format":false,"excerpt":"Here's a list of tools you can use with OpenJDK for debugging and profiling, along with their key features and some visual examples: Debugging Tools: Java VisualVM:Built-in tool, included with OpenJDK. Monitors memory usage, CPU threads, and garbage collection. Profiles application performance. Captures and analyzes thread dumps. Java VisualVM screenshot:\u2026","rel":"","context":"In &quot;Databases&quot;","block_context":{"text":"Databases","link":"https:\/\/www.techandtrain.com\/blog\/category\/databases\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/12\/1703222439562.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/12\/1703222439562.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/12\/1703222439562.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/12\/1703222439562.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/12\/1703222439562.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1049,"url":"https:\/\/www.techandtrain.com\/blog\/2023\/03\/security-best-practice-patterns-architecture-links-from-aws-gcp-azure-part-1\/","url_meta":{"origin":622,"position":5},"title":"Security best practice, patterns &amp; architecture links from AWS, GCP &amp; Azure &#8211; Part 1","author":"Neil Harwani","date":"March 19, 2023","format":false,"excerpt":"Herewith I am providing a curated list of links for security best practices, patterns & architecture for AWS, GCP & Azure - Part 1. AWS: Security - AWS Well-Architected Framework (amazon.com) AWS Security Reference Architecture (AWS SRA) - AWS Prescriptive Guidance (amazon.com) AWS Security Documentation (amazon.com) Security, identity, compliance -\u2026","rel":"","context":"In &quot;Architecture&quot;","block_context":{"text":"Architecture","link":"https:\/\/www.techandtrain.com\/blog\/category\/architecture\/"},"img":{"alt_text":"Credit: www.Pixabay.com","src":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/Cloud.png?fit=1200%2C828&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/Cloud.png?fit=1200%2C828&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/Cloud.png?fit=1200%2C828&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/Cloud.png?fit=1200%2C828&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/www.techandtrain.com\/blog\/wp-content\/uploads\/2023\/03\/Cloud.png?fit=1200%2C828&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/posts\/622","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/comments?post=622"}],"version-history":[{"count":2,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/posts\/622\/revisions"}],"predecessor-version":[{"id":625,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/posts\/622\/revisions\/625"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/media\/623"}],"wp:attachment":[{"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/media?parent=622"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/categories?post=622"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.techandtrain.com\/blog\/wp-json\/wp\/v2\/tags?post=622"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}