客户端程序员=前端程序员

包括

Unity程序员

UE程序员

Cocos程序员

Egret程序员

Laya程序员

Flash程序员

等等

服务端程序员=后端程序员

包括

C++程序员

Java程序员

Go程序员

C#程序员

等等


内容概要

  • 前后端核心技能点

  • 前后端重点学习方向

  • 前后端开发范畴

  • 前后端工具开发


前后端核心技能点

前端核心技能点

  • 编程语言 c#、c++、ts、as

  • 脚本语言 lua

  • 常用数据结构和算法

  • 常用设计模式

  • 游戏引擎工具使用(Unity、UE、Cocos等等)

  • 渲染原理,动画原理,着色器编程

  • 3D游戏数学基础

  • 多线程编程

  • 游戏AI编程

  • 等等

后端核心技能点

  • 编程语言 c++、java、Go

  • 脚本语言 shell, python, lua

  • 常用数据结构和算法

  • 常用设计模式

  • Linux操作系统熟练使用

  • 多线程编程

  • 数据库(mysql),内存数据库(redis)使用及配置

  • 网络编程(tcp, udp, http, epoll)


前后端重点学习方向

前端重点学习方向

  • 编程语言(c#、c++、lua等)

  • 游戏引擎(Unity、UE、Cocos等)

  • 数学相关(线性代数、平面几何、立体几何等)

  • 数据结构和算法

  • 设计模式

  • 计算机图形学(OpenGL)

  • 操作系统原理

后端重点学习方向

  • c, c++ 或 java

  • python、lua

  • 数据结构与算法

  • 设计模式

  • 操作系统原理

  • 计算机网络

  • 数据库系统原理


前后端开发范畴

前端开发范畴

  • 内容展示(渲染)

UI、特效、动画、场景、特殊表现

  • 资源管理

美术规范(UI、动画、特效、原画、模型、场景)

程序中的资源加载、释放、热更新

各种资源管理器(音效、特效、动画、UI等)

  • 基础模块开发

网络通信(tcp、udp、消息序列化/反序列化)

多线程模型(网络线程、日志文件线程),线程间通信

模式框架(MVC、单例、工厂、观察者、状态机、内存池、事件系统等)

数据持久化(json、xml、2进制等)

通用数据结构和算法(基本几何体类、循环队列、优先队列、树、A*等)

  • 战斗逻辑开发

技能和Buff系统(配置表、脚本化)

游戏AI(状态机、行为树)

3D场景中的移动、旋转、碰撞(3D数学、物理系统)

动作模型管理

  • 系统逻辑开发

UI面板逻辑

玩家数据管理(客户端服务端消息通讯)

  • 优化

内存占用优化

图集Alpha通道分离

图片尺寸压缩

网格模型精简

特效模型精简

内存复用、内存释放、防止内存泄露

第三方工具检查

等等

CPU效率优化

减少Draw Call

UI图集

网格合并

光照贴图

等等

后端开发范畴

  • 网络连接接入

并发链接管理:创建、通信、断开

多种网络通讯协议:tcp、udp、http

非阻塞编程

  • 数据存取

MySql、redis、本地数据文件等

应用层缓存系统,提升服务性能,防止频繁读写磁盘

提高数据访问吞吐量: 阻塞模式使用多线程,非阻塞模式使用回调或协程

数据备份

  • 基础模块开发

基础数据结构和算法库

网络API,数据库访问API, 文件操作API等封装抽象

网络协议批量制订和生成(protobuf,tdr),序列化/反序列化

日志系统(本地run日志,远端存库日志)

多线程模型,无锁编程

进程框架,多进程间通信框架

异步非阻塞逻辑框架(协程系统,回调系统)

模式框架(单例, 工厂, 观察者,状态机,内存池, 事件系统,缓存系统等)

  • 游戏逻辑开发

养成逻辑

战斗逻辑

军团逻辑

排行榜逻辑

等等

  • 容错性,拓展性,可靠性开发

数据校验,延迟处理,丢包处理

无状态服务设计

分服设计,平滑扩展

重要数据备份,防灾


前后端工具开发

前端工具开发

  • 核心技能

广泛的软件开发知识面

快速编写或搭建,接入各种工具

Android, ios平台基本编程

Unity编辑器扩展

  • 自主开发工具

主要扩展unity编辑器

数据档生成工具 ( excel->2进制文件 )

多语言工具

热更新资源包生成工具

批量修改资源属性工具

打包出档脚本

AI编辑器,关卡编辑器,技能编辑器

等等

  • 第三方接入工具

Talking data

渠道sdk

性能检测 (腾讯wetest)

闪退检测报告(腾讯bugly)

等等

后端工具开发

  • 核心技能

广泛的软件开发知识面

快速编写或搭建,接入各种工具

C#, linux, shell, python

数据库操作

网页程序编写

  • 服务器运维工具

进程启停脚本

服务器批量部署

进程监控,报警

  • 日志分析系统

分析数据指标

留存率,付费率,ARPU,LTV值

分析玩家行为

英雄分布,道具分布,关卡通关情况

Pandas + excel

  • GM工具

游戏管理人员内部使用

发补偿邮件,发公告,禁言,关小黑屋

查看玩家行为日志

可做成客户端也可做成网页操作的形式

做成客户端:另一个unity工程

做成网页操作:  python框架Django


总结

对于学生和转业人员,要明确自己的定位,选择以 前后端程序的哪种身份进入行业。

针对性地进行学习、突破、专精,当自己的技能达到一定水平后,可以前后端全方面发展。

但是对于初学者的建议,一定是选择前后端其中一条路线进行学习,如果双管齐下,由于时间、精力、专注度种种因素往往会得不偿失


 广告时间

唐老狮提供

优质的、全方位的

Unity前端程序实战就业路线

一次购买,终生受用

打折预售中

详情链接

https://www.taikr.com/goods/show/590


关注

唐老狮

获取更多干货内容

【唐老狮】商业游戏开发前后端程序区别相关推荐

  1. 【唐老狮】Unity网络通信中的分包、黏包

    在进行网络开发时,不管是前后端都需要处理消息的分包和黏包. 那所谓的分包和黏包,它具体的含义是什么呢? 分包:一个消息包被分成了多个消息包进行发送 黏包:一个消息包和另一个消息包黏在了一起 如果通过描 ...

  2. 【唐老狮】字符编码(ASCII,Unicode和UTF-8)

    [什么是字符编码] 字符编码(英语:Character encoding)也称字集码 是把字符集中的字符,编码为指定集合中某一对象,以便文本在计算机中存储或通过网络进行传递. 说人话:计算机里只能存数 ...

  3. 【唐老狮】C#四部曲之C#入门:习题汇总

    本篇文章对视频教程 <[唐老狮]Unity系列之C#四部曲-C#入门 > 当中的课后练习题进行了汇总,方便同学们统一进行练习和复习 这些习题的解题部分都在本教程中以视频的形式进行了详细讲解 ...

  4. 【唐老狮】C#——封装:运算符重载

    ​    ​目前我们学过的变量中,除了几种自定义的变量(结构体.类.枚举),语言本身的13种常用变量类型byte.int.float等等都默认支持用运算符进行计算,也支持条件运算符进行比较.今天我们要 ...

  5. 【唐老狮】C#——转义字符

    [转义字符] ​ 强记忆 一句话 ↓↓↓↓ 转义字符 是字符串的一部分 ↓↓↓↓ 用来表示特殊含义 [常用转义字符] \n --换行  \' --单引号  \" --双引号 \\ --反斜杠 ...

  6. 【唐老狮】C#四部曲之C#基础:习题汇总

    本篇文章对视频教程 <[唐老狮]Unity系列之C#四部曲-C#基础 > 当中的课后练习题进行了汇总,方便同学们统一进行练习和复习 这些习题的解题部分都在本教程中以视频的形式进行了详细讲解 ...

  7. 视频教程-VUE前端开发/前后端分离-Java

    VUE前端开发/前后端分离 13年软件开发经验,设计开发30多个大型软件,涉及政府.银行.电信.能源等大型软件项目. 精通J2EE体系架构,熟练使用Struts.Spring.hibernate.ib ...

  8. 【唐老狮】C#——多态和vob

    ​    ​截止目前,我们已经学会了面向对象中封装和继承两大特性的相关知识点.简单理解它们,封装就是用代码形容一个现实对象,继承就是复用代码,通过继承可以让类之间建立父子关系,复用一些特征和行为. ​ ...

  9. 【唐老狮】C#——结构体和类的区别

    [结构体和类的区别] 结构体是值类型,类是引用类型 结构体存在栈中,类存在堆中 结构体成员不能使用protected访问修饰符,而类可以 结构体成员变量申明不能指定初始值,而类可以 结构体不能申明无参 ...

最新文章

  1. python之⾯向对象-继承
  2. cmd mysql uroot p不是内部或外部命令...
  3. 把数据导出Excel
  4. 利用webBrowser获取页面iframe中的内容
  5. Scalaz(1)- 基础篇:隐式转换解析策略-Implicit resolution
  6. abb机器人伺服电机报闸是什么_ABB机器人伺服电机维修更换马达步骤
  7. 二叉树的基本操作(C)
  8. tar命令--解压缩
  9. How to monitor mongodb replica set using prometheu
  10. “熊猫烧香”有新变种 可自动下载病毒
  11. 13.分布式锁面试题(高频面试题)
  12. Word控件Spire.Doc 【页面设置】教程(1):在C#/VB.NET:在 Word 文档中插入分页符
  13. linux编译一直失败,linux编译安装时常见错误解决办法
  14. ON-LSTM:用有序神经元表达层次结构
  15. Faceted project metadata file “/game/.settings/org.eclipse.wst.common.projec
  16. 指针、函数、指针函数和函数指针
  17. 初中计算机函数的使用教案,第五课 数据计算——公式和函数
  18. 追溯AI与自然的关系:智能的本质是什么?
  19. stm32mp157和imx6ull比较,开发板选哪个好?一文看懂!
  20. iOS开发者必备:自己总结的iOS、mac开源项目及库

热门文章

  1. JS数组对象——英文按照首字母进行排序sort()、localeCompare()
  2. iOS获取视频文件大小和时长
  3. 【aspose】aspose-cells-21.1 For Java 除水印
  4. Win2000下的集成管理工具MMC(转)
  5. 中国石油大学(北京)-《 油气藏经营管理》第二阶段在线作业
  6. JavaWeb开发分享:WRO
  7. 用计算机的说法,关于计算机系统,下列哪几个说法是正确的?
  8. windows xp添加开机自启动脚本
  9. 限时免费 | 12月6日,广州保利洲际酒店,ABC Summit 2018云智峰会来了!
  10. 关于H5的一些杂思细想(一)