Skip to content

Latest commit

 

History

History
91 lines (53 loc) · 3.33 KB

course-requirements.md

File metadata and controls

91 lines (53 loc) · 3.33 KB

ACS 3310 Writing JavaScript Libraries Course Requirements

This course will follow a self directed learning model. Think of this as working as a junior engineer. You'll have projects that you are responsible for and weekly meetings with your co-working group.

What you will learn?

This course is focussed on writing JavaScript libraries. A library is a package of code that solves a specific problem. Libraries are used to build products. Any time you've created a project using npm the node_modules folder contains hundreds or even thousands of packages.

Creating libraries of code boost your development process by storing code that you don't want to write over over again.

Large libraries, like React, incorporate other libraries. Why write all of that boilerplate code again?

Think about all of the packages that you use? Make a list of them? Here's a few to get your started:

What kind of code goes into a library?

A library is best when it does one thing well, or solves a single problem. A library can be small just a few lines of code.

Why learn this?

Everything these days is built on libraries.

Creating libraries is the best way to share code. This applies to open source software and to private projects.

Projects

This term you are responsible for creating three libraries. I have a couple suggested subjects for libraries that you can write or you can substitute your own ideas if you like.

Each library you write must meet the following requirements. All of these requirements are what would required for profesional level project.

You will write three libraries

  • You write the code
  • Published to npm
  • Includes unit tests
  • Documentation
  • TypeScript

Here are a couple of alternative assignments you can tackle. You have to write three libraries but you can substitute writing unit tests or publishing to npm for one of the items below. You can also do these for extra credit!

  • Continuous Integration
  • Bundling

Final assessment

In the last week of class you will create a library from a supplied spec. Think of this as a practical take home type interview question.

This project will be scoped to the time available. It will include:

  • Writing code to solve supplied problem
  • Include unit tests

Resources

Libraries you might create

Build any of all of these libraries. These are listed in order of difficulty.

Publishing to npm

Unit Testing

TypeScript

Continuous Integration

Bundling Code