Aspire Journeys
Web Programmer to Apprentice Programmer
- 46 Courses | 58h 27m 35s
- 4 Labs | 18h
Explore Web programming languages and frameworks, such as JavaScript, React, and Django as you prepare to become an Apprentice Programmer.
Track 1: Web Programmer
In this Skillsoft Aspire track of the Web Programmer to Apprentice Programmer Journey, the focus will be on JavaScript.
- 10 Courses | 11h 16m 38s
- 1 Lab | 4h
Track 2: Web Apps Developer
In this Skillsoft Aspire track of the Web Programmer to Apprentice Programmer Journey, the focus will be on building applications using React.
- 8 Courses | 11h 13m 4s
- 1 Lab | 4h
Track 3: Novice Programmer
In this Skillsoft Aspire track of the Web Programmer to Apprentice Programmer Journey, the focus will be on SQL programming and building Web apps using Django.
- 15 Courses | 17h 18m 21s
- 1 Lab | 4h
Track 4: Apprentice Programmer
In this Skillsoft Aspire track of the Web Programmer to Apprentice Programmer Journey, the focus will be on design patterns for JavaScript.
- 13 Courses | 18h 39m 32s
- 1 Lab | 6h
COURSES INCLUDED
JavaScript: Introduction
Explore basic Javascript, one of the most widely used programming languages in the domain of web development, including concepts involved in the programming language, the features which distinguish it from other languages, and its applications. Key concepts covered in this 10-video course include the role of Javascript within a larger web application involving HTML and CSS; learning how browsers render web pages as a structured document object model (DOM); and the high-level properties of the Javascript programming language. Begin by examining properties and features around arrays and functions in Javascript; learning what an object is in Javascript and how it is represented; and learning some of the quirks of the Javascript language, and what distinguishes it from most other high-level languages. Next, learn what closures are in Javascript and what is included within this construct; and learn how common attributes of a set of objects can be defined within a prototype for those objects.
10 videos |
59m
Assessment
Badge
JavaScript: Getting Started with JavaScript Programming
Learners can familiarize themselves with how to use Javascript in conjunction with HTML pages in this 10-video course. Explore different types of variable declarations in the language and ways in which Javascript web apps can relay info to and receive info from end-users. Key concepts covered in this course include learning how to create a simple Javascript app that writes a message to an HTML page; learning how Javascript can be used to communicate with end-users via the HTML page, alerts, and log messages; and learning how to link a HTML page with a separately defined Javascript source file. First, observe how to edit sections of a HTML page by using Javascript and initialize number and string variables; examine the changes in behavior of a Javascript app when Strict mode is enabled; and learn how to distinguish between the var, let, and const keywords when declaring variables. Finally, learn how to differentiate variables that are undefined from those whose values are null; and how to use the alert, prompt, and confirm functions to relay information to and receive input from end-users.
10 videos |
1h 14m
Assessment
Badge
JavaScript: Types, Operators, & Control Structures in JavaScript
Explore features of primitive data types in Javascript such as numbers, strings, and booleans. Examine the methods, operators, and control structures available to work with them in this 11-video course. Key concepts covered here include multiple ways to declare and manipulate numerical data in Javascript; learning how to initialize and manipulate Javascript strings using different techniques; and learning how to use in-built string operations to analyze and modify string types. Begin by learning how to create and manage date types in Javascript, which allows you to work with dates in various forms and initialize date variables and manipulate them. Then learn how to use constants, methods, and random number generators available in the Javascript Math library; learn to apply basic operators on numbers and strings; and observe how to perform logical tests by using if statements and conditional operators. Finally, learn how to convert data from one primitive type to another; and learn how to create while, do-while, and for loops in Javascript.
11 videos |
1h 12m
Assessment
Badge
JavaScript: Functions & Arrays in JavaScript
Learners will discover ways to define and use functions in Javascript, where functions are considered first-class members, in this 14-video course. Explore features of arrays in Javascript, as well as their role in functions. Key concepts covered here include the basic functions and how to invoke them in Javascript; recognizing how var, let, and const keywords affect accessibility of variables in Javascript functions; and how to distinguish between var and let keywords when it comes to scope of variables. Learn to define functions by using concise syntax in ES6 specifications for Javascript; learn to manage errors in an application, whether raised by Javascript or by your own logic using try, catch, and finally blocks; and learn how to create arrays and access and iterate over their elements. Next, learn to use rest parameter syntax to create functions; use the spread operator to expand the contents of arrays; and break down and access components of arrays with array destructuring. Finally, learn how to generate deep and shallow copies of arrays and add and remove array elements.
14 videos |
1h 44m
Assessment
Badge
JavaScript: Objects
Javascript is an object-oriented language, making objects a crucial topic for any Javascript course. In this 14-video course, learners explore object definitions to object methods and constructors while learning what a "class" is in Javascript. Key concepts covered here include how to create objects containing different types of data and functions and access their properties; and how to initialize empty objects and add/remove properties to/from them. Begin by learning the role of keyword "this" within the scope of Javascript objects; how to use the call method to link a Javascript object; and how to implement an object constructor and use it to instantiate new objects. Next, observe how to use assignment operators and Object.assign method to create new objects; how to use spread syntax and the JSON; and how to prevent changes from being made to an object by freezing it. Finally, learners see how to perform aggregate and filter operations on contents of an array with reduce and filter methods; and check the type of an object by using the instanceof operator.
14 videos |
1h 31m
Assessment
Badge
JavaScript: Advanced Function Operations
Functions are first-class members of the Javascript language and this means that they can be used in ways which are not possible in other programming languages. In this 8-video course, learners explore the use of functions as arguments to other functions, as return values of functions, and also how functions can be linked with specific objects when invoked. Key concepts covered in this course include how to assign a function to a variable and pass a function as an argument to another function; how to define and invoke a function which returns a nested function; and learning what data types in Javascript are passed by value and what types are passed by reference. Learn how to create a function from a string using the new keyword; how to use function callbacks to ensure the sequential execution of functions; and how to use the call, apply, and bind methods in order to link a function call to a specific object.
8 videos |
42m
Assessment
Badge
JavaScript: Closures & Prototypes
This 14-video course covers closures-the bundle of a function along with its enclosing environment-and its implications on factors such as variable scopes and function references. Key concepts covered here include what makes up a closure in Javascript; learning how variables of the same name inside closures and in scopes outside them are accessed by functions; and distinguishing between variables of the same name inside functions, within closures, and ones defined in a global scope. Begin by observing how to implement counter functions with closures; how to integrate closures with buttons on web pages; and how closures can be created within objects and implications on your code. Next, learn how closures created within loops interact with variables defined within and outside the loop; how to implement getter and setter functions for Javascript objects using closures; and learn when to use prototypes for objects and how to define them. Finally, observe how to distinguish between object prototypes and classes; learn to use prototypes to implement inheritance; and implement multiple levels of inheritance with prototypes.
14 videos |
1h 28m
Assessment
Badge
JavaScript: Working with the DOM & Events
Explore different features available in Javascript to manipulate elements of a web page by using its Document Object Model (DOM) structure and how Javascript interacts with a browser by using the Browser Object Model (BOM). In this 13-video course, key concepts covered include how to use the document object to retrieve individual elements of a web page and access their values and properties; how to alter web page contents by modifying a DOM; and how to retrieve children of elements of a web page as an array. Begin by observing how to write a function to generate an animation; how to define event listeners and handlers for clicks on web page buttons; and how to create handlers for events of users by clicking on buttons. Next, learners observe how to use handlers for mouse events on web page elements; how to use the screen, window, and navigator objects of BOM to get information about the end-user's environment; and how to use the window object to interact with the end-user's browser.
13 videos |
1h 20m
Assessment
Badge
JavaScript: Form Validation & Async Programming
Form validation is a common use case for Javascript. Learners will explore basic steps involved in this process, including an overview of asynchronous programming and the use of promises to handle such code, in this 10-video course. Key concepts covered here include how to define simple registration forms with text, numerical input fields, radio buttons, check boxes and drop-down menu; how to access individual form elements and their data contents from Javascript; and learning when variables are destroyed by Javascript when a form submission navigates users to a different web page. Begin by observing a variety of form validations for different input fields; learning operations which run asynchronously in your Javascript application; and learning how to use promises to chain the execution of two functions where one depends on the results returned by the other. Next, learn a function making multiple asynchronous function calls by using async/await syntax. Finally, observe how to use the fetch function to asynchronously retrieve an image file and relate it to the XMLHttpRequest of AJAX.
10 videos |
1h 1m
Assessment
Badge
Final Exam: Web Programmer
Final Exam: Web Programmer will test your knowledge and application of the topics presented throughout the Web Programmer track of the Skillsoft Aspire Web Programmer to Apprentice Programmer Journey.
1 video |
32s
Assessment
Badge
COURSES INCLUDED
Build Apps Using React: Introducing React for Web Applications
This 18-video course focuses on the React library for component-driven development and basic principles involved in creating React applications. Begin with an introduction to the React library and what is it used for, then discover how to design components with React. Identify features that make React powerful, and examine the concepts underlying important React features. Also explore the virtual document object model (DOM) and how it is used. Learn how to implement a simple web page by using React web application programming interfaces (APIs); recognize basic components of the web page built using React; and use minified productionized React libraries. A two-part tutorial focuses on creating nested elements: creating a DOM hierarchy with nested components, and using key attribute to identify unique sibling elements. Delve into JavaScript XML (JSX) and the functionality of the Babel compiler when used with JSX; then create elements using JSX and the Babel compiler, and render a DOM hierarchy using JSX. Conclude the course by focusing on evaluating simple expressions with JSX, and referring to JavaScript variables within JSX.
18 videos |
1h 43m
Assessment
Badge
Build Apps Using React: Local Machine & Online Playgrounds
Learners can explore basics of working with React components, including rendering elements, smart rendering, and building simple and multiple components, in this 17-video course. Discover how to prototype react applications by using online playgrounds, including CodePen, CodeSandbox, and Glitch. Begin by observing how to install NodeJS libraries and the npm package manager on MacOS and on Windows. Run http-server on the local machine to serve web pages, and use ReactDOM.render() to render elements. Learn how to recognize smart rendering of elements in React; build simple components using ES6 classes; and build multiple components using ES6 classes. Discover how to implement a simple application on CodePen; configure the Babel preprocessor on CodePen; and build a simple React prototype on CodePen. Next, take a look at CodeSandbox and Glitch Online Playgrounds, and how to prototype a simple React application on both CodeSandbox and Glitch. Learn how to install and use create-react-app utilities on the local machine; create function components; and how to compose multiple simple components to create a complex component.
17 videos |
1h 40m
Assessment
Badge
Build Apps Using React: Props & State
In this 18-video course, learners explore the basics of props and state, including similarities and differences. Discover how to work with props, use expressions, transfer props manually and using the spread operator. You will begin with a look at props and state in components and when they are used, and differences between props and state. Then move on to working with props; passing data into components by using props; evaluating expressions to pass data to components, and transferring props from higher to lower-level components manually. Also, discover how to transfer props from higher to lower-level components using the spread operator; dynamically render components based on conditions with props, and specify default values passed in as props. Next, learn how to validate props and access child elements using props.children; use expressions to pass in props values; and specify functions as children of a component. Next, receive an introduction to State; updating State by using this.setState() in a component; wiring up event handlers to update the state of a component; and accessing a component's previous state.
18 videos |
1h 44m
Assessment
Badge
Build Apps Using React: Working with Events
This 16-video course helps learners examine the basics of events and event handling in React, including synthetic events, the React component lifecycle, document object model (DOM) reconciliation, and preventing default event handling. Begin by observing use of event propagation in the capture and bubble phases, followed by an introduction to synthetic events and their advantages. Explore the phases in a React component's lifecycle; wire up event handlers to elements; prevent the browser's default event handling; and use synthetic events to access event properties. Discover how to build a component to toggle state, and what happens in the mounting phase of a component lifecycle. Learn how to execute code once a component is mounted to the DOM; observe what happens in the unmounting phase of a component's lifecycle; and learn how to hook into the update phase of a component's lifecycle. Conclude the course by discovering how to optimize the rendering of a component, and how to apply error boundaries to catch errors.
16 videos |
1h 48m
Assessment
Badge
Build Apps Using React: Working with Forms
Learners can explore the basics of controlled components and uncontrolled components in this 12-video course, which begins with a look at working with forms in React. Forms are used to input data on a web page; you will discover how controlled components work in forms, and then move on to a two-part tutorial on controlled components for multi-input forms: part 1 on wiring up event handlers for form mutations, and part 2 on synchronizing component state by using event handlers. Next, discover how to wire up a single event handler for multiple inputs, and how to design form elements to be individual components. This leads into testing form setup, and testing the form on a web browser. Discover the need for client-side validation, and how to validate data passed into forms. Compare controlled components and uncontrolled components for form data, and in the final tutorial, learn how to use uncontrolled components to handle file inputs in forms.
12 videos |
1h 20m
Assessment
Badge
Build Apps Using React: Advanced Features in React
In this 19-video course, you will discover advanced React features such as lists and keys, including lists without keys, unique keys for lists, and correct key usage, and other topics. Learners begin with a look at the error that occurs when list elements are rendered without keys, then study the unique keys for list elements. Learn about the right usage of keys in components; how to render components using conditional evaluation; how to perform conditional rendering using variables; and how to evaluate conditions by using inline logical operators. Explore how to perform rendering with ternary operators; the use of local state in components; and the disadvantages of storing local state. Learn about removing state from lower-level components, and lifting state up to higher-level components. Delve into code reuse by using inheritance and code reuse by using composition. Examine how to use composition to customize child elements and how to create special components using composition. Explore the use of global properties without context, and finally, the use of context to specify global properties.
19 videos |
1h 47m
Assessment
Badge
Build Apps Using React: In Development & Production
Learners will discover how to build React applications working in the development and the production environments, in this 12-video course. Examine how to add state to an application and add and delete comments; explore React Develop Tools and their use, along with several other topics. Begin by setting up a simple application in the create-react-app environment, which will download and install several NodeJS packages using npm, and then move on to adding state within the application. Learn how to wire up event handlers to add new comments, and also wire up event handlers to delete comments. Discover how to install and work with React Developer Tools, and use these tools to explore the component tree. Also learn how to use React Developer Tools to profile applications. Next, examine how to create a production build with minified files and static assets; explore the different files generated in a production build, and how to serve the application in a production build.
12 videos |
1h 8m
Assessment
Badge
Final Exam: Web Apps Developer
Final Exam: Web Apps Developer will test your knowledge and application of the topics presented throughout the Web Apps Developer track of the Skillsoft Aspire Web Programmer to Apprentice Programmer Journey.
1 video |
32s
Assessment
Badge
COURSES INCLUDED
MySQL: Getting Started
Explore how database systems allow data to be stored and updated in a robust manner, and queried conveniently by using SQL language, and learn how MySQL can be installed and used from different operating environments. Key concepts covered in this 11-video course include requirements that a database management system needs to satisfy and the importance that consistency of the data in a system always be maintained; how to install MySQL on different platforms; and how to connect to a MySQL server by using a command-line interface. You will learn how to create a database and view a list of databases on a MySQL server; learn how to install MySQL workbench and connect to a MySQL server; and learn model entities in a real-world scenario for use in a database system. Next, explore how to execute commands from the MySQL Workbench environment; learn perform basic database operations such as inserting and querying data; and learn how to view table metadata and delete data from tables.
11 videos |
1h 8m
Assessment
Badge
MySQL: Creating & Updating Tables
In this 10-video course, learners can explore how tables in MySQL can be created to match entities and relationships as modeled in an E-R diagram and how MySQL allows the specification of different types of columns and column constraints. Key concepts covered in this course include attributes of keys, super keys, and candidate keys; learning how to model relationships in a real-world scenario for use in a database system; and learning how to specify non-null constraints while creating tables. You will learn how to run simple queries by using wildcards and where clauses; learn about the need for SQL and its important characteristics, SQL-based technologies also known as relational databases; and learn how to designate columns as unique while creating tables. Continue by learning how to perform update operations on data updating the structure of tables as well as the data contained within them in a MySQL relation; and learning how to perform DDL operations, including altering tables to add primary key constraints and dropping tables and databases.
10 videos |
1h 10m
Assessment
Badge
MySQL: Querying Data
Explore how MySQL continue to play an important role in complementing both data warehouses and programming language based frameworks, in this 10-video course. Learners will observe how MySQL tables can be queried by using classic SQL syntax and how common types of queries tie closely to common patterns in table design. Key concepts covered here include how to write queries to explore entity and relationship data, including foreign keys; how to translate entity-relationship models into actual database table schemas; and learning about correct data types and constraints for specific columns in a table schema. You will learn how to use relational and logical operators in WHERE clause of MySQL queries; how to use LIKE and IN operators, as well as pattern matching with wildcards in queries; and how to use subqueries to perform complex logical operations. Next, learn to implement referential integrity checks by using foreign key constraints. Finally, you will learn how to perform filtering operations on date columns; and how to use LIMIT and ORDER BY clauses in MySQL queries.
10 videos |
1h 1m
Assessment
Badge
MySQL: Understanding & Implementing Joins
This 10-video course explores how to use joins to combine data from different relations in meaningful ways. Learners will examine why joins are such a powerful and ubiquitous concept in data analysis. Begin by observing how SQL features several types of joins, and how these can be understood, and will examine each type of join in depth. You will examine the cross join, which is the simplest kind of join, and is also known as a Cartesian join. Then examine inner joins, which can be expressed as a combination of the cross join operator along with a filter. This course continues by examining the three types of outer joins, the left, the full, and the right outer join. You will explore natural joins, which could be an inner or an outer join where two additional conditions are satisfied. You will examine several features of the join keyword. Finally, this course demonstrates how to use MySQL platform to support several varieties of different joins types.
10 videos |
59m
Assessment
Badge
MySQL: Grouping & Aggregation Operations
Learners can explore how to use grouping and aggregation operators to analyze groups of rows rather than just individual rows, in this 8-video course. In it you will learn how to perform filtering operations on groups of rows. Then examine the GROUP BY clause, one of the most important syntactic constructs in SQL. You will learn how to use the GROUP BY clause to analyze groups of rows aggregated by common attribute values. Next, learn about aggregate functions such as SUM, COUNT, MIN, and MAX, and how they are used with GROUP BY clauses. You will learn how subqueries can be leveraged by using the ANY, SOME, and ALL keywords. You will learn how to implement multi-way joins in MySQL, and how the HAVING clause adds to the effectiveness of the GROUP BY construct by allowing groups of rows to be filtered based on specific conditions. Finally, this course explains the differences between the WHERE clause and the HAVING clause, which applies conditional filters to groups of rows rather than to individual rows.
8 videos |
57m
Assessment
Badge
MySQL: Views, Indices, & Normal Forms
This 13-video course explores how indexes work to speed up query execution, and how views can be used to abstract complex queries in a convenient fashion. Learners will explore advanced abstractions in MySQL, including a view, which is a virtual table, and indices. Then you will learn how to use views to build abstractions for complex and common query operations in your use case. You will examine indices, which are auxiliary data structures which are maintained by a DBMS (database management system). Next, learn how to use an index on a database to make queries fast and easy. You will examine normal forms in database design, a standard set of rules to test the design of a table. This course demonstrates how to apply the analysis of normal forms to optimize the structure of your relations, and then to use appropriate indices to speed up query execution on them. Finally, this course demonstrates first, second, and third normal forms, and how to fix violations.
13 videos |
1h 19m
Assessment
Badge
MySQL: Triggers & Stored Procedures
Learners can explore how triggers can be used to react to specific conditions in your database, and how stored procedures can be used to achieve code reuse and code composition of SQL commands, in this 12-video course. You will examine how triggers, which are described as actions or groups of logic, and special stored procedures, that are executed by the MySQL database when certain specific events occur. This course demonstrates how to use several types of triggers, and the use of foreign keys. You will learn how to use the ON DELETE and ON UPDATE cascade functionality. Then learn how to create stored procedures, which are bits of SQL code, queries, or other operations, which can be saved, given a name, and then invoked at will. Observe how to invoke stored procedures, to redefine stored procedures, and then examine advance and intricate stored procedures. Finally, this course demonstrates how to construct an elaborate stored procedure.
12 videos |
1h 23m
Assessment
Badge
MySQL: Transactions, Savepoints, & Locks
This 14-video course explores how to execute groups of commands in an all-or-nothing fashion. Learners will examine how locks are used to regulate table access when multiple clients are accessing the database simultaneously. First, you will explore the ACID properties (atomicity, consistency, isolation, and durability) of database management systems. Next, you will learn how transactions, a unit of work which needs to be executed in an all or nothing fashion, work in MySQL. Next, learners you will examine the start transaction keyword, how transactions are defined as committed or rolled back. You will examine implicit commits, operations which create, alter, or drop database entities, such as databases or tables, and how these operations are affected by transaction commits and rollbacks. Learners will observe DDL (data definition language) operations in MySQL. Continue by exploring savepoints, specific checkpoints where the copy of a system state is created, and release savepoints when they are no longer needed. Finally, the course examines the precise semantics of read and write locks in MySQL.
14 videos |
1h 27m
Assessment
Badge
Building Web Apps Using Django: Introduction to Web Frameworks & Django
This 9-video course explores the concept of web frameworks and how they can speed up development of web applications, and examines the Django framework, a widely used framework written in the Python language. Learners begin by studying fundamentals of web requests, the steps and software required when processing web requests for static and dynamic websites. This leads into examining tasks involved in building a website and how web frameworks can speed up the process. Next, you will look at the Django framework and its features that can help to simplify web development, and the components of a Django application that are involved in processing web requests. Continue by observing what templates are in the context of Django and their use cases, and comparing Django models to database tables; then look at the role of the Django object-relational mapping layer (ORM) in mapping the two. Conclude the course by examining some of the built-in Django apps that developers can integrate into their own projects.
9 videos |
55m
Assessment
Badge
Building Web Apps Using Django: Building a Basic Website
Explore fundamentals of Django applications, from installation and the structure of a project, to implementations such as views, URLs, and templates, in this 12-video course. Begin by learning how to create a virtual Python environment and install Django, then how to generate a new Django project and describe various files that are created. You will discover how to start the built-in Django development server on the default port, as well as a specified port; define a view and URL pattern in Django to render the text "Hello World" in a web page; and generate a new app within a Django project. Learn about migrations in Django and using the manage.py script of a Django project to propagate model definitions to the database. Then observe working with Django URLs by configuring project and app-level URLs in Django; defining a view that renders an HTML file in its response; and downloading and using boilerplate HTML, CSS, and Javascript files in a Django project. Conclude by learning how to modify boilerplate HTML files to suit Django project requirements.
12 videos |
1h 18m
Assessment
Badge
Building Web Apps Using Django: Templates & User Administration
In this 11-video course, learners explore how to use templates to standardize components of a Django website, and different ways templates can be configured. Django is a widely used framework written in the Python language. Begin by learning how to add a new page to a Django website and use the Django template language to generate a URL for a URL pattern. Then move into creating a base template containing common elements for multiple pages in a Django website, and extending the base template and common elements defined within it while building individual pages in that Django website. Next, discover how to convey data from a view to a Django template in a dictionary, and apply styles defined in your CSS files to Django templates. Then move on to the Django admin interface, creating a superuser for your Django project and signing in to the Django user administration app, and using the Django admin interface to create new users. Finally, explore effects of assigning staff user status and specific permissions to Django app users.
11 videos |
1h 14m
Assessment
Badge
Building Web Apps Using Django: Models & User Registration
Django is a widely used web framework written in Python language. Explore the use of models to represent entities in a Django project, how they fit in with the project database, and how to implement user registration for a website by using various built-in Django tools in this 12-video course. Learners begin with Django models and defining entities in Django applications in model form, then learn how to propagate model definitions to a project's database by generating and running a migration script; create instances of a Django model and access model attributes; and view, update, and create instances of a Django model from the built-in admin interface. Next, explore user registration and create a view that uses Django's built-in user registration form; define the URL and template file for user registration pages for Django applications; convey notifications to website users with flash messages; and save data submitted in a user registration form by extending its definition. Conclude by learning how to install and use the Django-crispy-forms library to format a Django application's user registration page.
12 videos |
1h 23m
Assessment
Badge
Building Web Apps Using Django: Implementing Login & Logout
In this 10-video course, learners explore uses of Django's built-in login and logout views, and how to configure them. Django is a widely-used web framework using the Python language. Discover how to define a user profile, including how to define the model, set the image direction, and display profile information. Begin by building a user login page in a website with built-in Django objects, and then configure where a user is redirected to on a Django website upon successful login. Learn how to define logout template to serve as logout pages for a Django website; present different views for users who are signed into your Django website as opposed to regular users; and configure views in a Django application to render only when the user is signed in. Explore user profiles and defining the model for the profile of a user of a Django application; setting the location in a Django project directory where media can be stored; and displaying a user's information, including associated images, in a profile page.
10 videos |
1h 11m
Assessment
Badge
Building Web Apps Using Django: Generic Views
Explore various Django class-based generic views, which help to simplify the tasks of viewing, creating, editing, and deleting instances of Django models, in this 14-video course. Django is a widely used web framework written in the Python language. You will begin with a two-part tutorial on updating forms in a Django app: part 1 on defining forms and a view function, and part 2 on configuring update forms. Then explore how to use the built-in generic views: ListView to list instances of a model in your Django project; DetailView; CreateView; UpdateView, and also DeleteView. Discover how to configure permissions for the DeleteView; generate an archive of your Django model instances using the ArchiveIndexView; and create an archive of Django model instances, categorized by year, using the YearArchiveView. A two-part tutorial on applying finishing touches concludes the course: part 1 on defining an "About Us" page for your Django application, and part 2 on setting a customized 404 error page for your Django website.
14 videos |
1h 44m
Assessment
Badge
Final Exam: Novice Programmer
Final Exam: Novice Programmer will test your knowledge and application of the topics presented throughout the Novice Programmer track of the Skillsoft Aspire Web Programmer to Apprentice Programmer Journey.
1 video |
32s
Assessment
Badge
COURSES INCLUDED
Design Patterns in JavaScript: Getting Started
Explore principles of good design and the three main categories of design patterns in this 11-video course. Examine anti-patterns, including their uses and what to avoid while writing code, then discover how to install NodeJS and NPM for MacOS and Windows. Key concepts covered in this course include how design patterns can be reusable solutions to common problems to the same situations that have come up repeatedly, and how programmers have developed design patterns in order to deal with these situations; principles of good design and architecture; and learning about anti-patterns as shortcuts that seasoned developers use to define or describe a bad solution to a problem that resulted in a poor outcome. You will learn about the uses of and programming of anti-patterns; learn Javascript-specific anti-patterns; and observe how to compare different types of design patterns, including creational patterns, structural design patterns, and behavioral design patterns. Finally, learn how to install required tools on a MacOS machine and how to install required tools on a Windows machine.
11 videos |
1h 16m
Assessment
Badge
Design Patterns in JavaScript: Constructor, Factory, & Abstract Factory Creational Patterns
Explore the Constructor, Factory, and Abstract Factory creational patterns in Javascript. In this 15-video course, learners examine how to use constructors to create and initialize objects and how to use Factory and Abstract Factory to create different kinds of objects. Key concepts covered in this course include features of the constructor pattern, which allows construction or creation of objects that meet a specific use case; how to use object literal notation to construct objects; and how to assign properties and functions to objects. You will learn how to use Object.create() and new Object() to create objects; learn how to create objects using functions and ES6 classes; and examine Factory and Abstract Factory patterns, two design patterns closely related to one another. Next, learn about helper functions for the Factory pattern; how to set up helper methods to implement the Factory pattern; and how to set up constructs and factories for the Abstract Factory pattern. Finally, learn about immediately-invoked functions for Factory pattern and how to implement Abstract Factory pattern.
15 videos |
1h 32m
Assessment
Badge
Design Patterns in JavaScript: Singleton, Prototype, & Builder Creational Patterns
In this 14-video course, learners will discover how to implement Singleton, Prototype, and Builder patterns in Javascript. Examine how Singleton pattern is used for single object instantiation, how Prototype pattern is used for cloning, and how Builder pattern is used to construct complex objects. Key concepts covered in this course include basic principles of the Singleton pattern, an extremely popular and widely used creational design pattern; helper functions for Singleton pattern and how to implement it; and features of the Prototype pattern, which is used when the type of objects you want to create is determined by a prototypical instance. Learn how to implement the Prototype pattern and to apply best practices for Prototype pattern; learn characteristics of the Builder pattern, which separates construction of an object from how the object is actually represented; and learn how to use Builder pattern to construct complex objects. Finally, observe how to implement Builder pattern in jQuery, and how to use different methods in iQuery Builder pattern.
14 videos |
1h 19m
Assessment
Badge
Design Patterns in JavaScript: Module, Revealing Module, Façade, Decorator, & Mixin Structural Patterns
Learners discover how to implement common structural design patterns in this 21-video course. Explore Module and Revealing Module patterns, then examine how to set up helpers for the Facade pattern, and how to use it for AJAX requests and delve into use of Decorator and Mixin patterns. Key concepts covered here include Module and Revealing Module patterns; how to implement private variables and private functions with Module pattern; and how to use Revealing Module pattern and apply best practices. Learners observe Facade pattern and how to set up helpers and implement it; learn how to make AJAX requests without a facade in jQuery; and explore how to use Facade pattern in jQuery for AJAX requests. Next, you will learn principles of Decorator pattern, set up helpers for it, and apply decorators for dynamic customizations. Then learn about React components and their use as decorators; learn Mixin pattern; and observe how to use Mixins in the Underscore.js library. Finally, learn how to simulate multiple inheritance with Mixins and implement Mixin pattern.
21 videos |
2h 23m
Assessment
Badge
Design Patterns in JavaScript: Flyweight, Adapter, Composite, & Proxy Structural Patterns
This 17-video course helps learners discover how to implement Flyweight, Adapter, Composite, and Proxy patterns to model structure between the components in a system. Examine inefficient memory usage, sharing memory, and centralized event handling with Flyweight pattern. Explore possible burdens on a client when the Adapter pattern is not used and how to provide a consistent interface by using adapters. Then learn to use Composite pattern in jQuery and Proxy pattern to cache data and specify context. Key concepts covered here include characteristics of Flyweight pattern; learning how to illustrate inefficient memory usage for granular objects; and how to wire up individual event handlers to HTML elements. You will observe how to centralize event handling with Flyweight pattern; how to articulate features of Adapter pattern; and how to illustrate burdens on clients when Adapter pattern is not used. Finally, learn about characteristics of Composite pattern; how to execute functions by using the right context; and how to apply Proxy pattern to provide the right context.
17 videos |
2h 1m
Assessment
Badge
Design Patterns in JavaScript: Observer & Iterator Behavioral Patterns
In this 12-video course, learners discover how to implement the Observer pattern for communication and the Iterator pattern to work with collections. Examine how to set up publishers and subscribers and the role of Observer pattern in event handling, then learn how to trigger custom events in jQuery, use Observer pattern with custom events, iterate over elements in a collection, and use Iterators in jQuery. Key concepts covered here include main characteristics of Observer pattern and how it is widely used in practice; how to implement publishers and subscribers; and how to publish messages with the publisher and receive them as subscribers. Learn about the role of Observer pattern in event handling; how to trigger custom events in jQuery; and observe how to design the Observer pattern with custom events in jQuery. Finally, learn about characteristics of Iterator pattern and how it allows access to elements within a collection in a sequential manner; how to implement Iterator Mixin; learn iterating over elements in a collection; and implement Iterators in jQuery.
12 videos |
1h 18m
Assessment
Badge
Design Patterns in JavaScript: Mediator, State, & Command Behavioral Patterns
Explore the Mediator, State, and Command behavioral design patterns, including how to implement them for modeling communication between components, in this 12-video course. Discover how to perform valid state transitions, implement the State pattern in React, and execute and undo commands. Key concepts covered here include characteristics of Mediator pattern, which is responsible for mediating communication between different components that exist in a system; how to set up Mediator as a workflow object; and how to use Mediator for communication. You will learn about characteristics of State pattern, which allows an object to alter its behavior, its display, or the way it reacts to events when its state changes; how to set up helper methods for State pattern; and how to implement State pattern in React. Continue by learning how to perform valid state transitions; observing characteristics of Command pattern, which is often used in order to implement undo and redo functionality in several applications; learning to implement Command pattern; and how to execute and undo commands.
12 videos |
1h 13m
Assessment
Badge
Unit Testing in JavaScript: Mocha & Unit.js
Unit testing on software development paradigms, the support testing provided, and the assertion libraries available in JS (Javascript) are explored in this 15-video course. First, you will learn to use the Node.js environment on your local machine and use the NPM package manager to install Mocha and Unit.js. Learners will then study the functionality of Mocha, and how to build suites of tests. You will also learn how to use Sinon to construct spies, stubs, and mocks, and how it works with Mocha. Continue by learning how to use the Unit.js assertion library to test your code. This course examines the various assertions that Unit.js offers to test simple data types, such as Booleans, numbers, and strings. You will learn how to test more complex data types, including functions and arrays, and to test the objects. You will also learn how to check individual properties of an object by using custom functions as well as regular expressions. Finally, examine unit testing of functions that throw several kinds of errors.
15 videos |
1h 46m
Assessment
Badge
Unit Testing in JavaScript: Should.js & Must.js
This 12-video course explores unit testing on software development paradigms, the support testing provided by JS (JavaScript) and the assertion libraries available in JS. Learners will examine how Unit.js offers extended APIs (application program interface) to communicate between various software components. First, you will learn to use sign-on, which is invaluable in constructing spice, stubs, and mocks in JS. You will learn how to use the Mocha testing framework. This course examines the assertion libraries Should.js and Must.js, which extend the base object.prototype in Javascript, to write assertions for every object by using a very intuitive and easy-to-read style. You will learn to use this assertion libraries to test code by using a chained assertion style. This course examines the fluent style Should.js uses for assertions, and the several helper methods available to chain multiple assertions together. Finally, you will learn to write unit tests to test numbers, strings, truthy and falsy values, objects, arrays, and promises in Javascript.
12 videos |
1h 12m
Assessment
Badge
Unit Testing in JavaScript: Exploring & Configuring the Mocha Testing Framework
Explore how to use JS (Javascript) Mocha, the most popular unit testing framework to run unit tests, in this 13-video course, which examines different hooks that Mocha.js provides to run the test suites. First, learners will examine specific testing environments using the Mocha before and beforeEach hooks. You will then learn how to tear down these test environments, after the completion of the tests, by using the after and afterEach hooks. You will learn how to write tests for asynchronous functions by using the done method, and how to use Async awake keywords. You will learn to use the async/await methods to test asynchronous code that return promises. This course then demonstrates how to set up a simple HTTP server to run Mocha tests in a browser environment. Finally, you will learn how to use the Mocha command line to run multiple tests and how to select a specific test to run by using regular expressions.
13 videos |
1h 9m
Assessment
Badge
Unit Testing in JavaScript: Mocha & Chai
This 12-video course offers a detailed exploration of the Chai assertion framework, an assertion library available in JS (Javascript) to perform unit testing. In this course, you will learn how to install and set up the Chai assertion library on your computer, and learn to use two kinds of application programming interfaces (APIs) that Chai offers for assertions. Learners will examine Chai APIs for both test-driven development and behavior-driven development, and will write unit tests by using the classic API. Learn to use the classic assertion API as well as the Should and Expect API in Chai to test numbers, Booleans, strings, objects and object properties, and arrays. Explore how to use Should to chain multiple assertions together. Then learn how to run tests on simple data types, including Boolean strings and numbers, and on complex data types such as arrays and objects, all using Chai, and examine behavior-driven development by using the Should and Expect APIs. This course compares test-driven development and behavior-driven development. Finally, explore the Expect API.
12 videos |
57m
Assessment
Badge
Unit Testing in JavaScript: SinonJS
Learners can explore the Sinon JS (Javascript) library in this 23-video course. You will learn how to install Sinon library, and will explore the use of fakes, spies, stubs, and mocks in Sinon. Observe how to test code that is part of your application, and replace invocations to other components by using fix. You will learn to create a fake function, and to define the behavior of these functions. Next, you will examine spies, which support all operations that fake support, and allow you to spy on methods that you invoke on objects. Learners continue by examining how stubs can be used to create objects without invoking the objects constructor, and how configuring stub behavior allows us to test specific code paths. You will learn to use fake timers and sandboxes to write unit tests, and how to configure fakes and spies with behavior. Finally, you will learn to set up the expectations for your mocks, and you will control time using fake timers for asynchronous operations which use promises in JS.
23 videos |
2h 28m
Assessment
Badge
Final Exam: Apprentice Programmer
Final Exam: Apprentice Programmer will test your knowledge and application of the topics presented throughout the Apprentice Programmer track of the Skillsoft Aspire Web Programmer to Apprentice Programmer Journey.
1 video |
32s
Assessment
Badge
EARN A DIGITAL BADGE WHEN YOU COMPLETE THESE TRACKS
Skillsoft is providing you the opportunity to earn a digital badge upon successful completion on some of our courses, which can be shared on any social network or business platform.
Digital badges are yours to keep, forever.YOU MIGHT ALSO LIKE
Channel
Wintellect JQuery