新四季網

90後開發者Cocos經驗談:如何入行進步

2025-05-07 03:22:24

    又是一年畢業季,馬上就要步入「程序猿」行列的「小鮮肉們」是否已經做好準備了呢?今天我們有幸邀請到了一位90後的開發者薛芃,請他來為即將畢業的鮮肉級開發者,來點屬於90後的經驗談。

    提到薛芃,估計大家都沒聽說過,但是經常泡Cocos論壇的親們,也許會對「寒江孤葉」這個名字有所耳聞,他可是名副其實的Cocos鐵桿粉絲。

    近日Cocos團隊有幸邀請到了Cocos論壇裡的熱門90後開發者薛芃,請他來聊聊遊戲開發前後的故事。

    Cocos:第一次與Cocos接觸是什麼時候呢?為何會選擇Cocos?

薛:接觸Cocos引擎是在Cocos發布Cocos2d-2.1 beta3-x-2.1.1版本的時候,那時候在學校裡幾個朋友想一起開發個小遊戲參加學校的CodeJam。我們在製作遊戲的時候,也在幾款引擎間糾結過,但經過橫向對比Cocos引擎脫穎而出,他開源、上手容易、並且免費的優勢讓我們果斷選擇了它。也正是這次選擇,讓我走進了Cocos的殿堂。

    當我們開始學習Cocos這套引擎的時候,我們發現Cocos上手真的很容易,寥寥幾行代碼,就可以實現非常炫酷的功能效果。3.x開始發布的Cocos一站式解決方案,將遊戲整體從項目的創建、UI設計、邏輯編寫,到最後的項目調試、打包發布一整套流程都變得輕鬆簡單。

Cocos:您為何會成為Cocos論壇裡的當紅人物?

薛: 剛剛開始使用Cocos的時候,自己絕對是菜鳥一個,各種無所適從,於是我就泡進了Cocos論壇。論壇裡的學習、互助的氛圍非常好,在學習和開發過程中遇到的一些疑惑,總能在這裡通過大家的討論得到解決的辦法。可以說,我是在這些論壇朋友的幫助下成長起來的,Cocos論壇,就是我最初的老師。

    同時,論壇中經常會有一些大牛分享自己的開發經驗和代碼,在他們的文章中,總能學到很多知識,增長自己的見解,希望學弟們也養成來論壇學習技術的好習慣,學習知識,幫助他人也是提升能力的一種捷徑。

Cocos:跟大家分享下你學習Cocos的過程和經驗吧!

薛: 有一些朋友總是問我該怎麼學Cocos引擎,希望我的這些經驗談,可以幫助到大家。

    首先我假設你已經掌握C++語言了(沒掌握的速度去補課!)學習一個引擎,首先需要對其有一個整體的認識,如果一上來就學Sprite怎麼用,Label是什麼會有一種盲人摸象的感覺。這個整體的認識包括,如何搭建Cocos的開發環境,Cocos的工具鏈,Cocos主要功能,Cocos2d-x的源碼的目錄結構。接下來便是Cocos2d-x的核心類了,例如Node,Scene,Layer,Director,Sprite等,然後通過這些基礎類嘗試去寫一些比較簡單的UI界面,下一步則是學習各種Action、Scheduler和事件處理機制,這時候你就已經可以完成一些簡單的小遊戲了,例如貪食蛇,2048等。(成就感爆棚有木有?)下邊你可以通過閱讀Cocos2d-x build目錄中的Test去掌握其他各式各樣的類以及在項目開發中非常常用的UI控制項。每個人都會有自己不同的學習方式,找到一個適合自己的方式就是最好的。

    在學習過程中,當你遇見不懂的問題的時候,你可以考慮去我上邊提到的CocoaChina論壇提問,亦或者去Cocos的中文站查看一下教程,或者通過開發者平臺提問一下引擎開發團隊和CVP團隊,善用這些資源會讓你學習和使用Cocos變得更加容易。

Cocos:目前您有哪些開發實例可以分享呢?這個項目目前是什麼狀態,在這個過程中,遇到了哪些問題,如何解決的呢?

薛:我現在正在開發一款棋牌項目,不久之後就可以和大家見面了。他是將一些常見的棋牌玩兒法綜合到了一起,有常見的德州撲克,鬥地主,也有大家耳熟能祥的乾瞪眼,捉黑叉,甚至還有「拉大車」。感謝領導對我的信任,給我項目主程的職位,在項目開發過程中,我遇見了不少的問題,例如,lua裡邊Scheduler不會自動remove,序列幀的內存和IO優化,tableview的cc.TABLECELL_SIZE_FOR_INDEX的返回是高和寬的問題(正常是不都是寬和高麼?)等。但是在Cocos社區和各位熱心版主的幫助下,都完美的解決了。在此感謝那些熱心的朋友們!

使用Cocos的開發過程

 Cocos:你是如何這麼快就獲得主程這個崗位的呢?

薛:進入這家公司後,我一共跟了兩個項目。一個卡牌一個RPG,在項目的研發過程中,我很快就熟悉了整體的項目框架,不明白的就去問,對每一個不懂的地方都認真的理解。由於我C++掌握的不錯,在開發過程中,對Cocos中一些並不熟悉的類和空間,也都夠去閱讀Cocos的原始碼,加深對控制項的理解。自己去理解和學習的能力非常重要,能夠通過看代碼來學會一個方法的使用對於這種開源引擎尤為重要。另外,我善於溝通的性格為我和其他程序以及美工和策劃都維護了相當好的關係,這也為我後來項目工作的開展帶來了很大的益處。兩個月前,公司決定開發一款棋牌類遊戲,由於棋牌類遊戲相對簡單,也易於把控,於是領導決定讓我來負責這個項目,目前來看,我沒有讓領導失望!

Cocos:給即將步入「程序猿」行列的學弟的建議:個人覺得,學習或掌握什麼重要,心態變化及調整。

薛:萬丈高樓,始於基石,堅實的基本功尤為重要。在學習Cocos之前,首先應當掌握好C++,推薦一本非常知名的書C++ Primer,它作為深入學習C++是必備的!

    我認為想學習C++,可以考慮先去學習C語言,C++是基於C語言開發的一種通用程式語言,掌握C語言對學習C++提供了很大的方便。在學習C語言時候,著重要理解並掌握指針,指針是C/C++語言的靈魂,貫穿整個程序開發的每個角落。掌握了C語言後,C++並不難學了,很多朋友覺得C++很難學,因為他在C語言的基礎上提供了非常多的概念,尤其是面向對象的概念。花些時間,真正去理解面向對象,對後序的研發和學習都有莫大的幫助。此時,你對C++就已經有了一定的掌握了。接下來就要去深入的學習C++的各種模板,STL以及其他更加複雜的概念。編程是一門實踐科學,在學習過程中,不斷的練習是非常非常有必要的,將書中的例子都認證的敲一遍,再稍微修改一些代碼運行一下,看看與自己所想的結果是否相同,這樣會對代碼的掌控右很大的提升。

    其次,需要掌握一些基礎的數據結構,如堆,棧,隊列,二叉樹,以及一些常見的搜索、排序算法也是很有必要的。

    每一位優秀的學生在學校都是天之驕子,然而越是優秀的學生走入職場越容易受到打擊。因為進入公司後,你會發現,自己非但不是佼佼者了。返回而好像什麼都不懂一樣。這個落差的挫敗感很容易打擊到你的信心,這時候一定不要氣餒,這是每個人都會遇到的過程,你只要堅定信心,繼續努力。很快你就能趕上去的。

Cocos:如何看待Cocos,覺得Cocos的優勢是什麼呢?

薛:我認為Cocos主要優勢在於開源、易學、免費以及一個非常完善的中文社區。相比其他主流引擎,Cocos更加關注國內市場,中文的教程更加豐富,而且針對開發者的提問以及BUG的反饋也更加及時。Cocos支持使用Lua和JS兩種腳本語言進行開發,並且提供了一個非常好用IDE,方便遊戲的開發和調試,這比傳統C++語言研發降低了門檻,提高了開發速度。

薛芃在「玩轉Cocos,樂享Windows——Windows移動遊戲開發」活動中

Cocos:下一步有什麼計劃,作為90後開發者中的佼佼者,有什麼話要對學弟說?

薛:我的下一步計劃是深入的學習OpenGL的知識,去更透徹理解Cocos。同時掌握Cocos-js。Cocos-js是目前最熱門的發展方向,JavaScript相比Lua更加成熟,更加容易掌握,前端和後端都能過使用Javascript進行開發,很容易完成交互,方便技術共享。而且Html5和CocosRuntime也是Cocos-js的一個決定性優勢。所以下邊的項目我們決定採用Cocos-js進行開發。

    有一個心得跟大家分享一下:在你學習的過程中,記得寫博客,無論是在CSDN還是博客園都可以。當你想不起來之前寫的一些功能和方法的實現的時候,如果你把他寫到博客裡,就可以很容易的翻出來。同時博客還是你技術水平的最有效的證明。尤其是剛畢業大學生在應聘的時候,如果有一個自己的博客,是一個很好的加分項,同時也是像HR展現自己技術能力的一個好方式。

Cocos:最後還有什麼相對大家說的話麼?

薛芃:希望學弟們在學習過程中,加倍努力,遇見困難不要氣餒,多多嘗試,勇於提問,早日成為一名高大上的「遊戲開發者」!

    同時,非常感謝Cocos引擎給我這個和大家認識的機會,也很感謝Cocos引擎團隊對我的支持和幫助。希望更多的朋友能夠加入Cocos大家庭,同時希望Cocos越做越好,為開發者提供更大的便利。

Cocos:非常感謝薛芃接受我們這次採訪,希望你事業蒸騰日上。

薛芃:謝謝!■

同类文章

溫柔文靜有帶有詩意的女孩名字

精選溫柔文靜有帶有詩意的女孩名字一、  彩靜 (cǎi jìng)字義內涵:彩:各種顏色交織;稱贊、誇獎的歡呼聲;花樣,完美的成分;光彩,光澤。
江姓屬牛男孩起名大全

江姓屬牛男孩起名大全

從陽光年齡的密封來看,它屬於這個國家。 Bo yi xiazi宣中在業務結束時成立。由於宋和齊三義之間存在洪水,淮水正在洪水,所以它無法得到強勢,最後由楚國
內心的方式真的不能讓女孩喜歡它嗎?內部追逐女孩技能

內心的方式真的不能讓女孩喜歡它嗎?內部追逐女孩技能

兄弟,我是一個導師。今天,我為您帶來了一個相對代表性的學生,最近遇到了教學服務。我相信每個人都能在看到我的分析後找到自己問題的陰影。學生亞歷克斯喜歡我 兄弟
Elegant and nice Chu surname girl name

Elegant and nice Chu surname girl name

How to get an elegant and nice song girl name? Let's take a look at Ren Xin.com
Tiger名字的話是什麼? 2022名稱大全寶貝好名字

Tiger名字的話是什麼? 2022名稱大全寶貝好名字

Tiger名字的話是什麼? 2022名稱大全寶寶好名字,父母必須知道如何給寶寶一個好名字和不同的名字?名字的小組有什麼預防措施?等待相關問題,我們已經解決了
The birth of eight characters, quasi! In 1971, the 46-year-old pig man was 50 years.

The birth of eight characters, quasi! In 1971, the 46-year-old pig man was 50 years.

(釧 釧 命) From "Three-life Warm", there is an ancient fortune book that is more fa
虎頭名字用水嗎? 2022名著名的名字

虎頭名字用水嗎? 2022名著名的名字

虎頭名字用水嗎? 2022名Daquan免費,正如俗話說,“人們被命名”,一個不錯的名字留下深刻的印象,許多父母也深入探索,各種文化之詞典故故冥冥冥冥特名名稱
2022年月曆出生的女嬰嬰兒五行缺乏金暖和慷慨的大全

2022年月曆出生的女嬰嬰兒五行缺乏金暖和慷慨的大全

在2022年,農曆出生的女性寶寶五行缺乏金色溫柔慷慨的大全。我想知道在2022年出生的女孩旁邊的下一個旁邊是什麼,用這個詞給女孩,更多地關注2022個女孩
八個字符的誕生,房間設計有助於您支付幸運

八個字符的誕生,房間設計有助於您支付幸運

馮水在我國是一種傳統的中國文化,是一個大學問題,考慮人類和環境的和諧。將地理信息技術集成到家居裝飾設計中,可以使室內設計更有效,室內裝飾更加科學
What is the name of Ma surname Daquan?

What is the name of Ma surname Daquan?

After the sun, the grandson of find the roots