What you need to know about the architecture behind the World Wide Web

If you ever wander around the web development community, you might have encountered the term REST sometime. In this article, let’s demystify the concept and see how this architecture has been getting more and more popular in recent years!

Image for post
Image for post

1. REST


Have you ever found yourself in a situation where you need to convert custom objects into JSON objects / dictionaries and vice versa? If so, this article might give you some serious help!

Image for post
Image for post
Photo by @joyfulcaptures on unsplash.com

Problem

Imagine you are working as a backend developer. After a bunch of logic operations and database queries, you get an object type Person, which you want to return to frontend. However, you have to return it as a JSON object instead of a Person object, since it is the standardized protocol in transferring data.

Without external libraries, you will have to do it this way:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age
person = Person(name='Bill', age=19)
return_value = {
'name': person.name,
'age': person.age
}

You might also come across this problem when working with databases…


You are a backend developer having to deal with bulky databases on a daily basis? You find yourself fed up with writing lengthy and sophisticated SQL queries every time you work with your databases? To solve these problems and inconvenience when working with databases, ORM was created.

Image for post
Image for post
Source: photo by bqthanh on kipalog.com

Note: as this article only focuses on Relational Database Management Systems (RDMSs), e.g MySQL, PostgreSQL, SQLite,…, in the scope of this topic, the phrase ‘databases’ will be associated with relational databases only.

Once upon a time, …

A long time ago, when humanity has yet to know about something called ‘ORM’, every time developers wanted to interact with databases (create, read, update, and delete data in tables), they had to write raw SQL queries and executed them in the program using connectors. …

Bill Tran

CS & Math @ Conn

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store