`

程序猿都应该去写一写前端代码

阅读更多

你可以认为我是一个极端的人,就像有许多人专注于自己的领域而不屑于其它“肤浅”的工作范畴一样。比如我见过不少认为做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会害了那些程序员新手一样(而且这一害就会影响很多年),前端的代码实在是太容易写烂掉了,需要筛选。

                                                                                                         出自《四火的唠叨》

分享到:
评论

相关推荐

    程序猿的爱情 love.rar

    在这个名为"love.rar"的压缩包里,我们可以想象它可能包含了一些关于程序猿如何在编程世界之外,用他们独特的方式去表达情感的故事、代码项目或者是一些浪漫的数字艺术。 爱情,对于程序猿来说,可能并不只是鲜花和...

    js实现手动旋转相册,浪漫表白源代码,程序猿必看!

    js实现手动旋转相册,浪漫表白源代码,程序猿必看! js实现手动旋转相册,浪漫表白源代码,程序猿必看! js实现手动旋转相册,浪漫表白源代码,程序猿必看! js实现手动旋转相册,浪漫表白源代码,程序猿必看! js...

    一只程序猿告白的网页(转)

    【标题】:“一只程序猿告白的网页(转)”所蕴含的知识点 在这个标题中,我们可以看到一个程序员,通常被称为“程序猿”,利用自己的技术技能制作了一个特别的告白网页。这涉及到以下IT知识: 1. **网页开发**:...

    黑马程序猿2018前端就业办视频.

    黑马程序猿2018前端就业办视频., 百度云盘链接 代码视频齐全

    程序猿用代码追喜欢的小姐姐.zip

    本资源“程序猿用代码追喜欢的小姐姐.zip”就是这样一个创新的应用,旨在帮助程序员们利用自己的技能来创造个性化的表白方式。在这个压缩包中,包含了一个名为“表白模板”的文件,它提供了一个使用JavaScript、CSS...

    最新版废品回收小程序前端后端源代码亲测可用

    "最新版废品回收小程序前端后端源代码亲测可用" 这个标题揭示了几个关键信息。首先,这是一个关于废品回收的小程序项目,意味着它涉及到了环保与资源再利用的领域。其次,"最新版"表示这是该软件的更新迭代版本,...

    2016年 年度个人总结程序猿

    ### 2016年度个人总结程序猿的关键知识点 #### 一、技术层面的收获 1. **需求分析** - **重要性认知**:在项目执行过程中,深刻认识到不可低估任何项目的规模,即便是看似小型的项目也需投入充分的关注与细致的...

    程序猿的告白

    《程序猿的告白》这个主题,显然与程序员的生活、情感表达以及可能涉及的技术工具有关。在这个场景中,"程序猿"是程序员的自嘲式昵称,它揭示了这个群体在工作之余,也有着自己的情感世界。下面将详细讨论相关知识点...

    表白代码收藏馆~谁说程序猿不懂浪漫.zip

    "表白代码收藏馆~谁说程序猿不懂浪漫.zip" 这个压缩包文件就充分展示了这一点。作为一个专业的IT大师,我将详细解析这个主题,尤其是与JavaScript相关的部分。 首先,让我们了解一下JavaScript。JavaScript是一种...

    《前端代码是怎样智能生成的》

    《前端代码是怎样智能生成的》一书揭示了前端开发领域的一个新兴趋势——前端智能化,它融合了AI技术,为开发者提供了更加高效、精准的代码生成工具。在这个领域,阿里巴巴经济体前端委员会走在了前列,他们致力于...

    最懂中国程序猿的开源HTML5 跨屏前端框架Amaze UI

    2. **响应式设计**:作为一款现代前端框架,Amaze UI 使用了响应式布局,使得页面可以根据用户设备的屏幕大小自动调整布局,从而实现“一次编写,到处运行”的目标。在压缩包中,`non-responsive.html`是一个非响应...

    IT程序猿攻城狮学习资料汇总下载

    从文件中提到的视频教程来看,学习资料应该包括了对最新前端技术如Vue.js、React.js等框架的教程,以及对CSS3和JavaScript的深入学习。 ### 5. 后端开发 后端开发资料可能涉及到Java、Spring、Hibernate等技术,...

    程序猿的表白神器

    【程序猿的表白神器】是一种巧妙地利用编程技术来表达情感的方式,特别是在浪漫的情境下,为程序员提供了一种独特而有趣的方式来传达爱意。在这个项目中,主要使用了JavaScript库jQuery来创建吸引人的动画效果,使...

    程序猿心形表白源码

    "程序猿心形表白源码"就是一个很好的例子,它利用JavaScript(js)这一强大的前端编程语言,为程序员们提供了制作浪漫表白页面的工具。接下来,我们将深入探讨这个主题,了解如何通过JavaScript实现这种创意的表达。...

    动画爱心 程序猿的浪漫

    "动画爱心 程序猿的浪漫"这个主题揭示了一个程序员通过代码创造的特别方式来表达情感,尤其是在情人节或者其他特殊场合,他们可能会用编程技能来制作一份独特的礼物——一个动态的爱心动画。这种做法不仅展现了技术...

    程序猿的婚礼邀请函.zip

    在这个名为"程序猿的婚礼邀请函.zip"的压缩包中,我们可以推测这是一个程序员用Vue.js技术为自己的婚礼创建的电子邀请函。这种创新的方式不仅体现了程序员的个性,也展示了Vue.js在实际项目中的应用。 Vue.js的核心...

    程序猿送给女友的的3d相册.zip

    标题中的“程序猿送给女友的3d相册”暗示了这是一个程序员为他的女朋友制作的特殊礼物,一个3D效果的在线相册。这个项目可能是利用编程技术和Web开发技能实现的,旨在提供一种新颖的方式来展示照片,增加互动性和...

    程序猿接单宝典

    《程序猿接单宝典》是一本专门为程序员提供接单指南的书籍,作者凭借其在外包行业积累的十年经验,分享了从寻找项目到成功收款的全过程策略。这本书旨在帮助程序员们更好地理解并掌握接单流程,从而实现自我价值的...

    基于HTML5的程序猿表白专用动画.zip

    这个"基于HTML5的程序猿表白专用动画.zip"压缩包文件显然包含了一个特别设计的HTML5动画,旨在帮助程序员们在情人节这一天向他们的心上人表达情感。 HTML5的核心优势在于其对多媒体的支持,例如音频、视频、图像和...

    程序猿接单宝典.zip

    《程序猿接单宝典》是一份全面指导程序员在自由职业市场中接单、管理和完成项目的资源合集。这份PDF文档旨在帮助独立开发者或者想要拓宽收入来源的程序员们更好地理解和实践接单流程,从而实现高效的工作与收益。...

Global site tag (gtag.js) - Google Analytics