Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

General Discussion

Jitendra Vyas
Jitendra Vyas
2,349 Points

What is the definition of front-end Development?

Is it only related to things runs on browser. or native apps too

3 Answers

Deleted User

For front ends and back ends, Wikipedia says: "- generalised terms that refer to the initial and the final stages of a process. The front end is responsible for collecting input in various forms from the user and processing it to conform to a specification the back end can use. The front end is an interface between the user and the back end." http://en.wikipedia.org/wiki/Front_and_back_ends

However, "users" aren't always people. So to directly answer your question, HTML responses that your browser presents to you are "front ends" to a web application, while native app GUI's are "front ends" to native applications.

There are times where a server receives data from another server (like JSON, or XML over HTTP). So, technically the server that receives that data is pulling it from the "front end" of the server that is serving up, or "exposing" that data.

Front ends are commonly confused with [Graphical] User Interfaces, which are a form of front end that is usually consumed by a human user. Whereas my previous example is consumed by a machine user (server/computer/device), but is still considered the "front end" of the server that is exposing it.

I hope this makes sense. The answer is sort of overkill, but the terms back end and front end always confused me when I started coding, too.

And just to make things clear, the actual HTML that you see in your browser is provided by a server's "front end", but the server itself is the "front end" not the client. So if you request http://google.com it responds with an HTML User Interface that you can use to interact with the "front end" that google exposes.

This also applies to a native application, because it exposes a UI, or a "front end" that you can use to perform actions that the application receives and executes from the "back end".

James Barnett
James Barnett
39,199 Points

When you talk about to the front end you are referring to the user interface of an application whether it's a web site, an iOS/Android app, or desktop app.

@Jitendra + @James + @Jeremy

Josh Long wrote a GREAT article on the Treehouse blog on the differences between front-end and back-end languages :)

Check this out!

http://blog.teamtreehouse.com/i-dont-speak-your-language-frontend-vs-backend