V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
chenyu0532
V2EX  ›  程序员

关于个人技术选择

  •  
  •   chenyu0532 · 2017-07-01 09:40:48 +08:00 · 4601 次点击
    这是一个创建于 2694 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我是一名 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 的开发者,想要技术更好一些,是不是应该努力的去学习这两个系统。不学的话这个技术是不是就不会走的很远。
    写的有点乱,有写的不好的地方麻烦大家指出来。。。
    第 1 条附言  ·  2017-07-01 10:34:22 +08:00
    哥哥们,像我这样一心只想做客户端的不想往全栈发展的程序员是不是很 low 啊。
    另外,可能是我叙述的不清楚,其实我真正想问的只是:不学像 linux mac 等其他的系统知识,在技术上是不是不会有太远的发展。前面的叙述只是一通牢骚,大家当我放了个屁就行。。。。
    第 2 条附言  ·  2017-07-01 10:36:09 +08:00
    当然我还是非常喜欢学其他的编程语言,而且现在也能快速手写工作中常用数据结构和算法
    23 条回复    2017-07-02 09:23:07 +08:00
    YAFEIML
        1
    YAFEIML  
       2017-07-01 09:57:57 +08:00
    然并卵吧
    dtysky
        2
    dtysky  
       2017-07-01 09:59:20 +08:00 via Android
    做游戏安心用你的 windows 吧
    maclinux 方便一般是针对 web 领域……
    heqingpan
        3
    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
        4
    aristotll  
       2017-07-01 10:10:22 +08:00
    如果你用 Vim 之类的会发现 command 而不是 Ctrl 非常的好
    gemini767
        5
    gemini767  
       2017-07-01 10:12:47 +08:00
    > 是不是应该努力的去学习这两个系统。不学的话这个技术是不是就不会走的很远。

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

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

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

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

    然后你就走上人生巅峰

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

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

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

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

    那么技术上如何才能走的更远呢(这里不讨论管理那块)?我觉得就两个方向吧,一个是做全栈(让老板能把你一个人当多个人用),一个是做引擎(你能做别人做不到的事情)。
    LZ 已经说了不想做全栈,那么另外一个方向上,单单会用一些语言以及一些引擎是不够的,会实现策划的需求也是不够的。而一般的游戏大厂,多半是会走华丽这条路线的,而走华丽路线,那么就会有自己的引擎或者懂得如何深入优化现有的引擎。
    所以 LZ 的数学是否还记得多少?图形学学的怎么样了? OpenGL 是否熟悉?是否从源码层次上吃透了现在的图形引擎?
    kinge
        21
    kinge  
       2017-07-01 15:45:02 +08:00
    不用学习
    um1ng
        22
    um1ng  
       2017-07-01 20:15:02 +08:00 via iPhone
    说了一大堆,然并卵。爱用什么就用什么,在乎别人的想法干嘛。
    fulvaz
        23
    fulvaz  
       2017-07-02 09:23:07 +08:00
    还要学?

    不是半天熟练吗?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5365 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 08:19 · PVG 16:19 · LAX 00:19 · JFK 03:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.