Friday, 12 May 2017

Software Design or Development - What is Frontend and What is Backend



Frontend  or  Backend 


What is Frontend and Backend 


The Frontend is the presentation layer for the client interaction and feel.

The Backend is the data access layer managed by the server. 

The physical infrastructure is the hardware. 

The Frontend is an abstraction, simplifying the underlying component by providing a user-friendly interface.  

The Backend  usually handles business logic and data storage. 

Wed Design and Devlopment Context


The Frontend is also referred to as the client-side and is sometimes considered  as "Web Design" aspect. 

The Backend of the web industry is often called the server-side. Often when someone says they're a "Web Developer" they're saying they work on the backend of sites. 

Frontend  

The front-end is everything involved with what the user sees, including design and some languages like;  
  • HTML and  
  • CSS 
  • JavaScript  
  • jQuery (it might be important here to state that jQuery is a compiled library of JavaScript) 
  • Angular 

The front-end usually consists of two parts:  
  • Web design and  
  • Front end web development 

Front-end Web Designer 

A common front-end job title is "Web Designer." Its broad though  
A Web designer could just be someone who designs the sites in a program like  
  • Photoshop or  
  • Fireworks  
  • GIMP  
  • They may also use Specialized web editing software like Dreamweaver or Expression Web 

They may never or are not obliged to touch the code but may have little knowledge. The are concerned with accessibility issues. 

User Interface (UI) Designer is basically a visual designer and is generally focused on design. 
They're not usually involved in the implementation of the design, but they might know light HTML and CSS so they can communicate their ideas more effectively to the developers. 

A User Experience (UX) designers work in the front-end and study and researches how people use the sites and make changes through a lot of testing. 

Designers are responsible for only look and feel, and layoutThey are not responsible for functionality, therefore they do not need to know JavaScriptjQuery or any of the frameworks. All they need to know is CSS, HTML5, Photoshop etc…. 

A Front-End Designer or Developer can create a site without any back-end development.  

The sites they would create is a static site. It doesn't require any information to be stored in a database 

Front-end Web Developer 

Here they are responsible mainly for the front-end coding to meet set out web design specifications for UI and UX needs. The programming languages used are as follows; 
  • HTML and  
  • CSS 
  • JavaScript  
  • jQuery (it might be important here to state that jQuery is a compiled library of JavaScript) 
  • Angular 
  • AJAX 


Backend  

The backend, or the "server-side", is basically how the site works, updates and changes. 

The backend developers use the server to write their business logic. 

The Backend  usually handles business logic and data storage 
  
This refers to everything the user can't see in the browser, like  
  • Databases 
  • Servers (ftp, python, R etc) and 
  • An application 

Usually people who work on the back-end are called programmers or developers. 

Web developers work with programming languages like  
  • PHP or 
  •  .Net 
  • Python 
  • Perl 
  • Ruby 
  • Ruby on Rails, 
  • SQL 
  • Cake PHP  
  • Code Igniter that all make development faster and easier to collaborate on (PHP framework). 

This is because they need to work with something the database understands. The code they write communicates with the server and then tells the browser what to use from the database. 

Back-end developers are mostly worried about things like  
  • Security (authentication and authorization) 
  • Structure 
  • Data transformation 
  • Content Management 
  • Backup methods and software 

Backend developers, or at least back-end development, is required to create a dynamic site 
A dynamic site is a site that's constantly changing and updated in real-time.  

Most sites are dynamic sites, as opposed to static sites.  Facebook, Google Maps and this blog are all considered dynamic sites.  

Blogs are dynamic sites, since their content is constantly changing and updating.  

A dynamic site requires a database to work properly.  The use of CMS or frameworks makes the web development cycle easierAll  information, like user profiles or  images they've uploaded, or blog posts, are stored in the database.  

Content Management System(CMS) 

Content Management System(CMS) are dynamic sites applications, they are an implementation of the frontend and backend working together.  

Example WordPress is a CMS and  an open-source framework built on PHP that you have to install on your server with a database 

Designers then customize the look and functionality of WordPress sites using CSS, jQuery and JavaScript. 

In content management systems, the terms front end and back end may refer respectively to  
  • the end-user facing views of the CMS (frontend)  
  • the administrative views (backend) 


Conclusion 

I hope the light shed on the distinctions between frontend and backend can guide out thought and actions for skills development needs. 


Related Read Ups  



1 comment :

  1. wow! this was very helpful... gave a clear breakdown of actors in WebDeb...

    ReplyDelete