我是计算机科学与技术专业的的大四学生,通过同学之间的分享了解到“飞天加速计划·高校学生在家实践”活动。经常同一些朋友聊到ECS,好像部分人都对于ECS技术非常向往,但又不敢轻易尝试,或者尝试之后果断放弃。众所周知,ECS是Entity、Component、System的简称,是一种面向数据的编程模式Entity本质上是一个承载Component的容器,Component是数据,System是对于数据的筛选、操作。因为数据是相同数据存放到一起,在System的调用过程中因为读取的内存是连续的,在cpu的缓存架构中能有效提高缓存命中率,因而提高效率最早接触ECS是unity的Entitas,刚开始基于这个框架写代码的时候确实很不适应,因为完全颠覆了面向对象的思路,一直在纠结数据怎么拆分,更新顺序应该怎么定,结果就是一个简单的模拟actor随机移动的demo,搞了一个礼拜。后来做项目的时候评估到底要不要用ECS的时候,就很纠结,即想用,又不敢用。经过仔细思考,我觉得不必纠结于ECS这个模式,只要想办法能够降低Cache Miss,一样可以提高效率,又不至于切换代价太大。我在项目中进行了实践,接下来我说说我的思路。Entitas的Component是纯数据的,数据的处理都在System。为了让数据对齐,不必对数据和方法进行彻底拆分,只要让Component在内存中连续就好了。
另外ECS能做的事情还有很多,做一些有趣的东西:查看玩法案例欣赏,可以参考阿里云对云服务器的一些玩法推荐,建个人网站是入门的好玩法,简单而且有成就感,里面还有一些有趣的玩法教程,如表白网页、简历网页、百度贴吧自动签到、打造离线下载服务器、个人专属硬盘等。像表白网页这种简单的小功能,网上模板很多,稍微改改做得好看点还可以在学校里帮人定制兼职赚点小钱,边学习边把钱赚了~建网站;推荐宝塔面板搭建网站(WordPress以及其它建站程序)对于爱折腾,有大量闲暇时间的,可以不用宝塔面板,而自己手工安装各种网站程序需要的运行环境。PHP环境,JAVA环境等。具体搭建网站可以参考文章 :使用宝塔面板搭建WordPress网站编程;程序员是高薪行业,也是吸纳就业率比较好的一个行业。虽然有出现饱和的迹象,但是如果你沉下心好好学习技术,找份工作不会特别难,相对而言。利用云服务器多接触下后端服务器编程,前端渲染技术,数据库搭建与优化,分布式和微服务架构等方面的知识,提高你现在或者未来的职场竞争力。目前比较好就业的是Java,Python等语言的编程开发工作。打造个人IP;这一点非常重要,利用网站博客,微信公众号,头条号等自媒体平台来曝光自己的技能,自己的特长,持之以恒,甚至能找到个人ip变现的方法和渠道。以后就不用靠死工资生活了,提高自己的个人安全感。利用云服务器持久运营有内容输入的个人网站,是打造个人ip的好方法。学习下SEO与网络爬虫知识;自己搭建网站,可以直接督促你为了让自己的个人站点获得更多搜索引擎的流量,就必须要自己去学习下seo的知识和文章采集知识。