01 January 2023
号外号外:我的新书《现代JavaScript库开发:原理、技术与实战》出版啦!!!快点我查看
号外号外:一组小而美的JavaScript迷你库!!!快点我查看
号外号外:猿辅导招聘前端,后端,客户端啦!地点:北京!!!快点我查看

2023年1月,我和侯策老师共同打磨的书籍《现代JavaScript库开发:原理、技术与实战》终于正式出版了!

在书籍定稿之际,我把底稿寄给了克军老师,感谢克军老师在百忙之中抽时间阅读了底稿,并为我写了推荐序,一下是推荐序的内容。

克军老师推荐序

我们普遍觉得,在团队里负责开发和维护基础库的工程师都是“高手”。毕竟,能位于团队上游的人总会有种莫名的“优越感”。

编写一个JavaScript库很难吗?不就是先把一段通用的代码抽离出来,再按照某种范式封装一下嘛!其实,要想真正回答这个问题,你可能需要先想想以下问题:

  • 为什么有些人写的库大受欢迎,而有些人写的库却没人使用?
  • 你为什么愿意使用某个库,你到底看重它什么?
  • 流行的库有什么共同点?
  • 所谓写“好”一个库,到底要符合什么条件?
  • 你有过“踩坑”经历吗,当时是什么心情?
  • 别人为什么愿意为你的项目贡献代码?
  • 怎么让自己写的库日后不成为“债”?

如果你只是在自己的项目中抽离一些可复用的代码并将其封装成一个库,这个库可能只适用于比较单一的应用场景。但如果你希望更多的人也能用到这个库,那就要好好设计一番了。

你要考虑稳定性、可维护性、安全性,编写一些攻击性测试用例,还要注重代码的可读性、易理解性。如果想扩大影响力,希望更多人参与项目维护,你必须重视库的架构设计、接囗设计、文档撰写、注释情况、代码风格等。不仅如此,你所用的工具也必须是当前最主流、最酷的。你要为库的使用者提供开发、调试、测试、构建和提交等多方面的顺滑体验。如果你能把上述一切都做得很到位,那么别人一定能从中学到很多东西,也就愿意为你的项目贡献代码了。团队内部的技术共建也是类似的,并非为了彰显什么,而是为了技术交流和价值共创。

近些年,我看到越来越多的国人投身开源社区,成为一些知名项目的维护者和贡献者,也产生了一批优秀的国产开源项目。我相信未来的前端领域中会涌现出更多像Vue.js、Ant Design这样具有国际影响力的库和框架。

通过代码与工程师交流能加速自身成长,进而创造个人价值。作为一名开发者,不能只是开源库的使用者,要成为贡献者,甚至创造者。

《现代JavaScript库开发:原理、技术与实战》这本书将会影响一些人,使他们从开源库的使用者变成创造者。这本书构建了一条栈道,沿着它走下去,你会走进一个新世界。它也能启发另一批有经验的人,进一步完备自己的知识体系。书中涉及的开发工具未来也许会过期,但其中的开发思路、工程化的专业做法永远不会过时。书中介绍的工具和技术也都是当前最主流的,能成为主流说明具有一定的先进性,如果你能透过工具表面的用法进一步去追究其背后的哲学,你将会有更多的收获。

本书的实操性很强,边阅读边动手写代码,你会有更深的体会。市面上比较成熟的工具和库都是经过长期打磨形成的,其中很多设计细节只有在使用时才能感受到。当你自己开发一个库时,这些都是你灵感的源泉。

前面也提到,你编写一个库是希望更多人能用到它,并非标榜自己。就像做产品要考虑用户体验一样,库的作者要时刻考虑使用者的体验,要时刻提醒自己站在使用者的角度进行设计。所有恰到好处的设计都是打磨出来的,也是独具匠心的。一个库其实也是一个技术产品,如果你能够做好它,其价值将远远超越解决问题本身。愿大家能从这本书中获得设计和开发JavaScript库的价值。

——蚂蚁集团OceanBase部门体验技术团队负责人
克军

总结

本书主要涵盖三部分内容,可以满足读者不同阶段的学习诉求。

  • 第1~5章 介绍如何开发和开源一个现代JavaScript库,这部分内容可以帮助读者快速达成库开发目标。
  • 第6~7章 介绍现代JavaScript库的设计最佳实践和安全最佳实践,这部分内容可以极大提高读者开发JavaScript库的质量。
  • 第8~11章 为实战部分,本书精选了9个典型库作为案例,带领读者了解不同类型的JavaScript库的开发要点。

如今,本书已全面上线,如果你也想开发属于自己的JavaScript库,提升开发技能,精进自身开发技术,一定不可以错过本书哦~~

有兴趣的读者可以点击下面的链接购买,再次感谢各位的支持与鼓励!恳请各位批评指正!

我还给大家准备了签名版,免费赠送直播课和周边,想要签名版的可以通过微信公众号联系我:颜海镜

京东:https://u.jd.com/7QlXVqN

当当:http://product.dangdang.com/29494845.html

原文网址:http://yanhaijing.com/web/2023/01/01/jslib-book-preface3/

微信公众号:颜海镜
关注微信公众号 颜海镜
微信支付二维码
赞赏支持 微信扫一扫