Microsoft and Google are competitors in many arenas. The two have had a long fight in the same industry, competing to get the same market. But the two tech titans have teamed up for the second release of AngularJS, a JavaScript library developed by Google for building websites and web apps.
During the opening keynote at ng-conf in Salt Lake City on March 5th, 2015, members of the Microsoft TypeScript team and Google's Angular development manager Brad Green announced the Angular 2 framework.
All of Angular 2 will be developed with TypeScript, Microsoft’s superset JavaScript language, according to a blog post from S. Somasegar, the Corporate Vice President of Microsoft's Developer Division.
The unlikely pairing between Microsoft and Google goes both ways: Google's AtScript language that debuted in October 2014, has been integrated into TypeScript, as a part of the language. In addition, TypeScript has picked up new language features including "annotations, a way to add metadata to class declarations for use by dependency injection or compilation directives."
The AngularJS framework and library have been used for building web applications. More commonly referred to as just Angular, the open-source web application framework is maintained by Google and its community of developers and corporations. It's goal is to simplify development and testing of application by providing framework for client-side model–view–controller (MVC) architecture, along with components commonly used in rich internet applications.
Angular's library reads the HTML page which has embedded tag attributes. Those attributes are interpreted as directives, telling Angular to bind both the input and output part of the page a model that is represented by JavaScript variables.
Angular's framework and libraries were traditionally written in JavaScript, but Microsoft and Google announced that their collaboration on Angular 2 would enhance it with a new set of cross-platform tools.
Going forward, the two languages will converge.
According to Somasegar, the two companies plan to have the languages combined with the release of TypeScript 1.5. In addition to adding features and syntax from the upcoming ECMAScript 6 release to TypeScript, Google and Microsoft are working jointly to propose ECMAScript 7 extensions for optional static types and decorators.
TypeScript is a superset of JavaScript that offers additional features. But what's made with it compiles back into plain JavaScript. Angular is one of the most popular JavaScript frameworks, but version two has been met with disappointment from developers since it offers no migration path from the first version of Angular and brings a number of major changes that require significant re-learning.
"Working closely with a rich library like Angular has helped TypeScript to evolve additional language features that simplify end-to-end application development, including annotations: a way to add metadata to class declarations for use by dependency injection or compilation directives," said Somasegar.
JavaScript, is somehow the de facto language of the browser. It has a large, thriving community that support it. However, it's missing some features which would make it much more manageable for large-scale application development. And for that matter, the programming language whose implementations allow client-side scripts to interact with the user, control the browser, communicate asynchronously, and alter the document content that is displayed, is developed and improved by many times.
Microsoft and Google collaboration on a large project is showing yet another attempt by Microsoft in slowly opening up and giving back to open-source.
Further reading: Microsoft is Changing and Makes .NET Framework Open-Source and Cross-Platform























































































































































































































































































































































































