算法+数据结构=程序设计。我上大学的时候流行的说法。后来有一位从企业转行作老师的愤青老师很是激动的告诉咱们。算法+数据结构+设计模式=程序设计,他大声喊道,设计模式才是王道,就好像一个智者在告诉咱们这些土逼什么是真理。也是在那个年代,我见到了一部iphone 3S。一部差异于其它手机的高级货,那时候我甚至觉得那不是个手机,多是个PSP,但是有打电话的功能。后来我据说了一个叫Android的东西。听说之后会火。php
但是我并无因为我懂点Java就转投了Android,因为你在没有见过智能手机的时候怎么能懂Android能干什么,这也说明好奇心不足是不行的。java
后来我大学毕业。发现很是多公司要求是会Spring。Struts,Hibernate。才明确Java要懂框架。如今我离开web开发届3年之后。再回到作互联网懂企业。新的技术,愈来愈多,SSH已经不算什么。咱们以往知道web开发的神器有三个,jsp。asp,php。好像没有别的选择,知道jsp从servlet而来,如今,有人用python作后台。有人用ruby。甚至连javaScript这样的我曾经以为仅仅是用来验证表单的语言也可以作后台,另外一些我根本不知道的语言。javaScript,PHP。python都有很是多框架,很是多玩法。那么咱们还要java干什么?python
这些都很是土,移动互联网才是现在都主流。有IOS。也有Android,然而咱们不得不去想,既然所有程序都可以执行在浏览器上面,咱们要IOS和Android都差异干毛?HTML5可以作到一切,javaScript可以作到后台。很是不幸的是javaScript也包括在HTML5里面。也许有一天这种事情就发生了:有一部HTML5手机。上面的所有APP都是基于HTML5写的,Android也许结束了他的使命,像WML同样。HTML5的编码方式绝对照起Objective C和Android都更简单,但是也不至于每个人都能写,每个人都可以成为程序猿。web
假设咱们再想一想咱们平时编码都方式,我主要从事Java程序开发,我发现都现象是差点儿同事都在用面向过程都方式在使用这门纯面向对象都语言。为何呢?是因为他们能力不足吗?是的。也不是的,他们之因此没有这样的能力是因为不需要有。算法
因为大多数程序猿所作的是实现业务,框架的部分已经有人实现了。很是多专家和科学家在研究怎样让你的程序可读性更强,更易开发,更轻量级。更具扩展性,更。。。你所要作的仅仅是在一些方法里面填值,而且这件事情将愈来愈简单。为何?因为程序设计语言也在向轻量级方向发展。编程
终将有那么一天,所有人都是程序猿。你打开本身的手机,打开一个叫“编程”的APP。在里面写上HTML5,或者更简单的语言。甚至汉语,仅仅要符合逻辑便可。就是这么简单,因为复杂的事情都被框架作了,“编程”APP甚至可以提示你怎么写。设计模式