巴延興:從主導多個SIG組到OpenHarmony“代碼貢獻之星”,我是如何做到的?

来源:https://www.cnblogs.com/openharmony/archive/2022/05/10/16252621.html
-Advertisement-
Play Games

在 OpenHarmony 生態發展過程中,涌現了大批優秀的代碼貢獻者,本專題旨在表彰貢獻、分享經驗,文中內容來自嘉賓訪談,不代表 OpenHarmony 工作委員會觀點。 ...


編者按:在 OpenHarmony 生態發展過程中,涌現了大批優秀的代碼貢獻者,本專題旨在表彰貢獻、分享經驗,文中內容來自嘉賓訪談,不代表 OpenHarmony 工作委員會觀點。

 

巴延興 深圳開鴻數字產業發展有限公司 資深OS框架開發工程師

 

開源軟體(以下簡稱“開源”)於上世紀80年代應運而生,隨後惠及全球。如今,開源技術支撐了 90% 以上的互聯網產品,並已經深入到各行業的商業應用中。2021 年,我國首次將“開源”明確列入《中華人民共和國國民經濟和社會發展第十四個五年規劃和 2035 年遠景目標綱要》。雖然我國開源建設起步相對較晚,但國家在戰略層已經開始給予了開源的肯定和支持。目前,開源已成為全球軟體技術和產業創新的主導模式。

 

作為開放原子開源基金會的白金捐贈人、OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)B 類捐贈人,深開鴻核心技術團隊完整地繼承了前期 OpenHarmony 業務技術積累,以共建共治共用的開源精神,以成為智能物聯網操作系統領軍者為戰略目標,基於 OpenHarmony 聚焦智能物聯網操作系統(KaihongOS)的技術研發與持續創新。致力於構建多贏的物聯網操作系統生態圈,持續拓寬行業邊界,實現萬物互聯。

 

作為資深 OS 框架開發工程師,巴延興負責整體技術規劃、項目看護、成果交付以及與社區的溝通協調;輔助工具 SIG 的申請成立、SIG 的孵化以及畢業流程的推進工作。其中,輔助工具 SIG 包括 NAPI 框架生成工具、開機動畫工具、IDL 轉換工具等一系列工具。

 

他常說,在這個世上,沒有從天而降的好運和奇跡,機會只留給有準備的人。巴延興抓住機遇,全力擁抱開源時代,在開源軟體的基礎上,為企業提供安全、穩定的企業級開源軟體,並將代碼百分之百回饋給社區。十年如一日對工作極致負責的他,用專業匯聚能量,目前共計帶領團隊主導 4 個 SIG、參與 12 個 SIG 的代碼貢獻,累計向主幹貢獻代碼 30W+ 行。

 

此次我們邀請了深開鴻巴延興前來參加訪談,希望通過他的視角,帶我們更加全面地瞭解深開鴻團隊背後的故事。

 

Q=OpenHarmony A=巴延興

 

Q1:可以介紹下自己以及所在開發團隊嗎?

 

大家好,我是巴延興,是深圳開鴻數字產業發展有限公司資深OS框架開發工程師。從業以來,我一直深耕終端設備的研發領域,擁有十多年的移動系統開發經驗,去年有幸加入深開鴻南京研發團隊,希望為操作系統發展貢獻綿薄之力。

 

深開鴻團隊一方面承擔著公司 KaihongOS(OpenHarmony 商業發行版之一)的研發任務,另一方面積極地、大顆粒地、全方位地面向 OpenHarmony 社區進行開源貢獻。

 

Q2:作為開發領域技術達人,請問哪些原因讓您決定參與OpenHarmony的社區貢獻?

 

隨著 5G 時代的到來,數字化升級、萬物互聯、人機物融合等需求越來越旺盛,“開源”首次被明確列入《中華人民共和國國民經濟和社會發展第十四個五年規劃和 2035 年遠景目標綱要》。作為互通互聯生態架構基座的操作系統,OpenHarmony 應運而生。

 

深開鴻技術團隊從 OpenHarmony 開源項目成立伊始就與  OpenHarmony 工作組展開了深度合作,是業內首批對 OpenHarmony 在產業上的應用及賦能進行深入研究的公司。我認為未來的市場將出現移動端操作系統高速發展的視窗期,因此,當我得知有深開鴻這樣一家以 OpenHarmony 為技術底座的操作系統發行版公司誕生的時候,我便毫不猶豫地加入了。

 

自參與 OpenHarmony 社區共建以來,我深度參與了代碼共建的工作,結合多年來在系統內核、系統安全、網路通信、多媒體及 AI 等技術領域的積累,主導多個 SIG 組的形式持續向社區貢獻高質量代碼,不斷夯實  OpenHarmony 的基礎能力,加速推進 OpenHarmony 生態建設。

 

Q3:恭喜您獲得2月代碼貢獻之星,非常了不起,可以說說您在社區具體做了哪些代碼貢獻,獲得哪些成果嗎?

 

去年 6 月,深開鴻開始參與 RISC-V SIG,從晶元適配開始,再到承接 Driver SIG 的音視頻硬編解碼 HDF 框架實現的任務。隨著開源經驗的積累,團隊也匯聚了各領域的技術專家。因此,深開鴻在 2021 年 9 月份正式主導了第一個 SIG 組——AI 框架集成 SIG 組。

 

在這過程中,我參與了需求分析、架構設計、代碼框架搭建以及代碼評審、入庫等研發全流程;基於 RockChip Toybrick 3568x 實現了 HDF 框架開發;基於瑞芯微的 MPP 框架提供的 MppBuffer、MppBufferGroup 以及 packet 和 frame 相關的組件和介面,結合 Buffer 隊列,共用記憶體等機制,實現了硬體編解碼流程,並完成了相關的編解碼演示程式和單元測試程式;基於 HJSUnit 測試框架,使用 JavaScript 語言編寫 JS 全組件屬性、樣式、事件、方法等測試腳本;以上相關代碼都已合入主幹。

 

伴隨研發團隊規模逐漸擴大,團隊能力逐漸提升,可參與主導或共建的技術領域也越來越多——輔助工具、軟匯流排、多媒體、內核等項目都有深開鴻團隊的身影,慢慢呈現了“遍地開花”的趨勢,也看到我們的成果幫助了更多的開發者,真正感受到了生態的繁榮。

 

到目前為止,深開鴻主導了 4 個 SIG,參與共建的 SIG 有 12 個,尤其是內核、軟匯流排、HDF、ArkUI 等根技術領域都有深度參與,累計向主幹貢獻代碼 30W+ 行。

 

Q4:可以請您給我們分享一下,在整個開發的過程中,您和您的團隊遇到過哪些技術上或其他方面的難題?這些難題又是如何被逐一解決的?從中總結了哪些經驗呢?

 

我們在內核開發過程中遇到不少難題,比如內核支持的單板種類有限、Hi3861 開發板內核固化、編譯環境搭建複雜等問題都加劇了進入內核研發的難度。面對這些困難,我們在探索過程中也摸索出了一套方法。

 

首先,我們利用模擬技術解決單板有限的問題,其次利用 Q/A 的方式將每一步都記錄下來,輸出技術文檔,夯實每一步的腳印。對新技術保持一顆好奇心是每一個內核開發人員必備的素養,這樣的心態促使我們不斷攻堅克難。

 

目前內核開發工作還處於初級階段,取得了初步的成果,但我們還會繼續進行研發投入,在這過程中,不僅能提高我們自身的技術能力,而且還能增強公司的技術儲備,促成良性迴圈。

 

Q5:加入OpenHarmony生態以來,深開鴻在社區的開源貢獻方面取得了不小的成果,您認為“秘訣”都有哪些呢?

 

如果非要說有什麼“秘訣”的話,那就是深開鴻始終堅持從開源中來,到開源中去的開源理念,結合 OpenHarmony 系統特性以及行業應用對操作系統的需求,推出具備行業共性的 KaihongOS 商業發行版,在滿足客戶需求的同時,也將沉澱下來的技術能力及行業實踐回饋給社區。

 

除了主幹代碼貢獻,我們在三方庫、知識體系工作組、相容性工作組、基礎服務、開發板等方向也同時發力,多維度地、多層次地進行開源貢獻。同時,我們的貢獻也得到了社區的認可,深開鴻已正式成為相容性工作組的第一家擴展成員的單位。

 

Q6:您最想吐槽OpenHarmony哪些方面?對未來的OpenHarmony有什麼期望?

 

OpenHarmony 目前處在起步階段,很多事物尚未成熟,比如系統能力還有待增強;應用生態不夠豐富;開發文檔不夠齊全,開發者入門門檻高等問題都亟待解決,這就需要有更多的技術精英、行業大咖參與 OpenHarmony 社區共建。至於對未來的期望,自然是希望它能夠蓬勃發展,向當今主流的開源生態看齊甚至超越。

 

Q7:未來深開鴻還會做哪些事情?朝哪個方向努力?

 

作為 OpenHarmony 開源項目的共建單位之一,深開鴻有責任、有義務、更有能力持續完善 OpenHarmony 的技術能力、不斷以創新技術加速開源生態建設的佈局。從產業生態角度來看,豐富且有活力的生態也將推動 OpenHarmony 的持續提升、優化、完善,最終反哺產業生態,形成一個良性的、有機的迴圈。

 

因此,我們會一如既往地推進 KaihongOS 在各個行業的商業落地,為千行百業賦能的同時,將沉澱、提煉出來的技術能力再貢獻給 OpenHarmony 社區,真正踐行從開源中來到開源中去的理念,這就是深開鴻在未來要做的事情,要努力的方向。

 

Q8:有什麼想對其他企業和開發者說的話嗎?

 

作為一名普通的工程技術人員,有幸遇到這樣的一個時代,更有幸能夠親身參與這個時代的偉大變革。機會留給有準備的人,我會竭盡所能去擁抱這樣的時代,把握時代賦予的機會。

 

個人的力量是渺小的,在這裡我呼籲更多的有識之士、志同道合者參與到 OpenHarmony 生態的共建,大家一起攜起手來,推動它的繁榮與發展!

 

 

搜索

複製


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 5月中國資料庫排行榜已出爐!各大資料庫廠商表現如何?排名有何變化?一起來解讀吧! ...
  • 本文和接下來的幾篇文章為閱讀郭霖先生所著《第一行代碼:Android(篇第2版)》的學習筆記,按照書中的內容順序進行記錄,書中的Demo本人全部都做過了。 每一章節本人都做了詳細的記錄,以下是我學習記錄(包含大量書中內容的整理和自己在學習中遇到的各種bug及解決方案),方便以後閱讀和查閱。最後,感激 ...
  • 本文和接下來的幾篇文章為閱讀郭霖先生所著《第一行代碼:Android(篇第2版)》的學習筆記,按照書中的內容順序進行記錄,書中的Demo本人全部都做過了。 每一章節本人都做了詳細的記錄,以下是我學習記錄(包含大量書中內容的整理和自己在學習中遇到的各種bug及解決方案),方便以後閱讀和查閱。最後,感激 ...
  • 本文和接下來的幾篇文章為閱讀郭霖先生所著《第一行代碼:Android(篇第2版)》的學習筆記,按照書中的內容順序進行記錄,書中的Demo本人全部都做過了。 每一章節本人都做了詳細的記錄,以下是我學習記錄(包含大量書中內容的整理和自己在學習中遇到的各種bug及解決方案),方便以後閱讀和查閱。最後,感激 ...
  • 本文和接下來的幾篇文章為閱讀郭霖先生所著《第一行代碼:Android(篇第2版)》的學習筆記,按照書中的內容順序進行記錄,書中的Demo本人全部都做過了。 每一章節本人都做了詳細的記錄,以下是我學習記錄(包含大量書中內容的整理和自己在學習中遇到的各種bug及解決方案),方便以後閱讀和查閱。最後,感激 ...
  • 本文和接下來的幾篇文章為閱讀郭霖先生所著《第一行代碼:Android(篇第2版)》的學習筆記,按照書中的內容順序進行記錄,書中的Demo本人全部都做過了。 每一章節本人都做了詳細的記錄,以下是我學習記錄(包含大量書中內容的整理和自己在學習中遇到的各種bug及解決方案),方便以後閱讀和查閱。最後,非常 ...
  • OpenHarmony電話子系統為 OS 提供了基礎的無線通信能力。支持 TD-LTE/FDD-LTE/TD-SCDMA/WCDMA/EVDO/CDMA1X/GSM 等網路制式的通信模塊,能夠提供高速的無線數據傳輸、互聯網接入等業務,具備語音、簡訊、彩信、SIM 卡等功能。 ...
  • 在直播、語聊房、K 歌房場景中,為增加趣味性和互動性,玩家可以通過變聲來搞怪,通過混響烘托氣氛,通過立體聲使聲音更具立體感。ZegoExpress SDK 提供了多種預設的變聲、混響、混響回聲、立體聲效果,開發者可以靈活設置自己想要的聲音,如果需要試聽,可以啟用耳返進行測試。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...