2017-08-26 64 views
0

在閱讀Dart的文章library tour時,我剛剛發現某些庫不能用於Web應用程序,並且其他庫不能用於命令行應用程序或不能用於命令行應用程序,而所有這些提到的庫都屬於標準圖書館。例如,不能用於Web應用程序,但僅用於命令行應用程序。同樣,只有網絡應用程序可以使用dart:html,但不能使用命令行應用程序。爲什麼有些圖書館不能用於網絡和命令行應用程序?

我知道dart:html提供的更適合於編寫網絡應用程序,但我不明白爲什麼有這樣的限制,即不能在命令行應用程序中使用dart:html提供的某些服務。

當然,這些陳述假定在Dart編寫應用程序時,我們必須明確區分命令行和Web應用程序。這是真的?如果是的話,上面的限制真的很嚴格,或者他們實際上是建議?如果它們是真正的限制,那麼以這種方式設計Dart及其標準庫的目的是什麼?

+0

不確定在什麼情況下需要瀏覽器中的文件,套接字,環境變量和HTTP服務器支持。 –

+0

@TobeO HTTP服務器_瀏覽器_內? – nbro

+0

準確地說我的觀點 - 這就是爲什麼dart:io僅僅是服務器端。瀏覽器不支持其功能 –

回答

3

dart:html與DOM對話。虛擬機中沒有DOM。同樣,dart:io以瀏覽器無法訪問的方式與操作系統進行通信。 (您的瀏覽器無法啓動進程,打開文件或設置AJAX和WebSockets以外的套接字。)分離是有意義的。

相關問題