Skip to main content

Backend Developer & Development [ Part 1 ]



Backend developer is a develop who maintain the work users /  clients can't see such as processing transaction, data structure, data transfer. These works would contains in a API server and API server contains many endpoint that can call by anyone but only success when fulfill endpoint requirements so it is secured.

API Server

also know as REST API ( Representational State Transfer ). It's processing like client request to server & after server process return response to client.
API Server is develop by backend developer and this api server can be many type and different language, different framework such as
  • Ruby on Rails ( RoR ) using Ruby
  • Python
  • PHP ( Laravel & Yii2 )
  • Java ( Spring )
  • C# ( ASP.NET & NancyFX )
  • Node.JS ( ExpressJS, SailsJS, HapiJS, NestJS, FeatherJS )
Different framework have their own advantages and can be used on different projects based on their features and usage. In the development not only choosing frameworks also need to choose ORM / ODM for managing objects. ORM is object relational mapper and ODM is object document mapper. With these ORM / ODM you also need to choose what database to use such as
  • MySQL
  • PostgreSQL
  • MongoDB
  • Oracle
  • Microsoft SQL Database
  • Firebase ( realtime database )
After choosing a database you also can implements services that already completely work on production such as
  • Firebase ( Realtime Database, Authentication, CDN )
  • One Signal ( Notification )
  • Here WeGo / Google Maps ( Maps )
  • Docker ( Packaging apps )
  • Docker Composer ( Container for storing docker app )
  • Kubernetes [ k8s ] ( Container for storing docker app )
With these frameworks, orm, services can speed up your development speed. These api endpoints can testing & write tests by using Postman.

Backend Components

Most of the backend frameworks has almost same components / structures. They would have controller for processing datarouter for map api to url and middleware for pre-access of incoming requests ( means that will run before controller ). If framework come with some data mapper, they would have models / entities for database objects, migration for scripting table of database objects, and lifecycle for handling lifecycle of models like ( beforeAction & afterAction ). Some of the framework or data mapper still have extra features for this but i not going to explain that cause still have some different on all of the framework but these 6 is most common at all backend frameworks. Before move on to these components i will explaining about requests & responses.

Next part will talk about incoming requests & responses.

Popular posts from this blog

Flutter codebase sharing

# Clone For master branch come with example, you can clone and run `flutter doctor && flutter run` ``` git clone --single-branch --branch master https://github.com/Oskang09/Flutter-CB2019.git ``` For codebase branch just empty codebase, but setup done you can just start your development. ``` git clone --single-branch --branch codebase https://github.com/Oskang09/Flutter-CB2019.git ``` # Plugins * Dart as "Programming Language" * Flutter as "SDK" * Redux as "State Management" * Fluro as "Navigator Router" # pubspec.yaml ```yaml name: flutter_codebase description: A new Flutter project. version: 1.0.0+1 environment: sdk: ">=2.0.0-dev.68.0 (); Router router = Router(); routers.forEach( (route) { router.define( route.routePath, handler: Handler( handlerFunc: (context, params) => route.widget(params) ), transitionType: route.transitionType ...

Global Game Jam @ 2019 January 25 - 27 with Friends

A 3 day 2 night game development event, Global game jam and held at KDU Glenmarie. With a team of 3 people, we haven't done our game until the end but we learned much on the development. Such as modeling, coding, designing, editing using software like photoshop, magicavoxel, unity. Due to inexperienced we doesn't allocate work properly and lastly only done modeling & some mechanic part like health, damage, team check. But still many mechanic haven't done like taming, spawning and more. Sadly doesn't meet our expectation but really enjoy when developing in this event, KDU's student also very friendly to we. Thanks for the all participate for sharing in this event. Event & Game Information This global game jam event title is about "What is home means to you". So we have come with idea bring characters ( player ) back to home, or with defensive feature also dialog chat. Lastly we decide with Realtime-Strategy Defensive Game ( RTS Defensive ) abo...

Local Development | LAN [ Local Area Network ]

Before an application, website, backend server, frontend app or any application required to integrate with another platform, how you work with your friends? Put all in one computer for testing?  Upload to a free hosting for testing like Heroku ? If your team able to work in same place, i would suggest hosted own local network for testing at least faster then using other free platform like Heroku. As of improvement of technology, nowadays network interface card ( NIC ) would have a feature about HostedNetwork. You can host your local area network ( LAN ) for your friends and they can access your works and testing at their own computer and fix would faster the development. In Windows You can use command prompt and type "netsh wlan show drivers" and check is "Hosted network supported : ". If supported you can create your local area network by using command "netsh wlan set hostednetwork mode= allow ssid= YourAP key= YourPW ". YourAP  = Acc...