第108篇
極客時(shí)間《許式偉的架構(gòu)課》課程筆記适滓。
對(duì)于桌面程序,最核心的話題是交互恋追。
下面重點(diǎn)討論操作系統(tǒng)對(duì)交互范式的設(shè)計(jì)粒竖。
命令行交互
- 交互設(shè)備:鍵盤+顯示器
- 輸入方式:命令行或標(biāo)準(zhǔn)輸入(stdin)
- 輸出:文本方式向屏幕輸出,分為標(biāo)準(zhǔn)輸出(stdout)和標(biāo)準(zhǔn)錯(cuò)誤(stderr)
- 輸入輸出可以被重定向几于,比如重定向?qū)懭氲轿募蛘咄ㄟ^(guò)管道重定向另一個(gè)程序的輸入
-
缺陷:限制太大,無(wú)法滿足常用需求沿后,如編輯器
字符界面
- 交互設(shè)備:鍵盤+顯示器
- 輸入方式:鍵盤按鍵事件(KeyDown 和 KeyUp)
- 輸出:可以修改屏幕任何位置顯示的字符
- 鍵盤功能分化:輸入文本和輸入命令
- 缺陷:有很大局限沿彭,如游戲的需求場(chǎng)景無(wú)法滿足
注: TDI 含義是字符設(shè)備接口(Text Device Interface)蛾找,它指的是一組向屏幕繪制文本的方法集合奸披。
圖形界面
- 交互設(shè)備:鍵盤+鼠標(biāo)+顯示器+音箱
- 輸出:從字符變成像素。鼠標(biāo)的出現(xiàn)就因?yàn)槠聊痪忍撸面I盤不自然
- 主板上有內(nèi)置喇叭浑厚,目前最大用途是提示重大錯(cuò)誤發(fā)生
- 出現(xiàn)多窗口Window(視圖view),窗口是一個(gè)獨(dú)立可復(fù)用的界面元素
- 窗口系統(tǒng)接管桌面程序主邏輯赫悄,提供基于事件驅(qū)動(dòng)的編程框架仙畦,業(yè)務(wù)代碼由界面框架驅(qū)動(dòng)
注: GDI 含義是圖形設(shè)備接口(Graphic Device Interface),它指的是一組向指定窗口(注意不是屏幕)繪制圖形的方法集合廉邑。
移動(dòng)時(shí)代
- 手機(jī)成為最主流計(jì)算機(jī)
- 交互設(shè)備:觸摸屏+麥克風(fēng)+內(nèi)置揚(yáng)聲器
- 鼠標(biāo)交互被淘汰哥蔚,多點(diǎn)觸摸取代鼠標(biāo)
- 鍵盤+鼠標(biāo)+顯示器全部被融合在觸摸屏上
智能交互
- 麥克風(fēng)讓計(jì)算機(jī)增加了一個(gè)輸入:語(yǔ)音
- 語(yǔ)音3種典型用法:應(yīng)用內(nèi)錄音作為媒體,或者識(shí)別為文本(語(yǔ)音搜索)蛛蒙、語(yǔ)音輸入法輸入文本糙箍、基于語(yǔ)音助手交互(如Siri)
- 未來(lái)交互設(shè)備:觸摸屏+攝像頭+麥克風(fēng)+內(nèi)置揚(yáng)聲器
- 語(yǔ)音交互發(fā)展成熟后,可重寫框架牵祟,把語(yǔ)音和觸摸屏結(jié)合深夯,形成新的交互范式