WEB开发还有前途吗?

大概在20年前,上网都还要拨号的时候,有一款软件非常流行:

WEB开发还有前途吗?

网络蚂蚁,类似于今天的迅雷,不过不是用来下片的,而是下载各种软件。

那时候的电脑,就和今天的手机差不多,干任何事情都必须首先装一个软件(APP)。所以最流行的编程语言是VB和C++,都是用来写windows桌面程序的。

大概10年前,我正式入行做程序员。“网上冲浪”的说法已经不知道多out了,WEB2.0的大潮扑面而来,编程届流行的是PHP,JSP和ASP,最后这个P是什么鬼?Page:网站页面。从那时开始,和服务器端关联的程序就分成了两类:B/S架构和C/S架构。B就是Browser(浏览器),C就是Client(客户端)。

时至今日,没有任何悬念,B/S势如破竹,摧枯拉朽般地攻城略地,到今天,PC端的C/S开发已经极度萎缩坍塌,除了一些沉淀下来的常用的软件(如:QQ),绝大部分都已经不见踪影。

今天的APP,其实就是昨天的C/S软件;那明天的APP,会不会是今天的C/S软件?

这事呢,其实谁都说不准。我只能说一说,为什么之前的C/S软件会败下阵来:

1、C/S软件需要下载安装,增加了用户上手的难度,不如B/S架构打开浏览器输入网址就用方便。在以前(现在都还有),一些项目开发完成之后,还需要一个“部署”团队,把client端的软件在用户(尤其是医院/政府机关这类大爷用户)的电脑上一台一台地安装部署——甚至还要常驻一两个人在现场,因为接着还可能有各种日常问题,你的软件是依赖于操作系统环境运行的,而操作系统环境是随时变化的,某天用户随意安装更换了一个别的软件硬件,可能你的这个软件就跑不起来了。

2、跨平台(操作系统)的问题。就像今天我们下载APP要区分是Android还是iOS一样,对用户而言只是一个选择的问题,但对于开发人员来说,就是一个n倍工作量的问题。是n倍而不是2倍,因为你不仅要考虑Android和iOS的区别,你还要考虑Android 4.0和Android 5.0和Android 6.0的区别……现在明白为什么windows能一统江湖了吧?大家都忒烦忒烦忒烦写一个程序,要兼容多个平台啊!

3、软件升级的问题。一方面作为用户来说(至少我这种用户吧),是很烦动不动就一个升级提示的;另一方面更大的问题是由于用户可以使用不同的版本,开发团队必须考虑不同版本之间的兼容性,这又是一个复杂得不能再复杂的问题,工作量一下子m倍以上了。所以,你看有时候一些“不负责任”的软件就直接提示“你目前使用的版本太低,该功能已不再支持,请下载最新版本”之类的——不是对用户不负责,实在是扛不住了啊,亲~~


WEB开发还有前途吗?


B/S架构的蓬勃发展,滋长了Google的无限野心,Chrome应运而生,其初衷是要彻底的取代操作系统,让所有的应用都能跑在浏览器Chrome上啊!想想都让人害怕,啧啧。当然现在来看,Google太乐观了一些:主要是很多极度耗费资源的游戏/专业软件没法脱离操作系统的支持。

好,既然在PC端,B/S架构大获全胜,为什么在移动端,我们看到的都是APP,没有几个人用手机上的浏览器呢?

WEB开发还有前途吗?

+++++++++++++++

最后很煞风景的加个推广,两个QQ群:

飞哥办了一个IT培训班,http://ASP.NET全栈开发,线上全程直播,可以免费收看;线下拎包入住,按周收费。如果你有兴趣了解一下,可以加QQ群:729600626(一起帮·源栈·有意向)另外一个QQ群:716207562(一起帮·老码农-4),也不说啥交流啦,就吹牛灌水,老码农小菜鸟打发时间聊聊天,O(∩_∩)O~


分享到:


相關文章: