自己的一点想法

最近研究开源游戏服务器框架的时候找到了云风大侠的skynet,一下是知乎上的评论

skynet是我们游戏服务端的底层框架,当初在技术选型的时候仔细阅读过它的源码,发现它是一个C语言的工程典范。大多数游戏服务端,要么使用C++,要么使用java,使用C是非常少见的。但是skynet通过C和Lua的结合,实现了一个高效的游戏框架,C层没有多余的一堆三方库,只有紧凑的核心结构,提供最核心的消息处理框架;Lua层用来写游戏逻辑,降低了开发门槛。

之后关注了云风大侠的博客 https://blog.codingnow.com/
发现云风对lua的研究很深入,且skynet的脚本语言就是lua,博客里面有很多文章是对lua的分析,时间轴更是很长2005~2021,我非常钦佩云风大侠的技术之路,现在的时代各种新技术层出不穷,我时常会迷茫在各种新技术中,东一锤子西一棒子,一直也没有对某个技术有深入的了解,所做的工作也是浮于应用层面,对于一个36岁的老程序员来说没有什么可以拿的出手的项目和研究,自己也觉得非常惭愧。

我是2004年上的大学,2006年参加的工作,一直做手机客户端研发,对服务器的一些技术和实现方案不了解,直到2016年前后,通过PHP学习才了解了一些web相关的技术,之后又赶上房卡棋牌的兴起,有一个机会做了一段时间C++游戏服务器开发,算是对服务器开发入了一个门。当时游戏服务部署也是只会部署在windows server上,由于我大学的时候Sql Server学的还不错,所以数据库这块整体问题不大。在房卡棋牌服务器项目里面,我发现了解了服务器开发和部署的相关技术之后,剩下的大部分工作还是写逻辑,这个是我的强项。陆陆续续也做了一些地方的玩法,大庆麻将、吉林麻将、四川血战、幺地人,干瞪眼等。我发现用C++写服务器的逻辑其实问题不大,就是一些扩展我还不太会,比如支持websocket,支持mongodb,支持redis等。到了2018年左右,房卡棋牌做的人越来越多,房卡棋牌监管越来越严格了,我就没怎么做房卡棋牌了。2019年我觉得我比较欠缺web这块的技术,想以后从事web开发,研究了一下当时python比较火,于是我学习了python,学习了python的web框架django和flask,之后又学习了python爬虫相关的技术,再后来不能说是学习应该说是了解了python机器学习方面的知识,由于大学数学都还给老师了,所以很多公式看不懂也没有继续这个方向。本来打算找python方面的工作,最终也是由于理解不够深入,以及工资等各种原因,没能从事python相关工作。又回到了老本行手机游戏这块。用的是CocosCreator自己之前也没用过,上手很快,很快就能出活,从2020年初~2021年底这两年再做这块。期间业余时间研究了一下golang,由于是业余时间所以没有坚持下来。

我断断续续的学了很多东西,由于没有跟工作想结合,只是业余研究,没有做相关的项目,学过的东西也都在慢慢的忘记。

2011年学的Unity,熟练,做点东西很快,后来没用上,到现在仍了10年了
2016年学的PHP,算不上熟练,能做些东西,后来没用上,到现在扔了6年了
2016年学的C++游戏服务器,熟练,做了3年,后来没用上,到想在扔了2年多了
2019年学的Python,算不上熟练,能做东西,后来没用上,到现在扔了3年了
2020年学的golang,算不上熟练,能做东西,后来没用上,到现在扔了2年了
2014~现在,cocos,熟练,经历了cocos -> cocos2dx -> cocos2d-js -> cocos2d-lua -> cocoscreator

我一直在做2d前端,且一直在写业务,慢慢的我有些厌倦了,想做出一些改变。
1> 渲染方向
这么多年一直写业务,也没有涉及多少渲染方面的知识,面试的时候人家看你工作10多年了,都会问一些渲染方面的知识,我也不太 懂,觉得这块是我的短板,所以想系统的学习一下
2> 3d前端方向
错过了Unity的10年,我一直觉得很遗憾,现在我还在做2d的游戏,觉得作为一名游戏开发者不会用Unity就好像没有与时代接轨,更别说现在还有虚幻,我还能再工作几年,留给我的时间可能不多了
3> 机器学习方向
我想做机器学习与游戏方面的结合,这个现在就有很多应用案例,我在做棋牌的时候就想做一个聪明的机器人,这个是我的愿望,由于数学这个拦路虎,不知道什么时候才能在这个方面有些进展
4> 服务器方向
再做房卡棋牌的时候我就是全栈开发,在开始阶段我投入了很多时间和激情,慢慢的我掌握了方法hold住了C++游戏服务器和cocos-lua客户端,我非常享受当时的开发过程,非常享受那种不受任何人的制约,制作属于自己的游戏的过程。所以我想在这个方向有进一步的发展。所以才想到找一个开源的游戏服务器研究的念头,之前研究过golang的leaf。

写了一些自己的感想,我发现把自己的想法写出来,是一件让人身心愉悦的过程,梳理思绪,发现我还是比较享受自己能创造一些东西的过程。创造东西,往往需要工具,其实Unity也好,Cocos也好,PHP也好,Python也好,golang也好,现在想想其实都是工具。我想一个手工匠人,一个艺术家能被人记住的,能拿来跟别人交流的本质上应该是自己的作品,而我貌似在这个过程中忘记了自己的初心,我始终在寻找工具,什么工具符合我的审美用的趁手,在这方面用的时间太多了。忘记了自己想要做的东西到底长成什么样子。

时间不能倒流,从开始工作到现在已有15年,如果对我这15年打个分我想我最多能打60分,但是这个事实我必须得接受,作为一个程序员,今年我36岁,如果下一个15年我不能做出改变,那么到了50岁,我肯定会后悔,看着车库里各式各样漂亮的工具,有的买来甚至没有使用过,但却找不到哪个东西是我做的,我拿什么跟儿子吹牛逼,儿子爹这一车库的工具留给你了…,无疑是个悲剧,如果能留给儿子一些技能,我更希望是留给儿子的是,通过自己的双手创造自己想要的东西技能。

### 回答1: 好的,那我就用中文回答你的问题。 学习有很多方法,那我就具体介绍一下几种常见的方法。 1. 自学:自学是一种很好的学习方式,因为你可以根据自己的兴趣和时间来安排学习内容和进度。你可以使用各种资源,比如教程、电子书、视频教程等,来帮助你学习。 2. 参加培训课程:如果你希望有一个专业的老师来指导你的学习,那么参加培训课程就是一个很好的选择。你可以在线或者线下参加各种培训课程,比如大学课程、职业培训课程等。 3. 读书:读书是一种很好的学习方式,因为它可以帮助你提升阅读能力和理解能力,并且你可以从书中获得丰富的知识。 4. 加入学习小组:加入学习小组可以帮助你与其他人一起学习,交流想法,并且可以帮助你更好地理解学习内容。 总的来说,学习的方法有很多种,你可以根据自己的喜好和需要来选择适合自己的学习方式。 ### 回答2: 学习需要具体一点,就是要有明确的目标和计划。首先,确定你想学习的具体内容和目标,这可以是一门学科、一项技能或是一个项目。然后,制定一个学习计划,包括学习的时长、频率和学习的方式。 学习的时长可以根据你的时间安排来确定,建议每天安排一定的学习时间,保持连续性,避免间断。学习频率可以根据你的学习节奏来调整,有些人可能需要每天学习,有些人可能更适合每周学习几次。重要的是保持一定的规律和坚持。 学习的方式可以灵活选择,可以通过阅读书籍、观看视频教程、参加课程或是与他人讨论学习。选择适合自己的学习方式,提高学习效率和兴趣。 另外,还可以尝试一些学习技巧,如拆分知识点,制定学习计划,做好总结和复习,以及积极参与实践等。在学习过程中,可以及时记录学习笔记,帮助巩固记忆和理解。 与此同时,保持积极的学习态度也非常重要。学习需要持之以恒,遇到困难时要坚持不懈,相信自己能够克服挑战,取得进步。 总之,具体一点学习就是要明确目标和计划,保持规律和持续学习,选择适合自己的学习方式,利用一些学习技巧,坚持不懈并保持积极的学习态度。这样才能以最有效的方式进行学习,取得好的学习成果。 ### 回答3: 学习的具体方法因人而异,但以下是几个通用的学习方法,可以帮助你更具体地学习: 1. 制定学习计划:首先,明确你的学习目标,并制定一个详细的学习计划。将目标分解成小的、可行的步骤,并设定适当的时间表。 2. 选择适合的学习材料:根据学习的主题,选择适合的学习材料,如教科书、参考书籍、网络资源等。确保所选材料内容能够帮助你达到学习目标。 3. 深入理解:仅仅死记硬背知识可能效果不佳。尝试深入理解学习内容,通过思考、讨论或与他人交流,以加深对知识的理解和应用能力。 4. 制定记忆技巧:利用各种记忆技巧帮助你记住学习内容,如制作概念地图、使用关键词等。同时,通过复习和巩固加深记忆。 5. 练习和实践:在学习过程中不断进行练习和实践,将所学知识应用于实际情境中。通过练习和实践,将知识转化为技能和经验。 6. 寻求反馈:及时寻求他人的反馈和建议,对学习过程中的困惑和错误进行纠正。通过他人的观点和经验,你可以更好地改进学习方法和提高学习效果。 7. 坚持学习:学习需要坚持和耐心。保持积极的学习态度和动力,及时调整学习计划,克服困难和挑战。 总之,具体学习方法应根据个体差异和学习目标而定。不断尝试、调整和改进学习方法,才能更高效地学习。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值