How Are Websites And Apps Made - All What You Need To Know About Starting programming

How Are Websites And Apps Made - All What You Need To Know About Starting programming

How Are Websites And Apps Made - All What You Need To Know About Starting Programming





How Are Websites And Apps Made - All What You Need To Know About Starting Programming


Oh yeah Apps and Websites... what doesn't have an App or a Website or both nowadays, as an Android Apps developer and having some experience in other programming fields i will try to share my humble experience and try to explain the process as simple as possible.

first there is something you have to understand before reading this article... in the programming world there is something called programming languages so what are programming languages ?

Programming Languages definition :

Simply Programming Languages are languages used to write programs or sites you or other users can run on their devices, there are two types of programming languages: High Level Programming Languages and  Low Level Programming Languages.

Actually the higher the languages level are, the easier the programmer write the code and the closer they are for human languages, and the lower the languages are the faster they are for  the computer to execute the tasks written on the code and the closer they are for machine language.

Programmers mostly write on High-level programming languages because they are easier and Low level programming languages like Machine Code (the only language the computer can directly understand) needs to pay too much attention on numerous details and they are if we can say unHumanReadable (Lol i just made this word out, i mean they are not readable for humans).

And now there are some examples of high and low level programming languages :

High level programming languages: Java, C, C++, C#, Python, Kotlin, PHP, JavaScript, Type Script, Pascal, Delphi, Matlab.

Low level programming languages: Assembly, Machine Code.

I have said that Machine Code is the only language the computer can understand... so how can it understand what is written in other high level programming languages ? there is something called a compiler what is it and what does it do ?

The Compiler

the compiler is the tool that "translates" the code written by the programmer on a specific programming language to Machine Code.

Now what do programmers use to write codes ? they use either text editors such us notepad++, atom, vs code, sublime...etc, or IDEs like: VisualStudio, Lazarus, Netbeans and Android Studio (these are some articles about it : Android Studio). i know that you would be wondering what is an IDE ...

The IDE 

IDE stands for integrated development environment and it is a software that helps programmers writing programs it consists source code editor, build automation tools, and a debugger ( helps the coder checking syntax errors in there code such as a messing semi colon ';') the mostly contain a compiler, interpreter, or both .

now you know the basic information needed about programming.. now how programmers make apps and websites ?

How Are Websites Made



Websites are made of Back-end (server side) and Front-End (user interface)

The Front End

The front end is what the users sees of your website, its interface, the page structure, the design, the style ...etc it is mostly constructed of 3 languages HTML, CSS, and JavaScript.

HTML 

Html is a an easy language to learn, it's a markup language (not a programming one)  used to build the website simple structure

CSS

CSS is a styling language (not a programming one too) used to give that html page some style and great design. it is very easy to learn too

JavaScript

JavaScript is a programming language widely used and has too many libraries, used in front end to make it dynamic

That's mostly the basic information you have to know about a websites's front end, so now let's talk a little about the back end

The Back End

The back-end is where all the needed technologies written , it can be written in different programming languages like python (Django), Php, Java, Ruby on rails....etc. It processes the incoming requests and generates response and send it back to the user. That typically includes three parts:

  • The server : where the computer receives requests.
  • The app : the app run on the server which listens for requests,gets information from databases, and sends responses..
  • The database : it is used to store and organize data.
About the Data Base the most used data bases are : MySQL, Oracle, SQLite and Microsoft SQL Server

now after this brief summary about how websites are made, we are going to start talking about applications


How Are Apps Made

Before that  you need to choose what kind of apps you want to make ? desktop apps or mobile ones ? and if it's a mobile one, you want it to run on android or ios ? or you want a cross platform app ?

First i will talk about desktop apps

Desktop Windows Apps



To make a desktop app, mostly any high level Programming language can make this task, but which one will you choose ? it depends on which one you like the most and which has the best IDE for you. you can use java, C#, python,  C++, C, or mostly any programming language.

For example i like using C# when it comes to desktop applications.. i use it with the Visual Studio IDE.

Or Java with with Eclipse, or the IntellIj IDE.

Mobile Apps And Mac Apps


About Mobile Apps i am an android apps developer so i'll start talking about this part.

Android apps

To make an android app i advice you to use Android Studio IDE with java or kotlin programming languages. i advice you to use Android Studio because it is developed by google... the one who developed android, it would be the best right ? Actually i think it is in addition of the tremendous  number of articles and question asked about it on the internet, especially if your using Java.
Java is a little bit harder than Kotlin which is new if we compare it to other "older".

These are some articles about Android Studio : Android Studio

Ios And Mac Apps

Apple made a special IDE for Mac apps and ios apps named Xcode. It is free like android studio. it uses Swift or  Oriented C Programming languages. C is a little bit harder than Swift which is newborn

Cross Platform Apps 

A Cross Platform App is an app that can run on multiple Operating Systems... for example, Android, ios and windows phone only by creating the app once (writing its code once).

For Cross Platform apps i would recommend you to use Xamarin IDE that uses C# programming language. or using Flutter that runs on Android Studio  or Intellij IDE that uses the new Dart Programming Language.



That was a brief summary about programming World in general i tried to cover as much as possible.
if you want to check other programming posts you can find them here: