10:45 AM Sunday Room: 3525
<b>UPDATE - Slides now available at:<br/>
http://www.multiwidget.com/JavaScript_Organization_and_Encapsulation.pdf</b><br/><br/>
<b>Follow my new account on Twitter</b> for JS, Ruby, HTML5, and productivity news.<br/>
Twitter handle: <b>@svicalifornia</b><br/><br/>
As front-end web applications grow, JavaScript code can become complex and difficult to modify and maintain. Global variables, functions, and objects often become interconnected in unanticipated ways, increasing the risk of unintended side effects with each future change. JavaScript code mixed into server-side HTML templates adds additional complexity that can be hard to follow.
<br/><br/>
This talk will present ideas for organizing, encapsulating, and simplifying JavaScript code, including:
<ul>
<li>creating JavaScript objects and classes with truly private members, using Douglas Crockford's module pattern and classical inheritance constructs provided by Dean Edward's Base.js, Prototype, and MooTools;</li>
<li>abstracting JavaScript code from HTML templates, CSS styling, and the DOM;</li>
<li>designing with polymorphism (duck typing) for code reuse and simplicity; and</li>
<li>using JSLint to identify problems in your code before runtime.</li>
</ul>
Learn how to get your web application code back in shape and avoid code organization problems on new projects.