注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)Xamarin全棧開發(fā)技術(shù)與實(shí)踐(微課版)

Xamarin全棧開發(fā)技術(shù)與實(shí)踐(微課版)

Xamarin全棧開發(fā)技術(shù)與實(shí)踐(微課版)

定 價(jià):¥79.00

作 者: 張引,趙玉麗,張斌,高克寧 著
出版社: 清華大學(xué)出版社
叢編項(xiàng): 面向新工科專業(yè)建設(shè)計(jì)算機(jī)系列教材
標(biāo) 簽: 暫缺

ISBN: 9787302591535 出版時(shí)間: 2022-01-01 包裝:
開本: 16開 頁(yè)數(shù): 344 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  復(fù)雜工程問(wèn)題的解決要求學(xué)生具備整合運(yùn)用客戶端開發(fā)技能棧、服務(wù)器端開發(fā)技能棧、軟件工程技能棧、人機(jī)交互技能棧等多個(gè)技能棧的能力。為培養(yǎng)學(xué)生多技能棧整合運(yùn)用的能力,本書介紹基于Xamarin.Forms框架的面向iOS、Android,以及Windows平臺(tái)的客戶端服務(wù)器端Xamarin全棧開發(fā)技術(shù),涵蓋語(yǔ)言特性、設(shè)計(jì)思想、技術(shù)技巧、測(cè)試方法等內(nèi)容,并通過(guò)一個(gè)完整的實(shí)例連接全部知識(shí)與技能。本書尤其注重多種技術(shù)棧的有機(jī)融合,為培養(yǎng)解決復(fù)雜工程問(wèn)題的能力提供完整的支持。 本書面向具有一定計(jì)算機(jī)專業(yè)課基礎(chǔ)的讀者。本書讀者應(yīng)至少掌握一門編程語(yǔ)言,并能獨(dú)立完成簡(jiǎn)單的開發(fā)任務(wù)。本書可作為全棧開發(fā)技術(shù)相關(guān)課程的本科生教材,也可以作為基于Xamarin.Forms框架的全棧開發(fā)入門參考書。

作者簡(jiǎn)介

  張引,男,1985年5月生于遼寧沈陽(yáng)?,F(xiàn)就職東北大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院。信息搜索領(lǐng)域副教授,主要從事搜索學(xué)習(xí)相關(guān)研究。發(fā)表SCI論文近十篇。獲遼寧省科技進(jìn)步二等獎(jiǎng)一次。

圖書目錄

部分基礎(chǔ)與用戶
第1章馬上開始3
1.1系統(tǒng)要求(簡(jiǎn)化版)3
1.2下載Visual Studio Community3
1.3安裝Visual Studio Community4
1.4注冊(cè)、下載并安裝ReSharper4
1.5安裝Android Studio5
1.6Hello World!6
1.7背景與概念8
1.8系統(tǒng)要求(完整版)9
1.9動(dòng)手做10
第2章認(rèn)識(shí)一批控件11
2.1網(wǎng)格布局控件Grid11
2.2線性布局控件StackLayout13
2.3滾動(dòng)視圖控件ScrollView14
2.4超鏈接按鈕HyperlinkButton14
2.5彈出信息DisplayAlert16
2.6開關(guān)控件Switch16
2.7滑塊控件Slider17
2.8控件使用的一般規(guī)律18
2.9動(dòng)手做19
第3章尋找用戶20
3.1重視項(xiàng)目問(wèn)題的質(zhì)量20
3.2“認(rèn)真地”觀察用戶: 使用5W方法22
3.3進(jìn)一步了解用戶: 面對(duì)面訪談24
3.4同理心25
3.5奶爸F的觀察與訪談總結(jié)25
3.6動(dòng)手做26
3.7給PBL教師的建議26
第4章再認(rèn)識(shí)一批控件28
4.1響應(yīng)式設(shè)計(jì)與VisualStateManager28
4.2列表視圖控件ListView31
4.3動(dòng)手做34
4.4給PBL教師的建議34
第5章提出并評(píng)價(jià)界面設(shè)計(jì)36
5.1繪制界面設(shè)計(jì)36
5.2形成操作動(dòng)線38
5.3評(píng)價(jià)界面設(shè)計(jì)39
5.4動(dòng)手做40
第6章開啟數(shù)據(jù)管理之門41
6.1管理少量本地?cái)?shù)據(jù): 偏好存儲(chǔ)42
6.2管理大量本地?cái)?shù)據(jù): 數(shù)據(jù)庫(kù)42
6.3訪問(wèn)遠(yuǎn)程數(shù)據(jù): Web服務(wù)46
6.4是否優(yōu)雅47
6.5動(dòng)手做49
Xamarin全棧開發(fā)技術(shù)與實(shí)踐(微課版)目錄第二部分框架與方法
第7章踏上軟件架構(gòu)之路53
7.1ModelViewViewModel架構(gòu)模式53
7.2View54
7.3ViewModel55
7.3.1屬性56
7.3.2Command(命令)58
7.4ViewModelLocator59
7.5App.xaml61
7.6再次審視MVVM模式62
7.7動(dòng)手做63
第8章MVVM IService架構(gòu)64
8.1Model64
8.2IService65
8.3在ViewModel中使用IService66
8.4實(shí)現(xiàn)IService68
8.5在ViewModel中獲得IService實(shí)例69
8.6審視MVVM IService架構(gòu)71
8.7動(dòng)手做72
8.8給PBL教師的建議72
第9章編碼規(guī)范73
9.1命名規(guī)范73
9.2排版規(guī)范75
9.3文檔注釋規(guī)范76
9.4動(dòng)手做78
9.5給PBL教師的建議78
第10章重新審視數(shù)據(jù)庫(kù)79
10.1開啟Dpx: 使用MasterDetail項(xiàng)目模板79
10.2選擇“好的”數(shù)據(jù)庫(kù)81
10.3提出“好的”數(shù)據(jù)庫(kù)設(shè)計(jì)83
10.4詩(shī)詞數(shù)據(jù)Model: Poetry類84
10.5詩(shī)詞數(shù)據(jù)管理IService: IPoetryStorage86
10.6實(shí)現(xiàn)IPoetryStorage87
10.6.1連接到數(shù)據(jù)庫(kù): 通過(guò)Connection屬性87
10.6.2實(shí)現(xiàn)GetPoetryAsync函數(shù): 語(yǔ)言集成查詢LINQ88
10.6.3實(shí)現(xiàn)GetPoetriesAsync函數(shù): LINQ翻頁(yè)89
10.6.4實(shí)現(xiàn)InitializeAsync函數(shù): 嵌入式資源90
10.6.5實(shí)現(xiàn)Initialized函數(shù)91
10.7反思數(shù)據(jù)庫(kù)91
10.8動(dòng)手做92
10.9給PBL教師的建議92
第11章測(cè)試代碼94
11.1Hello Unit Test World!94
11.2Mocking: 模擬任意接口的實(shí)現(xiàn)96
11.3決定測(cè)試內(nèi)容97
11.4測(cè)試PoetryStorage98
11.5為測(cè)試優(yōu)化設(shè)計(jì)99
11.6再次測(cè)試PoetryStorage101
11.6.1測(cè)試Initialized函數(shù): 驗(yàn)證Mocking調(diào)用101
11.6.2測(cè)試InitializeAsync函數(shù): 清除副作用102
11.6.3測(cè)試GetPoetryAsync函數(shù): 再次調(diào)整設(shè)計(jì)103
11.6.4測(cè)試GetPoetriesAsync函數(shù): 初識(shí)動(dòng)態(tài)LINQ105
11.7反思單元測(cè)試106
11.8動(dòng)手做107
11.9給PBL教師的建議107
第12章實(shí)戰(zhàn)級(jí)數(shù)據(jù)庫(kù)View與ViewModel109
12.1搜索結(jié)果頁(yè)View: 設(shè)計(jì)時(shí)數(shù)據(jù)109
12.2搜索結(jié)果頁(yè)ViewModel111
12.2.1無(wú)限滾動(dòng)與InfiniteScrollCollection111
12.2.2重置搜索結(jié)果與PageAppearingCommand114
12.3單元測(cè)試搜索結(jié)果頁(yè)ViewModel115
12.3.1為ViewModel準(zhǔn)備IService115
12.3.2測(cè)試Command: 使用Command函數(shù)117
12.3.3測(cè)試可綁定屬性: 監(jiān)聽PropertyChanged事件118
12.4連接View與ViewModel119
12.4.1ViewModelLocator與App.xaml120
12.4.2擴(kuò)展控件的功能: 使用Behavior121
12.5實(shí)戰(zhàn)的反思123
12.6動(dòng)手做124
12.7給PBL教師的建議124
第13章源代碼管理、分支開發(fā)與Git125
13.1準(zhǔn)備工作125
13.2將項(xiàng)目發(fā)布到Gitee125
13.3同步更改127
13.4解決沖突128
13.5撤銷更改130
13.6分支開發(fā)131
13.7關(guān)于Git133
第14章今日推薦頁(yè)ViewModel與IService: 從需求到設(shè)計(jì)135
14.1確定ViewModel的數(shù)據(jù)與功能135
14.2審視相關(guān)的頁(yè)面137
14.3設(shè)計(jì)IService138
14.4反思設(shè)計(jì)140
14.5動(dòng)手做141
14.6給PBL教師的建議141
第15章實(shí)戰(zhàn)分支開發(fā)142
15.1今日推薦頁(yè)View分支142
15.1.1實(shí)踐VisualStateManager142
15.1.2顯示背景圖片: 使用綁定值轉(zhuǎn)換器IValueConverter143
15.1.3用戶界面的平臺(tái)差異: 使用OnPlatform146
15.2今日推薦頁(yè)ViewModel分支147
15.2.1初始化ViewModel: 使用PageAppearingCommand147
15.2.2背景圖片與詩(shī)詞推薦的同步初始化: 并行執(zhí)行代碼150
15.3單元測(cè)試今日推薦頁(yè)ViewModel: 測(cè)試并行執(zhí)行的代碼152
15.4反思分支開發(fā)153
15.5動(dòng)手做154
15.6給PBL教師的建議154
第16章實(shí)戰(zhàn)級(jí)Web服務(wù)客戶端155
16.1今日詩(shī)詞Web服務(wù)客戶端155
16.1.1構(gòu)建穩(wěn)定的Web服務(wù)客戶端: 使用using與異常處理155
16.1.2警告服務(wù)IAlertService: 為IService服務(wù)的IService157
16.1.3實(shí)現(xiàn)警告服務(wù)IAlertService: MVVM IService架構(gòu)的
分層視圖158
16.1.4緩存訪問(wèn)Token: 內(nèi)存存儲(chǔ)兩級(jí)緩存策略161
16.1.5設(shè)置訪問(wèn)Token: 使用HttpRequestHeaders163
16.1.6準(zhǔn)備備份方案163
16.2模仿Web服務(wù)165
16.3單元測(cè)試Web服務(wù)客戶端167
16.4反思Web服務(wù)客戶端168
16.5動(dòng)手做168
16.6給PBL教師的建議168
第17章依賴注入170
17.1新建對(duì)象的迷思170
17.2使用工廠函數(shù)創(chuàng)建對(duì)象172
17.3使用依賴注入容器創(chuàng)建對(duì)象174
17.4反思依賴注入176
第三部分深入客戶端
第18章文件的下載與緩存179
18.1下載文件179
18.2檢查文件更新180
18.3設(shè)計(jì)文件緩存182
18.4實(shí)現(xiàn)文件緩存184
18.5文件的單元測(cè)試186
18.6反思文件操作187
第19章頁(yè)面導(dǎo)航189
19.1MasterDetail模板的頁(yè)面導(dǎo)航189
19.1.1主從列表導(dǎo)航190
19.1.2主從菜單導(dǎo)航191
19.2設(shè)計(jì)導(dǎo)航服務(wù)194
19.3實(shí)現(xiàn)導(dǎo)航服務(wù)195
19.3.1實(shí)現(xiàn)內(nèi)容導(dǎo)航服務(wù)195
19.3.2實(shí)現(xiàn)內(nèi)容頁(yè)面激活服務(wù): 使用字典緩存對(duì)象197
19.3.3實(shí)現(xiàn)根頁(yè)面激活服務(wù): 工廠函數(shù)的優(yōu)勢(shì)199
19.3.4實(shí)現(xiàn)根導(dǎo)航服務(wù): 重置導(dǎo)航歷史199
19.4添加并導(dǎo)航到推薦詳情頁(yè)201
19.4.1推薦詳情頁(yè)ViewModel: 共用ViewModel201
19.4.2推薦詳情頁(yè)View202
19.5反思頁(yè)面導(dǎo)航204
19.6動(dòng)手做204
19.7給PBL教師的建議204
第20章帶參數(shù)的頁(yè)面導(dǎo)航206
20.1添加詩(shī)詞詳情頁(yè)206
20.2實(shí)現(xiàn)帶參數(shù)導(dǎo)航207
20.2.1自定義可綁定屬性209
20.2.2綁定到自定義屬性210
20.2.3賦值到自定義屬性211
20.3導(dǎo)航到詩(shī)詞詳情頁(yè)212
20.3.1確定ListView的點(diǎn)擊項(xiàng): 使用事件參數(shù)轉(zhuǎn)換器212
20.3.2傳遞點(diǎn)擊項(xiàng)到Command: 使用帶參數(shù)的Command213
20.4反思帶參數(shù)導(dǎo)航214
第21章ViewModel in ViewModel215
21.1來(lái)自詩(shī)詞搜索頁(yè)的挑戰(zhàn): “大小”ViewModel215
21.1.1“小”ViewModel216
21.1.2“大”ViewModel218
21.2單元測(cè)試“大小ViewModel”: 使用虛函數(shù)220
21.3添加詩(shī)詞搜索頁(yè)221
21.4動(dòng)手做222
21.5給PBL教師的建議222
第22章LINQ與動(dòng)態(tài)查詢223
22.1深入LINQ223
22.2再識(shí)動(dòng)態(tài)LINQ225
22.2.1從FilterViewModel生成查詢條件226
22.2.2組合多個(gè)查詢條件227
22.3單元測(cè)試動(dòng)態(tài)LINQ: 截獲模仿函數(shù)的參數(shù)228
22.4更新搜索結(jié)果頁(yè)230
22.5反思LINQ230
22.6動(dòng)手做231
第23章頁(yè)面導(dǎo)航的更多細(xì)節(jié)232
23.1傳遞搜索條件的第二種方案232
23.1.1更新推薦詳情頁(yè)ViewModel233
23.1.2更新詩(shī)詞搜索頁(yè)234
23.2更新菜單頁(yè)235
23.3初始化頁(yè)236
23.3.1添加初始化頁(yè)236
23.3.2導(dǎo)航到初始化頁(yè)238
23.4動(dòng)手做239
23.5給PBL教師的建議239
第24章消息機(jī)制240
24.1使用返回值傳遞信息240
24.2使用事件傳遞信息241
24.2.1定義事件241
24.2.2關(guān)聯(lián)事件處理函數(shù)242
24.2.3觸發(fā)事件242
24.3使用消息機(jī)制傳遞信息244
24.3.1定義消息244
24.3.2監(jiān)聽消息244
24.3.3發(fā)布消息245
24.4使用消息機(jī)制更新導(dǎo)航菜單245
24.4.1定義根導(dǎo)航消息245
24.4.2監(jiān)聽根導(dǎo)航消息245
24.4.3發(fā)布根導(dǎo)航消息246
24.5反思消息機(jī)制246
24.6動(dòng)手做247
24.7給PBL教師的建議247
第25章跨頁(yè)面同步數(shù)據(jù)248
25.1收藏Model與IService248
25.1.1設(shè)計(jì)收藏Model248
25.1.2設(shè)計(jì)收藏IService249
25.1.3實(shí)現(xiàn)收藏IService250
25.2詩(shī)詞收藏頁(yè)ViewModel與View250
25.3更新詩(shī)詞詳情頁(yè)252
25.3.1讀取詩(shī)詞收藏狀態(tài)253
25.3.2更新詩(shī)詞收藏狀態(tài)254
25.4同步詩(shī)詞詳情頁(yè)與詩(shī)詞收藏頁(yè)256
25.4.1定義收藏存儲(chǔ)已更新事件256
25.4.2處理收藏存儲(chǔ)已更新事件257
25.4.3觸發(fā)收藏存儲(chǔ)已更新事件258
25.5反思跨頁(yè)面同步數(shù)據(jù)258
25.6動(dòng)手做259
25.7給PBL教師的建議259
第26章面向數(shù)據(jù)同步的設(shè)計(jì)260
26.1數(shù)據(jù)同步260
26.2為同步修改設(shè)計(jì)261
26.2.1修改Model261
26.2.2修改IService與ViewModel261
26.3同步IService263
26.3.1設(shè)計(jì)同步IService263
26.3.2實(shí)現(xiàn)同步IService266
26.4反思數(shù)據(jù)同步269
26.5給PBL教師的建議270
第27章與OneDrive同步271
27.1為什么是OneDrive271
27.2準(zhǔn)備工作272
27.2.1厘清概念272
27.2.2注冊(cè)客戶端ID273
27.2.3準(zhǔn)備集成Azure AD身份驗(yàn)證273
27.3實(shí)現(xiàn)OneDrive遠(yuǎn)程收藏存儲(chǔ)274
27.3.1登錄與注銷274
27.3.2上傳與下載275
27.4實(shí)現(xiàn)數(shù)據(jù)同步頁(yè)277
27.4.1數(shù)據(jù)同步頁(yè)ViewModel277
27.4.2數(shù)據(jù)同步頁(yè)View278
27.5再次反思設(shè)計(jì)278
27.6給PBL教師的建議279
第四部分服務(wù)器端開發(fā)
第28章選擇服務(wù)器端技術(shù)方案283
28.1自有服務(wù)器 VS 云服務(wù)器: 選擇基礎(chǔ)設(shè)施283
28.2自建平臺(tái) VS 云平臺(tái): 選擇開發(fā)與部署平臺(tái)284
28.3更加簡(jiǎn)便的方法285
28.4其他可選項(xiàng)286
28.5Hello Functions287
28.6反思服務(wù)器端技術(shù)選型288
28.7動(dòng)手做288
28.8給PBL教師的建議288
第29章服務(wù)器端身份驗(yàn)證289
29.1選擇服務(wù)器端身份驗(yàn)證方案289
29.2Auth0的身份驗(yàn)證過(guò)程290
29.3服務(wù)器端身份驗(yàn)證IService292
29.3.1設(shè)計(jì)身份驗(yàn)證IService292
29.3.2實(shí)現(xiàn)身份驗(yàn)證IService292
29.4設(shè)計(jì)遠(yuǎn)程收藏存儲(chǔ)Web服務(wù)294
29.5首個(gè)Web服務(wù): Ping295
29.6動(dòng)手做296
第30章客戶端身份驗(yàn)證297
30.1設(shè)計(jì)客戶端身份驗(yàn)證IService297
30.2實(shí)現(xiàn)客戶端身份驗(yàn)證IService298
30.3添加Azure收藏存儲(chǔ)299
30.3.1實(shí)現(xiàn)SignInAsync函數(shù)299
30.3.2實(shí)現(xiàn)SignOutAsync函數(shù)300
30.3.3實(shí)現(xiàn)IsSignedInAsync函數(shù)300
30.4更新數(shù)據(jù)同步頁(yè)303
30.5繼續(xù)實(shí)現(xiàn)客戶端身份驗(yàn)證IService303
30.6反思客戶端身份驗(yàn)證304
30.7動(dòng)手做305
第31章服務(wù)器端授權(quán)306
31.1設(shè)計(jì)服務(wù)器端授權(quán)IService306
31.2為遠(yuǎn)程收藏存儲(chǔ)Web服務(wù)選擇數(shù)據(jù)庫(kù)307
31.2.1要存儲(chǔ)的數(shù)據(jù)307
31.2.2可用的存儲(chǔ)服務(wù)307
31.3實(shí)現(xiàn)授權(quán)IService: 使用Azure Table Storage308
31.3.1編輯Table Storage數(shù)據(jù)308
31.3.2連接到Table Storage308
31.3.3讀取Table Storage數(shù)據(jù)309
31.3.4為Ping Web服務(wù)添加授權(quán)310
31.4反思服務(wù)器端授權(quán)310
31.5動(dòng)手做311
第32章緩存訪問(wèn)Token312
32.1設(shè)計(jì)Token緩存IService312
32.2實(shí)現(xiàn)Token緩存IService313
32.2.1實(shí)現(xiàn)GetAsync函數(shù)313
32.2.2實(shí)現(xiàn)SetAsync函數(shù)314
32.3更新AuthenticationService315
32.4動(dòng)手做315
第33章上傳與下載Web服務(wù)316
33.1服務(wù)器端收藏存儲(chǔ)316
33.1.1設(shè)計(jì)服務(wù)器端收藏存儲(chǔ)IService316
33.1.2實(shí)現(xiàn)服務(wù)器端收藏存儲(chǔ)IService317
33.2下載Web服務(wù)318
33.3上傳Web服務(wù)320
33.4更新客戶端AzureFavoriteStorage321
33.5清理工作323
第34章下一步的學(xué)習(xí)324

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)