[小夥伴們]X君正傳——開源君有話說

黃炎雷發表於2014-03-20

----1024----

今天這篇是我邀請一位“神奇”的少年寫的~~

我認識他的時候他大一,外表稚嫩,卻已經在碼界身經百戰~~

下面是他的開源學習之路,最下方有他參與專案的截圖以及地址~~

----1024----

** **

有幸被 **IT百問** 約稿啊,如何參與開源,說實話我也不知道,但是我可以給大家講一個故事。

(文字水平不怎麼樣,大家見笑啦。)

X君在小的時候特愛打電遊,什麼雪人兄弟,棒球小子,X君映像最深刻的就是在哥哥家裡玩過的一臺索尼的光碟遊戲機,那個時候街上很多很多這樣的遊戲店,但是價格基本在5元每小時,看著眼花繚亂和百玩不厭的各種遊戲,X君從小也萌發了一個開發遊戲的理想。

隨著時間的推移,網咖和個人電腦在中國開始普及,中國網際網路的興起,形形色色的電子產品也開始步入了人們的生活,帶著“made in china”的遊戲也開始在中國誕生,軒轅劍,仙劍奇俠傳,傳奇。盛大也引進了國外的遊戲‘冒險島’,可真是風靡全網咖。這就是當時的大環境,馬化騰都還在糾結投資不投資房地產的年代。當然X君這個時候還只是一個快樂的小學生,開心的玩耍。但是呢,X君4年級的時候家裡買了一臺神舟電腦,X君也開開心心的完起了當時非常火爆的夢幻西遊。火爆到了什麼程度呢,X君的2個哥哥都玩,同學也玩,鄰居也玩,記得X君的鄰居還買軒轅劍的正版光碟。各類各樣的遊戲公司興起或者結束,也歸咎於中國的盜版興起,附帶各種黑色產業鏈的利息,光碟中是各種木馬捆綁發行,X君也是其中的受害人之一,X君的電腦當時中了一個無限重啟的病毒,這下完蛋了,遊戲完不成了,以至於X君還以為是電壓不穩導致的。現在回想起來,還是花了40塊錢叫電腦城的大叔來修的,記憶最深刻的是把98換成了XP,X君也是在這個時候知道電腦的另一面,才知道這個東西並不是看上去那麼簡單,勾起了X君學習的慾望,於是每當親戚朋友家裡裝系統的時候都會熱情的給維修人員端茶送水,並且站在邊上圍觀,不過說實話,X君並沒有學到什麼東西,然後也這樣不了了之了。

到了初中的時候X君在網路上又看到了新奇的一個東西,叫做VB,簡單的看了教程,做了一些拖控制元件的東西,X君甚是滿足,也燃起了小時候的遊戲情節。不過可惜由於要考高中了,家裡人並不會讓X君過多的接觸電腦,使用時間和次數都是有限制的。但是程式碼情節已經在X君心中萌發。

再到X君有時間接觸的電腦的時候已經是高一了,因為已經步入高中,沒有升學的壓力,X君也漸漸重拾了自己的夢想,當然,依舊是VB。在學習VB的時候X君也結識了很多很多人,帶著各種夢想的人,X君也開始請教一些人,當然免除不了碰壁的。後來隨著程式碼量的積累,開發的東西變多,X君認識了一群志同道合的朋友,嗯,沒錯,有開發遊戲夢想的人。大家一開心,群裡一聊,就開始了嘗試,不過說實話,X君的水平當時真的非常有限,就在拖拖控制元件的水平。隨著大家的開發,漸漸發現了問題,大家都是門外漢,都壓根不知道一個遊戲該如何做。於是X君的遊戲夢也就在這一步夭折了。

隨著時間的推移。高一也飛快的過去,VB6也逐漸的沒落了,大量VB6的群變成死群,大量的論壇開始流失使用者。X君就和小夥伴們學習了他們的人生中的第二門開發語言——‘C++’。記得當時X君看的叫做一本易學C++的書,作者是誰已經記不得了,也是第一次接觸到了OOP的思想。X君經常混跡於一個叫做‘Code與怪獸的群’,這群挺厲害的,當時是問問團隊,程式設計團隊第一,裡面也是各種大牛。所以X君的高二也就在學習C++和大牛們扯淡中度過了。

X君第一個開源專案也是這個群發起的,不過這個時候群已經改名了,這個開源專案的由來,就是因為大家都覺得QQ群不方便。無法統計已經回答過的問題,恰巧又是YY教學流行的時段。於是我們就打算開發一個線上教學的系統來配合YY來使用。也就是後來的VNOC,VNOC的程式碼託管在github上面,之所以選擇github,也是因為他網站UI友好,速度快,並且自帶wiki,也因為git是多分支管理,比較適合開源專案。不過這個開源專案也讓X君很糾結。報名的人有2頁有餘。X君自認水平不夠。但是後來報名的人大多沒有參與開發,實際開發的就只有幾個發起人而已,但是X君確實非常感興趣,所以X君就報名接手一個序列化模組,X君也開心,也花了不少的時間來維護這個模組,但是,X君的經驗確實不足,在各類大神的指導下進行修改,改進,後又有老肉雞大神指導對整個序列化模組的重新編寫。X君在這個得到了很高的提升,程式碼編寫能力也唰唰的翻了番。也只有開源專案會把一個獨立很重要的模組交給一個新人來做了吧,這也是開源的專案好處,大家都會看你程式碼。會噴,會罵,會指導你。X君的暑假也就結束了。也開開心心的進入大一了。不過讓X君遺憾的是,VNOC最後也還是夭折了。隨著大家開發力度的降低,執行力變慢,這個專案也就慢慢死了。

不過VNOC雖然死了,但是X君開源之路並沒有終結,X君做的第二個開源專案是一個打飛機遊戲,也一直跟著老肉雞做開源了,第二次終於園了X君的遊戲夢,是X君做的一個真正可以玩的遊戲,遊戲定義和遊戲邏輯分離,各種各樣的東西。X君幾乎上課都在寫這個遊戲的程式碼。在這個專案中X君也收穫了很多東西,迭代式的開發模式,遊戲框架的設計,在做這個專案的時候X君已經可以明顯感覺到在VNOC中的提升了,程式碼風格,規範,設計,都變得不一樣了。思維也從一個可以用的程式碼,變成了寫出可以重用的程式碼的思維轉變了。

X君當然也知道趁熱打鐵的道理,在打飛機遊戲完成80%之後,X君的VB小夥伴們也打算做遊戲了,不過到現在的時候大家的水平也不是當年那麼門外漢了,原來VB遊戲專案的發起人也已經是某頁遊公司的服務端開發人員了。大家也都走上了不同的道路。但是夢想還是沒變的,於是我們又開始了第二次的遊戲開發。這次使用HGE開發一個RPG遊戲,客戶端主要由X君和ABLE負責,服務端由泡麵負責,完成度也還算不錯,X君主要是做遊戲UI的實現和人物層的實現。但是也是後面想更換引擎使用用鬼火,和缺少遊戲美工。後續的系統也沒有接著開發了,X君的遊戲之路又到這裡又終結了。

但是X君是不會被打倒的,X君在獨立做這個遊戲的時候,也依舊感覺到了自己能力的不足夠,所以X君開始了參加了老肉雞自己維護了很久的一個專案zpublic,是一個存放常用程式碼的庫,各種各樣的東西都有。X君主要寫其中PE模組解析。不過X君對這塊也不是很瞭解,也是果斷打醬油。老肉雞說得好,不怕打醬油,就怕醬油都不打。是對絕對沒有提升的。不過到這裡的時候X君的大一也已經過去半個學期了,X君也深知學校的XX之處,所以參加了某安全公司的校招,由於前面的專案經驗,也沒有遇到什麼阻力。

所以X君現在正在在某處快樂開心的寫程式碼。

如何參加開源,說實話估計X君自己也不知道,X君只是快樂的寫寫著程式碼,並且拿出來給其他人批,也分享給其他人,看看別人寫的程式碼,學習別人寫的程式碼。還是引用肉雞哥的話‘外面的世界很大,不要活在自己的世界裡’。

好了,我的故事講完了。

地址: 

VNOC    https://github.com/VNOC/vnoc

打飛機    https://github.com/zpublic/AV-GSG

RPG      https://github.com/ZeusTeam/Zeus

ZPUBLIC  https://github.com/zpublic/zpublic

再推薦一個C++社群網站 http://classfoo.cn/

C++中文手冊 http://classfoo.cn/cpp/library/

zeus群:37723482

ZPublic群:240978546

1、打飛機專案

2、RPG遊戲(1)

3、RPG遊戲(2)

** **

** **

----1024----

看完了X君的文章,是不是很正能量呢?

接下來,我準備開個新欄目——《屌絲PM》,和大家聊一聊現在火熱的產品~~

同時歡迎大家提問為雷答站積累素材,回覆“[雷達站]+你的問題”,好的問題會收錄在最新一期的《雷答站》~~

----1024----

===只做最真實的自己===

微信公共號IT百問

關注方式:

1、開啟微信搜尋微訊號ID:itbaiwen

2、或者掃描下方的二維碼

回覆m檢視文章列表

相關文章