精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

對比著 Npm 來學(xué) Rust 的 Cargo,一遍就會了

開發(fā) 前端
我們寫 Node.js 代碼離不開的是什么,是 Npm。這就像寫 Rust 代碼離不開 Cargo 一樣。大家可能不了解 Rust 和 Cargo。沒關(guān)系,接下來我們就對照著 npm 來學(xué)習(xí)下 Cargo,幫大家入門下 Rust。

[[427071]]

我們寫 Node.js 代碼離不開的是什么,是 Npm。這就像寫 Rust 代碼離不開 Cargo 一樣。

大家可能不了解 Rust 和 Cargo。沒關(guān)系,接下來我們就對照著 npm 來學(xué)習(xí)下 Cargo,幫大家入門下 Rust。

我們先從熟悉的 Node.js 開始:

寫 Node.js 代碼的流程

我們會先創(chuàng)建一個目錄,然后在目錄下執(zhí)行 npm init

  1. mkdir node-pro 
  2. cd node-pro 
  3. npm init 

控制臺會交互式的詢問一些信息,然后生成 package.json

也可以加上 -y 用默認(rèn)值快速創(chuàng)建。

之后我們會用 npm install xxx 來安裝依賴,比如安裝 babel

  1. npm install babel 

這時候 package.json 的 dependencies 下就有了 babel 的依賴信息

同時會生成一個 package-lock.json 記錄依賴版本(用 yarn 安裝的話就是 yarn.lock 文件)

依賴會安裝在 node_modules 下。

之后呢,我們會創(chuàng)建 src,寫一些代碼。

然后在 package.json 的 scripts 中指定編譯、測試等腳本:

然后代碼寫完以后,通過 npm run build 來跑構(gòu)建、通過 npm run test 來跑測試:

  1. npm run build 
  2. npm run test 

生成的產(chǎn)物可以通過 npm publish 發(fā)布到 npm 倉庫。

過程中可能還用到一些其他的命令:比如要更新依賴會用 npm update,比如要搜索依賴用 npm search 等。

這就是一個 Node.js 項目的開發(fā)流程,拋開具體寫的 Node.js 代碼不談,整個工具鏈?zhǔn)怯?npm 串聯(lián)的。

你可能會說這個很基礎(chǔ)啊,不是入門的內(nèi)容么?

是的,npm 是 Node.js 入門要學(xué)的,那么同樣,入門 Rust 也要先學(xué) Cargo。

而且,npm 和 cargo 的設(shè)計特別的像,幾乎看一遍大家就會了。

那還等什么,趕緊來學(xué)一下 Cargo 吧。

寫 Rust 代碼的流程

和 Node.js 項目一樣,可以先創(chuàng)建目錄,然后使用 cargo init 初始化代碼(這里也可以直接使用 cargo new,效果和下面 mkdir + cargo init 一樣)

  1. mkdir rust-pro 
  2. cd rust-pro 
  3. cargo init 

然后就會創(chuàng)建這樣的目錄結(jié)構(gòu):

cargo.toml 相當(dāng)于 package.json,也是聲明包信息和 dependencies 的。

而且連 src 都有了, git 也初始化了,這比 npm init 更貼心啊(難怪大家都喜歡 rust,這工具鏈做的多細(xì))。

cargo.toml 的內(nèi)容是這樣的:

[package] 下聲明的是包的信息,[dependencies] 下聲明的是依賴信息。

我們用 cargo search 搜索下某個包(相當(dāng)于 npm search):

可以搜到 html2md 的版本是 0.2.13,我們把它填到依賴?yán)铮?/p>

之后我們寫點代碼,把 html 轉(zhuǎn)成 markdown:

然后,編譯和執(zhí)行:

  1. cargo build 
  2. cargo run 

就可以看到執(zhí)行結(jié)果:

我們用 npm run build 執(zhí)行的也是構(gòu)建命令,只不過是自己配置的三方編譯工具,而 cargo 是用內(nèi)置的編譯工具。

這樣我們就跑起來了第一個 rust 程序。是不是流程和 npm 有那么一丟丟的像。

而且,像 yarn.lock 或者 package-lock.json 一樣,cargo 也有 Cargo.lock 來記錄了依賴的具體信息:

后續(xù)也可以執(zhí)行 cargo test 來跑測試代碼,可以執(zhí)行 cargo publish 來上傳到中央倉庫。和 npm 的整體流程比較類似。

Npm 和 Cargo 相似的原因

為什么 cargo 和 npm 這么類似呢?

這說明這已經(jīng)是最佳實踐了!也就是把 init 的腳手架、編譯構(gòu)建、運行、測試、發(fā)布等功能集成到一個命令中工具中,內(nèi)置到語言的工具鏈。

對照下古老的 C++ 就能看出區(qū)別:

C++ 使用 clang 或者 gcc 編譯,其他的功能并沒有,需要結(jié)合 cmake 來聲明一些其他的命令。最關(guān)鍵的是沒有中央的倉庫和依賴管理工具,每個依賴都要手動下載,然后放到項目目錄下,特別麻煩。

既然這是必備功能,為什么不內(nèi)置到語言的工具鏈呢?

所以 npm 和 cargo 都把 init、install、update、build、test、publish 等命令內(nèi)置了,而且也都支持了中央倉庫和依賴管理。

這是現(xiàn)代的語言工具鏈的最佳實踐了,用別的現(xiàn)代語言的工具也會感覺差不多。

總結(jié)

Cargo 之于 Rust 就像 Npm 之于 Node.js,兩者都是初始化、依賴管理、構(gòu)建、發(fā)布、等的集成的命令行工具鏈。

Node.js 的項目的開發(fā)流程是這樣的:

  • npm init 初始化項目
  • npm search 搜索依賴
  • npm install 安裝依賴
  • npm update 升級依賴
  • npm run build 執(zhí)行構(gòu)建
  • npm run test 執(zhí)行測試
  • npm publish 發(fā)布到中央倉庫

Rust 項目的開發(fā)流程也類似:

  • cargo init 初始化項目 (或者 cargo new,這個相當(dāng)于 mkdir + cargo init)
  • cargo search 搜索依賴
  • cargo install 安裝依賴
  • cargo update 升級依賴
  • 手動把依賴填到 Cargo.toml 中
  • cargo build 編譯構(gòu)建代碼
  • cargo run 運行代碼
  • cargo test 跑單元測試
  • cargo publish 發(fā)布到中央倉庫

雖然具體的語法不同,項目結(jié)構(gòu)也有差別,但是整個工具鏈的流程是類似的。這是現(xiàn)代語言工具鏈的最佳實踐了。

相比之下,C++ 沒有依賴管理,沒有集成的工具鏈,開發(fā)體驗遠(yuǎn)遠(yuǎn)比不上有 Cargo 的 rust 和有 npm 的 Node.js。

其實我們學(xué)習(xí) rust 或其他語言,都可以對比我們熟悉的 JS 來學(xué),因為他們只是使用計算機(jī)的不同的抽象,面對的問題差不多,只不過解法不同,對比著學(xué)習(xí),效率會更高。

 

對比著 Npm 來學(xué) Cargo,是不是看一遍就會了~

 

責(zé)任編輯:武曉燕 來源: 神光的編程秘籍
相關(guān)推薦

2024-05-16 11:45:19

Rust項目代碼

2017-12-26 14:17:24

潤乾報表

2021-08-12 10:36:18

order byMySQL數(shù)據(jù)庫

2023-01-10 19:47:47

Redis原理多線程

2024-05-20 08:28:10

2022-01-17 20:59:37

開發(fā)group by思路

2021-06-15 07:15:15

Oracle底層explain

2019-09-19 08:04:40

網(wǎng)絡(luò)七層模型TCPUDP

2025-02-13 09:06:27

2021-12-01 07:26:13

IO模型異步

2024-03-26 07:59:32

IO模型多路復(fù)用

2023-09-12 07:31:45

HashMap線程

2015-10-10 11:10:24

重敲代碼拷貝粘貼

2024-03-12 08:20:57

零拷貝存儲開發(fā)

2021-10-07 20:12:03

MVCC事務(wù)原理

2020-03-09 11:43:35

RustCargo編程語言

2025-01-14 00:00:00

Blocking隊列元素

2021-03-11 07:14:01

Epoll原理線程

2020-02-09 17:30:54

反轉(zhuǎn)鏈表程序員節(jié)點

2022-02-22 09:16:41

AndroidWindows狀態(tài)欄
點贊
收藏

51CTO技術(shù)棧公眾號

69精品国产久热在线观看| 国产1区在线| 日韩中文字幕亚洲一区二区va在线| 亚洲女同精品视频| 亚州精品一二三区| 影音先锋男人资源在线| 91丝袜国产在线播放| 国产精品免费视频久久久| 午夜精品福利在线视频| 狼人精品一区二区三区在线| 天天综合网 天天综合色| 欧美日韩中文国产一区发布| 国产又粗又长又黄| 在线亚洲观看| 久久亚洲欧美日韩精品专区| 一出一进一爽一粗一大视频| 开心久久婷婷综合中文字幕| 亚洲国产精品一区二区www| 日韩精品极品视频在线观看免费| www.黄色片| 日韩精品午夜视频| 欧美激情极品视频| 呻吟揉丰满对白91乃国产区| 开心激情综合| 欧美一区二区三区电影| 99久久久无码国产精品6| 中文在线免费| 欧美国产精品v| 极品日韩久久| 国产美女精品视频国产| 日韩高清在线电影| 欧美精品久久久久久久久久| 天天色天天综合| 美女亚洲一区| 欧美精品一区二区三区四区| 中文字幕色网站| 日本高清不卡一区二区三区视频| 亚洲国产成人tv| 亚洲黄色网址在线观看| 国产高清一级毛片在线不卡| av电影在线观看不卡| 91精品视频在线看| 中文字幕一区二区久久人妻| 午夜亚洲性色福利视频| 欧美激情视频一区二区| 亚洲色偷偷综合亚洲av伊人| 成人综合久久| 亚洲色图第三页| 欧美多人猛交狂配| 亚洲欧洲色图| 国产丝袜一区二区三区| 黄色在线免费播放| 亚洲视频国产精品| 欧美一区二区三区在线观看| 岛国av免费在线| 日韩国产一二三区| 欧美久久一区二区| 国产一伦一伦一伦| 国产精品原创视频| 欧美日韩一区二区三区视频| 超碰在线97免费| 97精品国产综合久久久动漫日韩| 色狠狠综合天天综合综合| 免费观看精品视频| 外国成人直播| 在线观看av不卡| wwwwwxxxx日本| 久久免费精品| 亚洲第一av网| 在线 丝袜 欧美 日韩 制服| 国产精品一区二区99| 国产亚洲精品久久| 萌白酱视频在线| 一个色综合网| 亚州av一区二区| 特级西西444www大精品视频免费看| 午夜一级久久| 国产欧美中文字幕| 性欧美8khd高清极品| 成人深夜在线观看| 欧美在线视频一区二区三区| av在线电影网| 亚洲精品视频在线| 久激情内射婷内射蜜桃| 欧美极度另类| 欧美精品久久天天躁| 亚洲性图第一页| 亚洲人挤奶视频| 日韩中文字幕在线观看| 久久久久久久久久综合| 久久国产日本精品| 成人福利网站在线观看11| 亚洲国产无线乱码在线观看| 另类成人小视频在线| 成人xxxxx色| 四虎精品在永久在线观看 | 国产女主播在线播放| 久久精品色综合| 一区二区三区视频免费| 老司机精品免费视频| 亚洲老妇激情| 国产做受高潮69| 在线观看 亚洲| 久久精品av麻豆的观看方式| 国产精品区二区三区日本| 无码精品在线观看| 中文字幕精品一区二区精品绿巨人| 青青草原国产免费| 成人一级福利| 欧美三级中文字幕| 丝袜熟女一区二区三区| 欧洲美女日日| 欧美激情亚洲激情| 99热国产在线观看| 国产剧情在线观看一区二区| 就去色蜜桃综合| 黄网址在线观看| 欧美性xxxxx极品| 亚洲理论中文字幕| 亚洲人亚洲人色久| 色噜噜久久综合伊人一本| 天天操天天摸天天干| 久久超级碰视频| 含羞草久久爱69一区| 在线免费av电影| 亚洲成av人影院在线观看网| 国产三级三级三级看三级| 538任你躁精品视频网免费| 国产亚洲精品美女| 国产午夜久久久| 麻豆视频观看网址久久| 久久精品成人一区二区三区蜜臀| 欧美jizz18性欧美| 色综合久久中文综合久久牛| 在线播放黄色av| 久久神马影院| 日韩av免费在线| 亚洲av无码乱码国产麻豆| 国产免费久久精品| 免费无遮挡无码永久视频| 精品一区二区三区中文字幕| 亚洲日韩欧美视频| 久久精品美女视频| 国产91丝袜在线观看| 国产精品夜夜夜爽张柏芝| 欧美成人精品一区二区男人小说| 精品欧美久久久| 免费看一级大片| 捆绑调教美女网站视频一区| 久久精品国产理论片免费| av中文在线资源库| 日韩一区二区视频在线观看| 女同久久另类69精品国产| 日韩国产在线观看一区| 九色视频成人porny| 成年网站在线视频网站| 欧美成人激情免费网| 国产三级国产精品国产国在线观看| 麻豆精品在线播放| 婷婷亚洲婷婷综合色香五月| 裤袜国产欧美精品一区| 日韩精品视频免费专区在线播放| 国产一级片久久| 粉嫩aⅴ一区二区三区四区| 青青在线免费视频| 91成人精品在线| 欧美激情视频播放| 亚洲国产视频一区二区三区| 亚洲一区二区欧美激情| 亚洲少妇中文字幕| 亚洲日本成人| www.久久艹| 乡村艳史在线观看| 亚洲免费视频在线观看| 婷婷激情五月网| 国产亚洲一区字幕| 国产九九在线视频| 99热精品久久| 成人有码视频在线播放| av毛片在线播放| 精品国产一区二区三区av性色| 久久久久久国产精品免费播放| 国产69精品久久777的优势| www.成年人视频| 国产成人高清精品免费5388| 欧美最猛性xxxxx免费| 91啦中文在线| 91精品国产入口在线| 强行糟蹋人妻hd中文| 成人毛片在线观看| 丰满人妻中伦妇伦精品app| 妖精视频一区二区三区| 国产在线拍偷自揄拍精品| 超鹏97在线| 亚洲国产精品专区久久| 精品人妻一区二区三区潮喷在线| 国产清纯美女被跳蛋高潮一区二区久久w| 中文字幕第80页| 羞羞答答成人影院www| 高清视频一区二区三区| 日本免费久久| 久久天天躁狠狠躁夜夜躁| 亚洲第一天堂影院| 色哟哟亚洲精品| 免费在线一级片| 久久精品人人做人人爽97| 高潮一区二区三区| 黄色精品免费| 日本精品一区二区三区高清 久久 日本精品一区二区三区不卡无字幕 | 91精品国产综合久久久久久久| 免费毛片在线播放免费 | 亚洲日本久久久| 噜噜噜躁狠狠躁狠狠精品视频| 欧美视频1区| 一区二区三区在线免费看| 日韩免费在线播放| 国产黄色小视频在线| 亚洲美女视频网| 精品人妻一区二区三区麻豆91 | 免费的一级黄色片| 好吊妞视频这里有精品| 成人激情av在线| 性国裸体高清亚洲| 欧美另类xxx| 成人高潮成人免费观看| 337p日本欧洲亚洲大胆精品| 涩涩视频在线观看| 色94色欧美sute亚洲线路一ni| 特级片在线观看| 国产精品丝袜一区| 玖草视频在线观看| 国产精品资源网| 天天操天天爱天天爽| 狂野欧美一区| 男女视频网站在线观看| 欧美伊人影院| 亚洲精品日韩在线观看| 色婷婷狠狠五月综合天色拍| 97超级碰碰| 精品一区二区三区中文字幕视频| 国产精品爽黄69| 六月婷婷综合| 91精品国产91久久久久久不卡| 快射视频在线观看| 尤物tv国产一区| 国产精品麻豆一区二区三区| 日韩高清人体午夜| 国产91麻豆视频| 日韩欧美黄色影院| 国产视频一二三四区| 欧美日韩国产在线观看| 国产精品欧美久久久久天天影视| 在线视频一区二区三区| 六月丁香在线视频| 亚洲动漫第一页| 久久精品性爱视频| 1000精品久久久久久久久| 2014亚洲天堂| 亚洲三级在线免费观看| av电影网站在线观看 | 午夜一区二区三区免费| 不卡一区二区中文字幕| 国产精品久久久久久在线观看| 国产成人精品三级| 欧美激情国内自拍| 丁香一区二区三区| 中文字幕人妻熟女在线| 成人免费高清在线观看| 无码国产精品一区二区免费式直播| 国产精品77777| 国产传媒第一页| 国产拍欧美日韩视频二区| b站大片免费直播| 欧美激情资源网| 亚洲少妇xxx| 亚洲视频小说图片| 欧美激情精品久久久久久免费 | 欧美午夜精品免费| 99国产成人精品| 精品少妇一区二区三区在线视频| 噜噜噜久久,亚洲精品国产品| 亚洲成人久久电影| 欧洲免费在线视频| 亚洲欧美国产精品va在线观看| 91女主播在线观看| 欧美超级乱淫片喷水| 大桥未久在线播放| 日本91av在线播放| 欧美性www| 国产视频一区二区三区四区| 爽爽窝窝午夜精品一区二区| 欧洲久久久久久| 午夜免费一区| 真人抽搐一进一出视频| 香蕉久久夜色精品| 国产传媒免费观看| 不卡的av网站| 影音先锋男人在线| 亚洲欧美一区二区三区久本道91 | 日本丶国产丶欧美色综合| 中文字幕福利视频| 日韩精品一区国产麻豆| 免费黄色在线视频网站| 欧美日韩国产成人| 欧美性猛交xxx高清大费中文| 国产一区二中文字幕在线看| 亚洲视频一起| 国产视色精品亚洲一区二区| 欧美色蜜桃97| 成人午夜视频在线观看免费| 日韩精品亚洲一区| 日本wwwwwww| 国产精品国产馆在线真实露脸 | 黄色综合网站| 欧美自拍小视频| 国产电影精品久久禁18| 中文字幕国产专区| 一区二区三区加勒比av| 亚洲天堂999| 亚洲免费小视频| 日本三级在线观看网站| 日韩av电影国产| 天堂综合在线播放| 亚洲成人网上| 国产一区二区你懂的| 先锋资源在线视频| 国产欧美一区二区精品忘忧草| 亚洲a∨无码无在线观看| 一本色道久久综合亚洲精品按摩| 不卡视频免费在线观看| 最近的2019中文字幕免费一页| 蜜桃视频在线观看免费视频| 亚洲aaa激情| 91日韩在线| www.天天射.com| 成人黄色小视频在线观看| www欧美com| 欧美乱熟臀69xxxxxx| 毛片在线播放网址| 青青精品视频播放| 国产一区二区三区亚洲| 亚洲图片小说在线| 日本亚洲三级在线| 91成年人网站| 大荫蒂欧美视频另类xxxx| 蜜桃av噜噜一区二区三区麻豆| 久久精品国产欧美激情| 成人自拍视频| 中文视频一区视频二区视频三区| 首页欧美精品中文字幕| 亚洲调教欧美在线| 欧美日韩精品中文字幕| 少妇av一区二区| 久久久久久999| 中文无码日韩欧| 99精品视频网站| 国产成人av一区二区| 欧美日韩偷拍视频| 日韩精品一区二区三区三区免费| 国产区在线观看| 高清视频在线观看一区| 国内精品久久久久久久影视麻豆| 亚洲第一成肉网| 亚洲色图欧美偷拍| 欧美一区,二区| 91产国在线观看动作片喷水| 女同久久另类99精品国产| 久久久久久久9| 久久亚洲精品小早川怜子| www欧美在线| 亚洲天天在线日亚洲洲精| 制服诱惑亚洲| av磁力番号网| 国产成人精品一区二区三区网站观看 | 久久精品视频7| 日韩av网站在线| 成人免费黄色| 黄色网zhan| 成人av中文字幕| 黄色一级片免费看| 国产亚洲在线播放| 国产激情综合| 成人黄色av片| 久久久精品2019中文字幕之3| 国产又粗又大又爽| 欧美国产高跟鞋裸体秀xxxhd| 狠狠久久伊人| 亚洲综合在线网站| 亚洲精品国产a久久久久久| 亚洲大尺度视频| 欧美做受高潮1| 亚洲乱码免费伦视频| 麻豆国产精品一区| 在线观看不卡一区| 日本aa在线| 99久久自偷自偷国产精品不卡| 亚洲综合国产| 成人免费精品动漫网站| 亚洲国产精品小视频| 国产美女高潮在线观看|