23 lines
1.6 KiB
TeX
23 lines
1.6 KiB
TeX
\abstract
|
|
ECMAScript (more popularly known by the name ``JavaScript'') is the language of
|
|
the web. In the decades past, it has been used to augment web pages with trivial
|
|
features and obnoxious gimmicks. Today, the language is used to write
|
|
full-featured web applications that rival modern desktop software in nearly
|
|
every regard and has even expanded to create desktop and server software. With
|
|
increased usage, there is a desire to apply more familiar development paradigms
|
|
while continuing to take advantage of the language's incredibly flexible
|
|
functional and prototypal models. Of all of the modern paradigms, one of the
|
|
most influential and widely adopted is the Classical Object-Oriented paradigm,
|
|
as represented in languages such as Java, C++, Python, Perl, PHP and others.
|
|
ECMAScript, as an object-oriented language, contains many features familiar to
|
|
Classical OO developers. However, certain features remain elusive. This paper
|
|
will detail the development of a classical object-oriented framework for
|
|
ECMAScript --- ease.js --- which aims to address these issues by augmenting
|
|
ECMAScript's prototype model to allow the creation of familiar class-like
|
|
objects. This implementation enforces encapsulation and provides features that
|
|
most Classical OO developers take for granted until the time that ECMAScript
|
|
implements these features itself.\footnote{There was discussion of including
|
|
classes in ECMAScript 6 ``Harmony'', however it is not within the specification
|
|
at the time of writing. At that time, the framework could be used to transition
|
|
to ECMAScript's model, should the developer choose to do so.}
|