转自: http://www.oschina.net/news/36972/programmer-write-frond-end-code

你可以认为我是一个极端的人,就像有许多人专注于自己的领域而不屑于其它“肤浅”的工作范畴一样。比如我见过不少认为做portal没有技术含量的 判定,做工程都是充满苦逼行为的言论,最近则还有那些“大数据”崇拜者的疯狂吐槽……我的极端则有些不同,我的极端在于我认为绝大多数优秀的程序员,都要 尝试多方面的事情。并不只有底层开发或者机器学习充满睿智的挑战,我做了几年网站,很难说这就是我最初的兴趣,虽然也在接触和学习其他的领域,但是依然觉 得,做网站仍旧充满挑战,互联网真是一个奇葩充斥的地方。

前端开发,则是这“多方面的事情”中的一个重要方面。潜心尝试过的人兴许会有这样的体会,这是一片崭新的世界,无论是理念、技巧,都有一种新鲜的感觉。如果你还没有尝试过,相信我,它会丰富你的视野,至少在设计和编码上,你会有崭新的认识。

JavaScript代码是存在诸多天生缺陷的,你可以找得到太多它的替代品和改进品。另一方面,它确实给了程序员很少的限制——如果你写过perl代码,你大概也深有体会,什么样的代码是自由的代码,什么样的代码是充满诗意的代码。 与之相对的大概是语法严格的Java代码,就像老实、规矩的孩子,他不会带给你多少破坏性,但是也没法带给你丰盈的代码美感。但是JavaScript有 N多类库,有足够活跃的语法自由度,有eval和prototype,还有那些动态语言的特性,你可以写出许多飘逸的代码。

另一方面,代码的自由一定带来代码层面规划和解耦的艺术。如果代码还处在漫山遍野全局var和全局function的温饱阶段,那么肯定是无法感受 到这一点的,而且在这个阶段也根本称不上会写JavaScript代码。有许多人说前端开发简单,如果只是把它理解成为“好上手”,或者说alert一个 字符串,改变一个div的颜色,那它还真是太好学了。再加上CSS的方便和简陋性让它连编程语言都算不上,而HTML又是容错性非常强的标记语言,所以你 可以很容易写出能看到效果的界面来。

写一个UI稍微复杂一点的产品代码,就会无比地感受到规划和解耦的力量。无论是HTML、CSS还是JavaScript,变量或者对象都是极易被 污染的,“模块化”显得举足轻重。在Java的世界里,你的武器很少,包、类、加载器又在你无意识的时候把这些繁琐的模块化的工作轻易化简完成了。但是写 前端代码的时候你发现需要自己去考虑了,比如页面的分块布局、CSS的继承树、JavaScript的绑定和匿名函数,还有那么多开源的库来帮助完成模块 化。

前端开发还可以帮助你成为最懂产品UI的程序员。程序员容易陷入使用各种技术去纠结实现的泥潭,但是却忽略了清晰、合理的用户需求。你写的界面,是 要去帮助用户解决问题的,无论是布局设计、配色还是行为回馈,都会始终帮助你专注于用户的实际操作。会写前端代码,可以帮助你容易地和用户沟通,快速地做 出界面原型,这比多少页胶片都强。少招一点美工和UI设计师,试着自己去设计界面,自己去切图和写样式,这些事情并没有那么困难,更何况还有 Bootstrap呢。:)

前端开发的过程中,你还可以感受到最快速的成就感和回馈。只需要一个浏览器,一个代码高亮的文本编辑器,好吧,也许你还需要一点帮助调试的小工具。 这就足够了,不用纠结在编译执行的过程,等待着应用的重启,不住地咒骂环境部署的繁琐。现在,你可以专注到你的代码设计和编写上。

前端开发应当成为工程师工具包中重要的一项工具。中国的程序员普遍“engineering”技巧丰富,学术领域显得差一些,但这并不代表工程技巧 缺乏价值。举例来说,你可以做出任何有意思、有价值的东西,如果你会写前端代码,可以自己做网站,你就可以不需要别人帮助,自己完成整个端到端的过程,不 管它是指你上线一个产品还是展示你的伟大成果。你真的可以独当一面。这也契合我所说的,程序员要做各方面的事情。

最后提醒一句,初涉前端开发,学习的材料很重要。就像VB会害了那些程序员新手一样(而且这一害就会影响很多年),前端的代码实在是太容易写烂掉了,需要筛选。

PS:看一看这个编程语言转换矩阵,就知道JavaScript有多大威力(图片来自微博@程序员的那些事):

转载于:https://www.cnblogs.com/meetrice/archive/2013/01/22/2871592.html

转程序员,都去写一写前端代码吧相关推荐

  1. 35+的大龄程序员都去哪里了?

    作者 | 年素清 来源 | 码农故事汇(ID:sunianqingshi) 对于互联网人,尤其是程序员来说,35岁是个尴尬而危险的年纪,业内时常传出清退大龄程序员的消息.那么,那些35岁以上的程序员都 ...

  2. 那些35岁的程序员都去哪了

    阅读本文大概需要11分钟. 大家好,我是findyi,前段时间写过一篇关于大龄程序员的文章:那些40岁的程序员都去哪了,引发了大家的思考和讨论,不少读者私聊问:除了这些出路,还有没有其他可能? 最近想 ...

  3. 工作10以上老程序员都去哪了?作为新时代的程序员我们该何去何从

    在纽约,PyGotham每年召开之际,都会有超过600名程序员聚集在一起讨论工作. 为了让会议更加多元化,组织者尽量邀请一些女性程序员以及各种肤色的程序员. 那么,老程序员都去哪了?他们去了大学教书, ...

  4. 大龄程序员都去哪了?分享我身边的几个故事

    作者丨水影月 来源丨大飞码字(BigFly1024) 程序员的35岁,似乎是一个沉重的话题.在国内,一般程序员的寿命在20-35岁之间.超过了35岁的程序员,如果继续从事开发工作,在国内相对大多数程序 ...

  5. 老程序员都去哪儿了?

    摆在老程序员们面前有三条路,一是转行,二是继续钻研成为技术大牛,三是转型为管理人员. 我最近采访了十五位30岁以上的老程序员们,在此我想发表下我的观点. 网络上总有这类观点-- 「如果所有的技术都想着 ...

  6. 老程序员都去哪儿了?国内的大龄程序员都去哪了

    摆在老程序员们面前有三条路,一是转行,二是继续钻研成为技术大牛,三是转型为管理人员. 我最近采访了十五位30岁以上的老程序员们,在此我想发表下我的观点. 网络上总有这类观点-- 「如果所有的技术都想着 ...

  7. 那些40岁左右的程序员都去哪了?

    公众号更名后第一篇文章,没有美女配图. 这些天和几位30岁左右的朋友聊天,都说自己内心很焦虑.我就纳闷了,不是35岁才焦虑么?怎么提前了?细聊以后总结出来大体的原因是: 1.一线城市买了房子后还贷压力 ...

  8. 佛祖保佑代码无bug图片_程序员都有哪些奇趣的代码注释,细思极恐

    在很多不熟悉程序员的群体中,可能都认为程序员是沉闷一次的代表,但其实不然,很多程序员都是非常幽默有趣且都有一颗非常闷骚的心.这尤其体现在他们呢好玩的代码注释上面,我找了一写奇趣的代码注释类型,小伙伴们 ...

  9. 中国到底有多少个 NET 程序员 都在哪个城市写代码

    中国到底多少个.NET 程序员,对于这个问题,似乎没有一个准确的答案,而且最近很多使用.NET 开发技术的老板在抱怨找不到.NET 开发人员,所以我想基于我的公众号粉丝数据给大家分享下中国的.NET程 ...

  10. 年过35岁的程序员都去哪了?一张图道尽老程序员们的花样出路

    有人来,有人去. 程序员何其多,想知道他们都去哪了吗? 对于程序员的工作出路,小编有以下几点建议: 20-27岁:技术积累阶段 假设本科22岁毕业,那么工作的前5年对你来说是打基础的阶段.在这5年时间 ...

最新文章

  1. ApplicationId 与 PackageName 的区别
  2. 提高SQLite每秒INSERT的性能?
  3. 二叉树总结—建树和4种遍历方式(递归非递归)
  4. nfs:client mount成功,但是进入目录时出现Permission denied
  5. 【开源项目】特斯拉+树莓派实现车牌识别检测系统
  6. SRTP参数及数据包处理过程
  7. LWIP之UDP协议
  8. 怎么做一个定时消息提醒_如何用Nodejs编写一个定时消息提醒应用?
  9. 阿里云服务器和mysql的原理_mysql 数据库同步原理
  10. 一加8系列再次开售 全渠道销售额破亿
  11. mvc% html.%,MVC的html.doc
  12. tiny_mce的本地图片上传插件
  13. 实验7 OpenGL光照
  14. hgoi#20190517
  15. RS232,RS485简介,以及DB9接口上引脚对应关系
  16. 面试官嘲笑我,这你都不会?
  17. Elasticsearch 索引
  18. Python 云标签——玩点浪漫!
  19. java 米转换公里_java中把米换算成公里的代码是什么?
  20. Tarjan求强连通分量

热门文章

  1. 上传图片配置控制大小_esp32-cam拍照上传云平台,http协议传输
  2. C语言通路寻找,用C语言解决迷宫问题设计与寻找通路问题.pdf
  3. linux判断是否能上网_母亲提醒女儿:判断一个男人是否值得嫁,从这两点就能轻易看出...
  4. 高版本linux安装gamit,求助(Ubuntu14.1上安装GAMIT10.5过程中错误提示如下)
  5. 处理 react_【学习教程】React 中阻止事件冒泡的问题
  6. endnote能自动翻译吗_人工智能能翻译古文吗?跟小编点评专业翻译PK人工智能翻译...
  7. Fins TCP协议
  8. ffmpeg + opencv 实现视频播放器(没有声音)
  9. 深度学习(4)基础4 -- 神经网络架构激活函数过拟合处理
  10. 数据结构与算法(1)高斯算法