清华学神尹成带你学习golang2021(41)Go语言依赖管理
早期的Go语言被很多开发者所吐槽的一个问题就是没有依赖包的管理,不过随着版本的不断更迭,Go语言依赖管理方面也在不断的完善。
为什么需要依赖管理
最初的时候Go语言所依赖的所有的第三方包都放在 GOPATH 目录下面,这就导致了同一个包只能保存一个版本的代码,如果不同的项目依赖同一个第三方的包的不同版本,应该怎么解决呢?
godep
godep 是一个Go语言官方提供的通过 vender 模式来管理第三方依赖的工具,类似的还有由社区维护的准官方包管理工具 dep。
Go语言从 1.5 版本开始开始引入 vendor 模式,如果项目目录下有 vendor 目录,那么Go语言编译器会优先使用 vendor 内的包进行编译、测试等。
安装godep工具
我们可以通过go get 命令来获取 godep 工具。
go get github.com/tools/godep
命令执行成功后会将 godep 工具的源码下载到 GOPATH 的 src 目录下对应的文件夹中,同时还会在 GOPATH 的 bin 目录下生成一个名为 godep.exe 的可执行文件,如下图所示。
为了方便使用 godep 工具,我们需要将存放 godep.exe 文件的目录添加到环境变量 PATH 中。在系统变量中找到并选中“Path”一行,点击“编辑”按钮,在新弹出的窗口中点击“新建”,然后在最下面一行中填入对应的目录信息。确认无误后点击“确定”。
环境变量设置的打开方式我们在《安装Go语言开发包》一节中已经介绍过了,这里不再赘述。
godep工具的基本命令
完成上面的操作后,我们就可以在命令行窗口(CMD)中使用 godep 工具了,godep 支持的命令如下表所示:
命令
作用
godep save
将依赖包的信息保存到 Godeps.json 文件中
godep go
使用保存的依赖项运行 go 工具
godep get
下载并安装指定的包
godep path
打印依赖的 GOPATH 路径
godep restore
在 GOPATH 中拉取依赖的版本
godep update
更新选定的包或 go 版本
godep diff
显示当前和以前保存的依赖项集之间的差异
godep version
查看版本信息
使用godep help [命令名称]可以查看命令的帮助信息,如下所示。
C:\Users\Administrator>godep help go
Args: godep go [-v] [-d] command [arguments]
Go runs the go tool with a modified GOPATH giving access to
dependencies saved in Godeps.
Any go tool command can run this way, but "godep go get"
is unnecessary and has been disabled. Instead, use
"godep go install".
If -v is given, verbose output is enabled.
If -d is given, debug output is enabled (you probably don't want this, see -v).
使用godep工具
执行godep save 命令,会在当前目录中创建 Godeps 和 vender 两个文件夹。Godeps 文件夹下会生成一个 Godeps.json 文件,用来记录项目中所依赖的包信息;vender 目录则是用来保存当前项目所依赖的所有第三方包。
生成的 Godeps.json 文件的结构如下所示:
{
"ImportPath": "main",
"GoVersion": "go1.13",
"GodepVersion": "v80",
"Deps": [
{
"ImportPath": "github.com/go-gomail/gomail",
"Comment": "2.0.0-23-g81ebce5",
"Rev": "81ebce5c23dfd25c6c67194b37d3dd3f338c98b1"
}
]
}
其中,“ImportPath”为项目的路径信息,“GoVersion”为Go语言的版本号,“GodepVersion”为 godep 工具的版本号,“Deps”为当前依赖包的路径、版本号信息等等。
提示:当引用的第三方包要升级时,只需要修改 Godep.json 里面的依赖包的版本号,然后再次执行 godep save 命令即可。
godep 工具的主要功能就是控制Go语言程序编译时依赖包搜索路径的优先级。例如查找项目的某个依赖包,首先会在项目根目录下的 vender 文件夹中查找,如果没有找到就会去 GOAPTH/src 目录下查找。
go module
go module 是Go语言从 1.11 版本之后官方推出的版本管理工具,并且从 Go1.13 版本开始,go module 成为了Go语言默认的依赖管理工具。
GO111MODULE
在Go语言 1.12 版本之前,要启用 go module 工具首先要设置环境变量 GO111MODULE,不过在Go语言 1.13 及以后的版本则不再需要设置环境变量。通过 GO111MODULE 可以开启或关闭 go module 工具。
GO111MODULE=off 禁用 go module,编译时会从 GOPATH 和 vendor 文件夹中查找包。
GO111MODULE=on 启用 go module,编译时会忽略 GOPATH 和 vendor 文件夹,只根据 go.mod 下载依赖。
GO111MODULE=auto(默认值),当项目在 GOPATH/src 目录之外,并且项目根目录有 go.mod 文件时,开启 go module。
Windows 下开启 GO111MODULE 的命令为:
set GO111MODULE=on 或者 set GO111MODULE=auto
MacOS 或者 Linux 下开启 GO111MODULE 的命令为:
export GO111MODULE=on 或者 export GO111MODULE=auto
在开启 GO111MODULE 之后就可以使用 go module 工具了,也就是说在以后的开发中就没有必要在 GOPATH 中创建项目了,并且还能够很好的管理项目依赖的第三方包信息。
使用 go module 的go mod init 命令后会在当前目录下生成一个 go. mod 文件,并且在编译/运行当前目录下代码或者使用go get 命令的时候会在当前目录下生成一个 go.sun 文件。
go.mod 文件记录了项目所有的依赖信息,其结构大致如下:
module main.go
go 1.13
require (
github.com/astaxie/beego v1.12.0
github.com/shiena/ansicolor v0.0.0-20151119151921-a422bbe96644 // indirect
)
其中,module 为 go.mod 文件所属的包,require 为项目所依赖的包及版本号,indirect 表示间接引用。
go.sum 文件则是用来记录每个依赖包的版本及哈希值,如下所示。
github.com/Knetic/govaluate v3.0.0+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0=
github.com/OwnLocal/goes v1.0.0/go.mod h1:8rIFjBGTue3lCU0wplczcUgt9Gxgrkkrw7etMIcn8TM=
github.com/astaxie/beego v1.12.0 h1:MRhVoeeye5N+Flul5PoVfD9CslfdoH+xqC/xvSQ5u2Y=
github.com/astaxie/beego v1.12.0/go.mod h1:fysx+LZNZKnvh4GED/xND7jWtjCR6HzydR2Hh2Im57o=
常用的 go mod 命令如下表所示:
命令
作用
go mod download
下载依赖包到本地(默认为 GOPATH/pkg/mod 目录)
go mod edit
编辑 go.mod 文件
go mod graph
打印模块依赖图
go mod init
初始化当前文件夹,创建 go.mod 文件
go mod tidy
增加缺少的包,删除无用的包
go mod vendor
将依赖复制到 vendor 目录下
go mod verify
校验依赖
go mod why
解释为什么需要依赖
GOPROXY
proxy 顾名思义就是代理服务器的意思。大家都知道,国内的网络有防火墙的存在,这导致有些Go语言的第三方包我们无法直接通过go get 命令获取。GOPROXY 是Go语言官方提供的一种通过中间代理商来为用户提供包下载服务的方式。要使用 GOPROXY 只需要设置环境变量 GOPROXY 即可。
目前公开的代理服务器的地址有:
goproxy.io
goproxy.cn:(推荐)由国内的七牛云提供。
Windows 下设置 GOPROXY 的命令为:
go env -w GOPROXY=https://goproxy.cn,direct
MacOS 或 Linux 下设置 GOPROXY 的命令为:
export GOPROXY=https://goproxy.cn
Go语言在 1.13 版本之后 GOPROXY 默认值为 https://proxy.golang.org,在国内可能会存在下载慢或者无法访问的情况,所以十分建议大家将 GOPROXY 设置为国内的 goproxy.cn。
使用go get命令下载指定版本的依赖包
执行go get 命令,在下载依赖包的同时还可以指定依赖包的版本。
运行go get -u命令会将项目中的包升级到最新的次要版本或者修订版本;
运行go get -u=patch命令会将项目中的包升级到最新的修订版本;
运行go get [包名]@[版本号]命令会下载对应包的指定版本或者将对应包升级到指定的版本。
提示:go get [包名]@[版本号]命令中版本号可以是 x.y.z 的形式,例如 go get foo@v1.2.3,也可以是 git 上的分支或 tag,例如 go get foo@master,还可以是 git 提交时的哈希值,例如 go get foo@e3702bed2。
从翱翔蓝天到驰骋大地,宝马百年历史回顾!全网最全宝马车型梳理
前几期为大家梳理、介绍了奔驰和奥迪品牌的车系车型,今天我们就来说一说“BBA”中的另外一个“B”——BMW宝马。
宝马品牌虽然不及奔驰,但作为一家百年企业,其历史也同样久远而复杂,最早可以追溯到20世纪初。1910年,内燃机发明者尼古拉斯·奥托(Nikolaus Otto)之子古斯塔夫·奥托(Gustav Otto)创办了一家飞机培训学校,1913年更名为古斯塔夫·奥托飞机制造公司(Gustav Otto Flugmaschinenwerke),并开始制造飞机,公司定址在慕尼黑的Lerchenauer大街。
古斯塔夫·奥托和其所创办的飞机制造公司
经过几年的发展,奥托飞机制造公司成为了巴伐利亚皇家空军的主要供应商。此时正值一战爆发,本应该借助军方关系获得大量订单的奥托公司却因为生产质量问题而陷入了困境。1916年3月,奥托公司被财团并购,重组成为了巴伐利亚飞机制造公司(Bayerische Flugzeugwerke,BFW)。公司重组之后,改善了生产工艺,解决了质量问题。公司也随着一战迅速发展,成为了巴伐利亚最大的飞机制造商。
重组后的BFW公司和其生产的飞机
于此同时,卡尔·斐德利希·拉普(Karl Friedrich Rapp)在1913年设立了拉普引擎制造公司(RappMotorenwerke),工厂由慕尼黑近郊的一家脚踏车厂改造而来。1917年,创始人拉普退出了公司的经营,拉普引擎制造公司正式更名为巴伐利亚发动机制造有限公司(Bayerische Motorenwerke GmbH,BMW GmbH)。
卡尔·斐德利希·拉普和他创办的拉普引擎制造厂
随着新公司的成立,新的品牌商标也应运而生,新商标继承了拉普公司的黑色圆形设计,将Rapp Motor字样变更为BMW,同时加入了巴伐利亚州旗的蓝白格元素,至此后世为我们所熟知的BMW即宝马品牌正式诞生。而到了1929年,BMW(以下统称“宝马”)公司在发布的广告海报中,又赋予了商标全新的含义——旋转的飞机螺旋桨。
宝马商标的演变和1929年的宝马广告海报
随着一战的爆发,宝马公司急速扩张,然而公司却过度依赖巴伐利亚政府的资助,于是公司开始准备进行股份制改革。1918年8月,也就是一战结束前的两个月,宝马公司完成了股份制改革,从宝马有限责任公司(BMW GmbH)变更为宝马股份有限公司(BMW AG)。新公司股份共计120W马克,而奥地利金融家卡米洛.卡斯蒂廖尼(Camillo Castiglioni)拥有其中超过三分之一的股份。
股份制改革后的宝马股份有限公司(BMW AG)
1918年,一战正式结束,由于德国作为战败国签署了《凡尔赛条约》,条约中对航空业的限制,另BFW和BMW两家公司都陷入困境。1919年,卡米洛成功收购了宝马公司剩余的所有股份,成为了公司唯一股东。而宝马公司为了生存,放弃了核心的航空发动机业务,彻底沦为了一家铁路配件厂。而卡米洛作为金融家的野心不仅于此,便将公司股份全部出售给克诺尔公司(Knorr Bremse),将目光转向了BFW。
奥地利金融家卡米洛.卡斯蒂廖尼(Camillo Castiglioni)
战后的BFW公司开始用制造飞机剩余的木料和设备开始生产家具和摩托车。然而随着工厂设备的老旧和利润的下滑,1921年到1922年期间,卡米洛完成了对BFW公司全部股份的收购。完成了对BFW的收购后,卡米洛又盯上了宝马的航空发动机技术。随后,经过交涉,卡米洛以7500万马克从克诺尔公司手中收回了宝马航空发动机的全部技术图纸和专利,以及BMW的名称、商标和几名核心员工。
首悬挂宝马商标的宝马R32型摩托车
1922年5月,卡米洛将收购的宝马发动机部门与BFW公司进行合并,成立的全新的宝马公司。而新公司的选址正是当年古斯塔夫·奥托创建奥托公司时所在的慕尼黑Lerchenauer大街76号。新公司成立后,航空发动机的生产业务得以开展,同时继续摩托车生产业务,并用宝马发动机技术进行改进,悬挂宝马商标进行销售,大获成功。随着摩托车业务的成功,宝马于1928年收购了艾森纳赫汽车公司,正式进军汽车制造业。自此,当代宝马的历史正式展开。
1928年正式开展汽车生产业务的宝马公司
给大家简单介绍完了宝马品牌的历史,我们就来说说详细的车型。这里由于篇幅有限,我们只介绍宝马品牌近二十年的车型。
紧凑型车:
宝马1系
基于第三代宝马3系(E36)开发而来的E36 Compact
宝马1系于2004年正式发布,定位为紧凑型车。而说到1系的起源,还得从1993年开始说起。上世纪90年代初,宝马为了延续3系2002车型紧凑、灵活的设计理念,准备开发一款全新的车型。1993年,3系Compact正式发布,其中Compact意为紧凑。新车型基于第三代宝马3系开发而来,底盘代号仍为E36,与普通三代3系相同。
E46 Compact过于激进的前脸设计引来了较大争议
时间来到2000年,随着第四代宝马3系的发布,3系Compact车型也更新换代,底盘代号依旧采用与第四代3系相同的E46。而新款E46 Compact的头灯造型设计过于激进,并不被当时的消费者所接受,销量大受影响。
E82 Coupe的最高性能版本1M
面对E46 Compact的失利,以及竞争对手奔驰A级、奥迪A3的成功,宝马于2004年正式推出了宝马1系,用于取代3系Compact车型。起初发布的车型为五门掀背的两厢车型,底盘代号E87,基于E46的底盘开发而来,依旧采用前置后驱的布局,运动性能得以保障。得益于全新的定位和外形设计,1系一经推出就大受欢迎。随着E87车型的成功,宝马又陆续推出了E81(三门掀背两厢)、E82(双门Coupe)、E88(双门软顶敞篷)等1系衍生车型。其中基于E82 Coupe开发而来的最高性能版本1M车型,也深受年轻消费者的喜爱。
第二代宝马1系(F20)
2011年,第二代宝马1系发布,依旧采用前置后驱的布局。其中五门掀背版车型底盘代号F20,三门掀背版代号F21。而因为宝马全新的命名规则,基于F20打造的轿跑和敞篷车型更名为宝马2系,底盘代号F22/F23。
中国市场专供的三厢版1系(F52)
2017年,宝马推出了专供中国市场的三厢轿车1系,采用与宝马2系和宝马X1相同的UKL2前驱平台,底盘代号F52。2019年,第二代宝马1系推出,采用了全新的FAAR前驱平台,底盘代号F40。新车型定位更加偏向家用,舍弃了一定的运动性能。而新款F40并未在中国上市,国内市场依旧在销售F52三厢版车型。
宝马2系
第一代宝马2系Coupe(F22)
2014年1月,宝马发布了基于第二代宝马1系F20打造的双门轿跑(Coupe)车型F22。由于宝马命名规则的改变,新车型从1系独立,并被命名为宝马2系。而敞篷车型(底盘代号F23)则在同年10月份推出。
第一代宝马2系Active Tourer(F45)
2014年3月,为了应对奔驰B级,宝马推出了一款紧凑型的5座MPV车型,采用UKL2前驱平台打造。新车型被划归到宝马2系,命名为Active Tourer,底盘代号F45。随后在2015年,宝马又推出了7座车型Gran Tourer,底盘代号F46。
第二代宝马2系Gran Coupe(F44)
2019年10月,宝马发布了全新的第二代宝马2系Gran Coupe车型,Gran Coupe意为四门轿跑。新车采用了与第三代1系相同的FAAR前驱平台打造,底盘代号F44。车型定位与国内版本的三厢1系(F52)有所冲突。
宝马X1
第一代宝马X1(E84)
2006年,随着汽油价格的上涨和排放法规的日益严格,宝马发现SUV产品线中迫切需要一款更小、更高效的车型,于是紧凑型SUV车型的研发被提上日程。2009年,宝马X1发布,基于宝马第五代3(E90)系开发而来,底盘代号E84。新车型低配为后轮驱动的sDrive版本,高配车型搭载前后40/60动力分配的xDrive四驱系统,这也是首款搭载非四轮驱动的宝马X系列。
改款后的2020款宝马X1(F48)
2015年,第二代宝马X1推出,基于前驱UKL2平台开发而来,底盘代号F48。新款车型标配前轮驱动,四驱仅在高配车型上有搭载。在中国国内市场,宝马还推出了长轴车型和长轴混动版车型。2019年,第二代X1进行中期改款,变化包括新的可用 LED 大灯、保险杠、新车轮和更大的双肾型格栅。
宝马X2
宝马X2(F39)
宝马X2于2017年正式推出,底盘代号F39。X2的整体架构均来自第二代宝马X1(F48),依旧采用前驱UKL2平台,在外形上采用了跨界SUV的设计语言,与X1相比更加运动化、年轻化。
中型车:
宝马3系
宝马3系的前身——宝马1600-2
说到宝马品牌发展,与宝马3系的成功密不可分。宝马于二战后从军工制造业撤出,开始一心发展摩托车和汽车产业。与摩托车产业发展壮大不同,宝马的汽车业务并没有什么起色,更是险些倒闭被奔驰收购。重整旗鼓后,宝马打造了一向名为“New Class”的新车计划,并于1961年推出了1500车型。1500车型推出后获得了消费者认可,一炮走红,迅速打开了市场。而1500衍生的运动车型1600-2车系便是宝马3系的前身,从诞生之初,运动与操控就成为了宝马品牌的标志。
第一代(E21)至第六代(F30)历代宝马3系
全新第七代宝马3系(G20)
随着1600-2和其衍生的02车系的成功,宝马于1975年发布了全新的继任车型——第一代宝马3系,底盘代号E21。第一代宝马3系于1983年停产,随后3系经历了多次换代,底盘代号分别为E30(1982-1994)、E36(1990-2000)、E46(1997-2006)、E90(2004-2013)、F30(2011-2019)、G20(2018-至今),而在多次换代中,3系都保留了02车系的双肾进气格栅和霍夫迈斯特拐角等外观元素,设计语言得以传承。
宝马4系
第一代宝马4系(F32、F33、F36)
2013年,随着第六代宝马3系(F30)的换代,宝马推出了基于F30打造的双门轿跑、双门敞篷以及5门掀背轿跑车型(Gran Coupe),底盘代号分别为F32、F33、F36。而由于宝马全新的命名规则,三款衍生车型与3系独立,第一代宝马4系由此诞生。
全新4系双门敞篷车型(G23)
宝马于1936年推出的328跑车
2020年,随着新一代宝马3系(G20)的推出,宝马4系也迎来换代。新4系依旧提供了双门轿跑、双门敞篷以及5门掀背轿跑三种车型,底盘代号分别为G22、G23、G26。新4系在设计上与3系有很大不同,前脸采用了大型双肾型格栅,其灵感来自1936年的BMW 328。
宝马X3
第一代宝马X3(E83)
2003年,随着X5的成功,宝马顺势推出了基于第四代3系(E46)打造的中型SUV——宝马X3。这一代宝马X3与E46共享后悬架,并且全系搭载前后动力比40:60的xDrive四驱系统,底盘代号E83。
改款后的第二代宝马X3(F25)
2010年,第二代X3推出,底盘代号F25。相较上一代车型,新款X3的尺寸加大,几乎与第一代宝马X5的尺寸相同。这一代的X3还在部分市场推出了后轮驱动的sDrive版本。2014年,第二代X3改款,前脸进行了较大改动,采用了全新的家族化设计风格。
第三代宝马X3(G01)
2017年,宝马X3进行换代,这一代X3不再基于3系打造,而开始与5系(G30)共享底盘平台,底盘代号G01。
宝马X4
第一代宝马X4(F26)
2014年,宝马发布了一款基于X6相同设计理念的中型跨界SUV,新车与宝马X3共享技术平台,采用了溜背的造型设计,更像是四门跑车与SUV的结合。根据宝马的命名规则,新车型被命名为宝马X4,底盘代号F26。
第二代宝马X4(G02)
2018年,宝马X4也随着X3的平台更新而换代,底盘代号也变更为G02,外形方面依旧采用了溜背的设计。
中大型车:
宝马5系
第一代宝马5系520i(E21)
二十世纪七十年代,宝马“New Class”车型已经朝着轻量化、运动化的设计方向走去,宝马急需一款车型来弥补中大型车的市场空白,于是5系应运而生。1972年,第一代宝马5系正式上市,定位为中大型的豪华轿车,底盘代号E12。
第二代宝马5系高性能版本M5(E28)
时间来到1981年,第二代宝马5系换代上市,底盘代号E28,相较第一代车型,二代宝马5系在外观设计上并没有太大改动。值得一提的是,这第一代5系首次推出了最高性能版本M5,搭载一台基于宝马赛车技术开发而来的直列六缸发动机。
第一代(E21)至第七代(G30)历代宝马5系
2021款第七代宝马5系530i(G30)
随后,宝马5系不断推陈出新,底盘代号分别为E34(1988-1996)、E39(1995-2003)、E60/E61(2003-2010)、F10/F11/F07/F18(2010-2017)、G30/G31/G38(2016-至今)。需要说明的是,第六代5系的五门掀背Gran Turismo车型(F07),又称5系GT,在2016年换代之后并入了宝马6系,更名为6系GT。而同属6代5系的四门长轴车型(F18)仅在中国大陆和中东地区进行销售。
宝马6系
第一代宝马6系高性能版本M6(E24)
宝马6系发布于1976年,于取代宝马E9双门轿跑车。前期车型基于第一代宝马5系(E21)开发而来,定位为双门轿跑车,底盘代号E24。1982年改款后更换为第二代5系(E28)平台,同时推出了高性能版本M6。
第二代宝马6系双门轿跑车(E63)
1989年,第一代6系正式停产,之后被更大车身的宝马8系(E31)所取代。直至2003年,宝马才重新推出了第二代6系。新款车型基于第五代宝马5系(E60)开发而来,拥有双门轿跑车和双门敞篷跑车两种型号,底盘代号分别为E63、E64。
第三代宝马6系(从左到右分别为F06、F13、F12)
2011年,随着第六代宝马5系(F10)的换代,第三代6系也随之推出。第三代车型在保留了上一代双门轿跑车和双门敞篷跑车车型的基础上,还推出了四门轿跑车(Gran Coupe)车型,底盘代号分别为F13、F12、F06。
第四代宝马6系GT(G32)
2017年,第四代宝马6系发布,基于第七代宝马5系(G30)开发而来。而与之前的6系不同,这一代的6系只推出了一款5门掀背Gran Turismo车型,又称6系GT,用于取代上一代的5系GT(F07),底盘代号G32。
宝马X5
1994年宝马正式收购罗孚集团
上世纪90年代初,SUV的风潮在美国兴起,而当时的宝马产品线中则缺少这样一款车型。于是宝马在1994年收购了罗孚集团,包括罗孚旗下的路虎、mini、名爵等品牌,想要借住罗孚的技术储备帮助自己打造一款全新的车型。
第一代宝马X5(E53)
而宝马并不想保持传统的SUV车型定义,而是开发了全新的Sport Activity Vehicle (SAV)车型理念,更加追求运动化与公路驾驶性能。1999年,基于第三代路虎揽胜(L322)开发而来的第一代宝马X5正式发布,底盘代号E53。第一代X5采用了承载式的车身设计,更偏向公路驾驶性能,操控方面保持了宝马一罐的高水准表现。2003年,第一代车型改款,首次搭载了宝马xDrive四驱系统。
第一至(E53)第三代(F85)宝马X5
第四代宝马X5(G05)
第一代宝马X5推出后,在销量上获得了巨大成功,直到2006年才进行换代,第二代车型底盘代号E70。随后在2013和2018年,X5又进行了两次换代,底盘代号分别为F85、G05。
宝马X6
第一代宝马X6(E71)
一代宝马X6于2008年上市,原型来自宝马的X-Coupe概念车,基于第二代宝马X5(E70)开发而来,底盘代号E71。X6采用了跑车化的溜背造型设计,宝马将其定义为Sport Activity Coupe(SAC)即运动全能型轿跑车。
第二代宝马X6(F16)
第三代宝马X6(G06)
之后随着宝马X5的换代而更新,直至最新的第三代车型,底盘代号分别为F16、G06。
大型车:
宝马7系
第一代宝马7系(E23)
上世纪七十年代,随着宝马3系和5系的推出,宝马汽车产品线已经重组完成。1977年,为了取代New Six轿车,宝马推出了第一代宝马7系,底盘代号E23。第一代7系首次搭载了多种电子功能,如ABS、行车电脑、保养提示等。
2020款第六代宝马7系(G11)
1986年,第二代宝马7系推出,底盘代号E32。第二代车型进一步加强了豪华与舒适性,搭载了电控主动减震、氙气大灯、牵引力控制、双温区空调以及双层玻璃等现代化配置。第二代宝马还开创性的推出了V12发动机的版本,奠定了未来7系的调性。随后宝马7系也经历多次换代,底盘代号分别为E38(1994-2001)、E65(2001-2008)、F01(2008-2015)、G11(2015-至今)。
宝马8系
第一代宝马8系(E21)
第一代8系的研发从1984年开始,宝马为了对抗奔驰S级Coupe(后更名为奔驰CL级),需要一款尺寸更大的双门跑车,于是便开始着手开发了8系。而在上文介绍宝马6系时已经提到,第一代8系于1989年正式面世,底盘代号E31,取代了第一代6系。
第二代宝马8系双门轿跑版(G15)
第一代宝马8系于1999年停产,此后一直没有后续车型接替,直到2018年,宝马决定重启这一传奇车系。全新第二代8系基于CLAR后驱平台打造,共推出了双门敞篷跑车、双门轿跑车以及四门掀背轿跑车(Gran Coupe)三种车型,底盘代号分别为G14、G15、G16。
宝马X7
2021款宝马X7(G07)
宝马X7于2018年上市,底盘代号G07,定位为大型全尺寸SUV,用于对抗奔驰的GL级(后更名为奔驰GLS)以及路虎揽胜等车型。X7采用与第四代X5(G05)相同的CLAR平台,但是没有提供后驱车型,xDrive四驱系统为标配。
特殊车型
跑车:
宝马Z1
宝马Z1
1985年,宝马成立了名为宝马技术有限公司(BMW Technik GmbH) 的子公司,内部称做“ZT”部门,主要专注于研发汽车设计和技术储备。同年,ZT部门的第一款设计诞生,便是全新的Z1概念车,其中字母“Z”代表了德语“Zukunft”,意为未来。
Z1特殊的升降式车门
Z1特殊的下摆臂,使后悬挂结构呈现Z型
1987年初,宝马宣布Z1投产,同年9月,量产车版本发布。Z1量产车型保留了大量概念车设计,如升降开启的车门和名为“Z连杆”(Z-axle)的后悬挂结构。这些配置使得整车如同车名“Z1”一般充满了未来与科技感,但也导致了车辆生产工艺过于复杂,产量过低。最终,Z系列的第一代车型Z1仅仅生产了8000辆,便在1991年停产。
宝马Z3
宝马Z3敞篷版(E36)
1995年,宝马推出了Z1的继任车型宝马Z3。Z3基于第三代宝马3系(E36)开发而来,并且采用了第二代3系(E30)的非独立后悬挂,可见宝马吸取了Z1的教训,采用了现有平台开发,更接近普通车型的设计。
宝马Z3 Coupe(E36/7)
起初Z3同Z1一样,只提供双门敞篷车型,底盘代号沿用普通3系的E36。敞篷版车型作为邦德的座驾,出现在了1995年上映的《007之黄金眼》电影中。1996年,宝马推出了限量车型“Z3詹姆斯·邦德版”。随后又于1998年推出了双门轿跑车(Coupe)版本,底盘代号E36/7。
宝马Z8
宝马507车型
Z8是宝马于2000年发布的一台双门敞篷跑车,它的诞生与第一代Z1类似,源自宝马为了纪念507车型而推出的Z07概念车。
宝马Z8(E52)
量产版的Z8底盘代号E52,采用了一台来自E39 M5的4.9升V8发动机,马力高达400匹。同时,量产版本也接替Z3车型,作为新一代的邦德座驾出现在了1999年上映的007系列电影《黑日危机》中。
宝马Z4
第一代宝马Z4敞篷版(E85)
2002年,宝马推出了全新的Z系列跑车Z4,以取代老旧的Z3。Z系列也是从这一代开始,不再变更数字型号,而是沿用Z4的名称进行换代。这也让Z4被大众所熟知,成为了整个Z系列中知名度最高的车型。第一代Z4发布之初依旧只提供双门敞篷版本,底盘代号E85。2006年,双门硬顶的Coupe车型推出,底盘代号E86。
第二代宝马Z4(E89)
第二代Z4于2009年正式上市,底盘代号E89。这一代的Z4不再提供敞篷版与Coupe版两种版本,而是开发了全新的硬顶式敞篷。在动力方面,宝马为第二代Z4换装了全新的涡轮增压发动机和7速DCT以及8速ZF自动变速箱。
2021款第三代宝马Z4(G29)
现款的第三代宝马Z4于2018年正式发布,底盘代号G29,这一代Z4正式回归了软顶敞篷的设计。值得一提的是,这一代Z4由宝马和丰田合作研发,并衍生了姊妹车型——第二代丰田Supra。
新能源车:
宝马i3
宝马i3(i01)
2011年,宝马开展了一项全新的“Project i”计划,用于开发环保型的电动汽车。2013年,i计划的首款量产车型上市,被命名为宝马i3,底盘代号i01,是一辆纯电驱动的微型电动车。车辆由Richard Kim设计,采用了碳纤维聚合物打造的驾驶舱,用于为车辆提高强度和减轻车量。而作为宝马i系列的首款车型,i3受到了不少环保人士的青睐,累计2021年中期,其全球销量已经超过200万台。
宝马i8
宝马i8双门跑车版(i12)
在2013年法兰克福车展上,宝马推出了一辆采用插电混动动力的跑车——宝马i8。i8采用了一台中置1.5升三缸涡轮增压发动机搭配前置98Kw电动机的动力组合,可在4.4秒内从0加速到100公里/小时,而油耗仅需2.1升每百公里。2014年4月,量产的双门跑车版本上市,底盘代号i12。2016年,宝马又推出了双门敞篷版的车型,底盘代号i15。
其他新能源车型
宝马插电混动系列
2016 年 2 月,BMW 宣布引入“iPerformance”车型名称,自 2016 年 7 月起,所有 BMW插电式混合动力汽车都将采用该名称。截至2021年6月,已经发布了7款采用BMW i技术的电动车型,分别是X1 xDrive25e、X3 xDrive30e、X5 xDrive45e、225xe Active Tourer、320e/330e iPerformance、520e/530e/545e iPerformance和745e/745Le iPerformance。此外,Mini Cooper SE Countryman ALL4 插电式混合动力车也使用了BMW i技术。
特殊部门:
宝马M
宝马M的前身——宝马赛车有限公司(BMW Motorsport GmbH)
宝马M全称宝马M有限公司(BMW M GmbH) ,是宝马集团旗下生产高性能汽车的子公司,其中“M”代表了赛车运动,其前身为宝马赛车有限公司(BMW Motorsport GmbH) 。20世纪70年代初期,BMW传奇总裁埃伯哈德·冯·金海姆(Eberhard von Kuenheim)提议创建BMW赛车运动公司,于是宝马正式在1972年5月1日正式成立了宝马赛车有限公司。
宝马3.0 CSL赛车(E9)
1972年,宝马赛车公司推出了全新的轿跑车3.0 CSL,底盘代号E9。作为BMW M的开山之作,3.0 CSL奠定了宝马以赛车开发思维开发M量产车的“性能哲学”。其车重仅为1092kg,采用一台专为赛车打造的双气门发动机,压缩比高达11:1的3.3升直列6缸发动机,最大功率达到360马力。
宝马传奇车型M1
各代宝马M车型
而基于3.0 CSL所打造的赛车也很快统治了国际房车赛的赛场,蝉联冠军头衔长达十年之久。随着3.0 CSL的成功,宝马为了参加Group 4组别的比赛,推出了第一款以“M”命名的传奇车型宝马M1。M1外形基于宝马Turbo概念车打造,采用代号为M88的3.5升直列六缸发动机,赛用版本的最大马力高达470匹。随后宝马又基于第一代宝马6系(E24)以及第二代宝马5系(E28)打造了高端性能版本,并以“M”字母命名为M5、M6。自此,M车系的传奇历史也正式拉开帷幕。
迷你(Mini)
各代迷你(Mini)车型
迷你(Mini)是源自英国的汽车品牌,最早由英国汽车公司(The British Motor Corporation Limited,BMC) 推出。英国汽车公司于1966年变更为英国汽车控股( British Motor Holdings Limited ,BMH) ,并在1968年与利兰汽车(Leyland Motors Ltd) 合并成为英国利兰(British Leyland Motor Corporation Ltd,BLMC) 。二十世纪八十年代,英国利兰公司破产,旗下的罗孚集团包括罗孚、迷你、路虎等品牌在1994年被宝马并购。2000年,罗孚集团被宝马出售,迷你品牌正式划归宝马公司旗下。
劳斯莱斯(Rolls-Royce)
查尔斯·罗尔斯和亨利·罗伊斯
1904年,查尔斯·罗尔斯(Charles Stewart Rolls)和亨利·罗伊斯(Frederick Henry Royce)在英国曼彻斯特共同创立了劳斯莱斯有限公司(Rolls-Royce Limited) ,用于开展高端汽车制造以及航空发动机研发业务。
劳斯莱斯银魂(Silver Ghost)
劳斯莱斯幻影3(Phantom III)
1907年,劳斯莱斯正式发布银魂(Silver Ghost)车型,以其出色的舒适性和可靠性被誉为“世界上最好的汽车”。随后的几十年中,劳斯莱斯有陆续推出了20H.P.(Twenty)、幻影(Phantom)等经典车型,并在1931年收购了破产的宾利汽车有限公司(Bentley Motors Limited) 。二战期间,劳斯劳斯还为美国生产梅林航空发动机。
劳斯莱斯控股公司研发的RB211型航空发动机
二战后,劳斯莱斯继续多元化发展,同时开展汽车制造、柴油发动机及机车制造、航空发动机研发以及飞机制造等业务。1971年,由于财务问题,劳斯莱斯有限公司破产清算,并拆分为两家公司。其中汽车制造、柴油发动机等业务被拆分为劳斯莱斯汽车公司(Rolls-Royce Motors) ,独立运营。而飞机制造以及航空发动机研发等业务则被政府接管,成立劳斯莱斯控股公司(Rolls-Royce plc) ,彻底划归国有开展国防业务。
2021款劳斯莱斯幻影
1980年,劳斯莱斯汽车公司被威格士公司(Vickers plc) 收购。1998年,威格士决定出售劳斯莱斯汽车公司,同时出价收购的有大众集团以及宝马集团。经过协商,宝马与大众达成协议,劳斯莱斯汽车公司主体以及宾利品牌划归大众所有,而宝马则取得劳斯莱斯品牌以及商标所有权。同年,宝马成立全资子公司劳斯莱斯汽车有限公司(Rolls-Royce Motor Cars Limited) ,劳斯莱斯正式进入宝马时代。
宝马摩托车部门
宝马R37摩托车
1923年,宝马品牌推出了第一款摩托车——宝马R32,采用外号“拳击手”的双缸水平对置发动机打造,拥有较低的重心和良好的操控。随后的二十年中,宝马不断推陈出新,推出了多款车型,包括R37、R39、R42、 R47、R52、R57、R61、R62以及R63。其中R37车型在1924年至1929年中,赢得了德国境内的所有500cc级别比赛的冠军。
宝马R 80 G/S
宝马R 1250 GS Adventure(俗称“水鸟”)
之后随着二战的结束,宝马的摩托车业务进入了长期的停滞阶段。1969年,宝马才再次推出了R50s以及R69s两款车型。1980年,宝马发布R 80 G/S车型,依旧搭载了经典的“拳击手”发动机,并且开创性的采用了后轮单摇臂加轴传动的设计,使得R80 G/S成为当时越野摩托车的巅峰之作,并在后续发展演变成为了宝马著名的“水鸟”系列车型。
宝马R nineT
宝马S 1000 RR
现如今,宝马摩托车拥有完整的产品线,比如运动型跑车、运动型街车、复古型车、越野多功能车、巡航车以及踏板车等多种车型。其中较为著名的型号有S 1000 RR、S 1000 R、R nineT、R 1250 GS、R 1250 RT、C 650 GT等。
至此,宝马品牌所有的车系车型都为大家介绍完毕,喜欢的朋友们可以点个赞哦!有遗漏或者错误的地方,也欢迎大家在评论区补充、纠正。有对其他品牌历史和车系车型感兴趣的朋友也可以在评论区留言,之后为大家安排!
相关问答
三菱QX81三菱plccpu怎么操作
[回答]输入电压及电流:DC24V4mA。应答时间:1/5/10/20/70ms。32点/1个公共端。共阴极。37针D-sub连接器。不断超越,勇攀Q系列巅峰三菱plccpu。强化安全功...
在线的老铁,谁明白!正规的SCADA系统公司有哪些,SCADA系统...
[回答]采用实时瞬态模拟软件可以实时反映系统运行工况,进行调度优化,并根据分析和预测结果对系统采取相应的调度控制措施。11SCADA系统中每一个RTU的最基...
欧姆龙CQM1-AD041什么问题
[回答]分辨率:1/4000。转换速度:2.5ms/点。CQM1-AD041模拟量输入单元可从传感器或测量装置读取4回路模拟量信号值欧姆龙plc扩扩展模块插槽c200hw-bi081-v...
25型细石混凝土输送泵效果好不好
[回答]25型细石混凝土泵是采用先进的s管阀换向,能满足细石混凝土的输送,s管阀装有浮动耐磨环,自动补偿磨损,密封性好,眼镜板和切割环采用高硬耐磨合金材料...
电力系统安全评价五防有规定要上模拟屏吗?,电力模拟屏如何...
[回答]电力系统由于高压、高电流因此安全管理工作就显得尤为重要了,电力工作者在应对电压和高电流的电气设备时,一旦操作不慎就会造成非常严重的人身安全...
麻烦诸位大佬!帮忙答一下!山东合金光谱仪参数,合金光谱仪...
[回答]和途度检测他们合作之后,感觉真心不错,有保障还省心省钱你设备房间里没装空调吗!光谱仪一般要在恒温恒湿的环境内工作,这样才会准确。太清楚否提...