[TECH] Technical Development of GUHADA!

TEMCO
TEMCO
Published in
4 min readFeb 20, 2019

TEMCO’s technology for the blockchain-based e-commerce platform, “GUHADA”

At this time, we would like to inform you about the updates on the development of ‘GUHADA’, TEMCO’s blockchain-based e-commerce platform.

This week’s development update is about the technology that TEMCO is using for the GUHADA project.

I. Selection of development technology (Java, Spring Boot, mySQL, and React)

We’ve selected GUHADA’s backend programming language as “Java”.
The reason we’ve selected Java is that it has the strength as it is described below, and another main reason is TEMCO’s backend developers are made of Java professionals, so we didn’t hesitate to go with “Java”.

  1. OS Independency
    -JVM (Java Virtual Machine) and communication, JVM itself is dependent on the operation itself.
  2. Object Supporting Language
    -Inheritance, Encapsulation, polymorphism
  3. Automatic Memory Management (Garbage Collection)
    -No need to manually manage the memory
  4. Network and distributed processing support
    -Uses API
  5. Multi-thread support
    -Scheduling by Java interpreter
  6. Dynamic loading support
    -Compatibility of recompiling of parts, regardless of the part change.

II. The basic framework for the backend development selected was ‘spring boot’

The reason why we’ve selected spring boot is because of the advantages below for the maximization of productivity.

  1. Simplification of the setting
    -Prompt selection of applications, Utility that provides basic configuration for the building of drive spring application.
    - XML minimization.
  2. Fast execution speed
    - Quick Execution of the spring application.
  3. WAS independency
    - Without the need of WAS to execute a small program, allowing the execution of the application within one’s own embedded container.
  4. Basic Build-in
    - Built-in Tomcat and Jetty.
  5. Sublet Container built-in
    - Simply making of files into .jar for a file to send out.
  6. Version management
    - Expansion management by the library spring boot

III. We selected ‘mysql’ as the database where GUHADA’s actual data will be stored.

→ We may add another DB during the process of developing GUHADA, but for now, we’ve selected mysql for the project development.

  1. Open Source
    - Free to use.
  2. Diverse support
    - It can be used in diverse operational settings, supports various programming languages.
  3. Large Capacity Processing
    - Even large data can be fast and efficiently processed.
  4. Standard SQL
    - Widely known standard SQL used.
  5. Diversification
    - Modification of the MYSQL application to the user’s usage.

IV. GUHADA shopping mall’s front-end is using ‘react’.

→ After reviewing the popular front-end frameworks, ‘vue’, ‘angularJS’, and ‘react’, we’ve decided that the framework that is acceptable for GUHADA was ‘react’, and it has advantages that are listed below.

  1. Reusability
    - Simple UI modification and reuses (Component).
  2. Increase in performance
    - Increase in application performance through virtual DOM.
  3. Server and Client-side rendering support
  4. Exceptional Function
    - Exceptional Garbage Collection, memory management, functions are optimal.
  5. Convenience
    - Compatibility with other frameworks and libraries.
  6. Place of the usage
    Facebook, Twitter, Airbnb, Uber, Instagram, etc
  7. Virtual Dom

V. Other technologies being used:

1. Gradle
: Gradle is a basic build tool for deployment. It is an official build system for Android applications, supports Java, C/C++, Python etc.

2. Jenkins
: Jenkins not only automates the daily operation of the development but also provides simple method about the continuous integration of almost all the languages with source code repository and constructing of the continuous delivery environment.

3. SLF4J
: Simple Logging Façade for Java, in short slf4j, creates logging framework abstracts. Logging framework that applies the Façade Pattern.

4. Swagger
: During the development process through Rest API, it is a framework that automatically creates documents (when using Spring root).

5. node js
- The simplicity of the JS
- Exceptional speed of the V8 JS engine
- Single Thread (Non-blocking I/O)
- Socket Communication
- HTTP Web server execution possible
- npm is a package manager that receives the node that is made in Node.js

Thank you for reading about the technology selection of GUHADA!!

Stay tuned in for our exciting news and announcements!

TEMCO: Innovative Supply Chain Data and E-Commerce Solution through Blockchain and Smart Contract Technology.

Please visit us to learn more about the world’s first Bitcoin smart contract based supply chain data/e-commerce platform!

▶TEMCO Chatroom: https://t.me/temcolabs
▶TEMCO Official Website: https://temco.io

--

--

TEMCO
TEMCO
Writer for

Blockchain-based Supply Chain Data Management and E-commerce Open Market Platform, GUHADA.