Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Stop Writing Spaghetti Code: Why You Should Use TypeScript

DZone's Guide to

Stop Writing Spaghetti Code: Why You Should Use TypeScript

TypeScript is a typed superset of JavaScript created by Microsoft that compiles directly to regular JavaScript to enable JavaScript developers to code with type safety. This is important because coding with type safety allows developers to code more cleanly, resulting in easier maintenance and fewer bugs. Read on to learn more.

· Web Dev Zone
Free Resource

Learn how to build modern digital experience apps with Crafter CMS. Download this eBook now. Brought to you in partnership with Crafter Software

TypeScript is a typed superset of JavaScript created by Microsoft that compiles directly to regular JavaScript to enable JavaScript developers to code with type safety. This is important because coding with type safety allows developers to code more cleanly, resulting in easier maintenance and fewer bugs. It is a great tool to add to your next web project that will save your team time and energy both in the development and support phases.

Benefits

TypeScript’s most significant benefit is the type system that gives it its name. By enabling compile-time error-checking, TypeScript dramatically decreases the frequency of run-time errors. This is especially important as web applications become more front-end focused, and consequently the amount of JavaScript code grows considerably. Writing type safe JavaScript code has become important for the exact same reasons as its importance on the back-end–it’s easier to maintain and has fewer bugs. And beyond simple type safety, TypeScript’s language paradigms, especially surrounding inheritance, are similar to those found in mainstream back-end languages like Java and C#, cutting down on possible mistakes with junior developers who might not be familiar with advanced JavaScript features (such as prototypical inheritance). These benefits make it less likely your code will fall victim to the dreaded "spaghetti code" complex that can affect large JavaScript projects that weren’t organized with experience and foresight.

Considerations

Though TypeScript is a powerful developer tool that creates better code and fewer bugs, there are a couple of things worth thinking through before choosing to work with TypeScript. The first is that TypeScript is a relatively new technology. JavaScript currently has better IDE and debugger support than found with TypeScript, though this will change over time. Also, TypeScript does a great job masking JavaScript’s idiosyncrasies, but sometimes you will encounter complex or unusual functionality which may require knowledge of underlying JavaScript mechanisms.

Popularity

As TypeScript gains popularity, tooling support will swiftly improve and the web development community will shift more toward TypeScript.  The next version of Angular, arguably the most popular JavaScript framework, is written in TypeScript.

Best Use Cases

TypeScript is an excellent tool for front-end web development, bringing type safety, better organization, and fewer bugs to your projects. Anyone looking to start a new front-end-heavy web application (or overhauling an old one) should strongly consider using TypeScript to create a quality code foundation that will save time on development and support.

Growing Popularity

Google Trends graph displaying TypeScript’s growth in popularity from January 2013 to January 2016.
TypeScript_GoogleTrends

Crafter is a modern CMS platform for building modern websites and content-rich digital experiences. Download this eBook now. Brought to you in partnership with Crafter Software.

Topics:
typescript ,web 2.0 applications

Published at DZone with permission of John Basso, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}