<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Goby使用 ClojureScript? 開發(fā) iOS 應(yīng)用

          聯(lián)合創(chuàng)作 · 2023-09-24 21:53

          Goby 可以使用 ClojureScript 來開發(fā) iOS 應(yīng)用。ClojureScript 是一個(gè)用來將 Clojure 語言轉(zhuǎn)成 JavaScript 腳本的工具。

          該存儲庫包含一些輕量級的ClojureScript和Objective-C粘合代碼,這些代碼有助于創(chuàng)建iOS應(yīng)用,其中視圖控制器使用ClojureScript(而不是Objective-C或Swift)編寫。否則,生成的iOS應(yīng)用程序是本地的,并且JavaScript在嵌入式JavaScriptCore實(shí)例中運(yùn)行。

          總體設(shè)計(jì)包括用于各種UIKit元素的裝飾器,每個(gè)裝飾器都實(shí)現(xiàn)JSExport協(xié)議,以便可以在ClojureScript代碼和UI元素之間建立互操作。Goby將UI視為可以被操縱或監(jiān)聽的一堆可變狀態(tài),而ClojureScript代碼中的原子僅保留對裝飾器的引用。

          當(dāng)需要提供諸如的Objective-C協(xié)議實(shí)現(xiàn)時(shí)UITableViewDataSource,Goby提供了等效的ClojureScript協(xié)議以及一些粘合代碼和reify宏,從而可以直接在ClojureScript中實(shí)現(xiàn)Objective-C協(xié)議。處理某些Objective-C方法是可選的情況。

          還有其他一些事情可以解決,例如一些用于管理JavaScript加載的基礎(chǔ)結(jié)構(gòu)粘合代碼,以及用于將方法從iOS分配到ClojureScript命名空間的簡單工具。定義了各種iOS SDK枚舉常量的ClojureScript關(guān)鍵字,以簡化工作。

          因此,Goby相當(dāng)少,僅提供一些結(jié)構(gòu)來幫助建立圍欄的Objective-C和ClojureScript側(cè)面之間的通信。它沒有嘗試提供支持功能編程風(fēng)格的復(fù)雜框架。但是,它至少使您到達(dá)使用ClojureScript進(jìn)行編碼的地步。:)

          這種方法被用來建立一個(gè)應(yīng)用程序目前在App Store和該回購是從該項(xiàng)目中的可重用位的。

          瀏覽 29
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美一区二区三区四区在线 | 青青操日日干 | 天堂a√8蜜桃 | 高潮在线视频 | 后入少妇在线播放 |