• Tidak ada hasil yang ditemukan

Tools and Theories .1 Flutter

Dalam dokumen Smart Trends in Computing and Communications (Halaman 167-170)

Flutter [1] is a framework for creating UI for mobile application. It can work across platforms for both iOS and Android at the same time. The language used in Flutter is Dart, which was developed by Google, and, most importantly, it is an open source that can be used for free. The highlight of Flutter is the hot reload system. When testing, creating, or editing, the system shows the changes in the UI immediately and helps the development easier. The more beautiful UI design such as Material Design and Cupertino (iOS-flavor), and compatible with both Android Studio and VS Code IDE, can be used with existing programming languages such as Java, Swift, or Objective-C.

The disadvantage of Flutter is that it was launched in May 2017, so it is not familiar with the syntax that uses Dart writing [2] as in Fig.15.1, and compared to other frameworks like React Native, the library selection is available for use less.

Flutter has two types of widgets: StatelessWidget and StatefulWidget. Stateless- Widget is used to create widgets that do not handle any working state, such as displaying text, icons, or images without animation involved, etc. StatefulWidget is used to create widgets that manage various status operations such as creating an icon with animation to be able to move and buttons on the UI.

Fig. 15.1 Dart language syntax

15 Expressing Opinions Application: A Case Study at Rajamangala … 161

15.2.2 Spring Framework

Spring Framework [3] is a tool that is used to create APIs for communication between applications and servers. It is a framework suitable for use with Java Enterprise Application because it helps to manage objects automatically. It consists of many modules which have separate names such as Spring MVC and Spring AOT, and currently, there are Spring Boots which help to develop and write programs more easily than Spring. The structure is shown in Fig.15.2. The most important module is the Spring Core Container that consists of Core, Beans, Context, and Expression Language modules (SpEL). It is a part of preparation for Spring containers such as BeanFactory and ApplicationContext. Next, the Data Access/Integration comprises of five parts: JDBC, Data access, OXM, JMS, and Transactions modules.Web layer is the providing service in terms of Web development, whether connecting or uploading files consisting of Web modules, Web-MVC, Web-Socket, and Web- Portlet modules.

Spring Boot[4] allows for fast application development with Auto-Configuration.

This eliminates the need to waste time configuring, including the ability to create a stand-alone application that is exported as .jar or .war and can be deployed at the application server as well. Spring Boot has the following features:

• It is built as a stand-alone Spring application with main methods.

• It has an embed Web Server, usually a tomcat, but can be chosen as another option.

• There is a POM “starter” that is prepared for use. No need to worry about dependency.

• It provides features for monitoring to see memory, thread, and metrics.

• It does not require XML configuration anymore because everything is written as Java-based configuration.

Researches in application have been developed in many ways. The most related research uses the Spring Framework [5–7]. Gajewski et al. [5] have analyzed and

Fig. 15.2 Structure of the Spring Framework [3]

162 E. Tangtrakul et al.

compared the performance of the Spring framework and the Play framework. Both application frameworks let the creation of efficient servers that supported in the large platform and popular website. The Spring framework was adapted on the cross- platform application to support the front end [6].

15.2.3 Java Script Object Notation (JSON)

JSON [8] is a data format used for exchanging small data. It makes the user understand easily and can be created and read. The JSON tool is actually a standard format that is text and can be read with the naked eye. It is used to create objects, to send data between applications or as application program interface (API). The format is in the form of Key-Value pairs or Arrays and can be used instead of the XML format’s two types:

Object. That is a set of data which will begin with a “{” and end with a “}”. Each value will have a symbol “:” between the data name and the value of the data. And each data is separated by a symbol “,” such as {“phone”: 0868594516}.

Array. That is the sequence of data that begins with the symbol “[” and ends with the symbol “]”. Each value of the data is separated by a symbol “,” such as {“phone”:

[0868594516, 0868668505]}.

15.2.4 SQL

Structured Query Language (SQL) [9] is the standard language for accessing the database. We can use the SQL language from various programs to do with the database system, such as using SQL to retrieve data (Retrieve Data) from the database, and it is the standard used in the system. Various databases are an American National Standard Institute (ANSI) standard designed to manage data in the relational database management system (RDBMS) for searching, changing, adding, and reducing data or to create new tables (create) and delete (drop) and alter (alter) the table that is stored in the database in a tabular format.

SQL Syntax. The SQL language is divided into the following components, as shown in Fig.15.3:

• Clauses are components of statements and query.

• Expressions are the creation of results in the form of a table consisting of columns and rows from the data.

• Predicates are conditional forms in which results are true/false/or Boolean.

• Queries are important clauses in SQL.

• Statements are things that affect data structures, manage data, transactions, pro- gram flow, and sessions, or even analyze problems. It is necessary to end with semicolon (;) which is a must every time for SQL.

15 Expressing Opinions Application: A Case Study at Rajamangala … 163

Fig. 15.3 Structure of SQL

• Insignificant whitespace or spaces for SQL statements and query are ignored.

Dalam dokumen Smart Trends in Computing and Communications (Halaman 167-170)