資料介紹
軟件簡(jiǎn)介
ScriptX 是一個(gè)腳本引擎抽象層,對(duì)下封裝多種腳本引擎,對(duì)上暴露統(tǒng)一的 API,使得上層調(diào)用者可以完全隔離底層的引擎實(shí)現(xiàn)。
ScriptX 不僅隔離了幾種 JavaScript 引擎,甚至可以隔離不同腳本語(yǔ)言,使得上層在無需改變代碼的前提下無縫切換腳本引擎和腳本語(yǔ)言。

特性:
支持多種引擎,多腳本語(yǔ)言
ScriptX設(shè)計(jì)之初就目標(biāo)為支持多種腳本語(yǔ)言,并在JavaScript上實(shí)現(xiàn)了V8和JavaScriptCore的引擎封裝。后續(xù)為了驗(yàn)證ScriptX的多語(yǔ)言設(shè)計(jì),實(shí)現(xiàn)了完整的Lua綁定。目前針對(duì)WebAssembly的支持也已經(jīng)完成。
現(xiàn)代的?C++ API
API設(shè)計(jì)上符合現(xiàn)代 C++ 風(fēng)格,如:
-
三種引用類型Local/Global/Weak,使用copy, move語(yǔ)義實(shí)現(xiàn)自動(dòng)的內(nèi)存管理(自動(dòng)引用計(jì)數(shù))
-
使用Template Meta-Programing 實(shí)現(xiàn)直接綁定C++函數(shù)
現(xiàn)代語(yǔ)言特性,引用空指針安全(nullibility safety 請(qǐng)參考kotlin的概念)。
注:ScriptX要求C++17(或1z)以上的編譯器支持,并需要打開異常特性,(可以關(guān)閉RTTI特性)。
高性能
高性能是ScriptX設(shè)計(jì)上的重要指標(biāo)。在實(shí)現(xiàn)過程中也充分體現(xiàn)了 Zero-Overhead 的C++思想。并在增加功能特性的時(shí)候通過相關(guān)的性能測(cè)試。

測(cè)試指標(biāo):?jiǎn)未蜫S到C++函數(shù)調(diào)用耗時(shí),微秒
測(cè)試環(huán)境:iMac i9-9900k 32G RAM@macOS 10.15
性能測(cè)試表示,在Release模式下,ScriptX可以達(dá)到幾乎和原生綁定相同的性能。(由于ScriptX使用大量模板,請(qǐng)勿在Debug版進(jìn)行性能測(cè)試)?
支持異常處理
ScriptX通過一系列的技術(shù)手段實(shí)現(xiàn)了腳本的異常和C++異常相互打通的能力。在調(diào)用引擎API時(shí)無需判斷返回值,可以使用異常統(tǒng)一處理,避免crash。
易用的API
易用的API => 開心的工程師=> 高效 => 高質(zhì)量
ScriptX 設(shè)計(jì)的時(shí)候充分考慮到API的易用性,包括操作友好簡(jiǎn)單,不易出錯(cuò),錯(cuò)誤信息明顯,便于定位問題等。
簡(jiǎn)單高效的綁定API
當(dāng)app作為宿主使用腳本引擎時(shí),通常都是需要注入大量native 綁定的函數(shù)/類來為腳本邏輯提供能力。ScriptX 設(shè)計(jì)的ClassDeifine相關(guān)綁定API簡(jiǎn)單易用,并且可以支持直接綁定C++函數(shù),極大的提升工作效率。
可以與原生引擎API互操作
ScriptX在提供引擎封裝的同時(shí),也提供了一套工具方法實(shí)現(xiàn)原生類型和ScriptX類型的相互轉(zhuǎn)換。
- 電機(jī)控制硬件抽象層(HAL)用戶指南
- 環(huán)境傳感器:用于Android的硬件抽象層
- UM1785_STM32F0xx硬件抽象層和底層驅(qū)動(dòng)描述
- UM2659_STM32L5的硬件抽象層和底層驅(qū)動(dòng)描述
- STM32 硬件抽象層(Hardware Abstraction la
- 芯片設(shè)計(jì)抽象層及其設(shè)計(jì)風(fēng)格
- win7字體轉(zhuǎn)換腳本工具下載 15次下載
- 嵌入式和物聯(lián)網(wǎng)的shell腳本學(xué)習(xí)指南之shell腳本入門免費(fèi)下載 20次下載
- Keil_SDK軟件精簡(jiǎn)腳本安裝 2次下載
- 電機(jī)控制硬件抽象層(HAL) 3次下載
- 嵌入式操作系統(tǒng)的通用硬件抽象層設(shè)計(jì)方案 3次下載
- 基于嵌入式軟件開發(fā)環(huán)境中操作系統(tǒng)抽象層的設(shè)計(jì) 3次下載
- 嵌入式軟件開發(fā)環(huán)境中操作系統(tǒng)抽象層的設(shè)計(jì) 30次下載
- 基于平臺(tái)抽象層的進(jìn)程虛擬機(jī)設(shè)計(jì)與實(shí)現(xiàn)
- 嵌入式系統(tǒng)中設(shè)備抽象層的設(shè)計(jì)
- LabVIEW抽象消息使用教程(上) 218次閱讀
- 一文詳解Java表達(dá)式引擎選型 1969次閱讀
- shell實(shí)例三(編寫批量修改擴(kuò)展名腳本) 720次閱讀
- 編寫一個(gè)點(diǎn)名器腳本 607次閱讀
- keil自動(dòng)化編譯腳本 1976次閱讀
- 分享249個(gè)拿來即用的shell腳本 1202次閱讀
- 如何防止腳本重復(fù)運(yùn)行 1454次閱讀
- 安卓應(yīng)用層抓包通殺腳本的用法 1555次閱讀
- 如何升級(jí)Vivado工程腳本 1869次閱讀
- 109個(gè)實(shí)用shell腳本分享 2662次閱讀
- shell腳本最簡(jiǎn)明的教程 4865次閱讀
- 基于區(qū)塊鏈的游戲基礎(chǔ)技術(shù)平臺(tái)GES游戲引擎公鏈 3470次閱讀
- 測(cè)量神經(jīng)網(wǎng)絡(luò)的抽象推理能力 5202次閱讀
- Linux Bash腳本進(jìn)階教程學(xué)習(xí) 3845次閱讀
- 如何做才能學(xué)好Shell腳本的經(jīng)驗(yàn)總結(jié) 6260次閱讀
下載排行
本周
- 1PFC電路與BOOST電路設(shè)計(jì)實(shí)例分享
- 1.83 MB | 12次下載 | 4 積分
- 2世平基于靈動(dòng)微 SPIN560C 的低壓無刷電機(jī)應(yīng)用方案
- 10.93 MB | 11次下載 | 免費(fèi)
- 3電源測(cè)試報(bào)告-基于 國(guó)民技術(shù) N32L406 和杰華特 JW3376+3330 的 BMS 方案
- 6.47 MB | 11次下載 | 免費(fèi)
- 4PWM控制器的控制方法
- 0.39 MB | 3次下載 | 4 積分
- 5電流檢測(cè)芯片F(xiàn)P135應(yīng)用說明
- 1.24 MB | 3次下載 | 免費(fèi)
- 6全面解讀被動(dòng)式與主動(dòng)式PFC電路
- 1.27 MB | 1次下載 | 4 積分
- 7HC88L051F4低功耗芯片規(guī)格書
- 4.76 MB | 1次下載 | 免費(fèi)
- 8CIU32D655x5數(shù)據(jù)手冊(cè)
- 2.14 MB | 1次下載 | 免費(fèi)
本月
- 1常用電子元器件使用手冊(cè)
- 2.40 MB | 52次下載 | 免費(fèi)
- 2高功率密度碳化硅MOSFET軟開關(guān)三相逆變器損耗分析
- 2.27 MB | 33次下載 | 10 積分
- 3PFC電路與BOOST電路設(shè)計(jì)實(shí)例分享
- 1.83 MB | 12次下載 | 4 積分
- 4世平基于靈動(dòng)微 SPIN560C 的低壓無刷電機(jī)應(yīng)用方案
- 10.93 MB | 11次下載 | 免費(fèi)
- 5電源測(cè)試報(bào)告-基于 國(guó)民技術(shù) N32L406 和杰華特 JW3376+3330 的 BMS 方案
- 6.47 MB | 11次下載 | 免費(fèi)
- 6USB拓展塢PCB圖資料
- 0.57 MB | 11次下載 | 免費(fèi)
- 7MS1826 HDMI 多功能視頻處理器數(shù)據(jù)手冊(cè)
- 4.51 MB | 9次下載 | 免費(fèi)
- 8HAL9303線性霍爾效應(yīng)傳感器技術(shù)手冊(cè)
- 0.70 MB | 9次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935134次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191424次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183352次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81600次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73818次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論