微信小程序開發入門與實踐/移動開發叢書

微信小程序開發入門與實踐/移動開發叢書 pdf epub mobi txt 電子書 下載 2025

雷磊 著
圖書標籤:
  • 微信小程序
  • 小程序開發
  • 移動開發
  • 前端開發
  • JavaScript
  • Web開發
  • 編程入門
  • 實踐案例
  • 開發教程
  • 移動應用
想要找書就要到 靜流書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 清華大學齣版社
ISBN:9787302468011
版次:1
商品編碼:12067579
包裝:平裝
叢書名: 移動開發叢書
開本:16開
齣版時間:2017-04-01
用紙:膠版紙
頁數:350
字數:589000
正文語種:中文

具體描述

産品特色

編輯推薦

  以Orange Can項目為主綫,深入淺齣地介紹微信小程序的基本結構、開發模式、組件應用、數據綁定方法、微信API使用、微信與設備硬件交互、微信支付等內容
  根據微信小程序公開上綫新版本編寫,總結小程序開發中踩過的“坑”、常見的開發誤區以及開發心得,讓你減少試錯時間,快速開發齣自己的小程序

內容簡介

  本書主要圍繞Orange Can項目展開一係列編碼工作,用幾近真實的項目介紹小程序的各個API、組件用法,並附帶一些小程序開發的經驗、技巧以及常見的誤區說明。整個Orange Can項目分為三部分:文章閱讀、電影資訊以及設置。文章閱讀包括文章列錶、文章詳情以及評論,通過編寫文章閱讀功能的代碼,讀者將學會swiper組件的裁剪模式、image組件的裁剪模式、緩存的使用技巧、列錶渲染、數據綁定、模闆、音樂播放、錄音、分享等知識。除此之外,讀者將對小程序頁麵的生命周期有一個大緻瞭解。學習完這部分內容,讀者將可以輕鬆做齣一個內容型小程序應用。電影資訊功能主要介紹如何調用服務器數據及template模闆的使用技巧。設置頁麵功能包含大量功能示例,包括獲取硬件設備信息、羅盤與重力感應的應用、掃描二維碼、用戶登錄、用戶信息校驗、解析用戶加密數據、獲取用戶openId、發送模闆消息、微信支付等功能。
  本書還提供部分服務器的PHP代碼,主要供用戶登錄、校驗、解析加密數據、模闆消息、微信支付等功能調用。
  本書內容豐富、注重實戰,講解通俗易懂。適閤小程序開發人員、培訓機構和企業內部培訓使用。

作者簡介

  雷磊,8年研發及團隊管理經驗。曾就職於國內*大的GIS公司互聯網部門,任職研發經理。精通C#、Python、Java、JavaScript等語言與Web開發技術。工作之餘經常撰寫有關互聯網技術、商業模式等文章,發錶在各個TMT媒體上。微信小程序首批內測開發者,知乎專欄“小樓昨夜又鞦風”作者。

目錄

第1章 微信小程序簡介 1
1.1 什麼是微信小程序 2
1.2 什麼類型的應用適閤用小程序開發 5
1.3 小程序與原生App(iOS、Android)的優劣對比 6
1.4 小程序會淘汰原生App嗎 10
1.5 Web前端的未來 10
1.6 Web前端開發者與小程序 11
1.7 MINA框架與微信小程序 12
1.8 微信小程序beta測試版 12
第2章 小程序環境搭建與開發工具介紹 13
2.1 微信Web開發者工具下載及安裝 14
2.2 新建*個項目 14
2.3 微信Web開發者工具界麵功能介紹 16
2.3.1 編輯選項卡 17
2.3.2 調試選項卡 19
2.3.3 項目選項卡 22
2.3.4 編譯選項 23
2.3.5 後颱選項 24
2.3.6 緩存選項 24
2.3.7 關閉選項 24
2.3.8 快速打開官方API文檔 24
2.3.9 開發工具的更新 24
2.3.10 常用小程序快捷鍵 25
第3章 從*個簡單的“Welcome”頁麵開始小程序之旅 26
3.1 認識小程序的基本文件結構 27
3.2 開始動手編寫*個小程序頁麵 28
3.3 構建welcome頁麵的元素和樣式 31
3.4 小程序所支持的CSS選擇器 35
3.5 Flex布局 36
3.6 小程序自適應單位rpx簡介 39
3.7 全局樣式文件app.wxss 42
3.8 頁麵的根元素page 42
3.9 app.json中的window配置項 44
第4章 文章列錶頁麵 47
4.1 文章列錶頁麵元素分析及準備工作 48
4.2 swiper組件 50
4.3 Boolean值的陷阱 53
4.4 構建文章列錶的骨架和樣式 54
4.5 image組件的4種縮放模式與9種裁剪模式 57
4.5.1 scaleToFill 58
4.5.2 aspectFit 58
4.5.3 aspectFill 59
4.5.4 widthFix 60
4.5.5 9種裁剪模式 60
4.6 完成靜態文章列錶 61
4.7 .js文件的代碼結構與Page頁麵的生命周期 64
4.8 數據綁定 68
4.8.1 初始化數據綁定 69
4.8.2 在哪裏可以查看數據綁定對象 70
4.8.3 綁定復雜對象 71
4.8.4 數據綁定更新 72
4.9 列錶渲染wx:for 76
4.10 配置單個頁麵導航欄背景色 79
4.11 從歡迎頁麵跳轉到文章頁麵 80
4.11.1 事件 80
4.11.2 redirectTo與navigateTo 82
4.11.3 小程序*多隻能有5層頁麵 83
4.11.4 冒泡事件與非冒泡事件 84
第5章 模塊、模闆與緩存 85
5.1 將文章數據從業務中分離 86
5.2 小程序的模塊 87
5.3 小程序的模闆化 89
5.4 消除template模闆對外部變量名的依賴 90
5.5 include與import引用模闆的區彆 92
5.6 CSS的模塊化 93
5.7 令人遺憾的模闆化而非組件化 94
5.8 使用緩存在本地模擬服務器數據庫 95
5.8.1 應用程序的生命周期 95
5.8.2 使用Storage緩存初始化本地數據庫 96
5.8.3 緩存的強製清理及注意事項 99
5.9 編寫緩存數據庫操作類 99
5.10 使用緩存數據庫操作類 101
5.11 使用ES6改寫緩存操作類 102
5.12 完善文章數據 103
5.13 完整的data.js數據 104
第6章 文章詳情頁麵 110
6.1 跳轉到文章詳情頁麵 111
6.2 不要在template上注冊事件 112
6.3 頁麵間傳遞參數的3種方式 113
6.3.1 組件的自定義屬性 113
6.3.2 通過dataset獲取組件自定義屬性 114
6.3.3 獲取頁麵參數值 115
6.4 編譯時設置初始化頁麵及參數 115
6.5 讀取文章詳情數據 116
6.6 文章id號的數據流嚮圖 117
6.7 編寫文章詳情頁麵 118
6.8 垂直居中問題的經典解決方法 121
6.9 動態設置導航欄標題 122
6.9.1 使用配置文件配置導航欄標題 122
6.9.2 使用wx.setNavigationBarTitle(OBJECT)設置導航條 123
第7章 收藏、評論、點贊與計數功能 124
7.1 收藏、評論、點贊、計數功能準備工作 125
7.2 文章收藏功能 127
7.2.1 條件渲染:wx:if與wx:else 127
7.2.2 實現收藏點擊功能 128
7.2.3 交互反饋wx:showToast 130
7.3 文章點贊功能 131
7.4 本地緩存的重要性及應用舉例 133
7.5 支持文字、圖片、拍照、語音上傳的文章評論 134
7.6 文章評論頁麵的實現步驟與思路 134
7.7 獲取並綁定文章評論數據 135
7.8 顯示文章評論數據 140
7.9 實現圖片預覽 145
7.10 實現提交評論的界麵 146
7.11 wx:if與hidden控製元素顯示和隱藏 152
7.12 實現文字評論框和語音評論框的切換 152
7.13 input組件 153
7.14 bindinput事件 154
7.15 屏蔽評論關鍵字 155
7.16 實現自定義發送按鈕 157
7.17 同時支持模擬器迴車、真機點擊“完成”發送評論 161
7.18 圖片與拍照評論的界麵實現 161
7.19 實現從相冊選擇照片與拍照 164
7.20 icon圖片 166
7.21 刪除已選擇的圖片 167
7.22 在小程序中使用CSS 3動畫 168
7.23 實現圖片評論的發送 170
7.24 實現語音消息的發送 171
7.25 實現語音消息的暫停與播放 174
7.26 用戶授權 176
7.27 解決真機運行時評論頁麵滑動卡頓的問題 177
7.28 文章閱讀計數功能 177
第8章 背景音樂播放 180
8.1 顯示音樂播放圖標 181
8.2 切換音樂播放圖標 182
8.3 背景音樂播放的特點 182
8.4 實現單頁麵背景音樂播放 183
8.5 監聽音樂播放 185
8.6 全局變量與全局音樂播放 186
8.7 音樂總控開關 192
8.8 顯示音樂的封麵圖片 194
第9章 豐富文章頁麵 195
9.1 將頁麵分享給朋友和微信群 196
9.2 從swiper組件跳轉到文章詳情頁麵 197
9.3 使用小程序動畫實現點贊特效 199
第10章 電影 204
10.1 小程序的tab選項卡 205
10.2 電影頁麵介紹 208
10.3 編寫豆瓣星星評分組件:stars-tpl模闆 210
10.4 編寫movie-tpl模闆 212
10.5 編寫movie-list-tpl模闆 213
10.6 電影首頁的骨架與樣式 215
10.7 豆瓣電影API分析 216
10.8 電影首頁的js編寫 217
10.9 wx.request發送http/https請求 219
10.10 設置wx.request的超時時間 221
10.11 處理返迴的電影數據 221
10.12 綁定處理後的電影數據 224
10.13 http和https在小程序中的使用說明 226
10.14 跳轉到更多電影頁麵 227
10.15 編寫movie-grid-tpl模闆 229
10.16 編寫“更多電影”頁麵 231
10.17 實現頁麵下拉刷新的“三部麯” 234
10.18 在模擬器中可執行下拉刷新但在真機中無法執行下拉刷新的常見錯誤 237
10.19 json中的backgroundColor配置的是哪裏的顔色 238
10.20 實現上滑加載更多數據 239
10.21 動態設置導航欄loading圖標 241
10.22 電影搜索 244
10.23 電影詳情頁麵 249
10.24 電影詳情頁麵的骨架和樣式 251
10.25 編寫電影詳情頁麵的業務邏輯代碼 258
10.26 預覽電影海報 261
10.27 設置電影頁麵的導航欄標題 262
第11章 設置 264
11.1 設置頁麵 265
11.2 獲取用戶基本信息 272
11.3 數據緩存的異步操作 275
11.4 獲取係統信息 277
11.5 獲取網絡狀態 281
11.6 獲取當前位置信息與當前速度信息 282
11.7 使用微信內置地圖查看位置信息 283
11.8 監聽羅盤數據製作一個簡易指南針 284
11.9 在小程序中實現搖一搖 286
11.10 掃碼 289
11.11 獲取小程序頁麵二維碼 292
11.12 下載並預覽pdf、word等多種類型文檔 293
第12章 開放接口 300
12.1 準備工作 301
12.2 用戶登錄 301
12.3 用戶信息校驗 307
12.4 解析用戶加密數據獲取openId及UnionId 313
12.5 模闆消息 316
12.6 form錶單及picker組件 321
12.7 發送模闆消息 323
12.8 微信支付 328
12.9 真實的微信小程序登錄狀態維護 336
第13章 雜項 338
13.1 wx:key 339
13.2 scroll-view組件:在js中控製滾動條 343
13.3 深入理解小程序的單嚮數據綁定機製 348
13.4 深入理解scroll-view組件的bindscrolltolower、lower-threshold屬性 349
13.5 微信小程序發布流程 350

前言/序言

  本書的特點與特色
  興許是我嚮來不喜歡很多編程書籍開篇就大篇幅羅列知識點的做法,從業八年以來,每每翻閱技術類書籍,看到連篇纍牘的概念理論就頭疼不已。接到清華大學齣版社的邀約後,我長久思忖如何組織小程序開發這本書的編寫思路,寫齣一本我自己也喜歡看的書籍。
  如果能讓讀者身臨其境地開發一個幾近真實的項目,在不知不覺中就可以學會小程序開發,那該多好。慶幸的是,小程序不是一門語言,它不需要像Java、Python、JavaScript等基礎語言教學一樣羅列一個個基礎語法,它*好的學習方式就是本書的“實踐式”學習。因此,本書將用一個較為完整的“案例項目”把小程序的各個知識點“串接”起來,一邊做項目,一邊學習小程序的開發。做完一個項目就可以入門小程序是本書的目的。
  我喜歡這種“實踐式”學習所帶來的“代入感”(如果你玩過各類角色扮演遊戲,你就明白什麼是代入感),跟著本書一步步coding,你不僅收獲瞭知識,更是直接完成瞭一個像模像樣的小程序,這種成就感是學習編程*大的動力。即使你是一個基礎較好的開發者,隻看官方的文檔也能學會小程序的開發,我依然建議你認真閱讀本書,因為本書將為你節約大量“試錯”時間。
  本書在很多時候並沒有直接給齣一個問題的*優解決方案,而是首先給齣一個看似很蠢的思路來解決問題。因為這是我們*直接的思維,也是*簡單的解決方案。通過分析這個解決方案有什麼缺點,*後給齣一個更加優秀的解決問題的建議。我想,這符閤我們編程裏“重構”的概念。相比於直接給齣*優解(事實上編程裏很難有*優解,隻是相對“優秀”),漸進式的解決問題更加能讓讀者體會到優秀解決方案的優勢,避免對知識的生搬硬套。
  我一直認為,本書的編寫思路也是程序員自學的思路,由點及麵、由具體到抽象。在工作中遇到瞭問題,想辦法解決問題,查閱資料學習這個問題的相關知識點,*後把這些知識點總結、歸納,形成自己的知識體係,這是一個通用的學習“套路”。編程的各類語言、框架太多瞭,技術發展的速度也快得驚人,即使類似功能的框架也多達十幾個,我們很難像學習經典數學、基礎物理學、現代經濟學這樣先學習理論再付諸實踐。Coder有時就要有這種直麵未知的勇氣:先解決、再學習,管它三七二十一。
  本書雖然定位於入門,但其中不乏一些小程序的進階知識,這主要體現在微信開放接口上。學習微信開放接口不僅需要你擁有前端的知識,更要有一定的服務器編程經驗,否則你很難理解為什麼微信要這麼設計開放接口的調用流程?為什麼需要這麼復雜的簽名與令牌體係?
  退一步講,不理解也沒關係,遇到類似問題和功能時,你知道怎麼去解決即可。在編程裏,我們不理解的東西太多瞭,誰能保證我們將做過的項目、産品每一個細節都理解得清清楚楚、明明白白?有時候記住怎麼去做,比為什麼這麼做更加重要。理解清楚隻是一個相對的概念,沒人能夠準確定義理解到什麼程度纔能稱為“理解清楚”,也沒有人能夠說明深入到什麼程度纔算是“深入學習”。所以,有選擇地學習原理,把更多精力放在解決問題上,我認為是一個正確的 選擇。
  在本書中,當遇到你不熟悉的知識體係時,沒有關係,先寫上去,實現這個功能。當以後有瞭更豐富的經驗再迴過頭來看看這些知識點即可。本書的詳細程度完全可以讓你即使不懂某個知識點,也可以完成整個Orange Can項目。
  小程序開發需要的前置技能
  如果不考慮服務器,小程序開發隻需要開發者具有JavaScript和CSS相關知識即可。
  有很多文章說,開發者開發小程序還需要掌握Vue、AngularJS,這有些強人所難瞭。小程序確實有很多和Vue、AngularJS相似的地方,這主要體現在數據綁定上。但Vue和AngularJS遠比微信小程序要復雜得多,為瞭開發一個簡單的小程序,學習遠比這個簡單的東西復雜多倍的框架實在沒有必要。
  從先來後到的角度看,Vue、AngularJS等經典MVVM框架確實先於小程序齣現,且小程序藉鑒瞭許多這些MVVM框架中的經典思想。但對於既沒有開發過小程序,也沒有任何AngularJS、Vue經驗的開發者,這個先來後到的理念對你沒有任何意義。反正都不會,自然是優先學習簡單的,再進階復雜的框架。如果你是一個iOS和Android轉型過來的開發者,完全沒有必要理會Vue和AngularJS,小程序開發中的很多思想相信你在自己的iOS和Android領域已有體會。
  如果你隻是為瞭開發小程序前端部分,更沒有必要學習NodeJS。前端是前端,服務器是服務器,我們能把一端做到極緻就已經非常瞭不起瞭。如果你想一個人開發一個完整的小程序,那服務器語言也沒有規定必須是NodeJS。選擇一個你喜歡的服務器語言,PHP、NodeJS、Python、Java、C#、Ruby都是可以的。
  小程序開發需要掌握什麼,在我看來是一個僞命題。小程序應該成為零基礎入門開發者學習前端的首選開發平颱(以學習與實踐為目的),因為它足夠簡單,又同現在的主流MVVM框架非常類似,學習麯綫很平滑。它應該成為入門其他更復雜、功能更強大的框架的“墊腳石”。
  對於一個傳統的Web開發者,在編寫小程序時隻需要注意以下兩點:
  (1)小程序中沒有DOM,請放棄“首先獲取DOM,再操作DOM”的思維。
  (2)替代DOM操作的方法是“數據綁定”。控製組件顯示隱藏、切換CSS樣式、控製滾動條,這些很容易用DOM思維思考常見功能在小程序中都是通過“數據綁定”實現的。
  如果你想將代碼寫得更加優美和簡潔,那麼補充一些ES6和LESS的知識就更好瞭。
  小程序開發難嗎
  說小程序是所有開發框架/平颱裏*簡單的可能略微有些誇張,但說小程序是目前所有主流移動開發技術中*簡單的毫不誇張。這種簡單來自於兩個方麵:
  *,編寫小程序隻需要掌握JavaScript和CSS兩門語言。前端*難的是有太多Web前端框架、類庫需要學習。但是,小程序裏的JavaScript是“裸奔”的,我們在Web開發中常用的各類框架/類庫在小程序中統統無法使用。jQuery、Zepto、AngularJS、HightCharts、ECharts,這些Web前端學習中的一座座大山,小程序已經全部“乾掉瞭”——小程序運行在一個JSCore中,它本身不支持Web中的window及DOM對象。有些JavaScript庫還是可以使用的,但真的沒有必要瞭,小程序已經提供瞭簡單的架構和內置的特性避免使用這些框架。例如,小程序默認使用babel將開發者代碼所使用的ES6語法轉換成三端都能很好支持的ES5代碼,幫助開發者解決環境不同所帶來的開發問題。你所需要掌握的是JavaScript和CSS,原則上講,不再需要學習各類框架和庫瞭。這無疑減輕瞭很多初學者的負擔。
  第二,小程序本身就是為輕量級應用所設計的平颱,無論是開發工具、設計規範、API設計,無不散發齣一種“大道至簡”的氣息。你隻需要從官方下載一個開發工具即可立即開始開發小程序,沒有復雜的安裝環境,沒有復雜的目錄結構,也沒有復雜的打包、部署流程。小程序很多近似死闆的規範無疑讓開發者減少瞭很多工作量(不給你選擇,自然簡單)。關於對於開發者的約束,這個仁者見仁、智者見智,有人喜歡它的簡單,也有人憎恨它的“不自由”。
  我甚至認為小程序完全可以成為那些完全沒有編程經驗又想進入前端開發領域的人*好的入門平颱。完全可以從小程序入手,通過小程序平滑的學習麯綫,在熟悉編程邏輯後,再反嚮學習Web前端龐大的知識體係,從而進入這個行業。
  處於早期階段的小程序
  小程序從2016年9月22日公布後,在短短的3個月中連續更新瞭8個版本。更新速度非常快。但在2017年1月9日正式開放後,版本迭代速度逐步放慢下來。預計正式上綫後,小程序的接口會逐步趨於穩定。
  小程序目前還處於極為早期的發展階段,但其主要的框架、API都已成型,並不影響我們學習。本書無法保證書籍齣版前所使用的API不會在齣版後有所調整,這個是我不能控製的。本書中所描述的知識與小程序的行為都隻在130400版本中測試和驗證,無法保證以後小程序會不會更改這些行為。事實上,從*開始的內測版本到現在的130400版本,小程序不僅調整API,甚至經常會更改一些MINA框架的運行機製和行為,這將導緻原本可以正常運行的代碼突然變得有問題,需要重新調整。
  除此之外,本書的Orange Can項目是一個接近於真實項目的小程序,還是有一定復雜度的,我無法保證不齣現“任何”bug。事實上,也沒有任何人能保證自己的項目不齣現“任何”bug,我們能做的就是嚴格測試、盡量減少bug的數量,並在發現bug後*時間做齣修正。
  雖然無法保證書籍中的代碼和API完全不會變更,但我會通過微信公眾號、知乎專欄等方式同讀者交流,保持對書籍的網絡更新。同時,也會持續維護Orange Can示例項目的源代碼,保證項目能夠正確、穩定的運行。
  截止本書齣版之前,小程序*新版本為0.14.140900。從130400到140900的版本更迭中,沒有再齣現因版本更新而造成的問題,項目代碼運行良好。可以看到,小程序從1月9號正式開放後,API日趨成熟,基本能夠保持穩定。
  本書與官方文檔的區彆
  本書並不想成為官方開發文檔的“搬運工”,除瞭一些非常必要的地方會引用官方文檔的說明,本書幾乎不會大段復製官方文檔。本書更多使用官方API文檔完成一個項目,對官方文檔的主要內容做詳細的補充說明,並附帶對文檔內容的經驗性總結。
  官方的API文檔通常定位於工具類的速查手冊而非教程。當然對於開發功底深厚的開發者,隻靠開發文檔也可以完成一個小程序項目,但通常需要耗費較長時間。開發文檔隻會告訴開發者有哪些能力,但這些能力如何使用還需要開發者自己探索。
  本書可以告訴開發者如何使用官方API完成我們自己的業務邏輯,並在這個過程中逐步熟悉官方API,從而達到入門小程序並自己開發一個小程序的目的。
  除此之外,目前來說,小程序的開發還是有不少“坑”的。本書嘗試為開發者提前把這些“坑”踩一踩,填實瞭,以幫助開發者集中精力開發業務,減少浪費在小程序bug上的時間。
  一本書是永遠不可能替代官方API文檔的。即使想成為官方文檔的替代品也是不可能的,因為*新*全的資料永遠都由官方文檔率先公布,書籍總會有一定的滯後性,這也是我為什麼沒有在本書中大量引用官方文檔的原因。本書的價值在於讓開發者快速入門小程序,並講解小程序的各個特性,降低開發者的學習成本,快速入門開發自己的應用。
  官方文檔總體來說還是非常全麵優秀的,但也有很多講得不清楚的地方,對於官方文檔中錯誤、遺漏或者沒有講清楚的地方,本書會做詳細的補充說明。建議開發者將本書與官方文檔結閤起來閱讀,學習階段以本書為主,文檔為補充;而在開發階段以文檔為主,本書的補充說明為輔。
  此外,官方為所有開發者準備瞭一個非常詳盡的demo,可在微信中搜索“小程序示例”這幾個關鍵字。
  下載項目資源文件、源代碼
  一本書難以詳盡講解小程序的所有知識點,也無法迴答開發中的所有問題,更加難以應對不斷更新的小程序版本。這是一個互聯網的時代,我們將嘗試用書籍+網絡的方式來維護本書,並對小程序*新的變更做齣代碼上的改動,以保證我們的示例代碼可以正常運行。讀者朋友也可以通過我的微信公眾號嚮我提供反饋,並收到書籍、源代碼變更的更新消息。此外,我的知乎專欄也會經常發布一些關於編程和互聯網方麵的文章。
  所有項目源代碼、資源文件等內容都將在微信公眾號中提供下載地址。讀者可以從我的微信公眾號中獲取項目效果圖和*新版本源代碼。代碼包括Orange Can項目的小程序代碼及部分功能的服務端PHP代碼。
  ● 微信公眾號:小樓昨夜又鞦風
  ● 知乎專欄:小樓昨夜又鞦風
  ● 知乎ID:七月在夏天
  讀者可以訪問地址:http://pan.baidu.com/s/1cxQXie(注意區分數字和英文字母大小寫)獲得本書源代碼。如果在下載過程中遇到問題,請發電子郵件至booksaga@126.com,郵件主題設置為“微信小程序開發入門與實踐配書資源”。
  如何閱讀本書
  如果你是擁有多年豐富開發經驗的開發者,並且已經對小程序有一定瞭解,建議快速瀏覽章節目錄,找到你感興趣的主題,然後隻看這一小節。
  如果你有一定的前端開發基礎,但沒有小程序的開發經驗,建議從頭開始做完Orange Can項目,深入理解書中的每一個開發技巧。建議先看每個頁麵的效果圖,或者下載*新源代碼,在熟悉功能後,自己嘗試編寫項目功能,再對比源代碼的實現方式。也許你寫的項目代碼比本書中的還要優秀。
  如果你想用小程序來入門前端,那麼請先熟悉JavaScript和CSS的基礎知識,然後把Orange Can項目當作一個真實項目,一邊做一邊實踐所學習的JavaScript和CSS知識。遇到不太明白的地方努力搞懂它,實在不懂也沒關係,先寫上去,等有一定經驗後再迴過頭來看。但無論如何,一定要完成Orange Can項目的文章和電影這兩個部分。
  如果你是一個純粹的技術開發者,那麼請直接從第2章開始閱讀。
  總體的建議是,對於Orange Can項目的文章和電影部分,應該一步步跟著書籍逐步實現這兩個核心功能;而對於“設置”頁麵,結閤源代碼“看懂”本書中的內容即可。當然,如果整本書你都能親手敲打每一行代碼,我相信你收獲的絕對不僅僅是小程序開發的知識點。
  此外,對於Orange Can項目的CSS樣式,建議開發者不要完全照搬本書的CSS樣式,每個人編寫CSS樣式的思路韆差萬彆,本書無法保證所有CSS樣式都是有“意義的”,少部分CSS樣式是為瞭“防禦性”而編寫的。重點是小程序相關的知識點和JavaScript代碼。
  微信官方開發者社區
  微信官方開放瞭一個開發者社區,開發者可以在社區裏嚮微信官方反饋bug及提齣問題。
  緻謝
  嚮我多年的朋友蔣建明緻謝,感謝他為本書提供瞭很多寶貴意見。
  感謝石墨文檔聯閤創始人陳旭為本書作序。
  感謝清華大學齣版社王金柱老師的支持,讓我“拖拖拉拉”寫瞭近三個月纔完成本書。
  雷 磊
  2017年2月8日


探索數字世界的無限可能:一本關於未來互聯網形態的深度解析 在信息爆炸的時代,數字技術以前所未有的速度重塑著我們的生活、工作乃至思維方式。互聯網,這個曾經的虛擬空間,如今已滲透到現實的每一個角落,成為連接世界、賦能個體、驅動創新的強大引擎。而在這股浪潮的最前沿,一種全新的互聯網形態正悄然崛起,它以輕巧、便捷、觸手可及的姿態,模糊瞭綫上與綫下的界限,為用戶帶來瞭前所未有的交互體驗和個性化服務。 本書將帶領讀者深入探究這一新興互聯網形態的本質、演進路徑及其對未來社會的影響。我們並非專注於某個特定的技術框架或開發平颱,而是旨在勾勒齣一幅關於“下一代互聯網”的宏大圖景。這本書將是一次思想的旅行,一次對技術趨勢的深刻洞察,一次對未來生活方式的預見。 第一部分:數字浪潮的演進與下一代互聯網的孕育 我們將從互聯網的起源與發展講起,迴顧Web 1.0、Web 2.0時代的標誌性變革,理解信息傳播、內容生産、用戶互動等關鍵要素如何隨著技術進步而不斷升級。從靜態信息的瀏覽,到 UGC(用戶生成內容)的興起,再到社交網絡的普及,每一次飛躍都標誌著互聯網能力的增強和用戶體驗的提升。 然而,隨著移動設備的普及和計算能力的飛躍,我們正迎來一個更加個性化、情境化、即時化的數字時代。傳統的APP下載、安裝、更新模式,在某些場景下顯得略顯笨重。用戶期待更絲滑的體驗,期待信息和服務能夠“即用即走”,並且能夠與現實世界無縫銜接。 正是這種對更高效、更便捷、更融閤的數字體驗的追求,催生瞭我們所探討的下一代互聯網形態。它不再是孤立的應用程序集閤,而是一個由無數微小、智能、互聯的節點組成的生態係統,能夠根據用戶的需求和所處環境,動態地提供最閤適的服務。 第二部分:下一代互聯網的內核:輕量化、智能化與場景化 這一部分將深入剖析構成下一代互聯網核心的幾個關鍵特徵: 輕量化與即時性: 不同於需要大量存儲空間和漫長安裝過程的傳統APP,下一代互聯網的服務通常以一種“輕盈”的方式存在,無需安裝,即點即用。這意味著用戶可以快速獲取所需功能,而無需占用設備資源,也無需擔心版本更新的繁瑣。我們將探討實現這種輕量化和即時性的技術基礎,以及它如何改變用戶獲取信息和服務的方式。 智能化與個性化: 藉助人工智能、大數據分析等技術,下一代互聯網的服務能夠深度理解用戶的行為習慣、偏好以及所處的具體場景。通過精準的算法推薦、智能的交互設計,它能夠為用戶提供高度個性化的信息和服務,甚至在用戶尚未主動提齣需求時,就能預判並滿足其潛在需求。我們將解析智能推薦、自然語言處理、計算機視覺等技術在其中扮演的角色。 場景化與無縫融閤: 下一代互聯網服務的最大亮點在於其強大的場景化能力。它可以與用戶的現實生活場景緊密結閤,打破虛擬與現實的界限。例如,用戶在購物時,能夠直接獲取商品的詳細信息、用戶評價、甚至虛擬試穿體驗;用戶在旅行時,能夠實時獲取目的地信息、交通指引、個性化推薦的景點和餐廳。我們將探討如何通過技術手段,實現服務在不同場景下的無縫切換和智能響應。 連接與生態: 下一代互聯網並非是孤立的解決方案,而是構建在一個龐大而互聯的生態係統之中。各種服務、平颱、開發者之間相互協作,共同構建瞭一個豐富的內容和服務矩陣。這種生態的開放性和互通性,極大地激發瞭創新活力,為用戶提供瞭更廣泛的選擇和更優質的體驗。我們將分析開放API、標準協議、開發者社區等在構建生態中的重要作用。 第三部分:應用場景的無限拓展與生活方式的重塑 下一代互聯網的潛力並非停留在理論層麵,而是已經並將繼續在各個領域展現齣強大的生命力。本部分將通過生動詳實的案例,展示其在不同場景下的應用: 消費領域: 從綫上購物到綫下體驗,下一代互聯網將徹底改變我們的消費模式。智能導購、虛擬試衣、個性化推薦、AR/VR互動營銷,都將為消費者帶來前所未有的購物樂趣和便利。 生活服務: 無論是餐飲預訂、齣行導航、健康管理,還是傢政服務、社區繳費,下一代互聯網都能提供更加高效、便捷、智能的解決方案,讓日常生活更加輕鬆自如。 教育與學習: 互動式學習、個性化輔導、隨時隨地的知識獲取,下一代互聯網將打破傳統教育的時空限製,為學習者提供更加靈活和高效的學習體驗。 工作與協作: 智能化的辦公工具、無縫的信息共享、高效的遠程協作,下一代互聯網將提升工作效率,重塑團隊協作模式,釋放更多工作潛力。 信息獲取與娛樂: 新聞資訊的精準推送、個性化的內容推薦、沉浸式的娛樂體驗,下一代互聯網將使信息獲取更加高效,娛樂方式更加多樣。 通過這些應用案例,讀者將深刻理解下一代互聯網如何滲透到我們生活的方方麵麵,如何提升效率,優化體驗,並最終重塑我們的生活方式。 第四部分:技術基石與未來展望 要實現下一代互聯網的宏大願景,離不開底層技術的支撐。本部分將簡要迴顧支撐這一形態的關鍵技術,包括但不限於: 雲計算與邊緣計算: 為海量服務的運行和數據的處理提供強大的算力支持。 大數據與人工智能: 實現對用戶需求的精準預測和個性化服務。 物聯網(IoT): 連接現實世界中的各種設備,實現信息的實時采集和服務的智能化。 增強現實(AR)與虛擬現實(VR): 創造更加沉浸式和交互式的用戶體驗。 區塊鏈技術(在某些場景下): 提升數據安全性和可信度。 API經濟與微服務架構: 構建開放、靈活、可擴展的服務生態。 最後,我們將展望下一代互聯網的未來發展趨勢。它將朝著何方演進?會帶來哪些新的機遇和挑戰?開發者、企業和用戶又該如何應對這場變革?我們將探討標準化、互操作性、數據隱私、安全倫理等可能麵臨的關鍵問題,並為讀者提供一些思考的方嚮。 本書的寫作風格旨在以一種清晰、邏輯嚴謹、通俗易懂的方式,為讀者提供一個全麵而深入的理解。我們避免使用過於晦澀的技術術語,而是注重闡述理念和應用。通過豐富的案例分析和前瞻性的思考,我們希望能夠激發讀者對數字世界的無限好奇,並為他們理解和擁抱未來的互聯網形態提供有力的指引。 這不僅是一本關於技術的書,更是一本關於未來、關於創新、關於如何更好地連接世界和體驗生活的書。它將幫助你理解當下正在發生的巨變,並為你在未來的數字時代中找到屬於自己的位置做好準備。

用戶評價

評分

坦白說,我買這本書的時候,最擔心的就是它會不會太理論化,讀起來枯燥乏味。但事實證明我的擔憂是多餘的。這本書最大的亮點在於它的“實踐”二字,名副其實。它不是那種隻講理論的書,而是把每一個重要的知識點都落到瞭實處,通過一個個具體的小項目來帶領讀者一步步完成。我印象最深的是書中關於“列錶展示與數據請求”的部分,它教我如何從服務器獲取數據,然後如何在小程序界麵上動態地展示齣來,比如新聞列錶、商品列錶等等。書中提供的代碼片段非常精煉,而且都有詳細的注釋,讓我這個新手也能看得懂。更重要的是,書裏還鼓勵讀者自己去修改和擴展這些例子,比如嘗試添加搜索功能,或者實現下拉刷新。這種“做中學”的方式,讓我感覺自己是真的在掌握這門技術,而不是被動地接受信息。我甚至自己動手把書中的一個“天氣預報”的小程序改成瞭“股票行情”的小程序,雖然功能很簡單,但那種成就感是無與倫比的。這本書讓我深刻體會到,學習編程,光有理論是不夠的,關鍵是要動手去實踐,去創造。

評分

這本書給我最大的感受是,它不僅僅是一本技術手冊,更像是一位循循善誘的老師,或者是一位經驗豐富的同行。它讓我從一個對小程序開發感到陌生和畏懼的人,變成瞭一個敢於嘗試、樂於動手的小開發者。書中反復強調瞭“理解本質,靈活運用”的理念,讓我明白學習技術不僅僅是記住 API,更重要的是理解其背後的原理和設計思想。我特彆喜歡書中關於“小程序生命周期”和“全局數據管理”的講解,這些內容雖然聽起來有些“大而化不全”,但作者通過非常具體的場景和代碼示例,讓我能夠直觀地理解它們在實際開發中的作用。比如,如何利用 `onLaunch` 和 `onShow` 來初始化應用和處理頁麵進入,如何用 `globalData` 來實現多個頁麵之間的數據共享,這些都大大提升瞭我的開發效率和代碼的可維護性。而且,書中在講解每一個新概念時,都會迴顧之前學過的知識,形成一個知識體係的閉環,讓我感覺學習過程是連貫而有邏輯的,而不是碎片化的。這本書的價值,遠超其本身的定價,它點燃瞭我繼續深入學習小程序開發的興趣。

評分

拿到這本《微信小程序開發入門與實踐/移動開發叢書》的時候,我本來抱著一種試試看的心態。我之前對編程完全是門外漢,雖然聽過小程序,但總覺得離自己很遠,以為是技術大牛纔玩得轉的東西。然而,這本書的開篇就讓我眼前一亮,它並沒有一開始就堆砌大量晦澀的代碼和理論,而是從一個非常接地氣的場景齣發,比如“用小程序解決生活中的小煩惱”,一下子就拉近瞭我和這個技術之間的距離。作者用非常生動形象的比喻,把那些抽象的概念比如“組件”、“事件”解釋得清晰易懂。我尤其喜歡其中關於“頁麵跳轉與傳參”的章節,以前我總覺得數據在不同頁麵之間傳遞是一件很復雜的事情,但書裏用瞭一個很巧妙的例子,就像是在朋友之間傳遞紙條一樣,把這個過程分解得非常細緻,並且給齣瞭好幾種實現方式,還分析瞭它們的優缺點。讀完這個部分,我甚至有點躍躍欲試,想自己動手去嘗試一下。而且,書中穿插的一些開發小技巧和注意事項,比如如何優化加載速度,如何避免常見的bug,這些都是我在網上零散學習時很難係統性獲取到的信息,這本書就像一個經驗豐富的前輩,把踩過的坑都替你指齣來瞭,真的省瞭我不少時間和精力。

評分

我是一個經常需要與後端開發人員協作的人,所以對小程序與後端接口的交互部分非常感興趣。這本書在這方麵的內容非常紮實,而且講解得非常透徹。它詳細介紹瞭小程序如何通過 `wx.request` 方法嚮服務器發送HTTP請求,如何處理GET、POST等不同的請求方法,以及如何解析服務器返迴的JSON數據。書中還特彆強調瞭錯誤處理和數據加載狀態的展示,比如如何用加載中的提示,如何處理網絡請求失敗的情況,這些都是保證小程序穩定性和用戶體驗的關鍵。我記得書中有一個章節專門講解瞭如何構建一個簡單的“用戶登錄”功能,包括如何將用戶的賬號密碼發送到後端,以及如何處理服務器返迴的登錄狀態。這個例子非常實用,讓我對小程序與後端進行數據交互有瞭更清晰的認識。通過這本書,我不僅學會瞭如何“拿”到數據,更學會瞭如何“穩妥”地處理數據,如何讓小程序與後端協同工作得更加順暢,這對於我構建更復雜、更完善的應用非常有幫助。

評分

我是一個比較注重細節和用戶體驗的讀者,所以對小程序的界麵設計和交互邏輯非常關注。在這方麵,《微信小程序開發入門與實踐》這本書做得非常齣色。它並沒有將界麵設計作為 afterthought,而是從一開始就將其融入到開發過程中。書中花瞭相當大的篇幅講解如何利用小程序內置的組件來構建美觀且功能強大的用戶界麵,比如如何使用 `view`、`text`、`image` 這些基礎組件,以及如何利用 `scroll-view` 實現流暢的滾動效果,還有 `swiper` 組件製作輪播圖。作者還貼心地提供瞭很多關於組件樣式的調整技巧,如何實現響應式布局,讓小程序在不同尺寸的設備上都能有良好的顯示效果。更讓我驚喜的是,書中還涉及到瞭小程序中的動畫效果和一些簡單的交互設計原則。比如,如何通過 `bindtap` 事件響應用戶的點擊,如何實現頁麵之間的平滑過渡動畫,這些細節的呈現,讓我的小程序開發不再是簡單的功能堆砌,而是開始有瞭“靈魂”。我學會瞭如何讓我的小程序看起來更專業,用起來更順手,這對於提升用戶滿意度至關重要。

評分

包裝很好,物流也很快,以後還會來

評分

很好很好很好很好很好很好很好很好很好很好很好很好很好很好

評分

入門的好書

評分

目前市場上最值得購買的小程序開發書籍,作者實戰經驗豐富,有調理,清晰闡述瞭小程序開發的技術,收獲很大

評分

書還沒看呢,不過送的非常及時。

評分

非常實用的一本書,講解很詳細

評分

書買迴來,還沒看,正在學老師的慕課微信小程序課程,感覺書本和課程相互配閤,可以學到好多東西。滿滿的乾貨,期待進步,加油共勉!!

評分

包裝很好,物流也很快,以後還會來

評分

可以

相關圖書

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

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