硬件,軟件與用戶體驗
在上一篇文章里,我們探討了如何實現(xiàn)嵌入式設備的互聯(lián)性,以及有線、無線與手持設備網(wǎng)絡的利弊。但是我們并未探討什么是基礎設備,以及軟、硬件的發(fā)展趨勢會如何影響設備開發(fā)者。本文在此將重點討論軟、硬件以及新興科技的發(fā)展趨勢,還有這些對于嵌入式設備的開發(fā)者又意味著什么。
本文引用地址:http://www.ex-cimer.com/article/115616.htm在過去的50年間,我們見證了計算技術的發(fā)展:從大型主機到互聯(lián)的臺式電腦再到智能連接設備。嵌入式硬件也經歷了類似的發(fā)展過程:從簡單的4比特、8比特、16比特的計算設備,到32比特的單核與多核芯片,再到為某些類別嵌入式設備而設計的64比特多核芯片。作為單核的延伸,多核這種發(fā)展趨勢加入了互聯(lián)性,因此一臺設備可以成為分布式嵌入式系統(tǒng)的一部分,而不是像過去那樣僅僅是一臺獨立的設備。編寫一個運行在單核CPU上的單線程進程相當簡單。然而,開發(fā)多線程的代碼就要復雜得多。如果我們再進一步,想要開發(fā)多線程的代碼,并在多核的機器上運行,而且每個內核的負載能保持平衡,那么開發(fā)者的工作就會更復雜。如果你覺得這樣還不夠,那就把你的設備變成分布式嵌入式系統(tǒng)的一部分吧,這樣嵌入式開發(fā)者就會被忙得焦頭爛額。
新興技術的發(fā)展趨勢
軟件領域的發(fā)展趨勢與此類似。幾年前,大部分軟件是用匯編語言編寫的。這么做非常耗時,如果打印在折疊紙上的話,大約是每行6個字符,每頁共132列。這樣其他人就很難看懂代碼,也不容易調試或解碼。從匯編語言到更高級的語言,比如C/C++,極大地提高了開發(fā)者的效率,而且源代碼也因此更容易看懂了!編程效率的提高,不但是因為更高級的編程語言,也因為有了關聯(lián)的執(zhí)行時間函數(shù)庫。例子之一就是,在開發(fā)一款Windows應用程序時,使用Windows基礎庫(Windows Foundations Classes)要比使用原始的Win32編程語言簡單得多。今天,編程語言并不局限于C#,框架也不局限于Microsoft .NET Framework,而是在繼續(xù)發(fā)展。這些框架促進了應用程序的迅猛發(fā)展,并且通過提供一系列的輔助庫,大大減輕了開發(fā)者的負擔。這樣,開發(fā)者們就可以關注于如何寫代碼才能使自己的應用程序獨一無二,而不是大量原始的、基礎要素幫助運行應用程序。
還有一個發(fā)展趨勢是注重用戶體驗(請注意,我說的并不是用戶界面)。這個領域已經有了許多佼佼者,尤其是Windows Embedded Compact 7 CTP與Silverlight的加入,增強與提高了用戶的交互和體驗。用戶體驗包含了大量用戶輸入與輸出的方式。如果我們讓時光倒流30年,主要的用戶體驗就是命令提示符與鍵盤。時光倒流20年的話,那時的圖形用戶界面就是鍵盤與鼠標。而今天,用戶們可以根據(jù)設備的類型與使用場景,體驗到更加身臨其境的用戶體驗與輸入-輸出方式。盡管某些設備使用的是2D圖像、鍵盤與鼠標,另外一些設備可能使用語音來輸入輸出;還有些設備也許會使用3D硬件加速圖像與觸控、手勢和多點觸控。
本文的重點就是,開發(fā)者們需要選用合適的編程語言與框架來建立他們的設備體驗。這一過程包括許多事情,有處理多核或分布式系統(tǒng)編程,與基于云的服務的交互,以及建立身臨其境的用戶體驗。
評論