十年iOS老將的鴻蒙征途,京東支付馮笑的開發(fā)實戰(zhàn)錄
在科技日新月異的今天,開發(fā)者的角色愈發(fā)重要,他們不僅是技術(shù)的實踐者,更是創(chuàng)新的推動者。馮笑是京東科技旗下京東支付研發(fā)團隊的資深開發(fā)者,迄今為止已有十年 iOS 開發(fā)生涯。
如今,他肩負著雙重使命:一方面,他深耕 iOS 領(lǐng)域,持續(xù)維護和升級 iOS 端的支付功能,確保服務(wù)的穩(wěn)定與高效;另一方面,他勇立潮頭,作為鴻蒙開發(fā)的先鋒,從零開始構(gòu)建京東支付 SDK 的鴻蒙版本,引領(lǐng)團隊探索新的技術(shù)領(lǐng)域,為鴻蒙生態(tài)的繁榮發(fā)展貢獻力量。馮笑的雙重使命,不僅展現(xiàn)了他的技術(shù)實力,更體現(xiàn)了京東對新技術(shù)、新領(lǐng)域的敏銳洞察力和勇于探索的精神。
初探鴻蒙,興趣與使命的雙重驅(qū)動
鴻蒙操作系統(tǒng)發(fā)布初期,馮笑便敏銳地嗅到了這場變革氣息。鴻蒙不僅僅是一個操作系統(tǒng)的誕生,更是國內(nèi)科技行業(yè)在國際壓力下,自研通用操作系統(tǒng)的重要里程碑,它覆蓋了手機、PC、平板、車機等眾多設(shè)備,擁有著無限的可能。
懷著對鴻蒙系統(tǒng)的濃厚興趣,馮笑毫不猶豫地申請了官方內(nèi)測名額,成為了鴻蒙開發(fā)陣營中的一員。
而機遇總是青睞有準(zhǔn)備的人。2023 年底,京東與華為正式達成戰(zhàn)略合作,宣布將全面啟動京東全系 APP 的鴻蒙開發(fā)工作。京東支付,作為京東集團核心的基礎(chǔ)功能模塊之一,自然成為了首批攻堅對象,承擔(dān)著在鴻蒙系統(tǒng)上重建支付生態(tài)的重任。馮笑也順理成章進入到京東支付 SDK 鴻蒙版的開發(fā)工作中。
個人興趣與工作使命完美地結(jié)合。馮笑深知,自己肩負的不僅僅是一份工作,更是一份責(zé)任,一份推動鴻蒙生態(tài)發(fā)展、為用戶提供更優(yōu)質(zhì)支付體驗的使命。帶著這份責(zé)任和使命,馮笑的鴻蒙開發(fā)之路正式啟航。
從 iOS 到鴻蒙的轉(zhuǎn)型實戰(zhàn)
馮笑深知,要快速掌握一個全新的操作系統(tǒng),必須從官方渠道入手。因此,在內(nèi)測申請通過后,馮笑便開始學(xué)習(xí)鴻蒙官方 API 文檔,全面了解鴻蒙操作系統(tǒng)的整體全貌、運行原理、開發(fā)理念與整體架構(gòu)。
在學(xué)習(xí)過程中,馮笑不僅掌握了鴻蒙系統(tǒng)的基礎(chǔ)知識,還思考如何將自己在 iOS 開發(fā)中積累的經(jīng)驗遷移到鴻蒙開發(fā)中。他表示,SwiftUI 與 ArkUI 在聲明式 UI 編程理念上是有共性的,因此,在精讀文檔的過程中,會著重關(guān)注鴻蒙與 iOS 的差異性,尤其是在邏輯處理方面的不同。
在學(xué)習(xí)理論知識的同時,馮笑更注重實踐的檢驗。他充分利用現(xiàn)有項目模塊,在 DevEco Studio 中進行實踐,將原有的 iOS 開發(fā)模塊逐步遷移到鴻蒙平臺。通過“從學(xué)習(xí)中實踐,在實踐中學(xué)習(xí)”的方式,馮笑不僅加深了對鴻蒙操作系統(tǒng)的理解,更完成了從零到一的學(xué)習(xí),以及從認知到落地的過程。
當(dāng)然,在實際開發(fā)過程中,馮笑也遇到了不少挑戰(zhàn)。他坦言,在開發(fā)初期,鴻蒙操作系統(tǒng)的功能還不夠完善,存在一些能力缺失的問題。例如,在京東支付非常復(fù)雜的業(yè)務(wù)場景中,除了支付以外,還會涉及乘車碼、付款碼等衍生業(yè)務(wù)。其中,地鐵二維碼的生成需要嚴(yán)格按照國家規(guī)范來進行,而鴻蒙操作系統(tǒng)初期僅支持字符串生成二維碼,無法滿足這一需求。于是,馮笑所在的京東支付研發(fā)團隊聯(lián)系了華為鴻蒙,通過與華為鴻蒙駐場團隊的緊密溝通和協(xié)作,經(jīng)過一個月左右的努力,終于解決了難題,相關(guān)功能也得以正常上線。
此外,在自研路由開發(fā)過程中,馮笑也遇到了頁面唯一 ID 獲取、轉(zhuǎn)場動畫控制等技術(shù)難題。他通過深入調(diào)研鴻蒙的官方能力,對比各種橫縱向解決方案,最終設(shè)計出了一套符合業(yè)務(wù)需求的自研路由方案,解決了當(dāng)前的技術(shù)難題,更為京東支付在鴻蒙生態(tài)的發(fā)展奠定了堅實的基礎(chǔ)。
雙線作戰(zhàn):iOS 與鴻蒙的開發(fā)平衡術(shù)
在鴻蒙的學(xué)習(xí)和開發(fā)過程中,馮笑深刻體會到了鴻蒙與 iOS 的共性與差異。他指出,鴻蒙與 iOS 擁有很多共性,首先體現(xiàn)在對多語言開發(fā)的支持上,這為開發(fā)者提供了極大的靈活性,可以根據(jù)項目需求和個人偏好選擇最合適的編程語言。其次,兩者都支持組件化開發(fā),提升代碼復(fù)用率和開發(fā)效率。第三,在 UI 開發(fā)方面,鴻蒙的 ArkUI 和 iOS 的 UI 框架都遵循聲明式開發(fā)范式,讓開發(fā)者可以更加專注于業(yè)務(wù)邏輯的實現(xiàn)。第四,鴻蒙和 iOS 都提供了成熟的跨平臺解決方案,并堅持嚴(yán)格的應(yīng)用上架流程,確保應(yīng)用質(zhì)量和用戶體驗。
而鴻蒙和 IOS 的差異性也很顯著。馮笑強調(diào),鴻蒙基于微內(nèi)核架構(gòu)設(shè)計,從底層架構(gòu)上就奠定了萬物互聯(lián)的基礎(chǔ)。這與 iOS 相對封閉的生態(tài)系統(tǒng)形成了鮮明對比,鴻蒙更強調(diào)設(shè)備間的無縫協(xié)同與生態(tài)融合。在開發(fā)范式上,鴻蒙積極擁抱聲明式 UI 編程范式,與 iOS 傳統(tǒng)的命令式 UI 編程(如 Object-C)對比時,開發(fā)效率提升更為明顯。此外,鴻蒙為開發(fā)者提供了更為豐富的公共能力庫,包括各種 UI 組件、功能組件以及最佳實踐和技術(shù)文檔,全方位支持開發(fā)者高效開發(fā)。
更重要的是,鴻蒙對用戶隱私的保護超越了 iOS。馮笑表示,鴻蒙操作系統(tǒng)對于用戶隱私權(quán)限要求是非常高的,而且隱私授權(quán)都是最小單元化的授權(quán)。例如應(yīng)用中需要調(diào)用相冊中的照片,iOS 授權(quán)是將整個相冊授權(quán)使用,而鴻蒙會對單張照片進行授權(quán),極大地保護了用戶的隱私。
如今,馮笑在京東支付研發(fā)團隊同時肩負著 iOS 和鴻蒙的雙線開發(fā)任務(wù)。對于已經(jīng)相當(dāng)成熟的 iOS 版本京東支付 SDK,他的日常工作主要集中在業(yè)務(wù)需求的迭代開發(fā)和系統(tǒng)架構(gòu)的持續(xù)優(yōu)化,確保支付功能的穩(wěn)定性。而鴻蒙版本由于剛剛完成基礎(chǔ)架構(gòu)和核心業(yè)務(wù)流程的搭建,馮笑的工作重心放在三個方面。首先是功能拉齊,對標(biāo) iOS 版本,逐步實現(xiàn)鴻蒙端支付功能的完整覆蓋;其次,緊跟鴻蒙 API 升級,及時對現(xiàn)有開發(fā)框架進行優(yōu)化改進;第三,持續(xù)維護和豐富鴻蒙端的組件庫和功能庫,沉淀公共技術(shù)能力,提升團隊整體開發(fā)效率,為鴻蒙生態(tài)的繁榮發(fā)展貢獻力量。
開發(fā)者啟示錄,擁抱鴻蒙新征程
對于從 iOS 轉(zhuǎn)型到鴻蒙的開發(fā)者來說,馮笑有著豐富的經(jīng)驗和深刻的見解。他建議道,首先,理解并掌握聲明式 UI 編程理念是鴻蒙開發(fā)的核心,也是與 iOS 傳統(tǒng)命令式 UI 開發(fā)范式的關(guān)鍵區(qū)別。其次,要通過官方 API 文檔學(xué)習(xí)基礎(chǔ)能力知識,并動手實踐撰寫小 demo 或項目。只有通過實踐,才能真正掌握鴻蒙開發(fā)的精髓。
馮笑強調(diào),在開發(fā)鴻蒙應(yīng)用時,最主要的是思想的轉(zhuǎn)變,從過去命令式 UI 編程轉(zhuǎn)向聲明式 UI 編程,學(xué)會使用狀態(tài)管理的裝飾器來驅(qū)動 UI 的刷新。
對于新手開發(fā)者來說,馮笑也給出了自己的建議和鼓勵。他表示,首先,要抱著包容的態(tài)度去接觸和學(xué)習(xí)鴻蒙系統(tǒng)。不要害怕遇到困難和挑戰(zhàn),因為這些都是成長的機會。其次,要通過看官方 API 文檔和實踐項目來學(xué)習(xí)鴻蒙開發(fā)。官方文檔是學(xué)習(xí)鴻蒙開發(fā)的最佳資源之一,而實踐項目則是檢驗學(xué)習(xí)成果的最好方式。
馮笑說,“行路難,行路最難的地方是邁出第一步。但是,對于所有的學(xué)習(xí)者來說,只要邁出第一步,后面的路都會非常簡單,學(xué)習(xí)進度也會非???。也希望更多開發(fā)者加入鴻蒙生態(tài),共同推動鴻蒙系統(tǒng)的繁榮發(fā)展?!?/p>
結(jié)語
展望未來,隨著鴻蒙系統(tǒng)的不斷成熟和生態(tài)的日益完善,馮笑和他的團隊將在萬物互聯(lián)的時代浪潮中,繼續(xù)書寫屬于他們的技術(shù)傳奇。而對于廣大開發(fā)者而言,馮笑的故事也許是他們進入鴻蒙生態(tài)的一盞明燈,照亮了他們擁抱新技術(shù)、探索新領(lǐng)域的道路。正如馮笑所言:“行路難,最難的是邁出第一步?!?愿每一位開發(fā)者都能勇敢地邁出那一步。
關(guān)注我們
