Front-End and Back-End
You may be one of those people who have heard the terms Front-End and back end many times but did not know their meaning. Most web developers, when it comes to each other, ask each other, the question of whether they are front end or back end programmers. To know what front end programming is and who is a front end programmer? First we need to know what is the Front-End? So stay tuned for the rest of this article to explore this issue.
What is Front-End?
Front-End is the visible part of the website (software) by users. Front-End displays code that is incomprehensible to users in a graphical and visual form so that they can easily use different parts of the site. This section contains information input forms, sounds, images, videos, and generally anything else that is understandable to the user. Front-End is two parts: web design and interface development.
In web design, designers use graphic software such as photoshop to design a site. But the interface development part is related to implementing the appearance of the site in the form of HTML, CSS and javascript code. The programming languages used in front are user side or client side. Therefore, user’s browser processed and executed the written code in front. This means that the user has easy access to these codes and can view them. Front end is directly related to the back end section and has great impact on the user experience (UX).
Front-End developer skills
Now you understand what Front end is, in this section we want to examine front developer’s skills for learning. Those who want to become a front end designer and developer must have different characteristics and skills. The most important features of a front end programmer are:
HTML language
Is not a programming language but a markup language that is the core and body of web pages. This language is the structure of web pages.
CSS language
Stands for cascading style sheets, which is for to format web pages and various components of web pages such as text, images, frames,… . CSS enables site designers to implement their creativity in designing web pages without any restrictions.
Javascript programming language
This programming language is on the user side. With the help of javascript, front and developer can animate pages designed with HTML and CSS.
Front-End and Javascript libraries and frameworks
Javascript frameworks provide many advanced feature for front designers. These frameworks include VU.js, Angular, … .
Responsive design principles
A standard user interface should be such that it does not interfere with the performance of the application on different devices and platforms. Therefore, it must be able to respond appropriately to the type of device it is running.
Graphic software such as Photoshop
Graphic software such as Photoshop and Illustrator are for front designers in most stages of designing a user interface.
Taste and Creativity
The front end designer must use creative, user-friendly and eye-catching designs for the appearance of an application. A successful designer is someone who can create a beautiful user interface with logic based on appearance standards and user experience.
Familiarity with the principles of user experience
Front developer should be well aware of the needs of users. He should be able to design the user interface of an application in such a way that users get the best experience from using it.
An example of front in real world
To better understand the concept of front end, consider a movie. The appearance of the site is like a movie you are watching. The actors and the filmed scenes are the components that form the front end and are in the desired place according to the director’s instructions and start acting. The director’s commands are the same HTML, CSS, and javascript code that create the user interface.
Of course, in order for this film, it had many behind-the-scenes elements such as cameraman, director, that you will not see in the film. The code running in the background of the site is like the behind-the-scenes elements of the movie are in like elements in back end.
What is Back-End
back end is the part of a website or application that is not visible to users. in other words, the core and brain of a site is responsible for controlling its logic. Dynamic sites need back end programmers to implement site logic through programming languages. Users do not have access to the code written in the back end and cannot view it.
This part of the site is like a part of iceberg that is below the water surface. The server side communicates directly with the user side and brings to life the components designed in the user interface. The back end developer should receive the information from the database for different purposes and display it to the user after processing if needed. Therefore, back end consists of two parts: site logic and database
Skills and languages required for Back-End programmers
Developers in this field have to deal with different languages and technologies such as server-side
- Java
- PHP
- Python
- SQL
- C#
- .NET
be familiar. In the following, we will introduce three commonly used and popular languages in back end programming.
Java
Java is a relatively old and popular language used by many programmers. One of the strengths of Java is having a virtual machine ( Java Virtual Machine) that makes it easy to compile and execute code (Run) in different systems and environments.
The language has extensive question and answer forums that leave almost no questions unanswered. Android application development, website development, imagine processing, graphical user interface (GUI) software,networking, are some of the things you can do with java programming.
PHP
PHP is the most widely used language on the server side and has contributed to the creation of about 80% of sites. The learning resources of this language are also very extensive. Desktop software programming, cookie setting, data collection use PHP. Reputable companies such as Facebook, Buffer and Hootsuite have chosen PHP as their server language.
Python
Python is growing rapidly and is a serious competitor to java and PHP. There are many resources for learning this language, and its simplicity has made it popular even with those who not have ac academic education in computer science. Python is great for developing web and desktop. Companies such as mozilla and pinterest and many NASA projects use Python.
SQL
Back end programmers are be able to work with databases, and SQL is one of the most important languages for working with databases. This language was created to create databases and access their information, and those who deal with areas such as data mining or data in general should have a good command of this language.
The SQL header is wherever that database is. This language is usually the first choice of programmers to work with databases.
C#
C# is built on the C++ language, so it may be easy for many developers to work with it. It is easier to learn than C++ and computer video games use it widely.
Those who want to become programmers and developers should have various features and skills, including:
- Familiarity with at least one server-side programming language (PHP,Python,Java)
- Knowing database
- Familiarity with algorithms and discrete mathematics
- Problem solving ability and challenge
- Recognize design patterns
Back-End developer income
In recent years, Java language has generated about $90.000 a year for American programmers.
In the United States, the annual income of PHP developers is about 80 thousand dollars a year.
Also, the annual income of Python in the United States is about 90 thousand dollars.
The annual income of SQL in the United States is about 95 thousand dollars.
An example of Back-End in the real world
Now that we know what back end is and who the back end programmer is, we want to look at its meaning in the form of an example. To better understand the concept of back end, consider a movie you are watching. The actors and scenes of the film are the components that make up the front end and are placed in the desired place according to the director’s instructions and start acting.
In order for this film to be made and screened, it has many behind-the-scenes factors such as the cameraman and the director, that you will not see in the film. The code running in the background of the site is like the behind-the-scenes footage related to back end programming.
Conclusion
Depending on your preferred programming language, when you allocate time and other factors, you should decide whether to be a front end developer, a back end developer, or a full stack programmer. If you are just starting out, it is best to read the following articles to get the basics of programming before you start learning back end programming.