英语轻松读发新版了,欢迎下载、更新

你距离全栈还有多远的路要走

梦中醒不过来 发布于 2014年09月22日 | 更新于 2014年11月07日
tinyfool 等1人欣赏。

先说说我的,以前主要做Java企业开发的,最近两年开始接触互联网。因为兴趣比较广泛,有时自己写些小项目,所以逐渐接触全栈开发。现在掌握的技术杂一些,能干事,不深入,离全栈还有很长的路要走。

下面整理做项目中点过的技能树,名词比较多,嫌烦请略过,欢迎交换经验


能出活的部分

Java 主要技能都点在这棵树上了

Spring+SpringMVC+IOC+AOP web开发大街版,你值得拥有

Ant,Maven,Jenkins,SVN,Git 很奇怪的分组,领会精神

Mybatis,Hibernate 企业的忠诚卫士,为RDS保驾护航

Oracle, SqlServer, Mysql开发 一棵呀小白杨,站在哨所旁

Freemarker, Sitemash 当API用了,需要什么先搜

JQuery DOM操作利器,只会这个不丢人

Javascript 语法不熟,很多JS源码看不懂

XPATH 研究一个爬虫工具时顺便学了一下,语法跟JQuery,CSS的选择器差不多

正则表达式 验证字符串时会非常开心

HTML5 用一个开源的引擎写过一个射击游戏,知道websocket和本地存储

Bootstrap 能熟练的从网上Down的模版里扣出自己想要的页面,没模板就废了,手写不能

Swing 早年点错技能,希望以后也不会用到

GAE 谷歌大神放出来的时候让我开心了很久,直到...你懂的

Mongodb+Morphia 近期比较感兴趣的内容

Android 写过一个Native的小程序,没实战

PhoneGap,Cordova 准备拿来写个项目试试

Restful 总算把书从头到尾过了一遍,跨域的时候碰到很大障碍,对协议了解不深,还有些难点在研究中

Redis,Memcached 能用


不能出活等有闲的时候准备学习的部分

Photoshop 没学过,感觉是个高峰,虽然很实用,至少现在仍然不会

Dreamwaver 同上

PHP 能看懂部分代码,不会改

Apache 对照文档能做非常小的改动,想做架构必须得啃下这个工具吧

Linux Shell 别说了,都是泪

BI 数据分析很有意思,要点这颗技能树最好多了解业务

Hadoop 大数据分析工具,近两年火的不行,算了等过两年有空再研究

AngularJS 近两年开始流行MVVM了?不过这种CRUD的页面也就只有企业能用吧,对这个框架还没有深刻认识

Objective-C iOS开发,还有什么好说的,Cordova盖不到的部分早晚会涉及到

Groovy 写了个小例子,如何用好这把利剑还要看整体架构的能力

RPC 框架,企业开发用不到

MQ 月朦胧鸟朦胧

NIO 早些年用mina写过一个的mud demo, 不知道现在的游戏引擎怎么搞,好像RPC框架也会用到

Tomcat,Jetty 经常用,没研究过如何优化


放弃治疗的部分

3D, OpenGL 有段时间想自己写个3D游戏,看了一些简单的介绍就...

Cocos2d, Unity3D 听说过没见过两万五千里

Python,Ruby,Perl 脚本什么的太多了

C++, 汇编 求大神饶命


我觉得全栈是做架构的基础,全栈不是目的。没吃过猪肉也要看看猪跑。了解各个不同环节是如何运作的,才好在整体上设计研发方向指定架构工作流程。

共27条回复
snipes 回复于 2014年09月22日

慢慢来吧,路漫漫其修远兮

liyinkan 回复于 2014年09月22日
  • 不小心同时点了 Java 和 C# 两颗技能树。
  • 不小心打怪打到一本《前端技能书》开启前端技能树,然后一直把点消耗在这颗树上…… 还一不小心点出了 silverlight 的技能……
  • 由于项目需要,不得不又点了集成的技能,在 git server,jenkins,maven,ant build,linux 上面又消耗了许多技能点……

综上所述,没有一个地方点出最终技能的…… (尴尬

netdigger 回复于 2014年09月22日

有趣啊,我也来算算:

C/C++ 主要技能,驱动,控制软件等。主要工作用

Python 写个集成测试什么的,脚本什么的,都用这个

Golang 写服务器程序啥的,目前都用这个,好用。

Android 搞了好多年的Framework,工作上也写过几个APP。

WEB前端,乱七八糟知道一些,如果有人设计好页面,可以写出符合要求的页面。

J2EE,没用golang之前写过一段时间的游戏服务器,准备废弃。

Delphi 已经废弃

ASM 写过一时间,已废弃

iOS 技能树已经点开,正在用。

玉楼 回复于 2014年09月22日

看着楼主,俺基本不会啥。

myrual 回复于 2014年09月22日

能出活的部分,c语言,写过电视机,智能卡,iBeacon, 大部分单片机程序。 用alloc的时候都很少。

objective c,就一个上线的app,还是1.0的时候,主要写架构和网络通信部分,ui部分相对弱。

python,写过一个内部用的智能卡测试工具,写过一个p2p网络通信服务器(测试用)。

拿来就用的部分 rails,就用来写json api服务器了,上一个创业公司的时候做的。

能理解全栈就是样样精通,样样稀松的同义词么?

贵人 回复于 2014年09月22日

做java的会这些,离全栈还很远吧

Delusion 回复于 2014年09月22日

目前发布2个iOS App 感觉还不是很掌握Objective-c

Swift更新几次 beta1 API 能行的 betaN就不行了 撸还很远啊。

minddriven 回复于 2014年09月23日

java 就是这个名词多,那个名词多,还有 n 多设计模式,套路,一看很高大上,实质就是很腐朽。

你要做 fullstack,就找一门适合 web 的语言,动态类型的可以 python/ruby/node.js ,静态类型的可以 golang 。他们都有很多很好的web framework。

fullstack 还有一个很重要的标准就是前端要强,browser-side 的 MVC (backbone.js, angular.js )是标配了。

梦中醒不过来 回复于 2014年09月23日

小城市呆久了,跟大家交流下经验

thankwsx 回复于 2014年09月23日

技术是成体系的,你算是java系的了。我从我自身的角度看全栈就是围绕网络开发的全才,不过是基于LAMP体系的。 主要技能点有:

Server:Apache,Nginx,Node

移动端:Android,ios,phonegap封装等

网页端:围绕JS的一切库和工具,不求都深入,但求有所了解,知道什么适合什么

贵人 回复于 2014年09月23日

全栈工程师

puras 回复于 2014年09月24日

看到了忍不住回一下:

Java WEB开发是主技能,什么Spring,ORM啥啥的

Maven,Ant那一些也行

Apache,Nginx参考资料可配置

前端CSS能简单的修改

JS写的多一些,什么jQuery,Mootools啥的都弄过

JS的MVC也弄过EmberJS和AngularJS

顺便接触了CoffeeScript

Android写过,但没有正式作品

iOS前些天刚完成一个App,最近在上线

Python平时写些脚本之类,Django写过论坛,Tornado简单的了解过

ROR写过一个应用的管理系统

PHP写过CMS,但只局限CI框架

GOLang简单的看过,没啥东西产出

数据库Oracle和MySQL现在常用,以前弄过SQLServer

还有啥想不起来了。。。太杂。。。

ninja 回复于 2014年09月26日

哈哈,路线基本和楼主一样。对于全端已经不抱有希望了,希望看到什么就表现的会什么的样子就已经不错

hashmap 回复于 2014年09月26日

其实你这个技能树点的一点也不差。

iamaflyingpig 回复于 2014年09月27日

都太牛逼了,都是很实用,很接地气的东西。。。。。。

PengEdy 回复于 2014年09月29日

Rails工程师表示全栈都不是个事儿。 不过你这是Java的,确实是个事儿。

leanote 回复于 2014年09月29日

我也来发发我的:

能出活的:

后端部分

  • SpringMVC, Hibernate, Freemarker (用Java做web很纠结, 没有PHP好用)
  • PHP (一直在行)
  • Golang (最近一年在用, 写了 leanote )

前端部分:

  • jQuery, Javascript(在行), CSS(在行), Bootstrap (写 leanote 锻炼了我的前端功底)
  • AnglarJS

数据库:

  • Oracle(也就简单玩玩), Mysql一直用, Mongodb很喜欢
  • Redis,Memcached 不知能算否

其它工具:

  • svn, git(最近github用得多)

不能出活的:

  • PhoneGap, Android (好奇心做了一个app, 之后再也没碰过)
qufay 回复于 2014年09月29日

17楼 @leanote 大神们为何如此牛!

yangtzeyankee 回复于 2014年09月29日

佩服楼主及上面的牛人们。我的折腾经历——

8年前开始自己倒腾wordpress,写点小插件。

进一家创业公司,正式开始web开发,写了一半左右代码(最初有人带),用Spring, Struts, Hibernate, 数据库MySQL,那时流行的是Prototype JS.

2年后去另一家创业公司,就我一个工程师,还是用那一套,JavaScript换成了jQuery

没多久来了现在的公司,待挺久的,啥都干过,甚至都偏到marketing了。做的大概有:

  • 写了许多Ruby脚本,做大规模关键词竞价、分析,数据库是SQL Server,当时linux里连比较蛋疼
  • 用Ruby on Rails做了个机房内DNS管理系统。体验了一下RoR的TDD确实流畅,后来也因为测试太难写干脆不写了
  • awk、bash、ruby 等一起弄了个简单的东西来封禁爬虫IP
  • 日常QA、production环境出了问题,上去看各种日志、代码解决 (Bash,Makefile,M4,Java,PostgreSQL)
  • psql 的 replication, cache 跨机房一致,机房failover
  • svn 代码库 mirror (不用svnsync),rebase到git
  • 偶尔用python写东西(业余web.py写了自己的blog程序),但是语法、函数什么都得查

operation

所以工作内容变成techops(我还在栈里吗?是不是不能叫stack overflow, 应该叫 stack leakage)了,可惜自己systems, networking方面没什么功底,深感接触面太广,但没有深入的,想想未来,压力很大。虽然在目前公司学到了很多东西,但做的越来越多是破事,深深的危机感。

最近用puppet把自己vps的配置管了起来,将来打算实践一些graphite, statsd, 之类的。看了看 spring mvc + freemarker,打算做点东西。下一份工作肯定不能再打杂了,找一份Java或者devops的,静心做点东西。

SoloHiC 回复于 2014年10月02日

3楼 @netdigger

5楼 @myrual

10楼 @thankwsx

12楼 @puras

17楼 @leanote

19楼 @yangtzeyankee

想问楼主、楼上各位大大,你们都接触编程多久了?从大学,或者说更早开始算起的话···即将毕业步入IT江湖的小虾米表示很崇拜。给跪了

myrual 回复于 2014年10月02日

我上大学以前没碰过计算机。 上大学的时候碰计算机最多的就是玩mud。 2002年大学毕业才开始编程,一直编程到今天。

SoloHiC 回复于 2014年10月03日

21楼 @myrual 算上本科,是16年,强。突然感觉自己好浮躁,哈哈哈

myrual 回复于 2014年10月05日

22楼 @SoloHiC 我本科学自动化的,c语言只学了两个学期,印象最深的是在一个很暖和的教室上课,总睡觉。作实验还是turboc 2.0。 哪想到后来以c语言编程为生。

SoloHiC 回复于 2014年10月05日

23楼 @myrual 世事多变,谁也拿不准以后定是过怎么样的生活~

iamaflyingpig 回复于 2014年10月05日

23楼 @myrual 上两个学期的课是大课了,我们当年只有一门2.5学分的C++(包括上机实验的学分),就是走过一遍而已,不过我不是计算机专业的

asisa 回复于 2014年11月01日

正在上学,Java和C#同时有课,Java必修,C#专业选修,这个学期还有SQL,还有个老师教Java和SQL怎么连接。看了你们的技能树,感觉还有好远的路……

lyxing 回复于 2014年11月07日

都好牛逼哦,我只会oracle、mysql、mongodb、linux,c++pythonobject-c都学过,但没出活,哦,我是只是个dba。我给自己加油吧。

hurry up,come on!

本帖有27个回复,因为您没有注册或者登录本站,所以,只能看到本帖的10条回复。如果想看到全部回复,请注册或者登录本站。

登录 或者 注册
[顶 楼]
|
|
[底 楼]
|
|
[首 页]