㈠ 请问,游戏开发中,服务器端程序员的主要工作是什么他与客户端程序员对比薪资与工作压力哪个大
得看做什么工作,如果是程序员的话就是敲代码,客户端的程序员工资是比较高的,因为客户端涉及很多算法,比如跳跃、用技能这些效果的显示、攻击值、掉落速度等。而服务端就相对来说较简单了,只要做逻辑处理和数据的持久化方面。
㈡ 游戏行业的程序员一般有哪几类分工
游戏程序员也是有分工的,比如说图形程序、逻辑程序、工具程序等等
图形程序主要负责游戏画面的显示,对于3D游戏来说,图形渲染包括模型、材质、贴图的显示,光照和阴影的效果等等,这可以说是游戏编程中技术含量最高的部分。从事图形程序需要良好的3D数学训练,线性代数、图形学是需要主要攻克的课程,现在业界主流使用DirectX作为底层库,这也是比较基础的技能。
逻辑程序员对于外行人来说其实是个比较抽象的概念,其实就是控制游戏世界的规则,我举个简单的例子,比如说俄罗斯方块里,一个规则是如果一个方块落下之后发现有行满了,就会消掉这些行,然后上面没有被消掉的行会按位置下降。在游戏世界中,你能看到的一切gameplay都要依赖逻辑程序来控制,在绝大多数情况下,逻辑程序在代码数量上占据了游戏程序的主体。
业界主流的发展越来越倾向于这样一个认识,策划创造游戏的玩法,美术创造游戏的画面,而程序的职责是为他们提供帮助。这种帮助主要就是提供给他们工具,在游戏开发流水线越来越进化的今天,工具的好坏对游戏的质量起着决定性的作用。一些典型的工具包括地形编辑器、场景编辑器、脚本编辑器、粒子编辑器等等。对程序员来说,编写工具程序往往需要掌握Windows(或其他操作系统)编程的能力。
当然还有很多很多其他的分工,比如AI程序员负责编写怪物和BOSS的行为,角色的寻路,UI程序员负责编写游戏的界面,比如各种菜单、状态的显示,服务端程序员负责编写服务器端的逻辑程序等等。鉴于答者的工作,这种分类其实主要是按照3D网游来讲的,其他不同平台不同类型的游戏当然会有不同的分工,不过大体上差不多。而且这些分工很多都是有交集的,并没有选了其中一种就不会做别的这种事,分开来讲只是希望能有个大概的印象。
㈢ 我指的是广州这边的,游戏服务器端lua脚本程序员 待遇
在广州的话5.5K确实不高
说的是lua程序员 其实只是做脚本
因为本身功能受到程序宿主语言开放的API限制,所以你的动作受限比较大
加上只是完成策划的需求
其实做脚本就感觉像做翻译一样 没什么激情
最糟糕的是 很难转程序 如果程序功底比较深厚 有比较远大的抱负的话 推荐别做 因为那个没有多大的发展前景
如果只是想混口饭的话 那也可以试一试
我就是进去了 又跳出来的
㈣ 什么是服务器端程序员
服务器端程序员主要写业务方面,跟数据库,系统关联,一般用C#,php,JAVA等。客户端的,主要是界面设计,如CSS,html,PHOTOSHOP,JAVASCRIPT等
㈤ 程序员分前端与后端,那么后端程序员都做些什么看完就知道了
我刚开始做Web开发的时候,根本没有前端,后端之说。
原因很简单,那个时候服务器端的代码就是一切: 接受浏览器的请求,实现业务逻辑,访问数据库,用JSP生成HTML,然后发送给浏览器。
即使后来Javascript在浏览器中添加了一些AJAX的效果,那也是锦上添花,绝对不敢造次。因为页面的HTML主要还是用所谓“ 套模板 ”的方式生成:美工生成HTML模板,程序员用JSP,Veloctiy,FreeMaker等技术把动态的内容添加上去,仅此而已。
那个时候最流行的图是这个样子:
在最初的J2EE体系中,这个 表示层 可不仅仅是浏览器中运行的页面,还包括Java写的桌面端,只是Java在桌面端太不争气, 没有发展起来。
每个程序员都是所谓 “全栈”工程师 ,不仅要搞定HTML, JavaScript, CSS,还要实现业务逻辑,编写访问数据库的代码。等到部署的时候,就把所有的代码打成一个WAR包,往Tomcat指定的目录一扔,测试一下没问题,收工回家!
不差钱的公司会把程序部署到Weblogic,Websphere这样的应用服务器中,还会用上高大上的EJB。
虽然看起来生活“简单”又“惬意”,但实际上也需要实现那些多变的、不讲逻辑的业务需求,苦逼的本质并没有改变。
随着大家对浏览器页面的 视觉和交互 要求越来越高,“套模板”的方式渐渐无法满足要求,这个所谓的表示层慢慢地迁移到浏览器当中去了,一大批像Angular, ReactJS之类的框架崛起,前后端分离了!
后端的工程师只负责提供接口和数据,专注于业务逻辑的实现,前端取到数据后在浏览器中展示,各司其职。
像Java这样的语言很适合去实现复杂的业务逻辑,尤其是一些MIS系统,行业软件如税务、电力、烟草、金融,通信等等。 所以剥离表示层,只做后端挺合适的。
但是如果仅仅是实现业务逻辑,那后端也不会需要这么多技术了,搞定SSH/SSM就行了。
互联网,尤其是移动互联网开始兴起以后,海量的用户呼啸而来,一个单机部署的小小War包肯定是撑不住了,必须得做分布式。
原来的单个Tomcat得变成Tomcat的 集群 ,前边弄个Web服务器做请求的 负载均衡, 不仅如此,还得考虑状态问题,session的一致性。
(注:参见文章《小白科普:分布式和集群》)
业务越来越复杂,我们不得不把某些业务放到一个机器(或集群)上,把另外一部分业务放到另外一个机器(或集群)上,虽然系统的计算能力,处理能力大大增强,但是这些系统之间的通信就变成了头疼的问题, 消息队列 (MQ), RPC框架 (如Dubbo)应运而生,为了提高通信效率,各种 序列化的工具 (如Protobuf)也争先空后地问世。
单个数据库也撑不住了,那就做数据库的 读写分离 ,如果还不行,就做 分库和分表 ,把原有的数据库垂直地切一切,或者水平地切一切, 但不管怎么切,都会让应用程序的访问非常麻烦,因为数据要跨库做Join/排序,还需要事务,为了解决这个问题,又有各种各样“ 数据访问中间件 ”的工具和产品诞生。
为了最大程度地提高性能,缓存肯定少不了,可以在本机做缓存(如Ehcache),也可以做 分布式缓存 (如Redis),如何搞 数据分片 ,数据迁移,失效转移,这又是一个超级大的主题了。
互联网用户喜欢上传图片和文件,还得搞一个 分布式的文件系统 (如FastDFS),要求高可用,高可靠。
数据量大了,搜索的需求就自然而然地浮出水面,你得弄一个支持全文索引的 搜索引擎 (如Elasticsearch ,Solr)出来。
林子大了,什么鸟都有,必须得考虑 安全 ,数据的加密/解密,签名、证书,防止SQL注入,XSS/CSRF等各种攻击。
前面提到了这么多的系统,还都是分布式的,每次上线,运维的同学说:把这么多系统协调好,把老子都累死了。
得把持续集成做好,能自动化地部署,自动化测试(其实前端也是如此),后来出现了一个革命化的技术 docker , 能够让开发、测试、生成环境保持一致,系统原来只是在环境(如Ngnix, JVM,Tomcat,MySQL等)上部署代码,现在把代码和环境一并打包, 运维的工作一下子就简化了。
公司自己购买服务器比较贵,维护也很麻烦,又难于弹性地增长,那就搞点虚拟的服务器吧,硬盘、内存都可以动态扩展(反正是虚拟的), 访问量大的时候多用点,没啥访问量了就释放一点,按需分配,很方便,这就是 云计算 的一个场景。
随着时间的推移,各个公司和系统收集的数据越来越多,都堆成一座大山了,难道就放在那里白白地浪费硬盘空间吗?
有人就惊奇地发现,咦,我们利用这些数据搞点事情啊, 比如把数据好好分析一下,预测一下这个用户的购买/阅读/浏览习惯,给他推荐一点东西嘛。
可是这么多数据,用传统的方式计算好几天甚至好几个月才能出个结果,到时候黄花菜都凉了,所以也得利用分布式的技术,想办法把计算分到各个计算机去,然后再把计算结果收回来, 时势造英雄, Hadoop 及其生态系统就应运而生了。
之前听说过一个大前端的概念,把移动端和网页端都归结为“前端”,我这里造个词“大后端”,把那些用户直接接触不到的、发生在服务器端的都归结进来。
现在无论是前端还是后端,技术领域多如牛毛,都严重地细分了,所以 我认为真正的全栈工程师根本不存在,因为一个人精力有限,不可能搞定这么多技术领域,太难了 。
培训机构所说的“全栈”,我认为就是前后端还在拉拉扯扯,藕断丝连,没有彻底分离的时候的“全栈”工程师。
那么问题来了, 后端这么多东西,我该怎么学?
之前写过一篇文章叫做《上天还是入地》,说了学习的广度和深度,在这里也是相通的。
往深度挖掘,可以成为某个技术领域的专家,如搜索方面的专家、安全方面的专家,分布式文件的专家等等,不管是哪个领域,重点都不是学会使用某个工具和框架, 而是保证你可以自己的知识和技术去搞定这个领域的顶尖问题。
往广度发展,各个技术领域都要了解,对于某种需求,能够选取合适的软件和技术架构来实现它,把需求转化成合适的技术组件,让这些组件以合适的方式连接、部署、运行,这也需要持续地学习和不断的经验积累。
最后,以一张漫画来结束吧!
C/C++高级工程师学习路线图:
㈥ 游戏服务器端和客户端程序员哪个工作压力大又哪个工资高呢
1。服务器端程序员的主要工作是将服务器端提供来的数据请求进行合理的对数据库进行安全的读写.以及将游戏内相对玩家的信息及时转发给其他玩家2。个人感觉都差不多.客户端工程师的压力主要来自bug的修复。数据库端工程师的压力来自合理的分配系统...
㈦ 现在程序员一个月的工资大概多少
你好,程序员的工资在不同公司不同职级都是不一样的,以鹅厂为例,达到架构师的能力年薪会达到百万,具体如下。
1、腾讯工程师岗位职级
鹅厂去年宣布调整职级,取消了原有的 6 级 18 等(1.1-6.3 级)的职级体系设计,将专业职级体系优化为14 级(4-17 级)。与之相对应的是,统一置换为“专业职级+职位称谓”。
关于绩效的考核,腾讯的绩效考核分为 2 部分,业务评价和组织管理评价,一般一年2次考核(6月、12月),实行末尾淘汰制。
腾讯的技术晋升也不容易。在腾讯旧的职级体系下,T3-3 升 T4-1 是一个大坎,停留在 T3-3 超过 5 年的不在少数,停留 7 年的也有。一旦进入 T4 级别,就是腾讯的专家工程师了,腾讯研发人数将近 2 万人,T4 级别的人数大概也不超过 500 人,这还是在近两年 T3 到 T4 级别人数增多的情况下。
鹅厂T4架构师作为“IT架构灵魂人物”的角色,他们不仅做着架构师的本职工作,还同时做程序开发,写核心代码的工作。另外,架构师依旧是技术高手,编程能力依然是一流的。
但根据当前的市场需求,互联网大厂们对于普通Java开发人才需求逐年锐减,而对互联网架构师人才的需求招聘量已经上升到50%,因此薪资更是不可同日而语。
对于想学习互联网架构师的同学来说,北大青鸟、课工场等优秀品牌都是不错的选择。课程根据招聘需求制定,包含全部分布式微服务技术,对标鹅厂T4、阿里P8级别架构师。
希望我的回答对你有所帮助!
㈧ 刚毕业的程序员工资正常多少
程序员工资是不确定的,要根据程序员的历、能力、工作经验、是否刚毕业、工种,工资是不一样的。
还与地域和公司有关,但是总的来说,程序员工资都是很高的,是很多人都羡慕的职位。
本科毕业、无工作经验的如下所述:
1、二三线城市的程序员一部分的工资在5000-6000(税前)左右,稍微多一点的在7000-8000左右。
北上广深的本科刚毕业一般在5000-9000左右,这个波动太大的,真不好说,一般8000-9000看你能力和学历。
2、但是还和公司有关,比如bat,本科刚毕业的非sp的offer,工资可以给11k-13k左右。
3、还与工种有关,比如你是前端web、服务器端的不同种类的程序员(当然,小公司可能就不会分这么细了,一个人多种活),如果分的话,可能二者的工资还不一样。
㈨ 一般程序员的工资是多少
程序员工资是不确定的,要根据程序员的历、能力、工作经验、是否刚毕业、工种,工资是不一样的,还与地域和公司有关,但是总的来说,程序员工资都是很高的,是很多人都羡慕的职位。
1、比如本科毕业、无工作经验的如下所述:
二三线城市的程序员一部分的工资在5000-6000(税前)左右,稍微多一点的在7000-8000左右。
北上广深的本科刚毕业一般在5000-9000左右,这个波动太大的,真不好说,一般8000-9000看你能力和学历。
2、但是还和公司有关,比如bat,本科刚毕业的非sp的offer,工资可以给11k-13k左右。
3、还与工种有关,比如你是前端web、服务器端的不同种类的程序员(当然,小公司可能就不会分这么细了,一个人多种活),如果分的话,可能二者的工资还不一样。
㈩ 服务器编辑器对于程序员来说难吗
难。
Vim编辑器广泛用于Linux服务器端,一般程序员都不会用,运维人员用的比较多,功能强大是强大,学习成本前期比较大,一般用户还是比较抗拒的。