I'm an experienced former Software Engineer that's being away from coding during the last three years. Now I have a project on mind on which I'd like to develop a frontend and show data from a noSQL database. Also I'll make calls to some remote APIs in order to provide with machine learning the app.
I've kept an eye on the internet about the new frameworks/languages that have been released since then. Also I remember giving a try to Angular and was awesome.
The real question here is quite easy, what languages/frameworks/technologies would you use as Software Developer that's up-to-date with such technologies?
There are currently three front-end frameworks/libraries you can use and you can achieve what you what with each with more or less effort based on what you choose.
Note:
Ignore any buzzword in each section. You won't need them until you choose one. But it gives you a sense of why your question is very broad and it cannot be answered easily.
Polymer
Polymer is a new open source library made for using Web Components
to build web applications. It is similar to React in that it is a library and not a complete framework. It approximates features like the Shadow DOM
, Templates
, and HTML imports
via JavaScript libraries called polyfills so that you can start building custom elements today that will be forward compatible with Web Components in the future.
It is a very easy to use library and google experts + community are supporting it, so you can be sure that you can invest on learning and get what you want out of it.
Angular
Angular
is an in-depth, comprehensive framework
developed by Google
that will give you everything you need to set up the front end side of a website. Angular manipulates DOM
by extending HTML with directives. Anything that changes in the view also changes in the data, thanks to the two-way data binding.
With the latest version of this framework you will get these out of the box:
- Fully isolated components
- Dependency injection
- Two-way data binding
- A solid templating engine
- progressive web apps
- Better speed and performance
- A CLI which makes life easy for starters
- Typescript and typing
- Rxjs
React
This is an open-source library for rendering views with JavaScript. It stores two copies of a virtual DOM
, including a second updated version that reflects changes fed in from the view. React is best when the developer has a good amount of dynamic content changing within the view, such as social media networks (obviously, because React was developed by Facebook). Perhaps this is why it is called React
, because the quick reaction to change can save even a half second of delay in rendering.
Conclusion:
There are many factors involved when it comes to front-end development like size
, performance
, community support
, standards compliance
, separated presentation
, obtrusiveness
.
So make sure you know your requirements and that you are choosing without bios and with intention.
If you not start with something yet. I suggest to try VUE.JS this framework quite fast and easier to use. Vue.js are had VUEX(Redux) and VueRouter. It make people can do something like react but easier.