其實早在08年就開始手游的開發(fā),只是那兩年是用J2ME來開發(fā)簡單社交應用岩睁,而且也沒大規(guī)模上線過钞脂,所以實戰(zhàn)能力其實還是零。真正的開始還是在10年捕儒,也是在那個時候開始走上.NET研發(fā)的不歸路冰啃。那時候還沒畢業(yè)邓夕,
為什么.NET
這個是公司歷史問題,因為原先的服務端都是創(chuàng)始人(也是大學校友)寫的阎毅,而用的就是C#焚刚,后面需要有專人來負責服務器這塊,那時候小團隊不到10人扇调,還沒那么財大氣粗矿咕,加上我之前JAVA寫過網(wǎng)站(大學時候iou很low的那種),于是我被選中狼钮,開始上路了碳柱。
動手干
成為服務端研發(fā)后立馬就開始了新的項目,那時候5個人先設計產(chǎn)品熬芜,然后各自分工開始進行研發(fā)莲镣。我是一邊學C#一邊和客戶端做產(chǎn)品DEMO。
由于那時候.NET開源的東西不多猛蔽,而且也不知道這其中的套路剥悟,所以算是一瘸一拐的這么就走上道了灵寺。
一邊當參與產(chǎn)品的設計曼库,一邊學習,一邊進行研發(fā)略板。
遇到麻煩了
經(jīng)過一段時間的研發(fā)毁枯,產(chǎn)品終于出來了。但真正的噩夢是從那時候開始叮称。
由于系統(tǒng)在數(shù)據(jù)庫操作層面有不足种玛,導致游戲一上線內存CPU就直接滿了,然后是想各種辦法緊急搶救瓤檐。在沒對帶BUG徹底根治之前赂韵,每晚都需要輪班值守,一旦出現(xiàn)故障馬上接到通知然后緊急處理挠蛉。
后來才發(fā)現(xiàn)是由于用了不成熟的.NET iBatis(JAVA的時候用過iBatis祭示,半自動步槍,感覺不錯的谴古,萬萬沒想到這里栽跟頭了)质涛,導致內存泄漏。對癥下藥掰担,然后平穩(wěn)了些汇陆。
解決了第一個問題后,緊接著是一些列系統(tǒng)性問題带饱。大量的if else 嵌套導致邏輯混亂烘贴,在游戲上線之后暴露了很多隱性問題轧叽。然后就開始了各種煎熬枯途。
煎熬
有幾個場景印象特別深刻
1、和客戶端小伙伴聯(lián)調灯蝴,定位問題,時間拖到了大半夜孝宗。而那天剛好他女朋友過來等他回家的穷躁。過大半夜的時候,他女朋友實在受不了等待因妇,哭了问潭。在一旁的我看著也不是滋味,特別對不住婚被。
2狡忙、有一周的時間都在公司解決線上問題,基本上都是住在公司了址芯。調試到凌晨兩三點灾茁,然后六七點的時候被客服電話吵醒,托著疲憊的身影去充當客服服去了(那時候公司小谷炸,一個人充當好幾個角色)北专。
3、有一次通宵調試問題旬陡,然我最感動的是有玩家一直陪著你拓颓,幫你定位問題,幫你從其他玩家那發(fā)現(xiàn)問題描孟。然后告訴我驶睦。然后修改發(fā)布之后又幫我驗證。
各方面的壓力應該說是走到了最低谷了匿醒,兄弟們對這個項目的期望和汗水场航,自己也急需證明可以搞定一切。而且同時女朋友沒在身邊廉羔。半夜的時候溉痢,公司的走廊特別特別的安靜~
改進
磕磕碰碰,項目總算是穩(wěn)定了蜜另。然后針對之前的不足做相應的調整
1适室、重構
對之前臃腫的代碼進行一定程度上的重構。主要是在戰(zhàn)斗和資源這兩塊举瑰,學習并實踐了設計模式捣辆,最終的效果當然是簡潔易維護。
2此迅、改進生產(chǎn)工具
工欲善其事必先利其器
通過閑暇時間學習和掌握各種工具汽畴,改進研發(fā)效率旧巾。那時候當我發(fā)現(xiàn)NuGet這個神器之后就一發(fā)不可收拾。便捷的類庫管理忍些,輕松尋找成熟的開源類庫鲁猩。然后去GitHub上學習人家的源碼。
3罢坝、測試
想想當初是如此簡單粗暴廓握,BUG修改完自己大致過一下就上線了。現(xiàn)在想想真是佩服當年嘁酿。隙券。。
隨后我們就建立的測試部門闹司,由專人進行測試娱仔。保障產(chǎn)品
最后
雖然第一個產(chǎn)品沒有預期那樣讓我們走上人生巔峰,但那段時間的歷練是對我么最為寶貴的經(jīng)歷游桩。很感激一路過來不嫌棄我的小伙伴們牲迫。也為自己加油!