AngularJS Training

This course is led by Object Partners Consultants that have been building JavaScript applications for a number of years. These instructors have built several AngularJS applications that are in production in a wide variety of environments across many industries.

Day 1
We’ll go through the fundamentals of AngularJS in order to give you a solid foundation for building AngularJS applications. We’ll use these fundamentals to get you started on building functional AngularJS applications.

  • Project Setup: We’ll begin our course by setting up the project infrastructure that we’ll use as the basis for the AngularJS application we’ll be building. We’ll go over dependency managers such as NPM and Bower, and then set up our project’s build using Grunt, a JavaScript task runner.
  • AngularJS Bootcamp: Here we’ll give an introduction to AngularJS and how it works, as well as an introduction to some AngularJS fundamentals such as dependency injection, modules, controllers, and scope. We’ll also go over basic syntax for binding data to elements in HTML templates.
  • Karma and Unit Testing: In this section, we’ll go over unit testing with Karma, a tool used to run tests against your application code in a web server, and Jasmine, the behavior-driven development (BDD) testing framework for testing JavaScript code. We’ll also learn how to effectively use mocking of services and modules to make our tests repeatable and consistent.
  • Modules, Resources, and Router: We’ll start this section by taking a deeper dive into modules and how we can configure the bootstrap process of an AngularJS application. We’ll also talk about setting up navigation through our application using the router that is built-in to AngularJS. Finally, we’ll end this section and Day 1 by discussing resources and how we can use them to perform CRUD operations on our data via a RESTful API server.

Day 2
We’ll build on the knowledge that we’ve learned from Day 1 and use them to enhance our AngularJS applications. We’ll also go over concepts and techniques to help us master program flow and modularization of services.

  • UI Router: We’ll start Day 2 by learning about controller inheritance and how it affects data within our application. We’ll then introduce the Angular UI Router, a third-party routing framework that allows for more advanced routing behavior and view control.
  • Promises and Interceptors: In this section, we’ll learn about how we can use promises within AngularJS to handle asynchronous actions within our application. We’ll also dive into how we can use interceptors to modify HTTP requests and responses to suit the needs of our application.
  • Factories and Providers: We’ll end Day 2 by talking about how to create specialized objects in AngularJS to implement services in our application. We’ll go over the various types of these specialized objects that can be created and the situations where they should be used.

Day 3
We’ll spend Day 3 going over how to create reusable AngularJS components such as directives and filters and how to apply them to our AngularJS applications. We’ll also show you how to create functional end-to-end tests for your application.

  • Custom Directives: In this section, we’ll teach you how to create and use your own custom directives which you can use to build reusable components. We’ll go over the various ways you can instruct a directive to manipulate HTML DOM, and how to use scopes to share or restrict data that can be passed between a directive and its parent. We’ll also discuss how to add controllers to a directive, as well as how to add external dependencies.
  • Filters: We’ll instruct you on how to use filters to modify objects and arrays to reduce or modify the data you wish to display. We’ll also show you how to write your own filters.
  • Animation: We’ll show you how to use the built-in animation support in AngularJS to add meaningful animations to your AngularJS application via CSS animations, CSS transitions, or JavaScript-defined animations.
  • Protractor and E2E Testing: We’ll end our training by going over functional end-to-end testing using Protractor, the end-to-end test framework for AngularJS. We’ll go over how to set up tests to automate the actions of an end user to see if our application is performing as expected. We’ll also show you some ways that we can make these tests more reusable and consistent through the use of page objects.

Instructors

Mike Kelly

Mike’s primary expertise is in Javascript and UI technologies with a passion for good design. Some of those technologies include HTML5, CSS3, AngularJS, Backbone, and Node. My other areas of expertise include server-side technologies like Java, Groovy, Grails, Spring and Hibernate.

Travis Martensen

Travis has over a decade of experience in building robust, scalable applications for the web, utilizing many different languages and technologies. Most recently, Travis worked at a startup where he helped design and build a full-stack JavaScript application built on Node.js, Express.js, and MongoDB running on Amazon EC2 on the server side, and Angular.js, LESS, and Semantic UI on the client side.

Kevin Bosak

After 10+ years of server side development, Kevin has spent the past few years focusing on client side development. He’s developed many enterprise web applications using different javascript frameworks, ranging from extJS and Dojo Toolkit to Backbone and Angular. For a fun side project, Kevin recently wrote a web app using Angular and Firebase that allowed him to share real time game stats/updates from his children’s basketball games with his family and friends who were unable to attend.

Jon DeJong

Jon has been professionally developing software since 1999, and hacking since he first found a command prompt. Since 2002, he has been architecting, developing, and deploying mission-critical enterprise applications. Jon is a huge believer in finding the right tool for job, and as such is a big proponent of robust open source technologies. In his spare time, Jon designs and builds mobile games, runs, rides his bikes, and falls over on snowboards. Given a 25th hour in the day, Jon would write another unit test (or 10).

Scott Bock

Scott is a Senior Software Engineer with over 12 years of experience using Java, and 5 years experience in technical leadership positions. His strengths include troubleshooting and problem solving abilities, excellent repertoire with customers and management, and verbal and written communication. He develops code across the entire technology stack including database, application, and user interface.

Jeff Sheets

Jeff has developed Java, Groovy, Grails, and HTML/Javascript web apps for multiple Fortune 500 companies in industries as varied as Defense, Transportation, Energy, Weather, and Telecom. Jeff has focused on full stack web application development from database to user interfaces. He has worked on Grails projects since the Grails 1.1 days, and has experience with production Groovy code as well as Spock tests and Gradle builds.

Next Training Session

Screenshot 2015-03-24 15.49.03

      TBD
      Object Partners Omaha
      1313 S 72nd St
      Omaha, NE 68182