Angular フレームワーク: TypeScript ベースの Web アプリケーション開発フレームワーク

序章

Angular フレームワークは TypeScript ベースの Web アプリケーション開発フレームワークであり、その誕生により Web 開発の様相が変わり、開発者はより効率的で、保守可能で、スケーラブルな開発エクスペリエンスを得ることができました。Angular フレームワークは、フロントエンド フレームワークで重要な役割を果たすだけでなく、実稼働環境でも多くの企業や開発者によって広く使用されています。

TypeScript

  • まず、TypeScript について見てみましょう。TypeScript はオープン ソースの厳密に型指定された言語で、純粋な JavaScript コードにコンパイルされる JavaScript のスーパーセットです。TypeScript は ES6 および ES7 の完全な機能を備えており、同時に、型の注釈、インターフェイス、ジェネリック、列挙型など、JavaScript にはないいくつかの機能を拡張しています。TypeScript でコードを記述すると、型チェックとコード ヒントが向上し、よくあるコーディングの間違いを回避できます。
  • たとえば、TypeScript のインターフェイスを使用して、API リクエストの戻りデータ型を定義できます。
    interface User {
          
          
        id: number;
        name: string;
        age: number;
    }
    
    function getUser(id: number): Promise<User> {
          
          
        return fetch(`/api/user/${
            
            id}`)
            .then((response) => response.json())
            .catch((error) => {
          
          
            console.error(`Failed to fetch user ${
            
            id}:`, error);
        });
    }
    
  • 上記のコードでは、Userという名前の。このインターフェイスには、 one id、 one name、 one のage3 つのフィールドが含まれています。私たちのgetUser関数は、このインターフェイスを使用して API リクエストの戻り結果の型を記述し、返されたデータがコンパイル時にインターフェイス定義に準拠しているかどうかを確認します。このようにして、いくつかの潜在的な問題を開発プロセスの早い段階で見つけることができ、コードの品質と保守性が向上します。

角度のあるフレームワーク

  • 次に、Angular フレームワークを見てみましょう。Angular は Google によって開発されたフロントエンド フレームワークで、MVC (Model-View-Controller) アーキテクチャ パターンを採用しており、開発者がコードをより明確に整理および管理できるようにします。Angular は TypeScript 言語に依存しています。これにより、より優れた型チェックとコード ヒントが提供され、開発段階での開発効率が大幅に向上します。

Angular フレームワークの機能

コンポーネント開発をベースに

  • Angular フレームワークは、各機能モジュールを複数の再利用可能なコンポーネントに分割するコンポーネント化された開発モデルを採用しています。各コンポーネントには独自のビュー、コントローラー、データ モデルがあるため、コードの編成と保守が容易になります。同時に、Angular フレームワークは、開発者が高品質のユーザー インターフェイスを迅速に構築するのに役立つ、マテリアル デザイン コンポーネント ライブラリなどのいくつかの便利なコンポーネント ライブラリを提供します。

双方向データバインディング

  • Angular フレームワークは双方向のデータ バインディングをサポートしており、UI とモデル間のデータ変更をリアルタイムで更新できるため、UI を手動で更新するという面倒な操作を回避できます。たとえば、次のコードを使用してカウンター コンポーネントを定義すると、ユーザーが「+」および「-」ボタンをクリックすると、UI インターフェイスが更新され、カウンターの値がリアルタイムで表示されます。
    import {
          
           Component } from '@angular/core';
    
    @Component({
          
          
        selector: 'app-counter',
        template: `
            <h1>Counter: {
           
           { count }}</h1>
            <button (click)="increment()">+</button>
            <button (click)="decrement()">-</button>
        `,
    })
    
    export class CounterComponent {
          
          
        count = 0;
        increment() {
          
          
            this.count++;
        }
        decrement() {
          
          
            this.count--;
        }
    }
    

サービスと依存関係の注入

  • Angular フレームワークは、サービスと依存関係の挿入をサポートしています。これにより、モジュール間の依存関係が分離され、コードがより柔軟で保守しやすくなります。たとえば、次のコードを使用してログ サービスを定義し、アプリケーション内のユーザー アクションとエラー メッセージを記録できます。
    import {
          
           Injectable } from '@angular/core';
    
    @Injectable()
    export class LoggerService {
          
          
        log(message: string) {
          
          
            console.log(`[INFO] ${
            
            message}`);
        }
        error(message: string) {
          
          
            console.error(`[ERROR] ${
            
            message}`);
        }
    }
    
  • サービスを使用するコンポーネントでは、サービスをコンストラクターに挿入し、ログを記録するメソッドで使用できます。
    import {
          
           Component } from '@angular/core';
    import {
          
           LoggerService } from './logger.service';
    
    @Component({
          
          
        selector: 'app-user-profile',
        template: `
            <h1>User Profile</h1>
            <p>Name: {
           
           { name }}</p>
            <p>Age: {
           
           { age }}</p>
        `,
    })
    
    export class UserProfileComponent {
          
          
        name = 'Alice';
        age = 28;
        constructor(private logger: LoggerService) {
          
          }
        ngOnInit() {
          
          
            this.logger.log(`User profile loaded for ${
            
            this.name}`);
        }
        updateProfile() {
          
          
            // TODO: update user profile
            this.logger.error(`Failed to update user profile for ${
            
            this.name}`);
        }
    }
    
  • 上記のコードでは、 のコンストラクターにLoggerService挿入しUserProfileComponent、コンポーネントが初期化されたときにユーザーの情報を記録し、ユーザーの情報を更新したときにエラー メッセージを記録しました。このようにして、コードの可読性と保守性が向上します。

TypeScriptをAngularプロジェクトに導入する方法

TypeScript がデフォルト言語であるため、Angular で TypeScript を導入する場合、追加の手順は必要ありません。Angular CLI を使用して新しいプロジェクトを作成すると、自動的に TypeScript が使用されます。プロジェクトに TypeScript がない場合は、次の手順を使用してプロジェクトに追加できます。

  • TypeScript をインストールします。
    npm install typescript --save-dev
    
  • tsconfig.json ファイルで TypeScript を構成します。
    {
          
          
        "compilerOptions": {
          
          
            "module": "es6",
            "target": "es5",
            "moduleResolution": "node",
            "sourceMap": true,
            "emitDecoratorMetadata": true,
            "experimentalDecorators": true,
            "lib": ["es2015", "dom"]
        }
    }
    
  • Angular プロジェクト内のすべての .ts ファイルが .js ファイルにコンパイルされていることを確認してください。

要約する

要約すると、Angular フレームワークは TypeScript ベースの Web アプリケーション開発フレームワークであり、MVC アーキテクチャ パターンを採用し、コンポーネント ベースの開発、双方向のデータ バインディング、サービスと依存関係の挿入をサポートし、開発者に、より効率的で保守性の高い、スケーラブルな開発経験。Angular フレームワークと TypeScript 言語を使用すると、開発効率が大幅に向上し、エラー率が減少し、コードの品質と保守性が向上します。

おすすめ

転載: blog.csdn.net/McapricornZ/article/details/131364354