在過去的一周,Ruby發(fā)布了2.1.1版本,并且迎來了它的21歲生日。在開源方面,F(xiàn)acebook開源基于D語言編寫的C++靜態(tài)代碼分析器flint。flint的主要功能是自動提示警報信息。例如,在代碼審核系統(tǒng)里給出合適的代碼修改提示;提醒程序員哪行代碼出錯了等等。
此外,其它熱門文章還有:專訪Ejoy2D作者云風:因Lua而生的開源圖形引擎、你應該放棄的八大設計元素等。
1.私人定制,十款最佳Node.js MVC框架
Node.js是JavaScript中最為流行的框架之一,易于創(chuàng)建可擴展的Web應用。Node.js包含不同類型框架,包括MVC, full-stack,REST
API以及Generators。借助這些框架使Node.js更加易于使用,它還支持眾多特性功能,您只需幾個步驟就可快速搭建強大的Web應用。
下面分享10款基于Node.js的MVC框架啊:
2.C/C++開發(fā)者必不可少的15款編譯器+IDE
Web開發(fā)者可選擇的編程語言有很多比如,Java、.Net、PHP、Ruby、Perl、Python等等,但是今天我們要討論的是兩個古老且非常流行的語言,即C/C++。正是由于其迷人的特性,賦予了它們更加有效的功能,并且也獲得了各大工具廠商的支持。如今,這兩門語言依然活躍在編程領域里,其不僅擁有者強大的功能集,而且還提供了強大的安全保障。
本文,筆者專為C/C++編碼者收集了15款令人印象深刻的IDE和編譯器。我們一起來看下:
3.專訪Ejoy2D作者云風:因Lua而生的開源圖形引擎
Ejoy2D是一款圖形引擎、基于C和Lua開發(fā),底層是一個十分簡單的核心層,基本上只負擔繪制工作,上層語言是Lua。Ejoy2D是國內簡悅(EJOY)游戲公司所開發(fā)的一款游戲圖形引擎,旨在幫助開發(fā)人員輕松地嵌入到游戲引擎中,方便開發(fā)者定制自己所需的功能。遵循MIT開源許可。
托管地址: https://github.com/cloudwu/ejoy2d
CSDN記者聯(lián)系到了Ejoy2D項目負責人云風(微博:@簡悅云風),請他來分享Ejoy2D的開發(fā)歷程及他在游戲開發(fā)方面的感悟。
云風:真名吳云洋,曾任網(wǎng)易杭州研究中心總監(jiān),是網(wǎng)易《大話西游》、《夢幻西游》等游戲的主要開發(fā)者,他在2011年9月從網(wǎng)易辭職,并與前網(wǎng)易COO詹鐘暉聯(lián)合創(chuàng)辦了簡悅(EJOY)游戲公司,任公司CTO。
Ejoy2D項目負責人 云風
CSDN:Ejoy2D項目創(chuàng)建的初衷是什么?
云風:Ejoy2D的起源來自于我在2013年初玩到的一款叫Clash of Clans的移動平臺游戲,這讓我發(fā)現(xiàn)在移動平臺上,除了一個人玩的傳統(tǒng)游戲之外,還可以有非常有趣且結合移動平臺特性的游戲類型存在。在此之前,我們公司并沒有立刻開始移動平臺開發(fā)計劃;之后,我們迫切的想進入移動平臺游戲的開發(fā)領域。在經(jīng)過公司內部的充分討論后,我們打算先模仿Clash of Clans做一款類似的游戲練手。我個人判斷,把這類游戲做好,客戶端開發(fā)有一定的技術門檻,不太容易做的好。而我在十多年前就開始做2D游戲引擎,很有自信可以為這款游戲定制一款新的、適應移動平臺開發(fā)的2D引擎。這就是Ejoy2D的開始。
在獨立開發(fā)了大約一個月后,從我們的PC端游戲組調出了一名同事,和我一起來制作這款新游戲。邊用邊對Ejoy2D提出新需求,并完善它。
到了2013年7月左右,我們的外包美術資源開始進入,這時,我們又從外部招聘了一名同事專門為 Ejoy2D定制美術工具。這樣才慢慢完善了工具鏈,最終把游戲做了出來。這款游戲就是現(xiàn)在的陌陌爭霸。
從一開始,我就希望把引擎開源。因為之前我們開源的游戲服務器框架Skynet反響很好,幫助了不少朋友,同時開源也提高了代碼質量,不少bug都是公司之外的同學發(fā)現(xiàn)的。這讓我們在自己生產(chǎn)環(huán)境碰到bug前就得以修正。
但一開始的Ejoy2D代碼很不穩(wěn)定,且充滿了為了游戲項目能快速完成而臨時添加的補丁,所以直到我們的陌陌爭霸基本完成。后來,我花了大約2周時間全部重寫了Ejoy2D的代碼,覺得可以與大家見面了,就公布了代碼,并發(fā)布了開源的消息。接下來,我們內部有兩個新的項目組開始使用新版的Ejoy2D開發(fā)游戲,這兩個組都有同事開始為Ejoy2D貢獻代碼。
CSDN:與其它游戲引擎相比,比如Cocos2d-x,Ejoy2D有哪些與眾不同的地方?
云風:Ejoy2D其實是對OpenGL ES的一個淺封裝。我并不想把它發(fā)展成一個游戲引擎,而只停留在圖形引擎層面上。但和別的引擎相比較大的區(qū)別是,它天生為和Lua結合而設計并實現(xiàn)的。你幾乎不可能只使用Ejoy2D的C API ,而我鼓勵你只用Lua API在其上做開發(fā)。只有解決不了的需求時,再編寫一個供Lua調用的C模塊。由于這種設計,在使用方式上,Ejoy2D應該會比其它結合Lua腳本的引擎更高效些,使用起Lua API也會更自然。同時,Ejoy2D保留了很小的C內核,代碼全部用很簡短的C實現(xiàn)。閱讀理解起來會比較容易,維護它更輕松一些。
4.你應該放棄的八大設計元素
隨著移動浪潮的到來,以前眾多的流行設計元素因在移動設備上無法提供良好的視覺體驗,而正逐漸被淘汰。本文總結出八大即將被淘汰的設計元素,比如有下拉菜單、旋轉木馬、擬物化設計、Flash等。
下拉菜單
自互聯(lián)網(wǎng)誕生之后,下拉式菜單就成為用戶界面中的重要組成部分。現(xiàn)在還有不盡其數(shù)的網(wǎng)站仍將懸浮式下拉列表作為導航的重要部分,但隨著響應式設計趨勢的到來,簡單的下拉菜單將會逐漸消失。
從目前形式看,下拉列表在那些無法實現(xiàn)“懸浮狀態(tài)”的設備上(如平板、手機)無法正常工作。隨著“移動優(yōu)先”設計理念的進一步增強,基于點擊的導航將會越來越流行,如“漢堡式按鈕”的使用,及把整個網(wǎng)站的導航設計在一個可點擊的列表中。
旋轉木馬
旋轉木馬是另一個歷史比較久遠的Web UI元素(至少,根據(jù)互聯(lián)網(wǎng)標準是這樣的),它可以使頁面在首屏的某個位置顯示多個內容元素。基于時間進行循環(huán)播放,旋轉木馬已被淘汰,尤其在一些主要的新式網(wǎng)站上,它們基于瀏覽器的寬度可自適應地顯示內容塊。旋轉木馬的淘汰對手機、平板用戶是有利的,他們不必再費力地猛擊滾動著的旋轉木馬或導航。正如我們所了解的,旋轉木馬將進化得更像畫廊,且基于點擊與導航,而不是基于時間。
其它應該放棄的元素還有:IE 9、擬物化設計、Flash、Web頁面、共享主機、“m.”網(wǎng)站。
5.Ruby 2.1.1發(fā)布,改進系統(tǒng)加速,服務器兼容等問題
北京時間2014年2月25日,Ruby迎來了21周年紀念日。Ruby官方博客于今日發(fā)布Ruby 2.1及Ruby 2.1.1版本。
Ruby 2.1.1版本改進了不少功能,包括系統(tǒng)加速、解決服務器不兼容問題。此外,新的改本還修復了許多Bug。更多詳情參見: tickets、 ChangeLog。
現(xiàn)在你可以在Rails和其他的一些應用程序上使用該版本,以獲得更加舒適的體驗。
6.跨平臺的.NET運行環(huán)境 Mono 3.2.7發(fā)布
Mono是一個由Novell公司主持開發(fā)的項目。該項目旨在創(chuàng)建一系列符合ECMA 標準(Ecma-334 和Ecma-335)的.NET 工具,包括C#編譯器和共通語言執(zhí)行平臺。Mono項目不僅可以運行于Windows 系統(tǒng)上,還可以運行于Linux,F(xiàn)reeBSD,Unix,Mac OS X 和Solaris。
歷經(jīng)5個多月的開發(fā),Mono 3.2.7終于發(fā)布了。該改本帶來許多新的特性。項目托管在GitHub,你還可以查看Hacker News上的精彩評論。
7.Github推出基于Web的桌面文本編輯器:Atom
北京時間2014年2月27日,全球知名的軟件項目托管網(wǎng)站Github公開了一款全新的文本編輯器:Atom,目前正進行封閉式內側,感興趣的用戶可以輸入郵箱地址申請beta測試邀請。
Github已致力于該項目超過6年時間,Github稱,Atom之前只是一個試驗性項目,而后會迅速發(fā)展成實用工具。以后的Atom將會完全開源,Github鼓勵開發(fā)者對它進行擴展。Github還將Atom稱之為“面向21世紀的可控文本編輯器”。
為什么要發(fā)布Atom?
據(jù)Atom官方博客介紹,與Atom類似的編輯器Sublime和TextMate都深受開發(fā)者歡迎,但在擴展性上都有所限制,使用起來不是太靈活。而Emacs和Vim雖然很靈活,但在使用上卻又不太平易近人,只能使用專用的腳步語言進行定制。
為了打造一款即平易近人、方便使用又具靈活性的文本編輯器,Github推出了Atom文本編輯器。并且強調Atom的社區(qū)支持與發(fā)展。
8.又一API聚集地 3scale成立API Codex
構建API并不是一件簡單的事情,盡管網(wǎng)上有大量的API構建說明及最佳實踐,但對于沒有多少經(jīng)驗的程序員來說,如何區(qū)分質量,看到真正的最佳實踐及指導并不是件容易的事情。
為了幫助大家搜集更好、更專業(yè)的API學習資源,3scale成立API Alchemy網(wǎng)站,目前改名為API Codex,幫助企業(yè)、開發(fā)者、設計師學習和分享更多關于如何創(chuàng)建和管理API內容。
API Codex官網(wǎng)
API Codex項目由Kirsten Hunter團隊開發(fā),目前剛剛推出Beta版,以后會陸續(xù)在網(wǎng)站上添加論壇、社區(qū)等元素。目前,該網(wǎng)站上已有大量的API最佳實踐文章和解決方案供開發(fā)者查看,并且已有大量的開發(fā)者參與討論。
其它精彩文章: