Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community!
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.Start your free trial
Jitendra Vyas2,349 Points
What is the definition of front-end Development?
Is it only related to things runs on browser. or native apps too
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 Barnett39,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!