关于个人技术选择

2017-07-01 09:40:48 +08:00
 chenyu0532
我是一名 4 年手机游戏开发客户端。cocos2d 和 unity 都干过,用了 c++ lua C#,也学习整理过一些 cocos 引擎源码,平时习惯 windows。
在 v2 上看到了好多的人熟悉 mac linux 等,也深知 linux 和 mac 对于开发有很大很大的帮助,一些技术牛的前辈也跟我说要在 mac 上开发,会让你的效率提高很多,比如编写常用的 shell 脚本什么的,有点看不起 windows 的意思。故有那么两个多月的时间抛弃了单位的 windows 电脑改用 mac,但是总的感觉是 mac 电脑用起来好慢啊(电脑配置不好?),xcode 运行的速度简直不能忍啊,要用 command 键不能用 ctrl,什么鬼啊。。
同样对于 linux 也有大牛前辈极力推荐,因为游戏开发后端必须熟悉这个,而且用 linux 更能让你懂得程序底层的知识,我可能对第一份 linux 工作被辞退有阴影了吧,见了 linux 有种下意识的排斥
借贵地想求问下,对于一个一心只想做客户端的并且讨厌 linux mac 的开发者,想要技术更好一些,是不是应该努力的去学习这两个系统。不学的话这个技术是不是就不会走的很远。
写的有点乱,有写的不好的地方麻烦大家指出来。。。
4611 次点击
所在节点    程序员
23 条回复
YAFEIML
2017-07-01 09:57:57 +08:00
然并卵吧
dtysky
2017-07-01 09:59:20 +08:00
做游戏安心用你的 windows 吧
maclinux 方便一般是针对 web 领域……
heqingpan
2017-07-01 10:10:02 +08:00
背景:本人是后端开发,重度依赖 linux 的各种服务。
大学和第一份工作用的都是 windows,期间有用 windows+虚拟机+linux 开发。之后用来 mac 3 年。对比下来在 mac 上的终端用起来比虚拟机+linux 顺畅不少,mac 的触摸屏操作也很流畅,不过 mac 的文件系统个人觉得不好用,至少我用 windows 会比这高效些。
最近这几周组了一台机器,在上面装了 win10 开启了开发者 Ubuntu Bash 功能 ,其终端用起来很是顺畅,mac 对比下几乎没什么优势,后面有打算尝试把工作环境切回 win10+bash+docker。
aristotll
2017-07-01 10:10:22 +08:00
如果你用 Vim 之类的会发现 command 而不是 Ctrl 非常的好
gemini767
2017-07-01 10:12:47 +08:00
> 是不是应该努力的去学习这两个系统。不学的话这个技术是不是就不会走的很远。

这两个很矛盾吧!学习两个系统如何使用不等于你的技术得到了提升。我个人觉得 linux 更大的意义在于他是开源的,每个人可以为其贡献同样从中学习其他人的思想,提升自己技术。而不是简单的 cmd or keymap 的问题,linux 社区下也不乏有 win 开发大牛。平台只是工具,思想才是王道
springmarker
2017-07-01 10:23:09 +08:00
流畅和性能什么的,你得用同一价位的比才行,16000 的 macbook 和 6000 windows 本的能比?
johnlui
2017-07-01 10:28:34 +08:00
楼主快说说你用的 MAC 的型号配置。。。
zhengxiaowai
2017-07-01 10:41:15 +08:00
你以为我们想天天在黑窗口中敲命令,太天真的。是因为没有办法啊
gouchaoer
2017-07-01 11:12:41 +08:00
开发工具喜欢啥用啥,我喜欢 win 开发觉得 linux 难用
fangxing204
2017-07-01 11:15:09 +08:00
我觉得 linux 很好用,稳定,就是桌面软件太少了,就算有也比 Windows 版本的差远了。
lsido
2017-07-01 11:51:27 +08:00
你说的某些技术大牛看不起 Windows 说明他还处于膨胀状态,需要来一针

但是如果你是一心只想做客户端的并且讨厌 linux mac 的那个人,我也建议你去试着接受它,Linux 是个好东西,你一定会涉及 linux 编程,无论是客户端还是 Web 或者其他,学习新东西总有意想不到的收获

教你个小方法:每次想用 Windows 的时候,强迫自己用 linux 或者 mac,是的,强迫!强迫!!

感觉有点变态,但是慢慢慢慢的就会熟悉了,熟悉了就方便了,方便了就快捷了,学习,工作,效率越来越高

然后你就走上人生巅峰

别忘了曾经在 v2 回复给你内容的我
Lonely
2017-07-01 12:04:59 +08:00
@heqingpan mac 系列有带触摸屏的啊?
heqingpan
2017-07-01 13:18:51 +08:00
@Lonely [尴尬] 打错字了,是触摸板
wangyufeng
2017-07-01 14:24:39 +08:00
@heqingpan bash 慢的要死。。tar 解压个东西半小时
Chieh
2017-07-01 14:46:33 +08:00
我觉得每人都要有做全栈的能力,但尽可能不要去做全栈的活
kurten
2017-07-01 15:05:27 +08:00
现在不流行全栈了,现在流行爆栈,你行的 。。。
only0jac
2017-07-01 15:10:14 +08:00
“我是一名 4 年手机游戏开发客户端。”

主语:我
谓语:是
宾语:客户端

“我是客户端”
fox0001
2017-07-01 15:19:00 +08:00
操作系统是个工具,工具不是最重要,关键是你用工具做了什么。
michaelye1988
2017-07-01 15:42:25 +08:00
@heqingpan 我做 Android 开发,觉得在 Window 上面开发比 Mac 上顺手不少,但是之前一次讨论,只是表明了一下观点,被 V2 里面的某个人呵呵了。在某些人眼里好像除了 Mac,其他都不好用。
weiweiwitch
2017-07-01 15:43:53 +08:00
@chenyu0532
首先我们来弄清楚大家出于什么原因极力推荐 mac 和 linux。这块 LZ 自己已经描述的差不多了。
一个原因是这两个系统上有比 windows 更优秀的 shell 以及和 shell 结合的更好的工作流相关工具。通过它们,我们就可以将写代码外的其他事情通过脚本和工具交给机器自动化处理,比如打包、测试、分发、部署等等。那么带来的好处就是开发项目时,可以更加专注的写代码,一定程度上提高开发的效率。
另一个原因,对后端来说,基于现在 DevOps 的趋势,后端是需要熟悉运维相关的东西的,我觉得几乎是后端必须掌握的技能,这块不多说。而对于游戏前端来说,因为移动端和主机的普及,前端的代码更多的会在类似 linux 的系统上跑。熟悉这类系统,会对自己在这类设备上调试或调优更有帮助。
可能还有其他原因,我一时还想不到。

然后从 LZ 的角度出发,我觉得这两块都是锦上添花的技能点。
自动化这块,前端没有像后端那么依赖,很多脚本也可以找后端帮忙写,真要自己弄,脚本这东西学起来也快的,打包什么的,熟悉下 jenkins 什么的也够了。
调试调优什么的,如果只是普通测试,现在的开发工具已经做的不错了,几乎不需要自己深入到系统里面。而后期做到引擎那块,会需要了解这类系统,但也是后面的事情了。

那么技术上如何才能走的更远呢(这里不讨论管理那块)?我觉得就两个方向吧,一个是做全栈(让老板能把你一个人当多个人用),一个是做引擎(你能做别人做不到的事情)。
LZ 已经说了不想做全栈,那么另外一个方向上,单单会用一些语言以及一些引擎是不够的,会实现策划的需求也是不够的。而一般的游戏大厂,多半是会走华丽这条路线的,而走华丽路线,那么就会有自己的引擎或者懂得如何深入优化现有的引擎。
所以 LZ 的数学是否还记得多少?图形学学的怎么样了? OpenGL 是否熟悉?是否从源码层次上吃透了现在的图形引擎?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/372287

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX