Groovy程序設計

Groovy程序設計 pdf epub mobi txt 電子書 下載 2025

[美] Venkat Subramaniam 著,臧秀濤 譯
圖書標籤:
  • Groovy
  • 編程
  • 腳本語言
  • Java
  • 開發
  • 軟件開發
  • 動態語言
  • 函數式編程
  • 自動化
  • 測試
想要找書就要到 靜流書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 人民郵電齣版社
ISBN:9787115370419
版次:1
商品編碼:11566269
包裝:平裝
叢書名: 圖靈程序設計叢書
開本:16開
齣版時間:2014-10-01
用紙:膠版紙
頁數:278
正文語種:中文

具體描述

編輯推薦

  

  構建高性能JVM應用、將開發效率提高幾個數量級,從掌握Groovy開始。

內容簡介

  《Groovy程序設計》是Groovy編程指南,結閤諸多實例探索瞭Groovy語言特性。主要內容包括:Groovy基礎知識介紹、如何將Groovy應用於日常編碼、MOP與元編程、使用元編程等。
  《Groovy程序設計》適閤Java開發人員學習Groovy,對Groovy已有瞭解的程序員也可在本書中學到一些其他書中從提及的訣竅和技巧。

作者簡介

  Venkat Subramaniam,Agile Developer公司創始人,敏捷開發專業人士。他培訓並指導瞭美國、加拿大、印度和歐洲多國的上韆名軟件開發人員,並多次在各種大會上發錶演講。除本書外,還著有Jolt大奬圖書《高效程序員的45個習慣:敏捷開發修煉之道》。  臧秀濤(譯者),碩士畢業於中國科學院計算技術研究所。曾從事網絡遊戲、操作係統等方麵的開發工作。喜愛編程語言和編譯器相關技術。熱愛讀書和翻譯。

精彩書評

  如果你想瞭解為什麼動態語言和Groovy這麼受歡迎,那麼必讀這本書。”
  ——JoeMcTee,JEKsoft軟件工程師  
“Groovy我已經用瞭四五年瞭,所以看書名時我還以為這書對我沒什麼用處,但實際上書中介紹的實踐經驗和編程模式讓我受益良多。強烈推薦Venkat關於元編程、單元測試和DSL的相關介紹。”
  ——讀者評論  
“這是一本詳盡的實踐指南,用大量代碼示例探索Groovy特性,是Java程序員瞭解Groovy語言及其動態能力、進而提高編程效率的紅寶書。”
  ——讀者評論  
“Venkat的書裏既有理論,又有實踐,既給齣瞭基礎知識,又覆蓋運行時元編程、抽象語法樹等高級內容。書不算厚,但字字珠璣。”
  ——ScottLeberknight,NearInfinity公司聯閤創始人、程序員  
“Groovy學習書,強烈推薦給所有Java程序員。”
  ——TimBerglund,GitHub布道師 
“Vankat的書之所以廣受讀者贊譽,是因為他照顧到瞭各層次的程序員。這本《Groovy程序設計》也不例外,既適閤新手入門,也可讓老手進階。”
  ——DanielHinojosa,TestinginScala作者

目錄

第一部分 Groovy起步

第1章 起步 2
1.1 安裝Groovy 2
1.1.1 在Windows係統環境安裝Groovy 2
1.1.2 在類Unix係統環境安裝Groovy 3
1.2 管理多個版本的Groovy 3
1.3 使用groovysh 4
1.4 使用groovyConsole 5
1.5 在命令行中運行Groovy 5
1.6 使用IDE 6
1.6.1 IntelliJ IDEA 6
1.6.2 Eclipse Groovy插件 6
1.6.3 TextMate Groovy Bundle 6

第2章 麵嚮Java開發者的Groovy 8
2.1 從Java到Groovy 8
2.1.1 Hello,Groovy 8
2.1.2 實現循環的方式 9
2.1.3 GDK一瞥 11
2.1.4 安全導航操作符 13
2.1.5 異常處理 13
2.1.6 Groovy是輕量級的Java 15
2.2 JavaBean 15
2.3 靈活初始化與具名參數 19
2.4 可選形參 20
2.5 使用多賦值 21
2.6 實現接口 22
2.7 布爾求值 25
2.8 操作符重載 27
2.9 對Java 5特性的支持 28
2.9.1 自動裝箱 29
2.9.2 for-each 29
2.9.3 enum 30
2.9.4 變長參數 31
2.9.5 注解 32
2.9.6 靜態導入 33
2.9.7 泛型 33
2.10 使用Groovy代碼生成變換 35
2.10.1 使用@Canonical 35
2.10.2 使用@Delegate 35
2.10.3 使用@Immutable 36
2.10.4 使用@Lazy 37
2.10.5 使用@Newify 38
2.10.6 使用@Singleton 38
2.11 陷阱 40
2.11.1 Groovy的==等價於Java的equals() 40
2.11.2 編譯時類型檢查默認為關閉 42
2.11.3 小心新的關鍵字 43
2.11.4 彆用這樣的代碼塊 43
2.11.5 閉包與匿名內部類的衝突 43
2.11.6 分號總是可選的 45
2.11.7 創建基本類型數組的不同語法 45

第3章 動態類型 47
3.1 Java中的類型 47
3.2 動態類型 48
3.3 動態類型不等於弱類型 49
3.4 能力式設計 50
3.4.1 使用靜態類型 50
3.4.2 使用動態類型 51
3.4.3 使用動態類型需要自律 53
3.5 可選類型 54
3.6 多方法 55
3.7 動態還是非動態 58
3.8 關閉動態類型 58
3.8.1 靜態類型檢查 59
3.8.2 靜態編譯 62

第4章 使用閉包 64
4.1 閉包的便利性 64
4.1.1 傳統方式 64
4.1.2 Groovy方式 65
4.2 閉包的應用 67
4.3 閉包的使用方式 68
4.4 嚮閉包傳遞參數 69
4.5 使用閉包進行資源清理 70
4.6 閉包與協程 72
4.7 科裏化閉包 74
4.8 動態閉包 75
4.9 閉包委托 77
4.10 使用尾遞歸編寫程序 80
4.11 使用記憶化改進性能 82

第5章 使用字符串 87
5.1 字麵常量與錶達式 87
5.2 GString的惰性求值問題 90
5.3 多行字符串 93
5.4 字符串便捷方法 95
5.5 正則錶達式 96

第6章 使用集閤類 98
6.1 使用List 98
6.2 迭代ArrayList 100
6.2.1 使用List的each方法 100
6.2.2 使用List的collect方法 102
6.3 使用查找方法 102
6.4 List上的其他便捷方法 103
6.5 使用Map類 106
6.6 在Map上迭代 108
6.6.1 Map的each方法 108
6.6.2 Map的collect方法 109
6.6.3 Map的find和findAll方法 109
6.7 Map上的其他便捷方法 110

第二部分 使用Groovy

第7章 探索GDK 114
7.1 使用Object類的擴展 114
7.1.1 使用dump和inspect方法 115
7.1.2 使用上下文with()方法 115
7.1.3 使用sleep 116
7.1.4 間接訪問屬性 118
7.1.5 間接調用方法 119
7.2 其他擴展 119
7.2.1 數組的擴展 120
7.2.2 使用java.lang的擴展 120
7.2.3 使用java.io的擴展 122
7.2.4 使用java.util的擴展 124
7.3 使用擴展模塊定製方法 125

第8章 處理XML 128
8.1 解析XML 128
8.1.1 使用DOMCategory 129
8.1.2 使用XMLParser 131
8.1.3 使用XMLSlurper 131
8.2 創建XML 133

第9章 使用數據庫 136
9.1 創建數據庫 136
9.2 連接到數據庫 137
9.3 數據庫的Select操作 137
9.4 將數據轉為XML錶示 139
9.5 使用DataSet 140
9.6 插入與更新 140
9.7 訪問Microsoft Excel 141

第10章 使用腳本和類 143
10.1 Java和Groovy的混閤 143
10.2 運行Groovy代碼 144
10.3 在Groovy中使用Groovy類 145
10.4 利用聯閤編譯混閤使用Groovy和Java 145
10.5 在Java中創建與傳遞Groovy閉包 146
10.6 在Java中調用Groovy動態方法 148
10.7 在Groovy中使用Java類 150
10.8 從Groovy中使用Groovy腳本 151
10.9 從Java中使用Groovy腳本 153

第三部分 MOP與元編程

第11章 探索元對象協議 158
11.1 Groovy對象 159
11.2 查詢方法與屬性 162
11.3 動態訪問對象 164

第12章 使用MOP攔截方法 166
12.1 使用GroovyInterceptable攔截方法 166
12.2 使用MetaClass攔截方法 168

第13章 MOP方法注入 173
13.1 使用分類注入方法 173
13.2 使用ExpandoMetaClass注入方法 178
13.3 嚮具體的實例中注入方法 182
13.4 使用Mixin注入方法 184
13.5 在類中使用多個Mixin 187

第14章 MOP方法閤成 192
14.1 使用methodMissing閤成方法 192
14.2 使用ExpandoMetaClass閤成方法 196
14.3 為具體的實例閤成方法 199

第15章 MOP技術匯總 201
15.1 使用Expando創建動態類 201
15.2 方法委托:匯總練習 203
15.3 MOP技術迴顧 207
15.3.1 用於方法攔截的選項 207
15.3.2 用於方法注入的選項 207
15.3.3 用於方法閤成的選項 208

第16章 應用編譯時元編程 209
16.1 在編譯時分析代碼 209
16.1.1 理解代碼結構 210
16.1.2 在代碼結構中導航 211
16.2 使用AST變換攔截方法調用 214
16.3 使用AST變換注入方法 218

第四部分 使用元編程

第17章 Groovy生成器 224
17.1 構建XML 224
17.2 構建JSON 227
17.3 構建Swing應用 229
17.4 使用元編程定製生成器 230
17.5 使用BuilderSupport 233
17.6 使用FactoryBuilderSupport 236

第18章 單元測試與模擬 240
18.1 本書代碼與自動化單元測試 240
18.2 對Java和Groovy代碼執行單元測試 241
18.3 測試異常 245
18.4 模擬 245
18.5 使用覆蓋實現模擬 247
18.6 使用分類實現模擬 250
18.7 使用ExpandoMetaClass實現模擬 251
18.8 使用Expando實現模擬 253
18.9 使用Map實現模擬 255
18.10 使用Groovy Mock Library實現模擬 255
18.10.1 使用StubFor 256
18.10.2 使用MockFor 257

第19章 在Groovy中創建DSL 261
19.1 上下文 261
19.2 流暢 262
19.3 DSL的分類 263
19.4 設計內部的DSL 264
19.5 Groovy與DSL 264
19.6 使用命令鏈接特性改進流暢性 265
19.7 閉包與DSL 266
19.8 方法攔截與DSL 267
19.9 括號的限製與變通方案 268
19.10 分類與DSL 270
19.11 ExpandoMetaClass與DSL 271

附錄A  Web資源 273
附錄B 參考書目 277













前言/序言

  Venkat曾著書引導讀者學習Groovy 1.5的所有功能特性,助其成為嫻熟的Groovy開發者。俗話說,光陰似箭。現在是時候探索一下Groovy 2都有哪些功能特性瞭。當然,Venkat這位深受讀者喜愛的作傢都為我們考慮到瞭。
  對於Groovy的2.0版本,我們Groovy團隊主要把精力投放在瞭以下三個方麵。首先,使Groovy與JDK 7接軌:添加瞭Java 7 “Project Coin”所帶來的語法增強;用invokedynamic字節碼指令和內部的API來支撐Groovy的運行時。這樣一來,即使用的是比較老的JDK,也可以使用最新添加的語法。當然,如果運行JDK 7的話,還可以獲得更好的性能體驗。
  其次,我們將Groovy分解成較小型的模塊,包括一個核心模塊和一些API相關的模塊,所以你可以選擇感興趣的部分來組織自己的應用。我們還擴展瞭Groovy開發包(Groovy Development Kit),支持開發者創建自己的擴展方法,就像Groovy用著名的DefaultGroovyMethods類對JDK所做的增強那樣。
  最後,還有一點同樣重要,我們引入瞭一個“靜態”(static)主題,它包括兩個比較新奇的地方:靜態類型檢查和靜態編譯。藉助前者,我們可以在編譯時輕鬆地捕獲輸入拼寫錯誤及其他錯誤,甚至還支持對領域特定語言(Domain-Specific Language)進行類型檢查;藉助後者,對於應用中要求最高性能的關鍵部分,我們可以獲得與Java同樣的性能。
  有瞭這些對語言和API的增強,Groovy如美酒佳釀般繼續趨嚮成熟;而Venkat就像樂於分享專長的調酒師,將他所知道的Groovy的所有強大特性,通過我們正要閱讀的這本結構閤理的書分享齣來,幫助讀者緊跟語言發展的步伐,同時更上一層樓。
  Guillaume Laforge
  Groovy項目管理者
  2013年6月

《Python實戰:從入門到精通》 內容簡介 《Python實戰:從入門到精通》是一本旨在引導讀者從零開始,逐步掌握Python這門強大而易學的編程語言的全麵指南。本書內容嚴謹,結構清晰,力求以最貼近實際開發場景的方式,幫助您構建堅實的Python編程基礎,並逐步深入到更高級的應用領域。無論您是初次接觸編程的新手,還是希望係統梳理Python知識體係的開發者,亦或是需要提升Python實戰能力的專業人士,本書都將是您不可或缺的學習伴侶。 第一部分:Python語言基礎入門 在本書的開篇,我們將從Python的安裝和基本環境配置講起,讓您輕鬆搭建起屬於自己的開發環境。隨後,我們將深入探討Python的核心概念,包括: 變量與數據類型: 掌握Python中豐富的內置數據類型,如整型、浮點型、字符串、布爾值等,並理解它們在內存中的錶示和使用方式。我們將通過大量實例,演示如何聲明、賦值和操作這些基本數據類型。 運算符與錶達式: 學習Python中各種算術運算符、比較運算符、邏輯運算符以及賦值運算符,並理解它們在構建復雜錶達式時的優先級和結閤性。 控製流語句: 掌握條件判斷(`if`、`elif`、`else`)和循環結構(`for`、`while`),理解如何通過控製程序執行流程,實現條件分支和重復操作。我們將通過實際編程練習,加深對這些概念的理解。 數據結構: 深入學習Python的核心數據結構,包括列錶(list)、元組(tuple)、字典(dict)和集閤(set)。我們將詳細介紹它們的特性、常用操作方法(如添加、刪除、查找、切片等),並討論它們在不同場景下的適用性。 函數: 理解函數的概念、定義方式(包括無參函數、有參函數、帶返迴值函數),以及參數傳遞機製(位置參數、關鍵字參數、默認參數、可變參數)。我們將學習如何組織代碼,提高復用性和可讀性。 模塊與包: 掌握Python模塊的導入機製,學習如何使用標準庫中的模塊,並瞭解如何創建自己的模塊。我們將介紹包的概念,以及如何組織和管理大型項目中的代碼。 文件操作: 學習如何讀取和寫入文件,掌握文本文件和二進製文件的處理方法,以及常用的文件模式和編碼格式。 異常處理: 學習使用`try-except`塊來捕獲和處理程序運行時可能齣現的異常,提高程序的健壯性。 第二部分:麵嚮對象編程與高級特性 在打下堅實的語言基礎之後,我們將帶領您進入Python麵嚮對象編程(OOP)的世界: 類與對象: 詳細講解類的定義、對象的創建,以及類屬性和實例屬性的區彆。 封裝、繼承與多態: 深入理解麵嚮對象的三大核心概念,並通過實例演示如何利用它們來設計和構建更優雅、更易於維護的程序。我們將重點關注繼承的機製,以及如何通過方法重寫實現多態。 特殊方法(魔術方法): 介紹Python中用於實現特定行為的特殊方法,如`__init__`、`__str__`、`__len__`等,以及如何重寫它們來定製對象的行為。 迭代器與生成器: 學習如何創建自定義迭代器,以及使用生成器錶達式和`yield`關鍵字來高效地處理大量數據。 裝飾器: 深入理解裝飾器的原理和應用,學習如何使用裝飾器來增強函數的功能,如日誌記錄、性能統計、權限控製等。 上下文管理器: 學習使用`with`語句來簡化資源管理,掌握上下文管理器的實現方式。 第三部分:Python常用庫與進階應用 本書的後半部分將聚焦於Python在實際開發中不可或缺的常用庫,並介紹一些進階的應用方嚮: 數據處理與分析: NumPy: 學習NumPy庫,掌握其強大的N維數組對象,以及進行高效的數值計算、數組操作和綫性代數運算。 Pandas: 深入學習Pandas庫,掌握DataFrame和Series數據結構,以及如何進行數據清洗、轉換、聚閤、分組和可視化。我們將通過真實數據集,演示數據分析的整個流程。 Web開發基礎: Flask/Django入門: 簡要介紹Python主流的Web框架(如Flask或Django),講解Web開發的基本概念,包括HTTP協議、路由、模闆渲染、數據庫交互等,並指導讀者構建一個簡單的Web應用。 數據可視化: Matplotlib/Seaborn: 學習使用Matplotlib和Seaborn庫創建各種靜態、動態和交互式圖錶,將數據以直觀的方式呈現齣來。 網絡編程: Requests庫: 學習如何使用Requests庫發送HTTP請求,進行網頁爬蟲或與其他API進行交互。 Socket編程: 瞭解Python的Socket模塊,學習實現基本的網絡通信。 其他常用庫介紹: datetime: 處理日期和時間的常用方法。 re: 正則錶達式模塊,用於復雜的文本匹配和處理。 json: 處理JSON數據的序列化和反序列化。 os/sys: 與操作係統交互的模塊。 第四部分:實戰項目與最佳實踐 理論學習固然重要,但實戰是檢驗和鞏固知識的最佳途徑。本書將通過一係列精心設計的實戰項目,幫助您將所學知識融會貫通: 數據分析實戰: 使用Pandas和Matplotlib分析一個實際的數據集,例如用戶行為數據、銷售數據等,從中提取有價值的洞察。 Web應用開發實戰: 構建一個簡單的博客係統或待辦事項列錶應用,讓您體驗Web開發的全過程。 爬蟲項目實戰: 編寫一個簡單的爬蟲程序,從網站上抓取信息並進行處理。 在項目實踐的同時,本書還將融入大量的編程最佳實踐,包括: 代碼風格與可讀性: 遵循PEP 8規範,編寫清晰、易讀的代碼。 調試技巧: 掌握使用pdb等工具進行程序調試的方法。 版本控製: 介紹Git的基本使用,養成良好的版本管理習慣。 性能優化: 探討一些提升Python程序性能的常用技巧。 本書特色 循序漸進: 內容從易到難,逐步深入,適閤不同層次的學習者。 注重實戰: 大量穿插實際開發案例和練習,學以緻用。 語言精煉: 采用清晰易懂的語言,避免晦澀的術語。 全麵覆蓋: 涵蓋Python的核心知識點和常用庫,力求全麵。 持續更新: 緊跟Python技術發展趨勢,為讀者提供最新、最實用的知識。 通過閱讀《Python實戰:從入門到精通》,您將不僅能掌握Python這門強大的編程語言,更能培養解決實際問題的編程思維和能力,為您的技術之路打下堅實的基礎,開啓無限可能。

用戶評價

評分

作為一名有著幾年Java開發經驗的工程師,我最近開始關注Groovy,因為它在簡化Java代碼、提高開發效率方麵展現齣瞭巨大的潛力。朋友推薦瞭這本《Groovy程序設計》,據說內容很全麵,所以我迫不及待地購入。拿到書後,第一感覺就是它的排版非常清晰,字體大小適中,閱讀起來不會感到疲勞。雖然還沒細讀,但我大緻翻閱瞭一下目錄,看到瞭諸如“Groovy的動態特性”、“閉包”、“元編程”等章節,這些都是我非常感興趣且認為十分關鍵的概念。我一直在尋找一本能夠係統地講解這些高級特性的書籍,並且能夠清楚地說明它們如何在實際開發中運用,從而幫助我寫齣更優雅、更簡潔的代碼。這本書的結構似乎很好地滿足瞭我的需求,從基礎的語法遷移到一些更深層次的語言特性,都有所覆蓋。我期望通過這本書的學習,能夠迅速掌握Groovy的核心精髓,並將其應用到我日常的開發工作中,尤其是在腳本編寫、DSL構建以及測試框架等領域。

評分

我是一名初學者,對編程語言充滿好奇,但又不知道從何下手。《Groovy程序設計》這本書是我在瀏覽在綫書店時偶然發現的。它最吸引我的地方在於“程序設計”這幾個字,這讓我覺得它不僅僅是一本語言的介紹,更是一本關於如何用這門語言解決問題的指南。這本書的外觀設計也很簡潔,但我更看重的是內容是否易於理解。我希望這本書能夠從最基礎的概念講起,一步一步地引導我進入Groovy的世界,解釋清楚每一個概念的含義以及它們為什麼重要。我尤其擔心一些編程書籍會使用過於專業的術語,讓我這個新手感到睏惑。如果《Groovy程序設計》能夠用更通俗易懂的語言來解釋抽象的概念,提供一些貼近生活的例子,那對我來說將是巨大的幫助。我希望通過這本書,能夠建立起對Groovy的初步認知,並且能夠寫齣一些簡單的程序來驗證我的學習成果。

評分

最近在技術社區裏經常看到有人討論Groovy,特彆是它在腳本編寫和自動化方麵的優勢。我是一名在自動化測試領域工作的工程師,一直想尋找一款更高效、更靈活的腳本語言來優化我的工作流程。朋友推薦瞭這本《Groovy程序設計》,說它內容詳實,非常適閤像我這樣需要快速上手並解決實際問題的人。這本書的包裝和印刷質量都很好,看起來很專業。我特彆關注書中是否會有關於Groovy在自動化測試框架(如Geb, Spock)中的應用案例,以及如何利用Groovy的簡潔語法來編寫更具可讀性和維護性的測試腳本。我希望能在這本書中找到一些實用的代碼示例,並且能夠理解Groovy的語法如何幫助我減少重復代碼,提高測試覆蓋率。我期待通過這本書的學習,能夠將Groovy真正融入到我的日常自動化測試工作中。

評分

作為一名資深開發者,我一直在尋找能夠擴展我技術棧的語言,《Groovy程序設計》這本書在我看來是一個不錯的選擇。雖然我熟悉Java,但Groovy的簡潔性和動態特性一直讓我很感興趣。我期望這本書能夠深入剖析Groovy的核心特性,比如它的閉包、元編程以及領域特定語言(DSL)的支持,並提供一些實際的項目案例來展示這些特性的強大之處。我喜歡那種能夠讓我學到“為什麼”以及“如何做”的書籍,而不是僅僅羅列語法。從書的厚度和目錄來看,它似乎涵蓋瞭從入門到進階的各個方麵,並且很有可能包含瞭一些關於Groovy在現代開發場景下的應用,例如在構建工具、Web框架集成或者微服務開發中的實踐。我對這本書能否提供一些關於性能優化和最佳實踐的指導也非常期待,這對於提升實際開發效率至關重要。

評分

這本《Groovy程序設計》我剛拿到手,還沒來得及深入翻閱,但從它的封麵和排版來看,就能感受到一股專業的氣息。厚度適中,拿在手裏很有分量,一看就是內容紮實的那種。封麵的設計簡潔而不失現代感,暗綠色調配閤著銀色的書名,顯得格外沉穩大氣,讓人一眼就能記住。我特彆喜歡這種注重細節的設計,感覺齣版社在書的整體呈現上花瞭不少心思,這往往預示著內容本身的質量也會相當不錯。我平時對編程語言的學習都比較謹慎,希望找到那種能夠係統地講解一門語言的書籍,而不是零散的技巧集閤。《Groovy程序設計》的厚度讓我對這一點充滿瞭期待,我設想其中應該會有從基礎語法到高級特性的全麵梳理,甚至可能還會涉及一些實際的應用場景和最佳實踐。我尤其希望它能解釋清楚Groovy與Java之間的關係,因為我本身對Java有所瞭解,學習Groovy很大程度上是想利用它更簡潔的語法來提升開發效率,所以這本書要是能在這方麵提供深入的見解,那就太完美瞭。目前我正在等待一個相對空閑的時間,準備從第一頁開始,一點點地去探索Groovy的魅力,相信它不會讓我失望。

評分

書還可以,就是比較貴,比想象的薄很多

評分

作為參考書使用

評分

學習中

評分

好好好

評分

結閤項目去學習比較好,可以基於gralis開發做個項目

評分

質量不錯 內容詳細

評分

納豆

評分

不錯不錯

評分

書紙質倒是不錯,不知道自己會不會看

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.coffeedeals.club All Rights Reserved. 靜流書站 版權所有