女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何通過SIG進行開源貢獻

OpenAtom OpenHarmony ? 來源:OpenAtom OpenHarmony ? 作者:OpenAtom OpenHarmony ? 2022-07-23 10:15 ? 次閱讀

如何優(yōu)雅地參與開源貢獻,向頂級開源項目提交 PR(Pull Request)。戰(zhàn)“碼”先鋒直播間第八期圍繞“OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)開源貢獻”話題,邀請了深圳開鴻數(shù)字產(chǎn)業(yè)發(fā)展有限公司(以下簡稱“深開鴻”)資深OS框架開發(fā)工程師巴延興為大家?guī)怼度绾味喾轿粎⑴cOpenHarmony開源貢獻》主題分享。

本次分享主要介紹了巴延興帶領(lǐng)深開鴻開源共建團隊在主導(dǎo)/共建16個SIG、貢獻超過50萬行代碼的OpenHarmony “戰(zhàn)碼”經(jīng)驗,在根技術(shù)、垂直領(lǐng)域、生態(tài)擴展等多方位參與開源貢獻的實踐與思考,以及輔助工具SIG和內(nèi)核SIG兩大板塊的貢獻方式、價值與用途,希望有更多開發(fā)者參與開源共建。

參與戰(zhàn)“碼”先鋒,PR征集令!感興趣的開發(fā)者可以在Gitee的OpenHarmony代碼倉提交PR參與活動,和全球開發(fā)者同臺競技,比拼技藝,為OpenHarmony生態(tài)建設(shè)貢獻力量。

如何通過SIG進行開源貢獻

什么是SIG? SIG全稱Special Interest Group,即特別興趣小組,專注一個特定的技術(shù)領(lǐng)域,負責(zé)該領(lǐng)域技術(shù)競爭力分析和關(guān)鍵技術(shù)識別及決策,引領(lǐng)技術(shù)演進的方向,也是共建單位及個人開發(fā)者進行開源貢獻的基本單位。 通過SIG組參與開源共建的兩種方式 一、參與到已有SIG的共建
參與者需要注冊自己的官方賬號,簽訂協(xié)議后,才能通過認領(lǐng)SIG leader發(fā)布的需求來承接共建任務(wù)。領(lǐng)完需求后是標準的開發(fā)過程,包括需求分析、功能設(shè)計、代碼開發(fā)、功能測試、功能交付等步驟;任務(wù)開發(fā)完成后,需要提交PR,將代碼、文檔等提交到社區(qū),完成最終的開源貢獻。

二、主導(dǎo)SIG組

1、成立SIG

選取共建技術(shù)領(lǐng)域并給出規(guī)劃 → 向PMC例會提交議題并通過評審 → 通過架構(gòu)SIG例會評估后建立新的代碼倉。

2、孵化SIG

啟動需求澄清、特性梳理方案設(shè)計、代碼開發(fā)、單元測試、功能測試等流程,完成SIG項目開發(fā) → 對照Check List,完成法務(wù)、門禁、OAT等問題自檢。

3、畢業(yè)SIG

向架構(gòu)SIG申請新SIG畢業(yè) → 向QA SIG會申請新SIG準出 → 倉庫owner移倉。

70165f6c-09bf-11ed-ba43-dac502259ad0.png

輔助工具SIG實踐經(jīng)驗分享

成立輔助工具SIG組的宗旨是“降低重復(fù)勞動,提高工作效率,讓專業(yè)的人做專業(yè)的事”。NAPI框架代碼生成工具、IDL轉(zhuǎn)換工具和開機動畫工具都是圍繞著這個宗旨開發(fā)而成的。

一、NAPI框架代碼生成工具

NAPI是標準設(shè)備上的JS API實現(xiàn)方式,實現(xiàn)了JS語言到框架C++層的調(diào)用,在OpenHarmony系統(tǒng)中,APP調(diào)用是調(diào)用JS語言的接口函數(shù),最終具體功能是用C++語言來實現(xiàn)。

NAPI存在三個開發(fā)痛點需要解決:

1、NAPI框架代碼的重復(fù)率高:面對不同的JS接口,開發(fā)者要實現(xiàn)相似度高的框架代碼。

2、NAPI框架的學(xué)習(xí)成本高:框架機制涉及JavaScript、C++語言,以及編譯腳本工具。

3、NAPI 需求量大:OpenHarmony系統(tǒng)功能均是通過NAPI接口體現(xiàn),目前已經(jīng)支持1萬多個NAPI接口。

針對以上三個痛點,NAPI框架代碼生成工具將C++ 、JavaScript接口類型轉(zhuǎn)換等代碼抽取公共模塊,并且自動生成編譯腳本。開發(fā)者使用工具自動生成NAPI框架代碼,只需實現(xiàn)業(yè)務(wù)代碼調(diào)用即可,避免了大量重復(fù)的工作。

7051aa5e-09bf-11ed-ba43-dac502259ad0.png

二、IDL轉(zhuǎn)換工具

OpenHarmony使用的是HDF驅(qū)動框架,驅(qū)動相應(yīng)的硬件信息需要IDL文件來描述。

IDL存在兩大開發(fā)痛點需要解決:

1 、HDI開發(fā)難度大:HDI開發(fā)者比較熟悉C語言,習(xí)慣在.h文件中定義HDI接口,而對于IDL文件結(jié)構(gòu)、語法并不是很熟悉,學(xué)習(xí)曲線相對較長。

2、HDI工作量大:HDI接口是驅(qū)動對外提供服務(wù)的必要條件,各個子系統(tǒng)均涉及,故HDI工作量較大。

針對以上痛點,深開鴻設(shè)計的IDL轉(zhuǎn)換工具將開發(fā)者熟悉的.h文件自動轉(zhuǎn)換為idl文件,開發(fā)者只需要在頭文件中定義自己的接口即可,工具自動實現(xiàn).h頭文件到IDL文件轉(zhuǎn)換,開發(fā)者不需要關(guān)心IDL語法,大大降低工作量。

70632964-09bf-11ed-ba43-dac502259ad0.png

三、開機動畫工具

開機動畫工具是我們早期針對OpenHarmony2.0版本存在的問題做的一個輔助工具。

OpenHarmony2.0版本在開機動畫方面有兩個問題:

1、OpenHarmony2.0版本開機動畫只支持raw文件,不利于開發(fā)者在發(fā)行版和定制版進行直接展現(xiàn)。

2、因為產(chǎn)品的形態(tài)不一,對于不同的產(chǎn)品,其開機動畫的需求也是不同。

通過開機動畫輔助工具使以上兩個問題得到了更好地解決:

1、開機動畫工具支持圖片集或者 mp4等多種文件生成開機動畫,且支持設(shè)置開機動畫的分辨率等操作,更加方便開機動畫的制作。

2、做到一鍵生成開機動畫文件,并且支持在 windows平臺上查看其效果,不需要每次都去燒錄到開發(fā)板上,大大降低了演示的工作量。

708d0360-09bf-11ed-ba43-dac502259ad0.png

四、輔助工具SIG共建方向

目前深開鴻主導(dǎo)的輔助工具SIG組主要提供給開發(fā)者文檔資料、測試用例和工具開發(fā)3個共建方向。

如果你擅長文檔編撰,那么可以參與到社區(qū)的文檔貢獻,撰寫文檔可以不需要有很強的開發(fā)能力。

如果你是測試人員,擅長自動化測試,那么通過測試用例也可以參與到社區(qū)的建設(shè)。

另外也歡迎各位開發(fā)者參與到各種工具的建設(shè)中來。SIG組的工具可以是獨立的工具,也可以通過插件的方式集成到IDE開發(fā)軟件中。

73dbffc6-09bf-11ed-ba43-dac502259ad0.png

五、參與輔助工具SIG貢獻的具體方式

1、提交問題單。無論是文檔的bug、測試用例的bug、還是代碼的bug,提交了問題單就是對社區(qū)做了貢獻,那么輔助工具SIG組如何提交問題單呢?

首先找到對應(yīng)的倉庫并登錄,例如https://gitee.com/openharmony/napi_generator/issues。

提交過程中要注意格式要求,必須寫清楚提單過程中問題出現(xiàn)的條件,預(yù)期的結(jié)果和錯誤的結(jié)果,問題的定位信息等,有了這些信息后,領(lǐng)取這個問題單的開發(fā)也方便定位問題。

7406918c-09bf-11ed-ba43-dac502259ad0.png

登錄找到想要認領(lǐng)的問題單的頁面,在評論中表達出想要承接這個需求的意愿,SIG的負責(zé)人會定期跟蹤這些問題單并做出答復(fù)。

742916f8-09bf-11ed-ba43-dac502259ad0.png

2、認領(lǐng)需求后進行開發(fā)流程

領(lǐng)到一個需求后要進行正常的開發(fā),核心分為以下6步:

①通常開發(fā)者已經(jīng)配置好配置碼云賬號、個人郵箱和簽署DCO(簽署DCO主要是保證貢獻者原創(chuàng)),有了這些前置工作以后,我們可以操作代碼倉庫進行需求的開發(fā)。

②Fork代碼到私倉。

③克隆fork出來的倉庫到自己的主機上。

④在本地開發(fā)代碼開發(fā)和功能驗證。

⑤開發(fā)完畢后向官方原始倉提交Pull Request,提交代碼后會觸發(fā)門禁等常規(guī)檢查。

⑥如果這個sig組是你自己主導(dǎo)的,那么作為Committer,需要評審別人提交的代碼,如果只是參與共建,提交完代碼通過門禁就完成任務(wù)。

內(nèi)核SIG參與共建經(jīng)驗

關(guān)于深開鴻內(nèi)核SIG共建經(jīng)驗,下面將以文件系統(tǒng)的優(yōu)化為實例向大家分享具體的貢獻過程。

內(nèi)核共建的方向比較多,體系架構(gòu)有各個硬件平臺的移植,內(nèi)核模塊中功耗管理、時間管理、任務(wù)調(diào)度、中斷管理、文件系統(tǒng)、三方庫相關(guān)的內(nèi)核shell命令移植,目前深開鴻主要在文件系統(tǒng)和第三方庫方面做社區(qū)共建。深開鴻希望將來展開更多方向的優(yōu)化工作,并向外提供具體場景下內(nèi)核系統(tǒng)移植方案。

74528498-09bf-11ed-ba43-dac502259ad0.png

littlefs文件系統(tǒng)的共建過程:

1、了解社區(qū)需求,社區(qū)目前對littlefs文件系統(tǒng)隨機讀寫的速度不滿意。

2、了解到社區(qū)文件系統(tǒng)對隨機讀寫需求的前提下,對littlefs隨機讀寫IO性能瓶頸進行分析,找到能優(yōu)化的代碼點,采用了“以空間換時間”的思路。

3、采用逐步優(yōu)化的思路,明確方案后和社區(qū)負責(zé)人溝通,得到了社區(qū)負責(zé)人認可后,展開具體的代碼工作。

747c930a-09bf-11ed-ba43-dac502259ad0.png

由于文件系統(tǒng)優(yōu)化是一個比較復(fù)雜的過程,下面分享了一套社區(qū)共建流程。

1、從社區(qū)認領(lǐng)需求后,通過微信群的方式和社區(qū)負責(zé)人溝通并澄清需求。

2、從技術(shù)上分析需求并制定優(yōu)化方案,再次和社區(qū)負責(zé)人溝通,做方案討論并得到認可。

3、具體任務(wù)開發(fā),包括任務(wù)拆解、編碼實現(xiàn)、測試,最后提交PR。

74c89ad4-09bf-11ed-ba43-dac502259ad0.png

針對littlefs文件系統(tǒng)優(yōu)化過程中修改涉及到的相關(guān)文件,包括littlefs文件代碼,也就是點c和點h文件;也有編譯相關(guān)的文件,即.gn文件gni文件,之所以修改編譯相關(guān)的文件是為了測試littlefs的優(yōu)化后的代碼,我們團隊增加了相關(guān)的測試用例,這些測試用例會調(diào)用內(nèi)核文件系統(tǒng)的API,涉及到這些編譯相關(guān)的文件。

74efc172-09bf-11ed-ba43-dac502259ad0.png

littlefs第三方庫代碼完成后提交到社區(qū)的過程

1、littlefs第三方庫repository路徑,并fork到用戶倉庫。

2、git clone用戶倉到本地。

3、提交修改到用戶倉。

4、點擊提交PR。

5、填寫PR單,PR單頁需要按照既定模板填寫,寫清楚原始需求,如何解決這個問題,怎么解決這個問題以及具體修改點。

6、在評論中添加“start build”點亮PR。這里有一個特別注意的點,需要在評論中是手動填寫“start build”這2個英文單詞,目的是觸發(fā)后續(xù)的門禁檢測。這是OpenHarmony社區(qū)比較特別的一點,其它開源項目中所沒有的。

753a09da-09bf-11ed-ba43-dac502259ad0.png

756202b4-09bf-11ed-ba43-dac502259ad0.png

757e0b80-09bf-11ed-ba43-dac502259ad0.png

歡迎感興趣的開發(fā)者多方位參與OpenHarmony開源貢獻,成為OpenHarmony Contributor,也歡迎各位提出寶貴的意見,為OpenHarmony貢獻一份力量。

參與戰(zhàn)“碼”先鋒,PR 征集令!在Gitee的OpenHarmony代碼倉提交PR參與活動,和全球的開發(fā)者一起共建OpenHarmony的繁榮生態(tài)!

文章中涉及的鏈接匯總:

NAPI框架代碼生成工具代碼倉地址:

https://gitee.com/openharmony/napi_generator

IDL轉(zhuǎn)換工具代碼倉地址:

https://gitee.com/openharmony/drivers_hdf_core/tree/master/framework/tools/idl-gen

開機動畫工具代碼倉地址:

https://gitee.com/openharmony/graphic_graphic_2d/tree/master/frameworks/bootanimation/data/bootanimation_tool


審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    3616

    瀏覽量

    43500
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4888

    瀏覽量

    70277

原文標題:30分鐘成為Contributor|如何多方位參與OpenHarmony開源貢獻?

文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    開源鴻蒙工程工具分論壇圓滿舉辦

    近日,開源鴻蒙開發(fā)者大會2025(OHDC.2025)工程工具分論壇在深圳圓滿舉辦。本次分論壇由開源鴻蒙IDE SIG組長、華為終端BG工程工具技術(shù)專家唐春擔(dān)任出品人,主題為“開源鴻蒙
    的頭像 發(fā)表于 06-05 15:35 ?174次閱讀

    開源鴻蒙圖形與游戲分論壇圓滿舉辦

    近日,開源鴻蒙開發(fā)者大會2025(OHDC.2025)圖形與游戲分論壇在深圳圓滿舉辦。本次分論壇由開源鴻蒙圖形SIG & 游戲SIG組組長、華為終端BG圖形TMG主任黃然,以及
    的頭像 發(fā)表于 06-05 15:30 ?237次閱讀

    開源鴻蒙大屏生態(tài)分論壇圓滿舉辦

    近日,開源鴻蒙開發(fā)者大會2025(OHDC.2025)在深圳成功舉辦。在主論壇上隆重舉行了“開源鴻蒙TV SIG”成立儀式,開源鴻蒙TV SIG
    的頭像 發(fā)表于 06-05 15:27 ?283次閱讀

    開源鴻蒙社區(qū)安全治理突出貢獻團隊和個人授牌儀式成功舉行

    近日, “聚智聚力,共筑OpenHarmony安全生態(tài)”論壇在武漢成功舉辦。在此次會議上,為2024年9月至2025年5月期間對開源鴻蒙社區(qū)安全治理做出突出貢獻的團隊和個人進行了授牌,以致謝他們?yōu)樯鐓^(qū)安全治理工作所做的卓越
    的頭像 發(fā)表于 06-05 15:08 ?237次閱讀

    開源鴻蒙應(yīng)用技術(shù)組件共建計劃啟動

    近日,開源鴻蒙開發(fā)者大會2025(OHDC.2025,以下簡稱“大會”)在深圳成功舉辦。開源四年多來,開源鴻蒙代碼規(guī)模已達 1.3 億多行,代碼貢獻者達 8600 多位,超過 1100
    的頭像 發(fā)表于 06-05 14:33 ?233次閱讀

    國科微受邀出席2025開源鴻蒙開發(fā)者大會

    基于OpenHarmony的芯片平臺介紹” 主題演講,深度解析公司在開源鴻蒙芯片級適配領(lǐng)域的技術(shù)突破與生態(tài)貢獻。在會上,國科微宣布,將于今年下半年陸續(xù)推出適配OH5.0乃至OH5.1版本的多款芯片平臺,通過技術(shù)迭代打破場景邊界,
    的頭像 發(fā)表于 05-29 11:28 ?374次閱讀

    開源鴻蒙發(fā)展提速!開鴻智谷牽頭成立AI Model SIG

    5月24日,開源鴻蒙開發(fā)者大會2025(以下簡稱“大會”)在深圳圓滿落幕。本次大會由開源鴻蒙項目群工作委員會主辦,華為、開鴻智谷、中國南方電網(wǎng)、中國科學(xué)院軟件研究所等合作單位提供支持,以開源鴻蒙
    的頭像 發(fā)表于 05-26 18:01 ?262次閱讀
    <b class='flag-5'>開源</b>鴻蒙發(fā)展提速!開鴻智谷牽頭成立AI Model <b class='flag-5'>SIG</b>

    請問下,openharmony支持哪一款龍芯的開發(fā)板?有沒有開源的龍芯的openharmony源碼?

    想買個2k0300的開發(fā)板學(xué)習(xí)龍芯和openharmony,愣是沒有看到提供openharmony源碼的,也沒與看到開源的代碼。gitee上,openharmony的龍芯sig倉庫也是關(guān)閉的,有沒有人知道現(xiàn)在是什么情況?
    發(fā)表于 04-26 13:06

    最具影響力開源創(chuàng)新貢獻獎!RT-Thread睿賽德再獲殊榮

    日前,第十二屆開源操作系統(tǒng)年度技術(shù)會議(OS2ATC)在北京成功舉辦,此次會議頒布了在開源操作系統(tǒng)等領(lǐng)域做出卓越貢獻的獲獎組織名單。作為國內(nèi)開源操作系統(tǒng)領(lǐng)域的佼佼者,RT-Thread
    的頭像 發(fā)表于 04-17 19:47 ?262次閱讀
    最具影響力<b class='flag-5'>開源</b>創(chuàng)新<b class='flag-5'>貢獻</b>獎!RT-Thread睿賽德再獲殊榮

    模數(shù)轉(zhuǎn)換器 SIG7124 國產(chǎn)平替 AD7124-4,替代 AD7124-4

    共創(chuàng)國產(chǎn)高精度模數(shù)轉(zhuǎn)換器芯片平替新生態(tài) 而且因為 fully compatible,板子拿來,換個芯片,性能更好 MCU 不用改 c code。 SIG7124 1.17SPS
    發(fā)表于 04-10 16:23

    RISC V 開源芯片項目:OpenTitan 詳細解讀

    OpenTitan 是由 Google 主導(dǎo)的開源安全芯片項目,旨在為硬件系統(tǒng)提供 可信的硬件信任根(Root of Trust, RoT)? ,通過透明化設(shè)計和開源協(xié)作提升硬件安全水平。以下是其
    的頭像 發(fā)表于 04-09 14:45 ?1163次閱讀
    RISC V <b class='flag-5'>開源</b>芯片項目:OpenTitan 詳細解讀

    開源鴻蒙OpenHarmony社區(qū)運營報告(2025年1月)

    ●截至2025年1月31日,開放原子開源鴻蒙(OpenAtomOpenHarmony,簡稱“開源鴻蒙”或“OpenHarmony”)社區(qū)累計超過8200名貢獻者,共63家成員單位,產(chǎn)生51.2萬多個
    的頭像 發(fā)表于 02-11 09:28 ?472次閱讀
    <b class='flag-5'>開源</b>鴻蒙OpenHarmony社區(qū)運營報告(2025年1月)

    CCF開源創(chuàng)新大賽決賽結(jié)果發(fā)布!OpenHarmony應(yīng)用開發(fā)賽道盡展風(fēng)采

    經(jīng)過數(shù)月的激烈比拼與項目展示,第七屆CCF開源創(chuàng)新大賽決賽結(jié)果揭榜!其中,深開鴻的“OpenHarmony應(yīng)用開發(fā)-開源項目貢獻賽”賽道星光熠熠,表現(xiàn)突出。在此,發(fā)布頒獎典禮通知,讓我們共同見證
    的頭像 發(fā)表于 11-07 08:07 ?590次閱讀
    CCF<b class='flag-5'>開源</b>創(chuàng)新大賽決賽結(jié)果發(fā)布!OpenHarmony應(yīng)用開發(fā)賽道盡展風(fēng)采

    星光璀璨,聆聽 OpenHarmony 貢獻者之聲

    在第三屆開放原子開源基金會OpenHarmony技術(shù)大會上, 我們滿懷敬意地對取得優(yōu)秀成果的星光OpenHarmony技術(shù)俱樂部、星光導(dǎo)師、星光貢獻者、星光活動進行了致謝。 他們不僅是技術(shù)的探索者
    發(fā)表于 10-28 17:09

    CC256x藍牙SIG認證應(yīng)用說明

    電子發(fā)燒友網(wǎng)站提供《CC256x藍牙SIG認證應(yīng)用說明.pdf》資料免費下載
    發(fā)表于 09-11 09:41 ?0次下載
    CC256x藍牙<b class='flag-5'>SIG</b>認證應(yīng)用說明