❶ 什么是全栈工程师
全栈工程师,也叫全端工程师(同时具备前端和后台能力),英文Full Stack developer。是指掌握多种技能,并能利用多种技能独立完成产品的人。
【价值】
一、全局性思维
现代项目的开发,需要掌握多种技术。互联网项目,需要用到后端开发、前端开发、界面设计、产品设计、数据库、各种移动客户端、三屏兼容、restFul API设计和OAuth等等,比较前卫的项目,还会用到Single Page Application、Web Socket、HTML5/CSS3这些技术以及像第三方开发像微信公众号微博应用等等。
Web前端也远远不是从前的切个图用个jQuery上个AJAX兼容各种浏览器那么简单了。现代的Web前端,需要用到模块化开发、多屏兼容、MVC,各种复杂的交互与优化,甚至你需要用到Node.js来协助前端的开发。
所以说一个现代化的项目,是一个非常复杂的构成,需要一个人来掌控全局,它不需要是各种技术的资深专家,但它需要熟悉到各种技术。对于一个团队特别是互联网企业来说,有一个全局性思维的人非常非常重要。
二、沟通成本
项目越大,沟通成本越高,项目中的人力是1+1<2的,人越多效率越低。因为沟通是需要成本的,不同技术的人各说各话,前端和后端是一定会掐架的。每个人都会为自己的利益而战,毫不为已的人是不存在的。
而全栈工程师的沟通成本几乎为零,因为各种技术都懂,胸有成竹,自己就全做了。即使是在团队协作中,与不同技术人员的沟通也会容易得多,让一个后端和一个前端去沟通,那完全是鸡同鸭讲,更不用说设计师与后端了。但如果有一个人懂产品懂设计懂前端懂后端,那沟通的结果显然不一样,因为他们讲的,彼此都能听得懂。
三、创业公司
对于创业公司来说,全栈工程师的价值是非常大的,创业公司不可能像大公司一样,各方面的人才都有。所以需要一个多面手,各种活都能一肩挑,独挡多面的万金油。对于创业公司,不可能说DBA前端后端客户端各种人才全都备齐了,很多工作请人又不饱和,不请人又没法做,外包又不放心质量,所以全栈工程师是省钱的一妙招。虽然说全栈工程师工资会比一般的工程师会高很多,但综合下来,成本会低很多。
❷ 自学Java如何入门
自学Java看这一篇就够啦!Java学习路线图分享给你,跟着学习吧!
一、Java基础
❸ 普通程序员的工作生活是怎样的
通常我们进入公司以后,不会是重头开始一个项目,而是在已有代码的基础上进行维护或新功能的开发,所以必须“读代码”。
读有“泛读”,了解系统架构、功能模块,对系统有一个大致的认识,各个功能能找到相应代码实现的位置。
还有“精读”,通常就是调试了,在fix bug的时候使用。此外还包括审核:一些规范一点的公司,都会有code review,也是精读,但不用debug。
对于一个成熟的项目来说,读代码——而不是写代码——可能是最耗时间的工作了。
写注释文档
为了减少“读代码”的时间,我们不得不花时间“写注释”“写文档”——这个程序员最深恶痛绝的工作。所以现在“烂代码才需要注释”的声音变得越来越强,但无论如何,文档还是要写的。(注意:要能区分注释和文档)
了解需求
好了,终于到了“写代码”的时间了。
然而,在动手开始写代码之前,你必须花时间“了解需求”。和自己写个小程序玩玩不同,在公司,你是为别人写代码,所以你一定要了解别人究竟想实现什么功能。通常,这并没有你想象的那么简单,需要反复的沟通。
当然,也有一些团队和个人,不愿意在这上面“浪费时间”,通常他们的下场就是不断的写代码,然后不断的改代码,加班加点的做大量的无用功,整个公司怨气冲天一地鸡毛。