Skip to content

Latest commit

 

History

History
520 lines (449 loc) · 26.2 KB

README.md

File metadata and controls

520 lines (449 loc) · 26.2 KB
Made this repo from the post added by

Eng: Mahmoud Hamza

Roadmap-For-Backend

Is a structured plan outlining the key steps and milestones to be achieved in the development of the backend portion of a software project. It serves as a comprehensive guide for developers and teams working on the server-side components of an application.

Table of Contents

What is the work environment in which you work?

1-How does the internet work

2-What is a programming language

3-What is Editor

4-What is HTTP

5-Browser how it works

6-DNS and how it works

7-What is a Domain Name

8-What is hosting

You should know some about frontend

1-HTML

2-CSS3

3-Javascript

You should know this before learning the backend language

1-How do operating systems work

2-What is terminal

3-CMD commands you should know

Learn a programming language and her framework

1-Python and framework-Django

- Python

- Django Framework

2-PHP and framework-Laravel

- PHP

- Laravel Framework

3-Javascript and framework-Nodedotjs

- Javascript

- Node.js Framework

4-Java and framework-Spring

- Java

- Spring Framework

5-Ruby and framework-Roda

- Ruby

- Roda Framework

6-C sharp and framework dotnet

- C#

- .Net Framework

After that you should add your projects on GitHub

1-What is Gitbub

2-What is Git

3-Learn Git

Take a look at these and back again after learning about database

1-What is REST API

2-What is SOAP

3-ACID database meaning

4-What is an ORM

5-What is a database transaction

6-Nplus1 selects problem in ORM

7-What is Database Normalization

8-What is Data Replication

9-How Sharding Works

10-What is the CAP theorem

You should know Database and the differences it

1-Relational Database

A relational database is a type of database that stores and provides access to data points that are related to one another. Relational databases are based on the relational model, an intuitive, straightforward way of representing data in tables. In a relational database, each row in the table is a record with a unique ID called the key. The columns of the table hold attributes of the data, and each record usually has a value for each attribute, making it easy to establish the relationships among data points.

1-MySQL

2-MariaDB

3-PostgreSQL

4-MSSQL

5-Oracle

2-Non-Relational Database-NoSQL

Non-relational databases (often called NoSQL databases) are different from traditional relational databases in that they store their data in a non-tabular form. Instead, non-relational databases might be based on data structures like documents. A document can be highly detailed while containing a range of different types of information in different formats. This ability to digest and organize various types of information side by side makes non-relational databases much more flexible than relational databases.

1-MongoDB

2-RethinkDB

3-CouchDB

4-DynamoDB

Take a look at these

1-Authentication

2-GraphQl

3-HTTPS

4-SSL-TLS

5-Hashing Algorithm

The final step after making all the steps you should make testing

1-Integration Testing

2-Unit Testing

3-Functional Testing