第一篇:廈門手機開發培訓之專業知識講解
廈門手機開發培訓之專業知識講解
我中心針對目前企事業單位信息技術研發人員對iphone/ipad技術的緊迫需求,設計推出了iphone實戰課程。主要講授appleiphone/ipad手機開發平臺的應用開發、手機圖形系統、移動互聯網等開發。旨在提高學員在appleitouch、iphone4、iphone5、ipad等系列上開發高端應用程序的能力。全面詳細講解在iphone平臺程序開發細節,完整講述iphone應用程序開發、構建、發布整個過程。
廣大從事ios工作的it技術人員及愛好者,包括研發工程師、解決方案工程師、系統維護工程師等。
本課程使用最新的iphonesdk5.x版本,也就是ios5系列sdk開發程序。當然開發程序可以用于iphone,iphone3,iphone4,iphone5,ipad,ipad2等硬件上。通過4天的強化,可以讓學員在iphone系列手機上開發基本的ui應用程序,網絡服務程序,多媒體服務和一些2d方面的動畫等目標。達到可以在iphone上開發基本的應用程序的能力。本階段開始開始熟悉iphone應用程序開發的工具:iphonesdk(xcode)。本階段會講解iphonesdk的基本用法,以及一些常用的快捷方式如:.h.m文件之間的快捷切換、appleapi的快速定位查看,幫助文檔的定位查看和創建工程需要注意的具體事宜。使學員達到對編程環境了如指掌,日后編程上手無障礙的目的。
語言之objective-c語言強化
本階段開始學習ios的特有的編程語言objective-c,該種語言屬于c/c++的一個變種,可以和c/c++混合使用。本階段講解objective-c語言的面向對象編程,類的繼承,復合,多態,id,動態識別,posing,protocols,內存管理,autorelease等主要內容。達到能夠熟練的編寫程序的能力。
第二單元ios開發
第二篇:廈門手機開發培訓Android手機模式分析
廈門手機開發培訓Android手機模式分析
第一部分其實游戲就是廈門博看文思讓狀態機不斷的讓Canvas在View上畫你想要的東西。這個狀態機包括內部的執行,還包括外部的輸入。
Android開發的MVC模式
1,通過View和SurfaceView來顯示界面的視圖。(處理界面與用戶的交互事件,如,觸筆點擊,用戶按鍵等。可通過View類的onKeyDown,onKeyUp,onTouchEvent等)。
2,用Activity來控制游戲的整體結構。
3,設計一個邏輯類,用來處理邏輯運算。
Android中任何一個View類都只有重寫onDraw方法來實現界面顯示。
Android中提供了
onKeyUp,onKeyDown,onKeyMultiple,onKeyPreIme,onTouchEvent,onTrackballEvent等方法。可以用來處理游戲中的事件消息。所以繼承View時,需要重載這些方法。Android中提供了invalidate來刷新界面,但invalidate不能直接在線程中調用,違背單線程模型。
因此Android中最常用的方法是利用Handler來時更新UI界面。
第一部分View類
每個View類都有一個繪畫的畫布,在游戲中可以自定義視圖View,任何一個View類都只需要重寫onDraw方法來實現界面顯示,可以是3D,也可以是文本。
游戲的核心就是不斷的繪圖和刷新,圖我們可以通過onDraw方法繪制,刷新
Android中可以用invalidate方法來刷新界面,注意:invalidate不能直接在線程中調用,因其違背了
違背單線程模型。因此Android中最常用的方法是廈門博看文思利用Handler來時更新UI界面。下面這個例子中包含了兩個刷新方法。
第三篇:廈門手機開發培訓分析Android自動化解決方案
廈門手機開發培訓分析Android自動化解決方案
現在,已經有大量的Android自動化測試架構或工具可供我們廈門博看文思使用使用,其中包括:ActivityInstrumentation,MonkeyRunner,Robotium,以及Robolectric。另外LessPainful也提供服務來進行真實設備上的自動化測試。
Android自身提供了對instrumentation測試的基本支持,其中之一就是位于
android.test包內的ActivityInstrumentationTestCase2類,它擴展了JUnit的TestCase類來提供Androidactivities的功能測試。在應用測試中,每一個activity首先會被
Instrumentation初始化,然后再加載到Android模擬器或設備的Dalvik虛擬機中來執行。
AndroidSDK自帶一個測試工具MonkeyRunner,它提供的API和執行環境可以運行Python語言編寫的測試代碼。它提供API來連接設備,安裝/卸載應用,運行應用,截屏,比對圖片來判斷特定命令執行后的屏幕是否包含預期信息,以及運行對應用的測試。MonkeyRunner使用ActivityInstrumentationTestCase2,ProviderTestCase,ServiceTestCasek,SingleLaunchActivityTestCase及其他類來定義測試用例,并使用InstrumentationTestRunner類來運行測試。
Robotium是另一種通過InstrumentationTestRunner來完成Android交互式測試的架構,它橫跨多個activities,支持功能測試,系統測試和接收測試。Robotium支持Activities、Dialogs、Toasts、Menus、ContextMenus甚至Honeycomb,并且它可以同Maven和Ant集成來完成持續集成測試。Robotium被稱之為針對Android應用的又一個Selenium。
Robolectric另辟蹊徑,它并不依賴于Android提供的測試功能,它使用了
shadowobjects并且運行測試于普通的工作站/服務器JVM,不像模擬器或設備需要
dexing(Androiddex編譯器將類文件編譯成Android設備上的DalvikVM使用的格式),打包,部署和運行的過程,大大減少了測試執行的時間。Pivotal實驗室聲稱使用Robolectric可以在28秒內運行1047個測試。
廈門博看文思知道LessPainful將Android測試又推進了一步,它提供了一個多設備平臺自動化測試的服務。用戶上傳應用(*.apk)和用Cucumber(一種業務相關的DSL)編寫的測試文件,選擇測試運行需要的設備配置,最后測試將自動執行并生成測試報告。它支持的設備包括GarminAsus,幾款HTC,LG,SamsungGalaxy,SonyXperia和MotorolaMotodefy。
第四篇:關于手機開發難題及解決方法——廈門手機開發培訓為你解讀
關于手機開發難題及解決方法——廈門手機開發培訓為你解讀
開發難題
1、手機主要操作系統有:Android,i OS,Symbian , Windows Phone,Blackberry。要想克服不同手機平臺的差異,實現應用的統一覆蓋異常困難;這個是基于系統內核與硬件支持的差異性所導致的。
2、手機開發很難?開發人員稀缺,成本太高,進度太慢,無線網絡太復雜,門檻障礙太多這些都是過去的情況了。廈門博看文思指出,現的許多終端生產商或軟件公司都已經意識到手機開發對于公司及產品發展都有著極其重要的作用,所以開發者都被愿意加入到這些公司中,這樣開發者集聚一起,實現了開發新模式——合作化。例如Google,Apple,魅族,小米等等
4、行業需要專業的角色,來解決開發應用過程中的各種難題,將復雜難題封裝簡單,把各種異構封裝透明,降低大家進入這個市場的門檻,解決方法
經過全行業長達多年的不斷探索,業界主張將MKey無線中間件作為標準化的無線開發平臺,進行手機開發和手機應用。廈門博看文思指出,利用MKey無線中間件進行手機開發,不僅能夠解決上述的各方面開發難題,而且在成本控制、開發周期、開發難度等方面,均是目前最為出色的實現方法,整體開發技術水平相較國外無線開發而言,也顯得十分突出。
MKey無線中間件屏蔽了各種硬件平臺、操作系統、無線網絡和數據源的差異,將所有技術難點進行了統一封裝,可幫開發者快速、低成本實現移動化開發應用。
第五篇:廈門手機開發培訓—軟件工程師談Android開發經驗
廈門手機開發培訓—軟件工程師談Android開發經驗
Android一詞的本義指“機器人”,同時也是Google于2007年11月5日宣布的基于Linux的開源手機操作系統的名稱,該平臺由操作系統、中間件、用戶界面和應用程序組成,是首個真正為移動終端打造的開放并且完整的移動平臺。2008年9月
22日,美國運營商T-MobileUSA在紐約正式發布第一款Google手機,即T-MobileG1,廈門博看文思知道從那個時候起,Android的時代就真正的來臨了。
從Android1.0至今經歷了多次的版本更新,其中重要的變更是1.5、2.0和2.2。而其他的版本更新相對而言并不是那么重要。另外,由于每次更新都會多少改動包括Dalvik在內的底層模塊,同時牽扯到SDK,導致了一些程序需要跟著Android版本進行變動。對于相對較為保守的開發人員而言,快速的版本更新將給他們帶來越來越大的限制。在這種情況下,Android開源的意義就顯得不是那么大了。
無論如何,由于Android與Google服務的緊密捆綁,這款操作系統擁有了得天獨厚的優勢。通過Google強有力的支持,很多事情在Android上都會變得很簡單。另外需要特別提出的是,Android是一款基于互聯網的操作系統,在可以連接上互聯網的情況下,一款Android手機可以發揮出比其他手機更多的能力。而在沒有網絡的情況下,Android手機并不比其他的手機出色,尤其是娛樂性相對于iPhone可以說是遜色不少。作為廈門博看文思開發人員,應當在學習并深入了解Android之后,在自己的軟件中,將Android的優勢發揮出來,同時通過一些手段去彌補Android本身的缺陷或不足。下面來看一下廈門博看文思Android擁有的特點吧:
?與硬件交互非常方便,包括攝像頭、GPS等,都可以簡單的操作。
?擁有自己的運行時和虛擬機,優秀的內存管理能力。
?提供豐富的界面控件供開發者使用,允許可視化開發,并保證Android平臺下的應用程序界面一致。
?提供輕量級的進程間通信機制。
?支持無界面的后臺服務類應用程序。
?支持高效、快速的數據存取方式。
在這些特性的支持下,試圖在Android下開發一個應用不會太過困難。事實上,一個稍有Java經驗的開發人員,都可以快速的上手進行Android的開發。而開發的核心,一直以來也是圍繞著Android手機幾個大的特點來進行的,其中就包括了觸摸屏、攝像頭、GPS模塊、互聯網功能、語音輸入、Google賬戶等。需要說的是,如果一位J2ME工程師想轉行做Android,那么他將付出的代價比J2SE或J2EE工程師要大得多。
畢竟Android所支持的是基本完整的J2SE的子集,反過來再看J2ME就會覺得它的功能太弱了。
除了Java外,還有許多語言支持Android的開發,比較為人所熟知的有Scala,而作為Android本身的底層語言,C/C++的作用也完全不可忽視。而目前的開源社區內,已經有一些牛人在嘗試讓更多的語言可以開發Android應用。比較有代表性的可能是KoushikDutta,他已經解決了在Mono平臺下,讓Dalvik調用Mono代碼的問題。或許在不久的將來,.NET下的所有語言,都有可能借助Mono跑在Android上,這是一件值得讓人期待的事情。
語言已不是問題,那還有什么會成為問題?也許很多人會說經驗。誠然,經驗決定了一位開發人員能否快速地、流暢地完成開發工作,也決定了軟件的魯棒性,Bug的數量、等級和修正問題的返工次數。不過我認為,這些都不重要,哪怕是一個
Android行業的新人,一邊查詢文檔一邊做開發,雖然效率會很低,但是一樣能把項目做完。在Android下,開發技術幾乎是沒有瓶頸的。那么瓶頸在哪里呢?事實上,在用過很多軟件后,就會發現,有很多軟件并不好用。很多用戶不愿意用某個軟件,也并不是因為軟件沒有技術含量或是滿足不了需求,原因很簡單,就是不好用。