본문 바로가기

JavaScript

Paradigm

Multi-paradigm: event-driven, functional, imperative, object-oriented(prototype-based)

Designed by

Brendan Eich

Developer(s)

Netscape Communications Corporation, Mozilla Foundation, Ecma International

First appeared

December 4, 1995 (23 years ago)

Stable release

version : ECMAScript 2018
June 2018 (1 year ago)

Preview release

ECMAScript 2019

Typing discipline

Dynamicduck

Filename extensions

.js   ·   .mjs

Website

Mozilla


Major implementations

V8, JavaScriptCore, Rhino, SpiderMonkey, Chakra

Influenced by

AWK, C, HyperTalk, Java, Lua, Perl, Python, Scheme, Self

Influenced

ActionScript, AtScript, CoffeeScript, Dart, JScript .NET, LiveScript, Objective-J, Opa, Perl 6, QML, TypeScript


JavaScript is a cross-platform, object-oriented scripting language used to make webpages interactive.


 

 Why? 

 JavaScript is aimed to provide a “glue language” for the Web designers and part time programmers who were building Web content from components such as images, plugins, and Java applets.

 By then, We saw Java as the “component language” used by higher-priced programmers, where the glue programmers—the Web page designers—would assemble components and automate their interactions using [a scripting language].

 So they had decided to ruled out adopting existing languages such as Perl, Python, TCL, or Scheme and that a scripting language had to have a syntax similar to Java’s. 

 

 

 What? 

 Alongside HTML and CSS, JavaScript is one of the core technologies of the World Wide Web. JavaScript enables interactive web pages and is an essential part of web applications. The vast majority of websites use it, and major web browsers have a dedicated JavaScript engine to execute it. 

 As a multi-paradigm language, JavaScript supports event-driven, functional, and imperative (including object-oriented and prototype-based) programming styles. It has APIs for working with text, arrays, dates, regular expressions, and the DOM, but the language itself does not include any I/O, such as networking, storage, or graphics facilities. It relies upon the host environment in which it is embedded to provide these features.

 Initially only implemented client-side in web browsers, JavaScript engines are now embedded in many other types of host software, including server-side in web servers and databases, and in non-web programs such as word processors and PDF software, and in runtime environments that make JavaScript available for writing mobile and desktop applications, including desktop widgets.

 

 

 

 Pros 

● Speed

 - Client-side JavaScript is very fast because it can be run immediately within the client-side browser.

● Simplicity

 - JavaScript is relatively simple to learn and implement. 

● Popularity

 - JavaScript is used everywhere in the web. The resources to learn JavaScript are numerous.

● Interoperability

 - JavaScript can also be used inside scripts written in other languages such as Perl and PHP.

● Server Load

 - Being client-side reduces the demand on the website server.

● Rich interfaces

 - Drag and drop components or slider may give a rich interface to your website.

● Extended Functionality

 - Third party add-ons like Greasemonkey enable JavaScript developers to write snippets of JavaScript which can execute on desired web pages to extend its functionality.

● Versatility

 - Nowadays, there are many ways to use JavaScript through Node.js servers.

 

 

 TIOBE Index 

Date

Position

Programming Language

Ratings

June 2019

7

Javascript

2.716%

 

 PYPL PopularitY 

Date

Rank

Programming Language

Share

June 2019

3

Javascript

8.29 %

 

 Tag-Trends  (Update 2019-06-17)

 Trend  (Update 2019-06-17)

refer to Link)

● JavaScript - Wikipedia
https://en.wikipedia.org/wiki/JavaScript
● 자바스크립트 - 위키백과, 우리 모두의 백과사전
https://ko.wikipedia.org/wiki/%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8
● JavaScript - 나무위키
https://namu.wiki/w/%ED%8C%8C%EC%9D%BC:1_pv6LE99Taf7usoD34Bgv4w.png
● Chapter 4. How JavaScript Was Created
http://speakingjs.com/es5/ch04.html
● Introduction - JavaScript | MDN
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Introduction
● Advantages and Disadvantages of JavaScript | freeCodeCamp Guide
https://guide.freecodecamp.org/javascript/advantages-and-disadvantages-of-javascript/
● TIOBE Index | TIOBE - The Software Quality Company
https://www.tiobe.com/tiobe-index/
● PYPL PopularitY of Programming Language index
http://pypl.github.io/PYPL.html
● Google Trend
https://trends.google.com/trends/?hl=en
● Tag Trends
http://sotagtrends.com/?tags=[javascript]&relative=true

● JavaScript: how it all began
http://2ality.com/2011/03/javascript-how-it-all-began.html
● JavaScript creator ponders past, future | InfoWorld
https://www.infoworld.com/article/2653798/javascript-creator-ponders-past--future.html
● A brief history of JavaScript – Ben Aston – Medium
https://medium.com/@benastontweet/lesson-1a-the-history-of-javascript-8c1ce3bffb17
● Welcome to Ecma International
https://www.ecma-international.org/default.htm
● The A-Z of Programming Languages: JavaScript - a-z of programming languages - Computerworld
https://www.computerworld.com.au/article/print/255293/a-z_programming_languages_javascript/
● Pros and Cons of JavaScript Full Stack Development | AltexSoft
https://www.altexsoft.com/blog/engineering/the-good-and-the-bad-of-javascript-full-stack-development/
● JavaScript creator ponders past, future | InfoWorld
https://www.infoworld.com/article/2653798/javascript-creator-ponders-past--future.html
● What are the pros and cons of JavaScript? Is it worth the time to study deeper JavaScript and its frameworks? - Quora
https://www.quora.com/What-are-the-pros-and-cons-of-JavaScript-Is-it-worth-the-time-to-study-deeper-JavaScript-and-its-frameworks

'Theory > Programming Language' 카테고리의 다른 글

Dart  (0) 2019.05.14