Git Product home page Git Product logo

advangularaug2023's Introduction

Advanced Angular

Kevin Cunningham August 2023

Miro: https://miro.com/app/board/uXjVMwF93CU=/

Timings:

  • 7-9.30am (BST) / 11.30-2pm (IST)
  • 12.30-2.30pm (BST) / 5pm-7pm (IST)

Intro and Setup

  • Learning Objectives: Establish course expectations, gauge participants' existing knowledge, clarify goals, and ensure proper environment setup.
  • Summary: Introduction to the course, gathering information on what participants already know, understanding what they want to learn, and setting up Angular environment.

Architecture

  • Learning Objectives: Understand Angular architecture, components, directives, services, and modules, and how to structure a large application.
  • Summary: Detailed exploration of Angular's core architectural concepts, including creating components, utilizing the CLI, and binding data.

Testing

  • Learning Objectives: Grasp testing essentials, explore test-driven development, code coverage, test automation, mocking, and TestBed.
  • Summary: Introduction to testing methodologies in Angular, including writing and automating tests, leveraging mocks, and understanding how testable components fit within the architecture.

User Experience

  • Learning Objectives: Create a consistent and modern user experience, de-bounce fields, and understand quality-of-service for UI.
  • Summary: Techniques for crafting engaging user experiences, ensuring quality interaction, and implementing responsive designs in Angular.z

Routing

  • Learning Objectives: Design meaningful client-side routes, pass data efficiently, explore custom events, and large-scale apps.
  • Summary: In-depth look at Angular's routing capabilities, including how to design routes that meet specific application needs and optimize data transmission.

Security

  • Learning Objectives: Understand built-in Angular security features, learn to build secure interactions, and decide on model data persistence.
  • Summary: Exploration of security practices in Angular, focusing on protecting user data, secure communication, and understanding where to persist data.

Forms

  • Learning Objectives: Master ideal validation techniques, understand template-driven and reactive forms, and explore real-world examples of data-driven forms.
  • Summary: A comprehensive guide to working with forms in Angular, focusing on validation techniques, different types of forms, and practical examples.

// Simulate a CSRF attack

Data Modeling & Performance

  • Learning Objectives: Deal with large and rapidly changing data sets, optimize renderers, explore custom class inheritance, and understand when to use Promises or Observables.

  • Summary: Deep dive into managing data in Angular applications, including handling large data sets, enhancing performance, and using custom class inheritance.

  • Change Detection Strategy [Default, OnPush]

  • including tree shaking, lazy loading, and code splitting.

  • focusing on optimization at the code and architectural levels

  • Lifecycle hooks - ngOnInit - why and when would we use the other hooks?

Full-Stack ECMAScript

  • Learning Objectives: Explore real-world examples using server and client-side ECMAScript, and understand trends in noSQL data storage, Node, and related technologies.
  • Summary: An examination of full-stack development using ECMAScript, focusing on current trends, technologies, and practical examples.

Optional Session: Migration Strategies from Older Angular

  • Learning Objectives: Understand how to migrate an older Angular application to the latest version; identify potential challenges and best practices.
  • Summary: Guidance on migrating from previous versions of Angular, including tools, common obstacles, and best practices for a smooth transition.

Optional Session: Building and Distributing Libraries

  • Learning Objectives: Learn how to design, build, implement and distribute Angular libraries.
  • Summary: Techniques for building reusable parts of an Angular application, focusing on creating modular and maintainable code.

Optional Session: Debugging and Troubleshooting in Angular

  • Learning Objectives: Develop skills to identify and resolve common issues in Angular templates and applications.
  • Summary: Hands-on practice with debugging Angular applications, focusing on templates, testing techniques, and common troubleshooting strategies.

Optional Session: Working with NgRx

  • Learning Objectives: To understand NgRx and use actions, reducers and selectors effectively.
  • Summary: Build a small app together that will use all of the core NgRx concepts that can be applied to more complex use cases.

Optional Session: Performance Optimization

  • Learning Objectives: Learn techniques to optimize the performance of an Angular application, including tree shaking, lazy loading, and code splitting.
  • Summary: Advanced performance techniques to make Angular applications faster and more efficient, focusing on optimization at the code and architectural levels.

Optional Session: Working with Local Storage

  • Learning Objectives: Understand how to work with local storage in Angular for state management and data persistence.
  • Summary: Practical guidance on using local storage in Angular applications, including common use cases, best practices, and considerations for security.

Optional Session: Building Standalone Components in Angular

  • Learning Objectives:

    • Understand the concept and importance of standalone components in Angular.
    • Learn to design, create, and implement standalone components for reusable UI elements.
    • Explore encapsulation, input/output bindings, and best practices for standalone components.
  • Summary:

    • An exploration of standalone components in Angular, focusing on creating reusable UI elements that can be easily integrated across different parts of an application.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.