saidshah Ahmadi

JavaScript Benefits

You don't need even need to learn other languages. You can start with JavaScript

Your creative journey starts here.
  • Unlimited access to every class
  • Supportive online creative community
  • Learn offline with Ulearna's App

Now I'd like to sell you on the benefits of you putting in the hard work and learning languages that are not JavaScript. They can help you understand TypeScript better.


TypeScript is a superset of JavaScript, and its primary goal is to add some static typing to the language. You see, languages like Swift or Kotlin were developed with static typing in mind. You can't go for ‚ "non-strict" mode with them like in TypeScript, where you don't have to adhere to the static typing through your whole codebase.



It's a common thing I notice when working with developers that were only using JavaScript before trying TypeScript. They don't fully understand what bene!ts come with static typing and how they should use it to make their life easier. Statically typed languages are the remedy.


You should try one of those languages just because it might help you be a be"er web developer. Learning mobile development might help you with your web-related tools. Isn't that cool?


Advantages of JavaScript


  • Speed - JavaScript tends to be very fast because it is often run immediately within the client's browser. So long as it doesn't require outside resources, JavaScript isn't slowed down by calls to a backend server. Also, major browsers all support JIT (just in time) compilation for JavaScript, meaning that there's no need to compile the code before running it.


  • Simplicity - JavaScript's syntax was inspired by Java's and is relatively easy to learn compared to other popular languages like C++.


  • Popularity - JavaScript is everywhere on the web, and with the advent of Node.js, is increasingly used on the backend. There are countless resources to learn JavaScript. Both StackOverflow and GitHub show an increasing amount of projects that use JavaScript, and the traction it's gained in recent years is only expected to increase.


  • Interoperability - Unlike PHP or other scripting languages, JavaScript can be inserted into any web page. JavaScript can be used in many different kinds of applications because of support in other languages like Pearl and PHP.


  • Server Load - JavaScript is client-side, so it reduces the demand on servers overall, and simple applications may not need a server at all.


  • Rich interfaces - JavaScript can be used to create features like drag and drop and components such as sliders, all of which greatly enhance the user interface and experience of a site.


  • Extended Functionality - Developers can extend the functionality of web pages by writing snippets of JavaScript for third party add-ons like Greasemonkey.


  • Versatility - There are many ways to use JavaScript through Node.js servers. If you were to bootstrap Node.js with Express, use a document database like MongoDB, and use JavaScript on the frontend for clients, it is possible to develop an entire JavaScript app from front to back using only JavaScript.


  • Updates - Since the advent of ECMAScript 5 (the scripting specification that JavaScript relies on), ECMA International has been dedicated to updating JavaScript annually. So far, we have received browser support for ES6 in 2017 and look forward to ES7 being supported in the future.


Disadvantages of JavaScript


  • Client-Side Security - Since JavaScript code is executed on the client-side, bugs and oversights can sometimes be exploited for malicious purposes. Because of this, some people choose to disable JavaScript entirely.


  • Browser Support - While server-side scripts always produce the same output, different browsers sometimes interpret JavaScript code differently. These days the differences are minimal, and you shouldn't have to worry about it as long as you test your script in all major browsers.



New Challenges


Another advantage of exploring other technologies, like mobile apps, is that you will face completely different challenges during development. Those apps work differently from your website, and you might want your app to work offline. It's their default behavior if you think about it. What would you say if your Mushroom-Pokedex app was not available when you are in a forest and you lost your internet connection? How would you solve that?



One thing that differs a lot is the application release cycle. You probably didn't have to worry about that while working on a website. If there was a bug, you could apply those changes fairly quickly. No one would stop you, apart from your expertise in that matter. 


When it comes to mobile applications, every release has to go through the App Store or Google Play Store. Sometimes it has to be reviewed, and it could take up to a few days. This makes a significant impact on how you code and how you test your app when you know that you won't be able to fix that typo, and it's going to stay as it is for a day or two.


Simply Fun


Improving your skills is a great thing, but let's be honest, mobile development IS fun. Smartphones or tablets come packed with cool tech and features that you can get under your command with code. It's like a playground with toys that you couldn't use before with your browser API.


For example, Augmented Reality in a browser is a thing, but it's barely useful compared to the native libraries and APIs that systems like Android or iOS give you. The same thing goes for Bluetooth or Camera frameworks. You can get really creative with these.


But for the most part, you should explore and see what makes you excited, and there are many opportunities for that in the mobile world. Who knows, maybe you will send your next resume to a Junior iOS / Android Developer position? If not, that's cool, but now you would know that this is something you don't want to do, and this knowledge is as valuable, if not more.



Share Your Stories, Thoughts, and Ideas with the World.

saidshah Ahmadi

Front-End Developer

0 0

0 Comments


Cookies

We use cookies to ensure you get the best experience on Ulearna.You can check our cookies policy here.