依存関係の管理
アプリ全体と同じくらい大きくても、関数と同じくらい小さい。繰り返しの開発負荷を軽減するために再利用できるものであれば、コンポーネントライブラリとして抽出し、ライブラリまたはパッケージの形で再利用することができます。
名称
依存関係管理ツールは、コンポーネントまたはライブラリ (ローカルまたはリモート) に焦点を当て版本
、仓库源
構成ファイルで依存ライブラリとライブラリ バージョンを宣言し、依存ライブラリのアップグレードを管理します。
依存関係管理の主な機能
- 自動ダウンロードと更新: プロジェクトが複雑になり、依存関係の数が膨大になると、依存関係の自動ダウンロードと更新、および依存関係のインストールによって開発効率が大幅に向上します。
- ライブラリとバージョン管理に視覚的な構成ファイルを使用する
- コンポーネントのバージョンの競合: 複数のコンポーネントを同時に統合すると、コンポーネント間でバージョンの競合が発生する可能性があり、自動競合解決機能をサポートする必要があります。
アプリ開発でよく使われる依存関係管理ツールを紹介します。
ココアポッド
iOS/MacOS プロジェクト用の最も人気のある依存関係マネージャーは Ruby で構築されており、XCode
開発ツールをサポートしています。
公式サイトアドレス:Cocoapods
次のコマンドを使用してインストールします
sudo gem install cocoapods
設定ファイル Podfile
platform :ios, '8.0'
use_frameworks!
target 'MyApp' do
pod 'AFNetworking', '~> 3.2'
pod 'FMDB', '~> 2.7'
pod 'SwiftyJSON', '~> 4.1'
end
次のコマンドを実行して依存関係をインストールします
pod install
グラドル
Java、Kotlin C++
またはお好みの言語で。あらゆるプラットフォームに導入できるパッケージ管理ツール。
Gradle の豊富な API と、プラグインと統合の成熟したエコシステムを使用して自動化します。ソフトウェアのエンドツーエンド配信をモデル化、統合、体系化する
次の開発ツールがサポートされています。
- Androidスタジオ
- その考えは理解できます
- 日食
- NetBeans
Google紹介ドキュメント: Gradle
設定ファイル:build.gradle
plugins {
id 'com.android.application' // Android程序
id 'org.jetbrains.kotlin.android' // 支持Kotlin
}
android {
namespace 'com.baidu.gradlex'
compileSdk 32
defaultConfig { // App信息
applicationId "com.baidu.gradlex"
minSdk 23
targetSdk 32
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
}
dependencies { // 依赖库
implementation 'androidx.core:core-ktx:1.7.0'
implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'com.google.android.material:material:1.5.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
パブ
Pub は、Flutter
開発で最も一般的に使用される依存関係管理ツールDart
であり、Flutter 開発で一般的に使用されるさまざまなプラグインをカバーしており、開発者がそれらを簡単に迅速に導入して再利用できるようにします。
公式サイトアドレス:flutter pub cn
インストール: Flutter プラグインが付属しています
設定ファイル:pubspec.yaml
name: flutter_luckin_coffee
description: flutter luckin coffee application
version: 1.0.0+1
environment:
sdk: ">=2.10.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^1.0.4
flutter_swiper: 1.1.6
pull_to_refresh: ^2.0.0
json_annotation: ^4.5.0
dart_mock: ^2.0.0
get: ^4.6.3
dev_dependencies:
flutter_test:
sdk: flutter
test: any
build_runner: ^2.1.11
json_serializable: ^6.2.0
flutter:
uses-material-design: true
assets: // 图片资源
- lib/assets/images/
- lib/assets/images/home/
- lib/assets/images/menu/
- lib/assets/images/mine/
- lib/assets/images/order/
pubリポジトリをダウンロードして更新する
flutter pub get
flutter pub upgrade
醸造する
Homebrew は、macOS システムでのソフトウェア インストール プロセスを簡素化するために、Max Howell によって Ruby で書かれた無料のオープンソース パッケージ管理システムです。初期の頃、Homebrew は MacOS でのみ利用可能でしたが、後に Linux バージョンが導入されました。
公式サイトアドレス:github
インストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
パッケージをダウンロードしてインストールする
brew search 关键词 // 搜索软件包
brew install 软件名 // 安装
ピップ
Python
Python パッケージの検索、ダウンロード、インストール、アンインストールの機能を提供するパッケージ管理ツール。
npm
Node.js
パッケージ管理ツールであるその誕生は、フロントエンドの開発を大きく促進するものでもあり、npm は現代のフロントエンド開発と切り離せないものとなっています。
公式サイトアドレス:npmjs
インストール:公式 Web サイトからインストール パッケージをダウンロードします。
// 查看npm版本
npm -v
// 安装软件包
npm install <package_name>
ルビージェムズ
Ruby
パッケージ マネージャー、それが管理するパッケージまたは依存関係は gem と呼ばれます。
gem install nokogiri
メイビン
Maven プロジェクト オブジェクト モデル ( POM
) は、小さな記述情報を通じてプロジェクトの構築、レポート、および文書化を管理できるプロジェクト管理ツール ソフトウェアです。
Maven はプログラム構築機能に加えて、高度なプロジェクト管理ツールも提供します。Maven のデフォルトのビルド ルールは再利用性が高いため、多くの場合、単純なプロジェクトは 2 行または 3 行の Maven ビルド スクリプトで構築できます。
構築ツールとしての Maven は、構築の自動化に役立つだけでなく、構築プロセスを抽象化し、構築タスクの実現を提供します。クロスプラットフォームであり、一貫した操作インターフェイスを外部に提供するため、そのすべてが優れた人気のある構築ツールにするのに十分です。
Maven はビルド ツールであるだけでなく、依存関係管理ツールやプロジェクト管理ツールでもあり、中央倉庫を提供し、コンポーネントを自動的にダウンロードするのに役立ちます。