About Front-End and Back-End development
As for term in software engineering, Front-End and Back-End refer to the disseverance of concerns between the presentation layer (Front-End), and the data access layer (Back-End) in software, or the physical infrastructure or hardware. In the client-server model, the Front-End customarily consider the client and the Back-End conventionally consider the server.
The languages using on Front-End Development:
HyperText Markup Language (HTML)
HTML is the backbone or foundation of any website developing process, a web page doesn’t exist without HTML. In there, HyperText operates as the text has links, termed hyperlinks, embedded in it to bring users to another web-page when they click on a word or a phrase that has a hyperlink. And a markup language designates text that can be turned into images, tables, links, and other representations. HTML code that provides an overall framework of the site’s appearance.
Cascading Style Sheets (CSS)
Cascading Style Sheets (CSS) controls the presentation aspect of the site in designing its own unique look. It works on maintaining style sheets that sit on top of other style rules and are triggered depending on other inputs, such as device screen size and resolution.
It is an event-based imperative programming language, used to transform a static HTML page into a dynamic interface.
In addition, Front-End regardless of mobile, desktop, web app ... the most important is still the user, making the front end is user-centric. Besides the programming languages, although Front-End serves a web-based user experience, it does not need to put too much on designing, but there will be many benefits when you have a gift or love for creating and being sensitive to the beautiful.
Because the Front-End is related to UI / UX design (User Interface and User Experience), in there, UI designers focus on the visual aspects of the design of the site while UX designers handle multiple user testing to ensure the site is working well with preferred users. So, it is quite important to know how to use graphical tools to do basic tasks in Front-End, you should know how to use: Photoshop, Illustrator (or CorelDRAW, GIMP, ...) for creating images for UI.
Back-End development (BE Dev) refers to the server-side of an application and everything that communicates between the database and the browser. On the server-side of development where you primarily focus on how the site works. Making updates and changes in integration to monitoring functionality of the site will be the Back-End developer’s primary responsibility.
In general, anything you cannot easily optical discernment such as databases and servers is the work of a Back-End developer. And Back-End developer positions are often called programmers or web developers. Web development based on Back-End Development usually consists of three parts: a server, an application, and a database.
The languages using on Back-End Development:
Besides knowing the languages of the Front-End such as HTML and CSS, Back-End developers need to use languages such as Java, PHP, Ruby on Rails, Python, and .Net to get the Back-End job done. Due to most focusing on a site’s responsiveness, speed, and content on the site is constantly changing and updating, these languages use for creating dynamic sites being different from static sites where these types of websites store database information.
PHP powers 78.9% of all websites whose server-side programming language we know. The language was first released in 1995 when there were few options for building dynamic websites.
- With PHP, developers can:
According to the PHP website, you can: collect form data, generate dynamic page content, send and receive cookies, write command-line scripting, write server-side scripting, and write desktop applications.
- Companies that use PHP: Facebook, Lyft, Mint, Hootsuite, Viber, Buffer, DocuSign, …
Ruby on Rails is a web development language in building on top of the Ruby programming language. It has a set of tools that allow you to simply create basic tasks (e.g. with ruby, you are able to create a basic blog with one line of code).
Ruby involves little backend work, enabling developers to create and launch applications quickly. It is similar to Python in that it’s fantastic for prototyping.
- With Ruby, developers can:
Automate repetitive tasks, build web applications and mobile applications and games, create prototypes, and more.
- Companies that use Ruby: Airbnb, Codecademy, TaskRabbit, Kickstarter, RapGenius, Scribd, AngelList, …
There’s a reason Python is the fastest-growing programming language. It is a fact that both web and desktop development all use the versatile language. Like with Java, there are plenty of tutorials and guides online, making it an accessible language for those just starting out.
As mentioned above, Ruby and Python share similarities. They are both dynamically typed, open-source, and object-oriented languages. However, the key differences between the two are the differences in popularity (Ruby is declining whereas Python is skyrocketing) and the tools in Ruby’s language.
- With Python, developers can:
Cross-platform shell scripting, quick automation, simple web development, and more.
- Companies that use Python: Uber, Pinterest, Mozilla, Spotify, Quora, Pandora, Netflix, Asana, …
ASP.NET is Microsoft’s answer to Sun Microsystem’s (now, Oracle) Java. The web application framework is used to build websites using languages like Visual Basic (VB), C#, F#, and more.
Its MVC (Model-View-Controller) architectural pattern allows back-end duties to be handled by a controller, which interacts with a model to process data. The result is then presented to the view for display as a front-end web page.
Made open source in 2016, .NET can integrate with iOS, Linux, and Android by way of .NET Core. The code is highly stable and reliable, making it a popular choice for businesses. Because it is a Microsoft product and there is great support available if you ever get lost.
- With .NET, developers can:
Build desktop applications, mobile applications, web applications, and games, work with Big Data, and more.
- Companies that use .NET: Microsoft, Starbucks, Docplanner, Stack Overflow, …