文章詳目資料

醒吾學報

  • 加入收藏
  • 下載文章
篇名 Swift與Object-C作為遊戲APP專案程式設計比較研究
卷期 64
並列篇名 A Comparative Study of Programming Language for APP Game Development Using Swift or Object-C
作者 黃家平卓世明李白峰
頁次 241-252
關鍵字 SwiftObject-CXcodeMVC
出刊日期 202107

中文摘要

距離蘋果電腦公司2014年發表新一代的手機開發軟體(Xcode)的開發語言Swift已經七年,許多C語言背景的程式設計師卻依然堅持以Object-C作為IOS手機APP的開發工具,這有許多技術與個人因素,使得蘋果電腦執意以Xcode-SWIFT作為蘋果手機的唯一支援語言,面臨許多挑戰。本論文以個案公司委託的遊戲APP專案程式設計為例,探討這兩種開發語言的選擇,所面臨的問題與挑戰。有三個面向作為研究的研討構面,第一是從產品的生命週期:導入期、成長期、成熟期和衰退期等四個階段的角度;第二是考量軟體開發的系統需求定義與分析、設計、實現、測試、交付和維護等六個階段;另外從IOS/APP五個程式設計生命週期,Not running、Inactive、Active、Background。Suspended,作為IOS/APP專案的比較研究。開發軟體以Xcode 12.1,Swift5.2與Xcode 8、Object C作為基本開發架構,遊戲個案以襪子配對遊戲為比較分析主體,發布裝置以IPhone XR與IPAD 2為主。遊戲程式在Object C開發環境裡,產品面臨衰退期的維護與新功能測試與交付問題,另外在APP生命週期也與最新的MVC有衝突;遊戲程式在SWIFT開發流程中,APP產品面臨成長期的新元件更新以及設計與實現重複更新的問題,另外在APP生命週期裡會有較簡易的遊戲介面分類。IOS/APP原生碼的開發,應該以蘋果電腦支援的Xcode/Swift為主,但是在跨平台開發軟體的競爭下,Object-C仍然有開發的市場,開發語言的選擇牽涉到開發軟、硬體與APP程式設計師的能力,依照個案遊戲APP的驗證顯示,若依新產品生命週期的指導,應是導入並學習新一代SWIFT開發IOS/APP為最佳選擇;但是,若以軟體開發的生命週期考量,Object-C仍具有快速維護與更新能力;當然,若依照APP生命週期考量,蘋果原生碼APP必須配合MacOS Big Sur諸多安全更新補丁,從新開發是最好的方式。根據以上討論與實作,Object-C混編的APP成功執行在舊版I-Pad9.0,但是面臨蘋果作業系統更新與支援的挑戰;Xcode的新版本APP也耗時完成,卻可安心的執行在最新iPad Pro;兩種語言的選擇,從產品生命周期的角度研析,是專案成本與維護的效益取捨要素,這有賴於業主的企業策略與資訊研析開發人員的程式設計能力而定。

英文摘要

It has been seven year for Apple to launch new mobile phone development language, Xcode, since 2014. However, there are many C language background software engineers insist on Object-C to develop IOS APP rather than Xcode. Many technical and personal issues involving for this cause, which become a big challenge for Xcode-Swift to be the only support language within IOS APP development areas. This paper discusses how to adopt these two language, Xcode-Swift and Object-C, for a game App development case study with a Taiwanese company. There are three facets for this academic research, which are product life cycle, software system analysis, and IOS/APP coding design life cycle. The software development framework adopting Xcode 12.1, Swift5.2, Xcode 8, and Object-C as APP backbone. The scenario of Game App is socks pairwise. The testing applied on device IPhone XR and IPAD 2. The case company faces a dilemma to maintain an old version game which developed by Object-C without any guaranty for further support or to develop a new IOS APP by SWIFT which could provide lately technical issues. IOS/APP native code development ought to be the choice of Xcode/Swift. However, Object-C is still good at cross-platform business advantages. This involves software, hardware selections and the capabilities of software engineers. From the case studies, reveal that: From the product life cycle point of view, the company should adopt Swift, which provides lately support and new game scenario possibilities. From the software system analysis point of view, the better solution is Object-C, which economically maintain game APP and easily applying for Android market. From the IOS/APP coding design life cycle point of view, young programmer prefers Swift which saving time to fix cross platform communications. The conclusions of this paper suggest that: Object-C based APP could be working within I-Pad9.0, but facing challenge from the newly IOS versions. Xcode Swift based APP took three times to development, but implementing into new IPAD smoothly. These two language still have their own fans. The best choice for company to do should consider the availabilities of coding working forces and company’s trade off strategy to buy or to make.

關鍵知識WIKI

相關文獻