Angular

A Client-Side (Browser) framework which allows you to build Single Page Application (SPA).

Its job is to:

  • Render UI with Dynamic Data
  • Handle Use Input
  • Communicate with Backend Services
  • Provide a "Mobile App" like User Experience

Angular is a convention-over-configuration framework. It has a high learning curve. It is not meant for small apps.

Compilation Strategies

It supports two compilation strategies:

  • JIT
    • The just-in-time strategy ships the whole application so it can be run/compiled in the browser.
    • It has large file size, and thus is slower to load.
    • It was the only solution before Angular 9.
  • AOT
    • The ahead-of-time strategy compiles the application code on the server.
    • It has small file size, so it’s faster to load.
    • This is the recommended strategy now.
    • Use platformBrowserDynamic as it is recommended by the Angular Team.
      • By default, it’ll use AOT, but we can change it to use JIT when the need arises.

Change Detection

  • Much like in React.js (Private) or Vue.js (Private), Angular supports change detection, i.e. detect if some change has been made and update the UI accordingly.
  • Change detection runs
    • When the app is initialized
    • During changes in our data
    • Manually triggering change detection
    • Angular runs change detection twice when an app is initialized.
      • When in Production Mode (enableProdMode), change detection only runs once when initialized.

Children
  1. Angular CLI
  2. Concepts
  3. Decorators
  4. Forms
  5. Node Connection
  6. Server Communication
  7. Tailwind
  8. Testing
  9. Why Angular?

Backlinks