众多技术我该学那样?(转)
上几次涂鸦写了几篇博文,没想到引起大家很大的反响。在这里,首先谢谢各位的厚爱。也接到许多来自学生朋友和刚出校门1-2年的朋友的邮件和QQ交流。
有人说,我写的太意识流,看了很多当年流行的技术,都被看晕了,不知道如何去选择自己适合的技术。
有人说,说的有些随意,不够严谨,有些地方有偏见,没有真正去查数据论证。
确实是,因为只是自己偶尔心得体会,就在网页上直接敲的文字 ,只是希望给大家能抛砖引玉,给大家介绍个点和方向,真正看好一项技术,扎实去钻研一项技术,必须要严谨的阅读,调试,论证。
另外,自己的偏见也来自于自己的工作专业所限。笔者从出道至到如今,15年了,一直工作在企业管理软件行业,从未跑出这个圈子。所以有的朋友问我关 于互联网创业的、网络游戏的、嵌入式开发的、互联网技术的,笔者只能根据自己多年的从业经验来个个人看法,也说不上独到与创见,可能还不对。所以,在写博 的时候,确实有些偏见。这是脱离不了的。每次写技术眼光的文章,总是从企业管理软件开发的角度上去看问题,去思考解决问题。而且自己多年从事的是C/S的 开发,所以一些论调和角度让开发B/S的朋友颇感难解。
不说这些了。这次写博,是为了弥补第一篇博文带来的缺憾。第一篇博文发表后,许多朋友希望我能整理整理,把当今流行技术能有个架构体系出来,这些大家好清晰认识。
我是做架构师出身(如果有人立志希望成为架构师,我也会根据大家的反响和需求来写一些关于架构的文章),虽然现在已经脱离架构,身在CTO位置,一 般关注产品战略发展、开发过程管理、产品Framework、IT行业发展变化、新产品新应用新盈利模式、客户行业变化、竞争者变化。但对现在的流行技术 还是在一直跟踪。虽然很多技术不能应用到产品开发中(毕竟作为公司赖以生存的产品和竞争策略,不能随意选择技术和改变技术),但是一个产品的生命周期,大 家都知道在业界一般都是5-8年一代产品(开发期、导入期、成长期、成熟期、衰落期。如果有感兴趣的朋友希望能详细了解这些,我可以另外他日起一篇博文给 大家介绍,这是一个CTO必须要具备的,有对CTO成长感兴趣的可以一看)。下一代产品用什么技术,这种技术是否成熟,什么时候该开发下一代产品体系,什 么时候相关的技术能成熟,如何选择合适的切入点,是每个CTO都要思考的。所以这么多年,一直在关注着。
那我就把我临时画的一个图分享给大家。算是对第一篇博文《2007年技术回顾》的整理。
从这张图可以看到,我把业界大家看得眼花缭乱的技术做了架构分层。每一个技术都在各自的层次上面适合发展,而且都是为了弥补本层现有产品和架构的问题。
希望做架构师的朋友注意了。你不管什么时候,不管是学习.net,WINDOWS,SQLSERVER,一定要有架构的思路。要分层,从点到线,从线到面,从面到体系来横竖切分。
而且一个产品架构,也往往是这么多层,而且在应用软件架构上,也就是:表现层、业务层、数据层。其他我们都是利用的中间件和VM和OS的现成技术, 我们本身一般无须深入。而表现层、业务层、数据层,层与层之间都有接口层,而不是硬性接口,否则就成铁板一块了。一般架构经验不足的架构师,往往容易出现 这样的毛病,层是分开了,自己沾沾自喜,以为这个架构是很有扩展性的。但具体一应用,就发现很硬,动不了。这就是缺乏接口层的原因。
但是这样表现的图,大家好像还不解渴。因为很多朋友是刚出道,选择什么才有钱途,才能好找工作。这才是大家关注的问题。想当架构师,那是遥远的梦。先把温饱问题先解决了。
我一般都是这样告诉同学或朋友们的:
如果你的学历和能力,只能进入一般的软件公司或集成公司,那么选择微软的技术体系不错。因为微软体系,网上很多学习资料,而且大量的企业应用是用微 软技术开发的,而且很多公司也用微软技术。所以公司多,你好找工作。微软的技术一般固定:C#+Asp.net+SQLSERVER+Visual Studio。
如果你的学历和能力,能进入做大型企业应用的公司,那么你就选择JAVA的技术体系。因为现在大型企业,基本都用JAVA开发。你可以从 eclipse、structs、hibernate、WebService、Tomcat、Apache、JBoss、POJO、Oracle开始学 习,然后再学习WebLogic、WebSphere、Portal技术、工作流技术。
如果你想进入互联网公司或web2.0创业公司。那么一般Php、Mysql、Apache、Ruby on Rails、Python是你的学习目标。
如果你想进入手机开发,那么Symbian和C++(Nokia,市场份额最大)、J2ME(android产品,google发布,还未正式生 产,但笔者认为很有前途)、Windows Mobile(微软,好开发,从开发思路到工具到语言,都是你所熟悉的)。这三类都会三者鼎立,谁也不会把谁干掉。至于5年之后,就不好说,至少5年内, 是手机时代,是手机无线时代,每个厂商都在争抢这一块未来最有钱途的肉。
如果你想进入目前炙手可热的网游公司。做服务器端,你得C++过硬、网络传输技术过硬、并发线程处理、了解Linux编程要和了解windows编 程一样深入。如果你想做客户端,那么图形图像处理算法你得首先过关。当然,现在很多引擎、工具、AI包、材质库、脚本减少了不少客户端编程的难度。
如果你想进入现在已经未来10年内一直很热的嵌入式编程,那么C++,而且你的单片机编程你得过关。中国是世界第一制造大国,而且这种局面在 5-10年内也很难改变。制造,过去比谁的工人成本低。但是现在材料和人工的增长,使制造压力巨大。就只能提升自己的制造能力。制造高尖端的产品,就需要 高尖端的流水线。而且,中国的电子产品也越来越强大,日本产品从最初的独霸中国,渐渐变成了中国国货的天下。在手机上、数码相机上、家电、冰箱、DVD、 空调、汽车、交通、医疗、数控,等等,很多领域需要嵌入式编程。就连咱们的嫦娥一号也是嵌入式编程的典范。华为、中兴这些通信设施也是嵌入式编程范围。
当然,你也可以剑走偏锋。过去是Notes编程,随着国产OA的兴起,Notes编程渐渐衰退。但是,中国现在大型企业都在上线ERP,而且大多用 的是Oracle或SAP的ERP。这些ERP产品,都提供了客户化定制编程开发环境,提供了完备的应用API。大型企业应用ERP,都需要定制化开发, 大量缺乏这类人才。但是,市面上这些学习资料都非常少,这是个难题。
另外,现在的外包也非常热,各地建立外包园,就跟当年建立软件园一样群起。想进入外包公司,首先日语或英语需要过关。咱们国家的外包,一般来自日本和欧美。在开发中,一般也是三种语言的主流:C++、C#、JAVA。
所以,从以上分析来看,C++、C#、JAVA,都是当今的主流。都在各方面都应用很广。你选择哪一类都会有很多的机会和空间。但如果你学了C++,又怕以后碰不到C++的工作,还要学C#,还要学JAVA,那么你终将一事无成。
不要怕,钻一门足矣。
不过,拥有了一份技术技能,你能应聘进入一家公司。但是,一家软件公司如何管理,你是否适合这种管理,你在这个团队中能扮演什么角色,你在公司中奋斗的路径是什么,我会在下一篇详细介绍软件公司管理的时候给大家讲到。
我是工作2年后就跳一次,然后加15%的薪水呢,还是有计划的发展我的IT职业呢?还是我就混一混,不好玩我就换行业呢?
你的路,你自己把握。
但,千万不要自己玩自己,不好玩。
众多技术我该学那样?(转)相关推荐
- 计算机应用技术适合女孩学吗,2021计算机应用技术女生学难吗
计算机应用技术非常适合女生学.现代社会中,大家都会有一种错觉,没有了网络,好像就失去了精神支柱,所以计算机应用技术既改变了人们的生活方式,但也成为人们失去生活能力的导火索. 计算机女生学难不难 女生学 ...
- 20岁没有学历能学计算机,20岁没学历学什么技术怎么办?学什么比较吃香?
原标题:20岁没学历学什么技术怎么办?学什么比较吃香? 很多20多岁的年轻人一走进社会,会觉得非常迷茫,不知道路该怎么走.尤其是那些没有学历,没有技术的人,不知道自己可以干什么,大好的青春就这样被自己 ...
- 这几个过时Java技术不要再学了
Java 已经发展了近20年,极其丰富的周边框架打造了一个繁荣稳固的生态圈. Java现在不仅仅是一门语言,而且还是一整个生态体系,实在是太庞大了,从诞生到现在,有无数的技术在不断的推出,也有很多技术 ...
- 业界前沿技术:从零开始学视觉Transformer-Data-Efficient Image Transformers
业界前沿技术:从零开始学视觉Transformer-Data-Efficient Image Transformers 目录 Training data-efficient image transfo ...
- [转载]J2me技术——跟我学制作Pak文件
J2me技术--跟我学制作Pak文件 序言: 由于前些时间,一些matrixer常问关于j2me中使用Pak文件的问题.本人虽学艺不深,但满怀热心的做了一番探索,现将制作Pak文件的看法和方法公布出来 ...
- 物联网入门学什么?物联网工程技术课程专业学哪些一览
物联网作为近年来的新兴产业之一,是就业的热门专业,但同时,也是企业最为缺乏的人才.不少同专业的应届生.跨专业的应届生以及转行的人士都会不约而同地把目光转向物联网.那么对于零基础来学物联网的人来说,物联 ...
- 新闻丨智链ChainNova区块链技术开放日——北京工业大学专场
2018年11月13日下午,智链ChainNova举办区块链技术开放日--北京工业大学信息学部专场.北京工业大学信息学部成立于2016年9月2日,主要研究方向包括可信计算与信息安全.物联网感知大数据技 ...
- 如何入门黑客技术,黑客技术入门该学什么?
你是否曾经也对黑客技术感兴趣呢?感觉成为黑客是一件很酷的事,那么作为新手如何入门黑客技术,黑客技术入门该学什么呢? 其实不管你想在哪个新的领域里有所收获,你需要考虑以下几个问题 首先你要想明白为什么学 ...
- 一名合格的音视频开发人员,需要掌握哪些技能呢?音视频技术该怎么学?
在线教育.音视频会议.即时通讯等产品都是基于音视频技术开发,如今越来越多的App中都大量加入了音频.视频元素,比如说注册与登陆的扫脸验证,dou音.wei视的音视频变速.变调录制.实时滤镜.人脸识别特 ...
最新文章
- 拒绝了对对象 'XXX' (数据库 'XXX',架构 'dbo')的 SELECT 权限
- 排球积分程序(三)——模型类的设计
- 一个内核网络漏洞详解|容器逃逸
- textbox回车事件中拿不到text的处理办法(wpf)
- 怎么在电脑上任意截屏_草地上打滚、墙上任意涂鸦,幼儿园让孩子“想怎么玩就怎么玩”...
- 顶岗实习周记java方向_前途虽远,扶摇可接 | 商务日语专业顶岗实习动员大会...
- 如何释放hdfs中的续租_装修中甲醛如何高效释放
- odoo pivot中去掉求和_评比算分,去掉最高分和最低分算平均,PLC怎样编程实现?...
- mysql索引操作(转)
- JavaScript常见设计模式梳理
- 校验身份证_制作全国身份证号验证及查询系统
- 基于Java的中华文化传播系统(含数据库文档)
- 阿里云Hologres外部表的创建及使用
- 笔记本电脑清灰打硅脂后,开机一直黑屏,如何破?
- 分页插件Kaminari
- 华为freelace耳机修整详录
- golang中的map
- css案例2——黑白滤镜
- 解析几何 曲线与二次曲面 直纹面(2.4)
- 看漫画学Python 第八章代码
热门文章
- stm32通用定时器用做外部脉冲计数器的例程
- 工控服务器什么作用,工控服务器是什么?服务器主板和普通主板的区别有哪些...
- python 全球降水四季空间分布图 居中经线问题
- 手淘 Android 帧率采集与监控详解
- python实现美空图片抓取机器人
- 使用 Simple Replay 实用程序简化 Amazon Redshift RA3 迁移评估
- vue/uniapp - 返回上一页并onLoad刷新数据
- Qt插件:QLibrary
- 艺术科技杂志艺术科技杂志社艺术科技编辑部2023年第7期目录查阅
- Sublime Text 3安装,使用技巧及快捷键笔记