V2EX golang83
 golang83 最近的时间轴更新
golang83

golang83

V2EX 第 409202 号会员,加入于 2019-05-06 03:38:08 +08:00
golang83 最近回复了
看着最近几年的的这些程序员,会用个某某框架、使用一种结构化的标签描述语言,搞出点页面,使用框架中的 API 完成点数据处理、和与后端的 http 协议程序进行点数据收发,就美其名曰前端开发工程师,看着那些使用 spring 全家桶,使用了一些消息引擎,搞点 nginx 和 docker 就美其名曰微服务,高级后端开发工程师。然后还有人得出前端比后端简单的结论,严格来说,前端程序可以复杂到让这些所谓的后端程序员做不出来,有些做 web 后端的居然页脚服务器端开发....... 看看 BAT 的校招中的笔试题吧... 实时证明,数据结构与算法合格的程序员才是程序员.... 程序员不是会用个框架堆积木才叫程序员!
人家说这话的人是大神,那么这句话的意思就是开发一个有价值的软件(程序),那么这样的程序一定是数据结构+算法,何为有价值的程序??比如 Excel,财务人员通过使用它可以进行简单的数据录入、统计、分析。光是数据的展示就是一个二维表,那么你要将一个二维表的数据进行各种运算已满足前面说的录入、统计、分析,请问没有数据结构与算法的基础支撑,你可以完成吗? 一个二维表又起码涉及到了线性表这种数据结构。再列举一个简单的例子:什么时候使用数组,什么时候使用链表,作为一个开发者,这个要不知道的话,开发个毛线程序呀?光是用库和框架,那和工地搬砖有啥区别?工地的建筑工人也是建筑行业,建筑师也是建筑行业,谁的社会价值更大?你让文科生去参与桥梁设计,海底隧道设计,估计他能让这个设计变得更有文化气息???呵呵...
前面有人说游戏开发的人来说,那我就说说,一个栈结构可以表示武器的弹夹,FILO 嘛,特性符合吧,假如子弹不是早期 CS 那种游戏,而是要参与物理计算的,那起码也是一个 Object 吧,早期的 CS 的游戏地图名称就叫 BSP,实际上 HalfLife 引擎来自与 id software 的 quake2 (如果我么没记错的话)的引擎,而 BSP 就是一种二叉树,用于解决游戏中的空间分割(二叉空间分割树),我记得没错就是卡尔马克大神搞出来的吧。再后来,室外大型场景场景渲染,LOD 多层次细节的使用,我们又用到了八叉树,哪怕是个 2D 的 MMORPG 游戏,只要联网,我不可能每个玩家的坐标都要向其他玩家进行广播吧?哪怕在一个地图,但不在一个屏幕,还有你看不到的 NPC 我也要把其坐标给你玩家?碰撞检测在一个 5000 人的服务器,我怎么做到哪些数据通知到哪些玩家,哪些数据不用通知某些玩家?网络 IO、服务器的算力资源如何节约?没有数据结构与算法的基础,这个事情就不用想了... 大端序转小端序要不要算法?如何编写一个不使用递归调用来进行遍历的二叉树?为什么需要这样一种二叉树?这涉及到早起的计算机栈空间很少,win2000 和 xp 我记得就 1024kb 吧。那么如果深度太深,也许就栈溢出了,所以可以尝试使用链栈来配合二叉树结构,从学习的角度,也可以对系统的栈空间有更深的理解,也达到了了解两种数据结构使用上的配合,以及线性表与树结构之间的关系...
2019-05-06 21:12:04 +08:00
回复了 noble4cc 创建的主题 Java Kotlin 相比 Java 有什么优势呢
我个人的浅见就是,如果 java 不属于 oracle 这种公司,那么 java 也是一个优秀的语言,但和 oracle 有关系的,都是垃圾!
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2801 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 12ms UTC 14:14 PVG 22:14 LAX 07:14 JFK 10:14
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86