主題行非常多地描述它。我正在尋找一個工具鏈來構建一個跨平臺的業務邏輯庫,該庫將被其他原生iOS應用程序使用。我可以使用F#構建一個(跨平臺)庫,以用於原生iOS應用程序嗎?
我正在考慮對這個庫使用F#,因爲我喜歡它的功能性方法,而且我對性能的看法似乎至少是合理的。
我想知道在F#中編寫這個庫是否可行,然後從iOS上的本機(可能是Swift)應用程序中調用/使用它。
主題行非常多地描述它。我正在尋找一個工具鏈來構建一個跨平臺的業務邏輯庫,該庫將被其他原生iOS應用程序使用。我可以使用F#構建一個(跨平臺)庫,以用於原生iOS應用程序嗎?
我正在考慮對這個庫使用F#,因爲我喜歡它的功能性方法,而且我對性能的看法似乎至少是合理的。
我想知道在F#中編寫這個庫是否可行,然後從iOS上的本機(可能是Swift)應用程序中調用/使用它。
您可以使用Fable編譯您的庫,然後在React Native中編寫您的應用程序以將其作爲iOS中的本機應用程序使用。這裏有一些你可以用寓言做的有趣的事情。 http://www.navision-blog.de/blog/2016/08/14/fable-sudoku-creating-a-sudoku-solver-app-with-f/
如果你不想要React Native,那麼你的另一種選擇是直接從你的本地代碼中調用生成的JS代碼,但是這是一堆樣板和每個函數調用的投射。 How to call JavaScript Function in objective C
我認爲您希望的解決方案是能夠編譯爲Xamarin並使用來自iOS應用程序的庫(如本機庫),但這是不可能的。
您的最後一段反映了我所問的問題和我害怕的答案。感謝您抽出時間說清楚。 – nicka773
@ nicka773當然。由於Xamarin必須創建自己的運行時,垃圾收集器等,因此必須「擁有」該過程。這就是爲什麼它不能像圖書館一樣工作。也許有一天會有解決辦法,但我不會很快下注。 –