Sunday, February 10, 2019

What is the best programming for front end and back end?

Front-end web development, also known as client-side development is the practice of producing HTML, CSS and JavaScript for a website or Web Application so that a user can see and interact with them directly. The challenge associated with front end development is that the tools and techniques used to create the front end of a website change constantly and so the developer needs to constantly be aware of how the field is developing.

We often think of back-end languages as code that's processed by something built in to the web server itself or a plugin to the server, but it's possible for a script written in one of those back-end languages to launch external processes (native applications) on the server, so really, you could use just  about anything as a back-end language, from compiled C/C++ to a bash shell script. (Whether it makes sense to do that is another thing.)

As for front-end languages, I think of a front end as anything that the user interacts with directly. That could be an app running in a web browser, a "thick client" desktop application, or a native application on a mobile device. So again, really, there's a huge array there.

If you want lists, for back-end languages (in order of my ability to recall):

  • Java (and other JVM languages like Scala, Groovy, Clojure)
  • PHP
  • .NET (C#, VB)
  • Ruby
  • Python
  • Perl
  • Javascript  (Node JS)
  • Actionscript (Flash Media Server)
  • CoffeeScript
  • C (CGI)
  • Erlang
  • oh, and SQL for db queries



For browser-based front-end languages, you're somewhat limited in what the browser can support (excluding launching out-of-browser applications). We could talk about:

  • HTML
  • Javascript
  • CSS
  • Actionscript
  • CoffeeScript (compiled to Javascript)
  • XML-based languages (X3D, SMIL, SVG, DITA, some interpreted by the browser, others transformed using XSL)
  • VBScript
  • Silverlight
  • Java (applets)


For native PC desktop front-ends, most popular front-end languages would probably be (I'm guessing, in no order): 
Visual Basic 6 (from my experience with big enterprises, I bet a lot of those are still out there, just like Windows Vista)

  • .NET
  • Java (Swing apps)


But just about every language that can create desktop apps also has some net code library that lets you write n-tiered applications (Kivy (Python), Tcl/Tk, ...).

For native mobile application front-ends, most popular would probably be: 

  • Objective C (for iOS apps)
  • Java (Android apps)


But if you just want most popular (browser-based) web application development stacks, that would probably some combination of the following:

Front-end: HTML / Javascript / CSS
Back-end: PHP / Java / Javascript / Ruby / .NET / Python

No comments:

Post a Comment

High Paying Jobs after Learning Python

Everyone knows Python is one of the most demand Programming Language. It is a computer programming language to build web applications and sc...