依靠办理
大到整个App,小到一个函数。只要是可以复用减少重复开发工作量, 就可以抽出为组件库, 以库或包的方式进行复用。
依靠办理东西关注组件或库的名称
、版别
、仓库源
(本地或远程),在配置文件中声明依靠的库,以及库的版别,并办理依靠库的升级工作。
依靠办理主要功能
- 主动下载和更新:跟着项目复杂度的提高,依靠数量庞大,主动下载和更新依靠,装置依靠能能带来开发效率的巨大提高。
- 运用可视化配置文件来进行库和版别办理
- 组件版别抵触:同时集成多个组件,组件间存在版别抵触的可能性,需要支撑主动处理抵触功能。
下面介绍App开发中常用的依靠办理东西
CocoaPods
最流行的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
Gradle
Java、Kotlin C++
或您挑选的任何言语编写。可在任何平台上部署的软件包办理东西。
运用 Gradle 丰厚的 API 和成熟的插件和集成生态系统,完成主动化。对软件的端到端交付进行建模、集成和系统化
支撑如下开发东西:
- Android Studio
- IntelliJ IDEA
- Eclipse
- 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
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
brew
Homebrew 是一款自由及开放源代码的软件包办理系统,由 Max Howell 运用 Ruby 言语编写,用以简化macOS系统上的软件装置进程。在前期,Homebrew 只有 MacOS 版别,后来又推出了 Linux 版别。
官网地址: github
装置
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
下载装置软件包
brew search 关键词 // 查找软件包
brew install 软件名 // 装置
pip
Python
包办理东西,该东西供给了对Python 包的查找、下载、装置、卸载的功能。
官网 和 介绍页面
npm
Node.js
的包办理东西,它的诞生也极大的促进了前端的开展,在现代前端开发中都离不开npm的身影。
官网地址: npmjs
装置: 官网下载装置包
// 检查npm版别
npm -v
// 装置软件包
npm install <package_name>
RubyGems
Ruby
的一个包办理器,它所办理的包或许依靠,我们称之为 gem。
rubygems
gem install nokogiri
Maven
Maven – Welcome to Apache Maven
Maven项目目标模型(POM
),可以经过一小段描绘信息来办理项目的构建,陈述和文档的项目办理东西软件。
Maven 除了以程序构建才能为特征之外,还供给高档项目办理东西。因为 Maven 的缺省构建规矩有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。
Maven作为一个构建东西,不仅能帮我们主动化构建,还可以笼统构建进程,供给构建任务完成;它跨平台,对外供给了共同的操作接口,这一切足以使它成为优异的、流行的构建东西。
Maven不仅是构建东西,还是一个依靠办理东西和项目办理东西,它供给了中心仓库,能帮我主动下载组件。