国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

輕量級桌面應(yīng)用開發(fā)的捷徑——nw.js

pumpkin9 / 2164人閱讀

摘要:下面這張解決了怎么用完成任務(wù)的問題,最后,開發(fā)者怕你懷疑的強(qiáng)大,又提供了幾個(gè)和許多成功的案例來打消我們的顧慮。拿下助攻決定用之后,就開始補(bǔ)充相應(yīng)的知識啦。來欣賞一下一些應(yīng)用的截圖吧,不得不說開發(fā)出的應(yīng)用一點(diǎn)不比原生的丑陋啊。

博客地址

每個(gè)程序員都希望用自己喜歡的語言,自己喜歡的平臺、工具,寫自己喜歡的程序。于是我們會看到有人在Win下用Visual Studio愉快地coding,也會看到有人在OS X下用Xcode來開發(fā),或者是用Sublime Text不受平臺限制地玩。

當(dāng)然了,愿望往往是美好的,然而事與愿違的情況時(shí)有發(fā)生。如果你基本都是用OS X,卻有人讓你寫一個(gè)帶有簡單界面的小程序,保證在他的Win系統(tǒng)上一定可以運(yùn)行,那么你是不是有點(diǎn)抓狂。

選擇哪條路?

當(dāng)然,我可以在Visual Studio(已經(jīng)有Mac OS X版)下用MFC或者其他框架來寫,但是總感覺有點(diǎn)重量級,并且不能移植到其他平臺(萬一哪天讓我寫個(gè)OS X下的界面呢,想想都不寒而栗?。。?/p>

所以我想找的就是一個(gè)可以跨平臺的、輕量級的圖形界面開發(fā)的庫,于是想到了喜歡的Python,然后發(fā)現(xiàn)它下面的GUI開發(fā)框架還真不少:wxPython, tkInter, PyGtk, PyQt。

wxPython: 首先官網(wǎng)相當(dāng)簡潔(丑陋),然后快速瀏覽了一下文檔,發(fā)現(xiàn)有這塊:Cross-Platform Development Tips,告訴你跨平臺要注意哪些東東,看來不是我心中想的那樣只需要寫一份代碼,在不同平臺編譯一下就可以,于是放棄。

TkInter: 也在其他地方看到有人推薦這個(gè),但是感覺文檔特別亂,網(wǎng)上一些教程也相當(dāng)簡陋,里面界面丑的掉渣,也放棄了。

后面兩個(gè)我甚至都沒耐心繼續(xù)看下去了,因?yàn)槲也唤?jīng)意看到了nw.js,他就像一座燈塔,冥冥之中照亮了前進(jìn)的方向啊。

nwjs——前進(jìn)的方向!

Github上nw.js有兩萬多Star和接近3000的Fork,說明它已經(jīng)相當(dāng)成熟,不會是某個(gè)人隨興放的一個(gè)并不成熟的技術(shù)。并且在Github項(xiàng)目的最后面,顯示Intel有贊助這個(gè)項(xiàng)目,看起來很牛的樣子。而且關(guān)于nw.js的資料也特別齊全,首先來看看它的特點(diǎn):

支持用HTML5, CSS3, JS和WebGL來寫應(yīng)用程序,包括桌面端和移動(dòng)端;

完全支持Node.js APIs和所有的第三方模塊;

性能也不會很差,對于輕量級的應(yīng)用足夠了;

對應(yīng)用進(jìn)行打包和發(fā)布十分簡單,也就是說寫一份代碼很容易移植到不同的平臺(包括主流的Linux, Mac OS X 和 Windows);

然后作者怕你認(rèn)為它很難打交道,進(jìn)而“知難而退”,就在項(xiàng)目主頁里用許多slides來介紹它。

Introduction to node-webkit (slides)

WebApp to DesktopApp with node-webkit (slides)

下面這張slide解決了“nw.js能做什么?”的問題,簡單來說nw.js就是使HTML, CSS, JavaScript寫的原本在瀏覽器上運(yùn)行的程序,也可以在桌面端運(yùn)行。

下面這張slide解決了“怎么用nw.js完成任務(wù)?”的問題,

最后,開發(fā)者怕你懷疑nw.js的強(qiáng)大,又提供了幾個(gè)Demo和許多成功的案例來打消我們的顧慮。

nwjs——拿下助攻!

決定用nw.js之后,就開始補(bǔ)充相應(yīng)的知識啦。首先自己沒有怎么去學(xué)過JavaScript, HTML, CSS這類web方面的語言,不過想來也不會比C++難。學(xué)習(xí)的成本也應(yīng)該比學(xué)習(xí)MFC, wxPython低很多,并且這些語言太基礎(chǔ)、使用場景太多了,所以早晚都得了解一下,干脆借這個(gè)機(jī)會一邊學(xué)一邊做具體的東西。于是買了《JavaScript DOM編程藝術(shù)(第2版)》這本書拿來入門。

講了這么多,還沒說我具體要做什么呢,其實(shí)要做的事情特別簡單,就是統(tǒng)計(jì)一本書的頁碼中一共有多少個(gè)0,1,2,3,4,5,6,7,8,9。關(guān)于這個(gè)問題,詳細(xì)看前面的那篇博客:講得明白,但寫的明白嗎?。

我要實(shí)現(xiàn)的目標(biāo)很簡單,在輸入正確的數(shù)字時(shí),給出統(tǒng)計(jì)結(jié)果;輸入錯(cuò)誤的數(shù)字時(shí),則給出錯(cuò)誤提示,重置輸入框和統(tǒng)計(jì)結(jié)果。如下:

實(shí)現(xiàn)過程相當(dāng)簡單,特別是對于那些做過web開發(fā)的,詳細(xì)過程就不在這里給出了,只提供一個(gè)簡單的程序邏輯圖吧。

源碼十分簡單,可以在這里找到,結(jié)構(gòu)如下:

 tree
.
├── index.html
├── main.js
├── package.json
└── style.css

0 directories, 4 files

打包到各個(gè)平臺也有詳細(xì)的文檔。以Win為例,只需要三步即可:

將所有工程文件,放在一個(gè)文件夾下,確保package.json在根目錄,然后壓縮為.zip格式,并將壓縮文件的后綴由.zip改為.nw

在nw.js的環(huán)境目錄下執(zhí)行copy /b nw.exe+you_nw_name.nw you_app_name.exe (這一步之后,就可以在生成的目錄中直接運(yùn)行you_app_name.exe,它依賴同目錄下的一些其他庫);

用Enigma Virtual Box將you_app_name.exe和依賴的庫打包到單個(gè)exe文件中,這樣我們的應(yīng)用在沒有任何編程環(huán)境的win機(jī)器上都可以運(yùn)行。

nwjs——你值得擁有!

不得不提nw.js開發(fā)出的應(yīng)用已經(jīng)涵蓋了許多領(lǐng)域:

WhatsApp 經(jīng)典的聊天應(yīng)用,還有Messenger;

Powder Player 種子下載,以及視頻播放器;

Boson Editor 代碼編輯器,甚至還有一款Markdown編輯器叫Story-writer;

Leanote Desktop App 類似Evernote的筆記類應(yīng)用程序;

Mongo Management Studio 數(shù)據(jù)庫管理應(yīng)用。

來欣賞一下一些應(yīng)用的截圖吧,不得不說nw.js開發(fā)出的應(yīng)用一點(diǎn)不比原生的丑陋啊。

Mongo Management Studio

Soundnode App

看來nw.js贏得了很多青睞,那么還有什么能阻止我們擁抱nw.js呢?。

ps:

如果有的鏈接打不開,先檢查打開的姿勢對不對。

更多文章見 我的主頁

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/86065.html

相關(guān)文章

  • NW.js+Enigma Virtual Box+node-webkit打包Hybrid桌面應(yīng)用其實(shí)

    摘要:在很多原因下,我們?yōu)榱擞峡蛻艋蛘咂渌脑颍枰诒旧泶a或框架不能兼容的瀏覽器下運(yùn)行項(xiàng)目,怎么辦呢,我們將其打包為桌面應(yīng)用不失為一種好。如果圖標(biāo)有變化,大功告成我的沒有換圖標(biāo),所以依然是的圖標(biāo) WHY 在很多原因下,我們?yōu)榱擞峡蛻艋蛘咂渌脑?,需要在本身代碼或框架不能兼容的瀏覽器下運(yùn)行項(xiàng)目,怎么辦呢,我們將其打包為桌面應(yīng)用不失為一種好idea。nw.js是node-webkit...

    microcosm1994 評論0 收藏0
  • 2016年度 JavaScript 展望(下)

    摘要:與是年最早公開發(fā)布的兩個(gè)框架,后來者還包括與。此外,另一重心是與團(tuán)隊(duì)的合作,預(yù)計(jì)將貫穿年。年展望對平臺而言,年的重點(diǎn)是提升穩(wěn)定性與采納率。最早由開發(fā),于年公開發(fā)布。時(shí)間會告訴我們,的極速增長能否在年持續(xù)下去。 【編者按】本文作者為資深 Web 開發(fā)者 TJ VanToll, TJ 專注于移動(dòng)端 Web 應(yīng)用及其性能,是《jQuery UI 實(shí)踐》 一書的作者。 本文系 OneAPM 工...

    XGBCCC 評論0 收藏0
  • 最流行編程語言 JavaScript 能做什么?

    摘要:首先很遺憾的一點(diǎn)是,雖然是最好的語言,但是它不是最流行的語言。屬于配置比較高的硬件,而低配的呢三星設(shè)計(jì)了引擎,它能夠運(yùn)行在小于內(nèi)存上,且全部代碼能夠存儲在不足的只讀存儲上。你覺得還能做什么 首先很遺憾的一點(diǎn)是,PHP雖然是最好的語言,但是它不是最流行的語言。showImg(https://segmentfault.com/img/bVvqTs);同時(shí)對不起的還有剛剛在4月TIOBE編程...

    褰辯話 評論0 收藏0

發(fā)表評論

0條評論

pumpkin9

|高級講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<