JSFoo 2014

JavaScript as the centerpiece of a complex web stack

Learning JS concepts/techniques by implementing jQuery

Submitted by Kushagra Gour (@chinchang) on Monday, 25 August 2014

videocam_off

Technical level

Intermediate

Section

Workshops

Status

Submitted

Vote on this proposal

Login to vote

Total votes:  +6

Objective

This is a “Re-implement and Learn” workshop.

The aim of this workshop is to have a list of some concepts and common techniques used in JavaScript and then learn them by implementing parts of an existing library. For this session, we’ll be implementing features of jQuery to understand JavaScript more closely.

Understanding the concepts implemented in this workshop will enable you to write code which is:
1. More Clean
2. More Manageable
3. More Testable

Description

The workshop will be around understanding following concepts and techniques by actually implementing each of them one by one:

Following point follow the syntax: <Concept we’ll learn> - <What we’ll implement>

  1. Prototypes: jQuery core

  2. Use of ‘this’: jQuery core

  3. Callbacks: $.each

  4. Chaining: $.css

  5. Function overloading: $.css (getter only)

  6. Function context: $.bind

  7. Partials: $.ajax and $.json

  8. Apply what we learnt: $.debounce

Note: This workshop isn’t targeted towards implementing jQuery completely and won’t focus on its cross-browser feature implementations. Only implementing functionalities required to understand the above mentioned concepts will be the focus of this workshop.

Requirements

Good news! You don’t need anything particular installed on your system. If you have a descent browser (no IE) and a code editor on your machine, we should be good. No need to install node, grunt etc.

Speaker bio

Kushagra is a Front-end developer at Wingify. He has been playing with web technologies for over 4 years now with experience in AngularJS, SASS, Grunt etc and has authored several articles and tutorials on topics ranging from CSS to Git to Game development. He tweets with the handle @chinchang457

Links

Comments

Login with Twitter or Google to leave a comment