关于技术的感悟与规划
作为一个写代码的,有时也称作码农、码工、IT民工、程序猿,其中有别人对我们的看法,认为我们是IT产业的底层,劳动的辛苦程度不必农民工兄弟们低,我们总是坐在电脑前保持一个前臂前升姿势,整天与机器代码打交道,工作已经脱离了人类的世界,每天写的也是非人类的语言;也有我们的自嘲,加班赶工期改bug,写了几年之后很发现每天像砌墙一样的码代码,另一方面却总有意外发生,我们没有推脱的余地,一切的意外情况都是我们应该的技术问题。
但是既然选择了这行就要风雨兼程,与其没办法改变不如试着接受吧。其实每个行业都不容易,每一个从业的人都很辛苦。
说说我对这个行业的感觉吧:
IT,Information Technology,信息技术,在现代社会中信息就是money呀,我们的工作就是写代码按客户的需求去处理信息。我不想去说java好还是C#更有前途,因为他们的作用就是处理数据。他们的交集大概会有百分子八十吧(个人感觉),用java做的项目百分子八十都可以用C#作,.Net的也一样。所以学好一个就可以了,需要的时候去学另外一个也是很容易的。我想说的是前端,当前行业里数据处理似乎已经进入一个增长率较低的时期,但是数据的按需呈现(也可以叫见面交互)似乎却落后与数据处理。所以前端将成为一个向阳产业。
很多搞后台开发的程序员看不起高前端的,都认为前端太简单,没什么深度。这钟观点的形成和软件的开发方式有关,我们一般都是优先考虑后台代码的架构,前端作为后台代码的延伸或是附属,再因为前端入门较为容易,东西比较零碎人们一直没有给前端足够的重视。
在软件发展今天局势来看这种方式应该被打破了。列举几点我认为的原因:
1、 软件不是为开发而开发
既然是为了使用而开发,那就要以客户为中心。而用户直接使用的是软件界面,所以在软件框架确定的情况下需要前端驱动后端,因为用户需求驱动软件功能。
2、 社会化协作需要在前端融合
一个公司需要不同的软件,但这些软件不一定是来自同一家公司,也不一定是用同一种语言编写,所以在进行数据相互调用的时候最佳的方式就是前端按需调用个系统的资源,将软件成为资源的源头,按需定制。
3、 将来的软件js的代码行数可能要超过后台代码
随着云服务的兴起,在将来构建软件的时候,主要的数据收集处理已经有成熟的云服务,我们只需前端程序按需调取按需呈现。现在公司做的一套文档管理软件就是这个特征,用户编辑模板,选择数据源,再生成文档。用户选择的数据源都是我们从其他系统中调用的,有股票的,有人事的,有产品的,有业绩的,用户可以方便高效的生成文档。销售人员在出门前甚至在车上都可以生成演示文档,拿最新的数据给客户看,再加上我们很酷的特效处理,那就成为了销售人员的利器了。
4、 多元化的用户
一个软件的成功可以复制到其他平台上。后台的逻辑都是一样的,我们可以在windows上使用,也可以跑在ipad上甚至集成在其他软件里。
在说几点前端学习注意吧:
当需要以前段作为软件框架的支撑时那就用到设计模式之类的东西了。而且在处理的时候又有很多特别的地方。比如js的继承管理模式,闭包等概念。前端框架还比较少,在构建前端框架上后端的架构师良好的学习材料,但是二者之间却又有很多不同,取其精华去其糟粕是学习的主要方式。
接下来要重新温习一下C#的基础知识了,js基本功也需要增强,设计模式在这个阶段需要进入研究范围了。