美文网首页H5IT提升类
学习前端我推荐这5本书

学习前端我推荐这5本书

作者: 劳卜 | 来源:发表于2016-11-16 09:15 被阅读27630次

    前言

    作为一名前端开发人员,如果你告诉我你没有看过任何关于前端的书籍,那么我完全可以认为你不是一名合格的前端开发工程师。为什么我要以“看书”来衡量合格前端的标准?因为前端作为一个特殊的极具变化与开拓性的工种,没有较强的自我学习与思考能力,很难在这激烈又纷杂的环境里存活而不被淘汰,而“看书”则是最基本的自我提升与补充知识的途径。

    书中自有黄金屋。不管你是想涉猎前端抑或进行系统性的学习,我都推荐大家阅读前端的相关书籍。那么对于想入门或者扎实前端基础的童鞋来说我们应该挑选哪几本适合我们的书籍呢?下面我就推荐5本带我踏入前端并产生较大帮助的图书供大家参考。

    书单

    1. Web前端开发最佳实践

    封面

    这本书是前端开发领域的经典之作,是一本扎实前端基本功,规范我们前端代码的实践性书籍。本书主要讲解了HTML、CSS、Javascript以及移动端开发的最佳实践方案,能够对缺乏良好指导的开发者产生很大的帮助。通过阅读本书我们可以掌握如何编写高可读性、高维护性、高性能的HTML、CSS以及Javascript。比如:

    <!-- 如果class名称仅作为Javascript调用的“钩子”,可在名称中添加“js”前缀 -->
    <ul id="js_mylist">
        <li class="menu js-active">Web前端开发最佳实践</li>
        <li class="menu">编写可维护的Javascript</li>
        <li class="menu">锋利的jQuery</li>
        <li class="menu">图解HTTP</li>
        <li class="menu">Javascript设计模式与开发实践</li>
    </ul>
    
    <!-- 为了做到禁用脚本时页面自动跳转,百度首页中添加了如下代码 -->
    <noscript>
        <meta http-equiv=refresh content="0; url=http://www.baidu.com/baidu.html?from=noscript">
    </noscript>
    

    2. 编写可维护的Javascript

    封面

    本书是我极力推荐的一本帮助大家改善Javascript编程风格与编码规范的书籍。那么为什么我们要如此注重JS的编码规范?引用高德纳的一句话就是:程序是写给人读的,只是偶尔让计算机执行一下。在我们的日常开发中,往往维护代码的时间占据着很大比重, 既然这样那么为什么我们不在编写代码的时候就重视它呢?以下是书中的两个例子:

    // 二元运算符前后必须使用一个空格来保持表达式的整洁
    // 好的写法,使用空格
    for (i = 0; i < count; i++) {
        process(i);
    }
    
    // 不好的写法,丢失了空格
    for (i=0; i<count; i++) {
        process(i);
    }
    
    // 函数的第一个单词名称应该是动词(而不是名词),以避免与变量混淆。
    // 好的写法,第一个单词是动词
    function doSomething() {
        // 代码
    }
    
    // 不好的写法,第一个单词是名词
    function car() {
        // 代码
    }
    

    3. 锋利的jQuery

    封面

    这本书应该算是学习jQuery必读的一本书,也是讲解jQuery的经典之作。在正式学习这本书之前,你有必要先了解下原生Javascript,才能领悟jQuery其“write less, do more”的理念。本书深入浅出的介绍了jQuery的代码风格、选择器、事件及动画等,结合丰富的实例让读者能够快速理解与应用。比如:

    var $ul = $('ul').prev(); // 获取紧邻<ul>元素前的同辈元素
    var $p = $('p').siblings(); // 获取<p>元素的同辈元素
    
    $('input').trigger('focus'); // 触发输入框focus事件并获取焦点
    $('input').triggerHandler('focus'); // 触发输入框focus事件但不会获取焦点
    

    4. 图解HTTP

    封面

    作为和浏览器打交道的前端开发者,我们理应学习关于页面从请求开始到呈现的过程和实现方式,而这本书便是快速了解HTTP请求背后原理的不二之选。本书结合漫画图片的形式讲解HTTP协议、工作机制、报文及状态码等,图文并茂,通俗易懂。示例:

    // 请求首部字段
    Host: www.hackr.jp  // Host会告知服务器,请求资源所处的互联网主机名与端口号
    Range: bytes=5001-10000 // 告知服务器资源的指定范围
    
    // 响应首部字段
    Age: 600 // 告知客户端,源服务器在多久前创建了响应
    Retry-After: 120 // 告知客户端应该在多久之后再次发送请求
    

    5. Javascript设计模式与开发实践

    封面

    之所以把这本书放在最后是因为阅读这本书需要一定的Javascript基础与功底,当我们掌握了JS的语法与编码规范后再来翻阅此书,你会获得别样的收获。那么为什么我们要研究设计模式?使用设计模式能够给我们解决怎样的问题?

    我想答案和小说家为什么很少从开始设计剧情,足球教练为什么也很少从头开始发明战术一样,他们总是沿袭了一些已经存在的模式来解决问题。下面是书中的两种模式:

    // 单例模式: 保证一个类仅有一个实例,并提供一个全局的访问点
    var getSingle = function(fn) {
        var result;
        return function() {
            return result || (result = fn.apply(this, arguments));
        }
    };
    
    // 策略模式:定义一系列算法,把它们一个个封装起来,并且使它们可以相互替换
    var strategies = {
        "S": function(salary) {
            return salary * 4;
        },
        "A": function(salary) {
            return salary * 3;
        }
    };
    
    var calculateBonus = function(level, salary) {
        return strategies[level](salary);
    };
    

    结语

    为什么那些工作没几年的人很快就遇到了自己的技术瓶颈? 为什么那些工作了5年以上的人还写着一手难以维护的代码?我想在以上5本书中便可找到答案。

    正所谓纸上得来终觉浅,绝知此事要躬行。除了从书中汲取我们所需的知识外,我们还需要将理论化为实践,亲自动手敲击键盘,从而加深并巩固书中的知识点,才能羽化而登仙。

    相关文章

      网友评论

      • silence雨:JavaScript红包书被丢了吗
      • 67c47e92f6df:这几本书看起来好像很一般
      • b810326c62c6:《JavaScript高级程序设计(第3版)》了解一下
      • _Lsuyan_:竟然没有红宝石?
      • 若川i:推荐了这几本书竟然473赞,作者是怎么做到的~
      • 2dadd59cfdb9:所以18年了现在,书里的一些知识点现在还适用不,因为考虑想打点基础
      • LetingGril:我有大量各种书籍资料:sunglasses:
      • 劳卜:mark一下
      • Link913:大佬,我是个iOS开发那么该看哪几本书入门呢?看评论讲你这些貌似是提高水平的?
      • 8324a7eda376:不错不错,收藏了。

        推荐下,源码圈 300 胖友的书单整理:http://t.cn/R0Uflld


        12a033ef755a:写的不错,谢谢博主;已收藏~
      • dean317317:如果是零基础入门的话,headfirst系列的html-css应该作为第一本书,
      • 1d6c7e27b98e:加油↖(^ω^)↗
      • 稀饭52:能不能发我扣扣,1214215394,谢谢了
      • 稀饭52:哥,有没有文件可以下载啊,谢谢谢谢谢谢
      • pws019:第一本书电子版只有一部分。你有完整版的pdf吗
      • 亚历山大猫:难道作者认为CSS不值得花心思深入么? :smiley:
        劳卜:@二拾三年 嗯,感谢推荐
        亚历山大猫:@劳卜 哈哈,骚瑞!我觉要加本《CSS权威指南》才行 :scream:
        劳卜:@二拾三年 不能这样理解🙄
      • zhazhami:觉得MDN最好了
      • KunMinX:在天朝,书不敢乱看,正如东西不敢乱吃。谢谢作者介绍的这几本书
        劳卜:@简洁笔记 ……这不是真的的:scream:
        KunMinX: @劳卜 完蛋了,刚在小区楼下吃了一盆福尔马林泡过的酸菜鱼
        劳卜:@简洁笔记 不客气的
      • 前端开发博客:这些书你都看过了吗?
        劳卜:当然
      • Kenny_W_Zhang:作为菜鸟,我再补充2本关于js的
        《高性能javascript》
        《javascript语言精粹》
        另外,貌似es6也需要学习了,语法改变挺大的。
      • a1b8a30bcf2c:谢谢推荐,前端爬门槛中……
      • Colin_狂奔的蚂蚁:图解http看过,挺不错的一本书
      • Mr周小瑜:收藏了
      • 840a80d9a3bb:尽然没有犀牛书?难以置信
        劳卜:@南方草本 正因犀牛书广为人知,所以这里就不推荐了
      • 遛遛食:犀牛那本怎么样?
        遛遛食:好的谢谢
        劳卜:@遛遛食 内容比较全,讲解比较细致,覆盖面广,很厚,也很难啃。
      • skills:值得收藏
      • 4108629d6c4e:谢谢推荐,想入门看看呢👍
        劳卜:@Y_D_N_ 不客气的,记得按顺序看
      • b76c348a02bd:跟专业契合
        劳卜:@随遇而安JAT 嗯呢
      • 9ba0de71c3e2:有没有Django入门推荐
        9ba0de71c3e2:@iCoreMan 3Q
        iCoreMan:@卡拉瓦乔 The Django Book
        劳卜:@卡拉瓦乔 这个你可以百度一下
      • 心伊始晨未央:对,是提升比较合适。入门还是以JavaScript高级程序设计为主,比较基础但是覆盖面广一点。CSS语言精粹来入门也不错
        劳卜:@心伊始晨未央 看了七八遍的肯定是大神,哈哈
        心伊始晨未央:是,没看小红书前,JS那本犀牛书我感觉不太懂,小红书前后看了七八遍,差不多快背下来才比较顺利能看懂犀牛书,犀牛书当参考书不错
        劳卜:@心伊始晨未央 是的,犀牛书和小红书覆盖面比较广,就是不好啃了点。
      • 65767b0a1612:楼主,能不能推荐几本前端初学者该看的书
        劳卜:@夏蝉鸣泣 不客气的~
        65767b0a1612:恩恩 ,好的,知道了,多谢楼主
        劳卜:@夏蝉鸣泣 评论中有哦
      • 万般自然:好干货😄😄
      • 流河:多模仿少走弯路 :smirk:
        劳卜:@流河 说得好:smirk:
      • JenniferYe:总觉得应该标题为前端提升推荐的5本书,233333。
        劳卜:@叶伊惠 是嘛,比较懒,不想敲键盘了,就这样了2333

      本文标题:学习前端我推荐这5本书

      本文链接:https://www.haomeiwen.com/subject/wlwlpttx.html