中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊

包郵 Rust編程之道

作者:張漢東
出版社:電子工業出版社出版時間:2019-01-01
開本: 16開 頁數: 580
中 圖 價:¥93.5(7.3折) 定價  ¥128.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>
買過本商品的人還買了

Rust編程之道 版權信息

  • ISBN:9787121354854
  • 條形碼:9787121354854 ; 978-7-121-35485-4
  • 裝幀:簡裝本
  • 冊數:暫無
  • 重量:暫無
  • 所屬分類:>

Rust編程之道 本書特色

適讀人群 :適合本書的讀者群體包括: 1. 有一定編程經驗,想要學習Rust的初學者。 2. 對Rust有一定了解,還想對Rust深入學習的進階者。 本書不適合完全沒有編程基礎的人學習。
√ Rust,集安全、高性能、高效率、高可讀性于一身,是開發一款優秀產品不得不考慮的編程語言,學習Rust勢在必行!
√ 本書作者作為Rust語言的早期實踐者,以及中國社區的管理運營者,對Rust的設計理念有深入理解,并有豐富的實踐經驗。
√ 從設計哲學、源碼分析、工程視角、底層原理多個維度,對Rust語言進行系統化梳理,幫助讀者理清知識脈絡,降低學習曲線。
√ 本書附有隨書源碼,配套運行,方便讀者在實踐中鞏固理論知識,熟悉Rust在生產環境中的應用,避免紙上談兵的尷尬。

Rust編程之道 內容簡介

Rust 是一門利用現代化的類型系統,有機地融合了內存管理、所有權語義和混合編程范式的編程語言。它不僅能科學地保證程序的正確性,還能保證內存安全和線程安全。同時,還有能與C/C++語言媲美的性能,以及能和動態語言媲美的開發效率。
《Rust編程之道》并非對語法內容進行簡單羅列講解,而是從四個維度深入全面且通透地介紹了Rust 語言。從設計哲學出發,探索Rust 語言的內在一致性;從源碼分析入手,探索Rust 地道的編程風格;從工程角度著手,探索Rust 對健壯性的支持;從底層原理開始,探索Rust 內存安全的本質。
《Rust編程之道》涵蓋了Rust 2018 的特性,適合有一定編程經驗且想要學習Rust 的初學者,以及對Rust 有一定的了解,想要繼續深入學習的進階者。

Rust編程之道 目錄

第1 章 新時代的語言 1


1.1 緣起 1


1.2 設計哲學 3


1.2.1 內存安全 3


1.2.2 零成本抽象 4


1.2.3 實用性 5


1.3 現狀與未來 7


1.3.1 語言架構 8


1.3.2 開源社區 9


1.3.3 發展前景 9


1.4 Rust 代碼如何執行 10


1.5 小結 10


第2 章 語言精要 11


2.1 Rust 語言的基本構成 11


2.1.1 語言規范 11


2.1.2 編譯器 12


2.1.3 核心庫 12


2.1.4 標準庫 12


2.1.5 包管理器 13


2.2 語句與表達式 13


2.3 變量與綁定 14


2.3.1 位置表達式和值表達式 15


2.3.2 不可變綁定與可變綁定 15


2.3.3 所有權與引用 16


2.4 函數與閉包 17


2.4.1 函數定義 17


2.4.2 作用域與生命周期 18


2.4.3 函數指針 19


2.4.5 CTFE 機制 20


2.4.6 閉包 20


2.5 流程控制 22


2.5.1 條件表達式 22


2.5.2 循環表達式 23


2.5.3 match 表達式與模式匹配 24


2.5.4 if let 和while let 表達式 25


2.6 基本數據類型 26


2.6.1 布爾類型 26


2.6.2 基本數字類型 26


2.6.3 字符類型 27


2.6.4 數組類型 28


2.6.5 范圍類型 29


2.6.6 切片類型 29


2.6.7 str 字符串類型 30


2.6.8 原生指針 31


2.6.9 never 類型 31


2.7 復合數據類型 32


2.7.1 元組 32


2.7.2 結構體 33


2.7.3 枚舉體 36


2.8 常用集合類型 38


2.8.1 線性序列:向量 38


2.8.2 線性序列:雙端隊列 39


2.8.3 線性序列:鏈表 40


2.8.4 Key-Value 映射表:HashMap 和BTreeMap 40


2.8.5 集合:HashSet 和BTreeSet 41


2.8.6 優先隊列:BinaryHeap 42


2.9 智能指針 42


2.10 泛型和trait 43


2.10.1 泛型 43


2.10.2 trait 44


2.11 錯誤處理 47


2.12 表達式優先級 48


2.13 注釋與打印 48


2.14 小結 50


第3 章 類型系統 51


3.1 通用概念 51


3.1.1 類型系統的作用 51


3.1.2 類型系統的分類 52


3.1.3 類型系統與多態性 53


3.2 Rust 類型系統概述 53


3.2.1 類型大小 53


3.2.2 類型推導 58


3.3 泛型 60


3.3.1 泛型函數 60


3.3.2 泛型返回值自動推導 62


3.4 深入trait 62


3.4.1 接口抽象 63


3.4.2 泛型約束 69


3.4.3 抽象類型 71


3.4.4 標簽trait 77


3.5 類型轉換 83


3.5.1 Deref 解引用 83


3.5.2 as 操作符 86


3.5.3 From 和Into 88


3.6 當前trait 系統的不足 89


3.6.1 孤兒規則的局限性 90


3.6.2 代碼復用的效率不高 91


3.6.3 抽象表達能力有待改進 93


3.7 小結 94


第4 章 內存管理 95


4.1 通用概念 95


4.1.1 棧 96


4.1.2 堆 99


4.1.3 內存布局 101


4.2 Rust 中的資源管理 103


4.2.1 變量和函數 103


4.2.2 智能指針與RAII 106


4.2.3 內存泄漏與內存安全 110


4.2.4 復合類型的內存分配和布局 115


4.3 小結 117


第5 章 所有權系統 119


5.1 通用概念 120


5.2 所有權機制 123


5.3 綁定、作用域和生命周期 125


5.3.1 不可變與可變 126


5.3.2 綁定的時間屬性——生命周期 127


5.4 所有權借用 131


5.5 生命周期參數 135


5.5.1 顯式生命周期參數 136


5.5.2 省略生命周期參數 143


5.5.3 生命周期限定 145


5.5.4 trait 對象的生命周期 145


5.6 智能指針與所有權 146


5.6.1 共享所有權 Rc和Weak 149


5.6.2 內部可變性Cell和RefCell 151


5.6.3 寫時復制Cow 153


5.7 并發安全與所有權 156


5.8 非詞法作用域生命周期 157


5.9 小結 161


第6 章 函數、閉包與迭代器 162


6.1 函數 162


6.1.1 函數屏蔽 164


6.1.2 函數參數模式匹配 164


6.1.3 函數返回值 165


6.1.4 泛型函數 166


6.1.5 方法與函數 167


6.1.6 高階函數 168


6.2 閉包 171


6.2.1 閉包的基本語法 172


6.2.2 閉包的實現 173


6.2.3 閉包與所有權 178


6.2.4 閉包作為函數參數和返回值 184


6.2.5 高階生命周期 190


6.3 迭代器 194


6.3.1 外部迭代器和內部迭代器 194


6.3.2 Iterator trait 195


6.3.3 IntoIterator trait 和迭代器 199


6.3.4 迭代器適配器 202


6.3.5 消費器 207


6.3.6 自定義迭代器適配器 211


6.4 小結 214


第7 章 結構化編程 216


7.1 面向對象風格編程 217


7.1.1 結構體 217


7.1.2 枚舉體 225


7.1.3 析構順序 230


7.2 常用設計模式 233


7.2.1 建造者模式 234


7.2.2 訪問者模式 236


7.2.3 RAII 模式 239


7.3 小結 243


第8 章 字符串與集合類型 244


8.1 字符串 244


8.1.1 字符編碼 244


8.1.2 字符 247


8.1.3 字符串分類 249


8.1.4 字符串的兩種處理方式 251


8.1.5 字符串的修改 253


8.1.6 字符串的查找 256


8.1.7 與其他類型相互轉換 265


8.1.8 回顧 270


8.2 集合類型 271


8.2.1 動態可增長數組 271


8.2.2 映射集 281


8.3 理解容量 289


8.4 小結 292


第9 章 構建健壯的程序 294


9.1 通用概念 294


9.2 消除失敗 295


9.3 分層處理錯誤 297


9.3.1 可選值Option 298


9.3.2 錯誤處理Result 302


9.4 恐慌(Panic) 314


9.5 第三方庫 316


9.6 小結 319


第10 章 模塊化編程 320


10.1 包管理 321


10.1.1 使用Cargo 創建包 321


10.1.2 使用第三方包 323


10.1.3 Cargo.toml 文件格式 331


10.1.4 自定義Cargo 337


10.2 模塊系統 339


10.3 從零開始實現一個完整功能包 344


10.3.1 使用Cargo 創建新項目 345


10.3.2 使用structopt 解析命令行參數 345


10.3.3 定義統一的錯誤類型 347


10.3.4 讀取CSV 文件 348


10.3.5 替換CSV 文件中的內容 351


10.3.6 進一步完善包 353


10.4 可見性和私有性 358


10.5 小結 360


第11 章 安全并發 362


11.1 通用概念 362


11.1.1 多進程和多線程 363


11.1.2 事件驅動、異步回調和協程 364


11.1.3 線程安全 365


11.2 多線程并發編程 370


11.2.1 線程管理 371


11.2.2 Send 和Sync 375


11.2.3 使用鎖進行線程同步 379


11.2.4 屏障和條件變量 384


11.2.5 原子類型 386


11.2.6 使用Channel 進行線程間通信 388


11.2.7 內部可變性探究 397


11.2.8 線程池 399


11.2.9 使用Rayon 執行并行任務 407


11.2.10 使用Crossbeam 409


11.3 異步并發 412


11.3.1 生成器 413


11.3.2 Future 并發模式 418


11.3.3 async/await 421


11.4 數據并行 428


11.4.1 什么是SIMD 429


11.4.2 在Rust 中使用SIMD 430


11.5 小結 434


第12 章 元編程 435


12.1 反射 436


12.1.1 通過is 函數判斷類型 436


12.1.2 轉換到具體類型 437


12.1.3 非靜態生命周期類型 439


12.2 宏系統 440


12.2.1 起源 440


12.2.2 Rust 中宏的種類 441


12.2.3 編譯過程 442


12.2.4 聲明宏 445


12.2.5 過程宏 458


12.3 編譯器插件 472


12.4 小結 475


第13 章 超越安全的邊界 477


13.1 Unsafe Rust 介紹 477


13.1.1 Unsafe 語法 478


13.1.2 訪問和修改可變靜態變量 480


13.1.3 Union 聯合體 480


13.1.4 解引用原生指針 483


13.2 基于Unsafe 進行安全抽象 484


13.2.1 原生指針 484


13.2.2 子類型與型變 489


13.2.3 未綁定生命周期 494


13.2.4 Drop 檢查 495


13.2.5 NonNull指針 505


13.2.6 Unsafe 與恐慌安全 508


13.2.7 堆內存分配 508


13.2.8 混合代碼內存安全架構三大原則 510


13.3 和其他語言交互 510


13.3.1 外部函數接口 510


13.3.2 與C/C++語言交互 514


13.3.3 使用Rust 提升動態語言性能 528


13.4 Rust 與WebAssembly 532


13.4.1 WebAssembly 要點介紹 533


13.4.2 使用Rust 開發WebAssembly 539


13.4.3 打造WebAssembly 開發生態 541


13.5 小結 543


附錄A Rust 開發環境指南 544


附錄B Rust 如何調試代碼 549

展開全部

Rust編程之道 節選


當我2015 年開始學習Rust 的時候,我絕對沒有想過要寫一本Rust 編程的書。
緣起
當時我剛剛翻譯完《Ruby 原理剖析》一書,開始對底層開發產生了一點點興趣。從2006年入行以來,我就一直和動態語言打交道。雖然自己也想學習底層開發,但能選擇的語言幾乎只有C++。我在學校里淺淺地學過C++這門語言,也許是**印象作怪,總難以提起對C++的興趣。
當Rust 1.0 發布時,我去官方網站了解了一下Rust 語言,發現它的主要特點有以下幾方面:
? 系統級語言
? 無GC
? 基于LLVM
? 內存安全
? 強類型+靜態類型
? 混合編程范式
? 零成本抽象
? 線程安全
我一下子就被這些鮮明的特性“擊中”了,從此開始了Rust 的學習。
再一次愛上編程
**次愛上編程是在上小學時。父親給我買回來一臺金字塔學習機,這臺學習機有兩種功能,一種是學習Logo 語言,另一種是玩卡帶游戲。編寫Logo 語言就是用小海龜畫圖,也許是因為太早了,也許是因為沒有人引導,那時的我選擇了痛快地玩游戲。總想著先玩游戲,再去學怎么編程,然后還幻想著能不能用Logo 語言編寫一個游戲。其實這時候的我對編程更多的是一種憧憬,并沒有在學習編程上付出更多的實際行動。
第二次愛上編程是在大學初次學習C 語言的時候。我本可以選擇計算機科學專業,但是*后還是選了電子信息科學與技術專業。這樣選是因為我想把軟硬件都學了。想法是好的,可惜實施起來并不容易。*后的結果就是,軟硬件都沒學好。
第三次愛上編程是在遇到Ruby 語言的時候。當時我在用Java,并且已經完全陷入了Java語言和Web 框架紛繁復雜的細節中,痛苦不堪。Ruby on Rails 框架的橫空出世,把我從這種狀態中解救了出來。Ruby 語言的優雅和自由,以及“讓程序員更快樂”的口號深深地吸引了我。這一次我是真正愛上了編程,并且積極付諸行動去學習和提升自己。此時也恰逢互聯網創業大潮的開始,Ruby 語言的開發效率讓它迅速成為創業公司的寵兒,因此,我也借著Ruby這門語言參與到了這股創業洪流中。
第四次愛上編程是在遇到Rust 的時候。此時,創業洪流已經退潮。技術圈有句話,叫“十年一輪回”。當年喜歡Ruby 給開發過程帶來的快樂,但是隨著時代的變革和業務規模的增長,我不禁開始重新思考一個問題:何謂快樂?真正的快樂不僅僅是寫代碼時的“酸爽”,更應該是代碼部署到生產環境之后的“安穩”。Rust 恰恰可以給我帶來這種“雙重快樂”體驗。
為什么是Rust
社區中有人模仿阿西莫夫的機器人三大定律,總結了程序的三大定律:
? 程序必須正確。
? 程序必須可維護,但不能違反**條定律。
? 程序必須高效,但不能違反前兩條定律。
程序的正確性,一方面可以理解為該程序滿足了實際的問題需求,另一方面是指滿足了它自身的程序規約。那么如何保證程序的正確性呢?首先,可以通過對程序的各種測試、斷言和錯誤處理機制,來保證其滿足實際的問題需求。其次,在數學和計算機科學已經融合的今天,通過較為成熟的類型理論即可保證程序自身的規約正確。
以我*熟悉的Ruby 語言為例,程序的正確性必須依賴于開發者的水平,并需要大量的測試代碼來保證正確性。即便在100%測試覆蓋率的條件下,也經常會遇到NilError 之類的空指針問題。也就是說,Ruby 程序自身的正確性還沒有得到保證。以此類推,C、C++、Python、Java、JavaScript 等語言都有同樣的問題。
而函數式編程語言在這方面要好很多,尤其是號稱純函數式的Haskell 語言,它具有融合了范疇理論的類型系統,利用了范疇理論自身的代數性質和定律保證了程序自身的正確性。然而,Haskell 也有比較明顯的缺點,比如它不滿足上述第三條定律,運行效率不高。
反觀Rust 語言,對程序的三定律支持得恰到好處。它借鑒了Haskell 的類型系統,保證了程序的正確性。但還不止于此,在類型系統的基礎上,Rust 借鑒了現代C++的內存管理機制,建立了所有權系統。不僅保證了類型安全,還保證了內存安全。同時,也解決了多線程并發編程中的數據競爭問題,默認線程安全。再來看代碼的可維護性,Rust 代碼的可讀性和抽象能力都是一流的。不僅擁有高的開發效率,還擁有可以和C/C++媲美的性能。當然,沒有銀彈,但Rust 就是我目前想要的語言。
目前Rust 被陸續應用在區塊鏈、游戲、WebAssembly 技術、機器學習、分布式數據庫、網絡服務基礎設施、Web 框架、操作系統和嵌入式等領域。時代在變化,未來的互聯網需要的是安全和性能并重的語言,Rust 必然會在其中大放異彩。
學習Rust 帶來了什么收獲
Rust 是一門現代化的語言,融合了多種語言特性,而且Rust 語言可以應用的領域范圍非常廣泛。在學習Rust 的過程中,我發現自己的編程能力在很多方面存在短板。突破這些短板的過程實際上就是一次自我提升的過程。
Rust 是一門成長中的新語言,學習Rust,跟隨Rust 一起成長,可以體驗并參與到一門真正工業化語言的發展進程中,感覺就像在創造歷史。雖然我并未給Rust 語言提交過PR,但也為Rust 語言和社區多次提交過Bug,以及文檔和工具的改進意見。
Rust 自身作為一個開源項目,算得上是開源社區中的“明星”項目了。學習Rust 的過程加深了我對開源社區的認識,也開拓了我的眼界。
為什么要寫這本書
在學習Rust 一年之后,我寫下了《如何學習一門新語言》一文,其中記錄了我學習Rust的心得,這篇文章頗受好評。也正因為這篇文章,電子工業出版社的劉恩惠編輯找到了我,并詢問是否可以出一本Rust 編程的書籍。我當時也正想通過一本書來完整地表達自己的學習心得,再加上中文社區中沒有較全面系統的Rust 書籍,于是,一拍即合。
寫書的過程可以形容為痛并快樂著。Rust 語言正值成長期,很多語言特性還在不斷地完善。舉一個極端的例子,比如寫下某段代碼示例并成功編譯后,過了三天卻發現它無法編譯通過了。于是,我再一次跟進Rust 的RFC、源碼、ChangeLog 去看它們的變更情況,然后再重新修訂代碼示例。這個過程雖然痛苦,但改完之后會發現Rust 的這個改進確實是有必要的。
在這個過程中,我看到了Rust 的成長,以及Rust 團隊為保證語言一致性和開發者的開發體驗所付出的努力,讓我感覺自己花再多時間和精力去修改本書的內容都是值得的。
話說回來,任何人做事都是有動機或目的的,我也不例外。我寫這本書的目的主要有以下三個。
? 為Rust 中文社區帶來一本真正可以全面系統地學習Rust 的書。
? 以教為學。在寫作的過程中,讓自己所學的知識進一步內化。
? 傳播一種自學方法。本書內容以Rust 語言的設計哲學為出發點,按照從整體到細節的思路逐個闡述每個語言特性,希望讀者可以產生共鳴。
結語
我自己作為本書的**位讀者,目前對這本書是非常滿意的。衷心希望每一位讀者都能從本書中收獲新知。當然,我也知道不可能讓每一位讀者都滿意。在我看來,寫書不僅是在傳播知識和思想,更是一種交流和溝通。所以,當你不滿意的時候,可以來找我交流,提出更多建設性意見,幫助我成長。我爭取在寫下一本書的時候,讓更多的人滿意。而且,如果你的建議確實中肯,讓我得到了成長,我也為你準備了不錯的小禮物。

Rust編程之道 作者簡介

張漢東,80后,資深軟件工程師、企業獨立咨詢師、技術作者譯者。愛好讀書、寫作,喜歡研究技術、學習之道,以及心智和認知開發模式。曾在互聯網行業沉浮十余載,先后效力于電商、社交游戲、廣告和眾籌領域。作為企業獨立咨詢師,先后為思科、平安科技和閃迪等公司提供咨詢服務。目前在心智教育及創客領域開疆拓土。是《Ruby原理剖析》一書的譯者。喜歡Rust語言,為Rust語言提交了三次編譯器Bug,并協助修復其中之一。為官方Rust 2018 Guide做過貢獻,并數次提出改進意見。參與了國內Rust社區的管理和運營,在2018年打造了《Rust每日新聞》頻道,深受Rustacean們的喜愛。為初學者精心打造了Rust必學第一課:知乎Live《如何系統地學習Rust語言》,獲得五星好評。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 知名电动蝶阀,电动球阀,气动蝶阀,气动球阀生产厂家|价格透明-【固菲阀门官网】 | 福建成考网-福建成人高考网| 聚合氯化铝-碱式氯化铝-聚合硫酸铁-聚氯化铝铁生产厂家多少钱一吨-聚丙烯酰胺价格_河南浩博净水材料有限公司 | 风电变桨伺服驱动器-风电偏航变桨系统-深圳众城卓越科技有限公司 | 艺术漆十大品牌_艺术涂料加盟代理_蒙太奇艺术涂料厂家品牌|艺术漆|微水泥|硅藻泥|乳胶漆 | 日本细胞免疫疗法_肿瘤免疫治疗_NK细胞疗法 - 免疫密码 | 广州云仓代发-昊哥云仓专业电商仓储托管外包代发货服务 | 企业微信营销_企业微信服务商_私域流量运营_艾客SCRM官网 | 东莞画册设计_logo/vi设计_品牌包装设计 - 华略品牌设计公司 | 派克防爆伺服电机品牌|国产防爆伺服电机|高低温伺服电机|杭州摩森机电科技有限公司 | 二手回收公司_销毁处理公司_设备回收公司-找回收信息网 | 净化车间_洁净厂房_净化公司_净化厂房_无尘室工程_洁净工程装修|改造|施工-深圳净化公司 | 裹包机|裹膜机|缠膜机|绕膜机-上海晏陵智能设备有限公司 | atcc网站,sigma试剂价格,肿瘤细胞现货,人结肠癌细胞株购买-南京科佰生物 | 药品/药物稳定性试验考察箱-埃里森仪器设备(上海)有限公司 | 冷却塔厂家_冷却塔维修_冷却塔改造_凉水塔配件填料公司- 广东康明节能空调有限公司 | 罐体电伴热工程-消防管道电伴热带厂家-山东沃安电气 | 北京企业宣传片拍摄_公司宣传片制作-广告短视频制作_北京宣传片拍摄公司 | 氢氧化钙设备_厂家-淄博工贸有限公司 | 圆形振动筛_圆筛_旋振筛_三次元振动筛-河南新乡德诚生产厂家 | 澳门精准正版免费大全,2025新澳门全年免费,新澳天天开奖免费资料大全最新,新澳2025今晚开奖资料,新澳马今天最快最新图库-首页-东莞市傲马网络科技有限公司 | 氢氧化钙设备, 氢氧化钙生产线-淄博惠琛工贸有限公司 | 标准光源箱|对色灯箱|色差仪|光泽度仪|涂层测厚仪_HRC大品牌生产厂家 | 重庆LED显示屏_显示屏安装公司_重庆LED显示屏批发-彩光科技公司 重庆钣金加工厂家首页-专业定做监控电视墙_操作台 | 加气混凝土砌块设备,轻质砖设备,蒸养砖设备,新型墙体设备-河南省杜甫机械制造有限公司 | 美的商用净水器_美的直饮机_一级代理经销商_Midea租赁价格-厂家反渗透滤芯-直饮水批发品牌售后 | 沈阳液压泵_沈阳液压阀_沈阳液压站-沈阳海德太科液压设备有限公司 | 颚式破碎机,圆锥破碎机,制砂机-新乡市德诚机电制造有限公司 | 广州迈驰新GMP兽药包装机首页_药品包装机_中药散剂包装机 | 天津散热器_天津暖气片_天津安尼威尔散热器制造有限公司 | 砂尘试验箱_淋雨试验房_冰水冲击试验箱_IPX9K淋雨试验箱_广州岳信试验设备有限公司 | 气体检测仪-氢气检测仪-可燃气体传感器-恶臭电子鼻-深国安电子 | 飞象网 - 通信人每天必上的网站 全球化工设备网—化工设备,化工机械,制药设备,环保设备的专业网络市场。 | 智能案卷柜_卷宗柜_钥匙柜_文件流转柜_装备柜_浙江福源智能科技有限公司 | 防腐木批发价格_深圳_惠州_东莞防腐木厂家_森源(深圳)防腐木有限公司 | 锂电池砂磨机|石墨烯砂磨机|碳纳米管砂磨机-常州市奥能达机械设备有限公司 | 机制砂选粉机_砂石选粉机厂家-盐城市助成粉磨科技有限公司 | 南京蜂窝纸箱_南京木托盘_南京纸托盘-南京博恒包装有限公司 | 广州市哲铭油墨涂料有限公司,水性漆生产研发基地 | 防水套管厂家-柔性防水套管-不锈钢|刚性防水套管-天翔管道 | 生鲜配送系统-蔬菜食材配送管理系统-连锁餐饮订货配送软件-挪挪生鲜供应链管理软件 |