Book Image

Rapid Application Development with OutSystems

By : Ricardo Pereira
Book Image

Rapid Application Development with OutSystems

By: Ricardo Pereira

Overview of this book

OutSystems is a software development platform that speeds up the build phase by abstracting code and making almost everything visual. This means replacing textual language with visual artifacts that avoid lexical errors and speed up code composition using accelerators and predefined templates. The book begins by walking you through the fundamentals of the technology, along with a general overview of end-to-end web and mobile software development. You'll learn how to configure your personal area in the cloud and use the OutSystems IDE to connect with it. The book then shows you how to build a web application based on the best architectural and developmental practices in the market, and takes the same approach for the mobile paradigm. As you advance, you'll find out how to develop the same application, and the great potential of reusing code from one paradigm in another and the symbiosis between them is showcased.The only application that'll differ from the application in the exercise is the one used in business process technology (BPT), with a focus on a common market use case. By the end of this OutSystems book, you'll be able to develop enterprise-level applications on the web and mobile, integrating them with third parties and other systems on the market. You'll also understand the concepts of performance, security, and software construction and be able to apply them effectively.
Table of Contents (21 chapters)
1
Section 1: OutSystems 101
5
Section 2: The Magical Path of the Backend
10
Section 3: Create Value and Innovate with the Frontend
16
Section 4: Extensibility and Complexity of the OutSystems Platform

The importance of architecture

First of all, we need to understand why the existence of good architecture is important.

As applications are developed, their size and complexity grow, increasing the design problem and exceeding data structures and algorithms. Therefore, designing an architecture that facilitates the understanding of these components becomes a more-than-necessary path. Bad architecture can also impact performance, lead to life cycle issues, and cause dependency problems, increasing technical debt uncontrollably and potentially leading to more catastrophic scenarios. As with everything in life, no matter how good it is, we have to be smart when using it.

Among the aspects that need to be observed in this process, issues such as communication protocols, feature assignment to certain parts, and the control structure are included.

A clear example can be found in reactive web and mobile OutSystems applications, where a solution needs to rely on several layers to...