GradleとMaven/認証、承認



左:gradle(22秒)、右:maven(38秒)
gifソース:https://gradle.org/maven-vs-gradle/

Gradle


Gradleはオープンソース構築自動化ツールで、設計が非常に柔軟で、ほとんどのタイプのソフトウェアを構築することができます.このツールは、高性能のため、さまざまなソフトウェアの作成に広く使用されています.プロジェクト構造を開発するために、JavaおよびGroovyベースのDSL(Domain-Specific Language)で作業する.Gradleは、モバイルおよびWebアプリケーションの作成をサポートするために、さまざまなプラットフォームでテストおよび導入を行うことができます.機能はAndroidアプリケーションを開発するための公式ツールとなっている.
  • 高度カスタマイズ可能
  • 最も基本的な方法でカスタマイズおよび拡張可能な方法でモデリング
    以前に実行した出力を再使用し、変更された入力のみを処理し、タスクを並列に実行し、タスク2479182を迅速に完了する.
    Android用の公式構築ツールで、多くの流行言語と技術をサポートしています.

    Maven


    MavenはJava構築ツールであり、Apache Antを代替案とし、オープンソースプロジェクト管理ツールである.このツールは、標準化、すなわち、短時間で標準レイアウトのソフトウェアを開発することに重点を置いている.これにより、Javaプロジェクトを作成できますが、他の言語でも使用できます.MavenはXML(拡張可能なタグ言語)を使用してアプリケーションを構築します.

    Mavenのターゲット

  • バージョンプロセス
  • の作成が容易
  • は、統合された構築システム
  • を提供する.
  • 良質なプロジェクト情報を提供
  • より良い開発実践を促進
  • Gradle vs Maven


    GradleMavenGradleはドメイン固有言語(DSL)プロジェクトに基づいて開発された.Mavenは純粋なJava言語に基づくソフトウェア開発である.Groovyベースのドメイン固有言語(DSL)を使用して、プロジェクト構造を作成します.XML(拡張可能なタグ言語)を使用してプロジェクト構造を生成します.新しい機能を追加することでアプリケーションを開発することに重点を置きます.ポイントは、特定の時間制限の下でアプリケーションを開発することです.現在実行されているタスクのみを追跡するため、パフォーマンスはMavenよりも優れています.ソフトウェアの作成中にローカルの一時ファイルは作成されないため、時間がかかります.Javaのコンパイルを避ける。(クラスの変更はGradle 3.4から開始しますが、定数が変更されていない場合は再コンパイルする必要はありません).Javaをコンパイルする必要があります.これは、ユーザーが慣れるのに多くの時間がかかる新しいツールです.このツールは多くのユーザーによく知られており、使いやすい.

    Gradle - build.gradle

    dependencies {
        compileOnly "org.projectlombok:lombok:1.18.22"
        // compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.22'
    }
    

    Maven - pom.xml

    <dependencies>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.22</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>
    同じ内容でもGradleはずっと簡単だと確信しています!
    https://mvnrepository.com/artifact/org.projectlombok/lombok/1.18.22

    Gradleは大きく発展しましたが、MavenはGradleよりも多く使われているようです.(検索量が使用量に比例する場合)
    リファレンス
    “Community Home.” Gradle Docs, https://docs.gradle.org/current/userguide/userguide.html .
    “Introduction.” Maven, https://maven.apache.org/what-is-maven.html .
    “Gradle vs Maven Comparison.” Gradle, https://gradle.org/maven-vs-gradle/ .
    Champeau, Cédric. “Incremental Compilation, the Java Library Plugin, and Other Performance Features in Gradle 3.4.” The Gradle Blog, Gradle, 25 Feb. 2017, https://blog.gradle.org/incremental-compiler-avoidance .
    “Difference between Gradle and Maven.” GeeksforGeeks, 23 Dec. 2020, https://www.geeksforgeeks.org/difference-between-gradle-and-maven/ .

    その他の用語のクリーンアップ


    認証


    認証は、ユーザが誰であるかを確認するプログラムです.認証の例として、会員登録があります.

    権限


    承認は、ユーザーがリソースにアクセスする権限を持っているかどうかを確認するプログラムです.
    実例に比べ、認証は空港で保安検査台を通過する際に身分証明書を提示し、身分を「認証」する.そして搭乗口に到着し、乗務員に搭乗券を提示し、乗務員は搭乗を「承認」することができる.
    認証するか認証するかユーザーが誰であるかを確認します.承認は、ユーザーがリソースにアクセスする権限を持っているかどうかを決定します.認証は、パスワード、使い捨てピン、生体情報、およびユーザーが提供または入力した他の情報によって行われます.承認は、組織の実施とメンテナンスの設定によって動作します.認証は、正しい認証とアクセス管理プロセスの最初のステップです.承認は常に認証後に行われます.
    リファレンス
    Auth0. “Authentication vs. Authorization.” Auth0 Docs, https://auth0.com/docs/get-started/authentication-and-authorization .
    “What Is the Difference between Authentication and Authorization?” SailPoint, 20 July 2021, https://www.sailpoint.com/identity-library/difference-between-authentication-and-authorization/ .