10+ tài liệu JavaScript từ cơ bản đến nâng cao

Chưa khi nào JavaScript lại tăng trưởng can đảm và mạnh mẽ như thời hạn gần đây. Hầu như mỗi năm JS lại được update lên phiên bản mới, kèm theo những tính năng hay ho mê hoặc giúp cuộc sống lập trình viên tất cả chúng ta ” dễ thở ” ( hoặc ngược lại ^ ^ ‘ ). Thêm vào đó, sự tăng trưởng của Babel hay cuộc chạy đua vũ trang của những trình duyệt giúp cho những tính năng mới trong JS thuận tiện sử dụng hơn, nhưng cũng yên cầu lập trình viên phải update liên tục để tận dụng triệt để năng lực của ngôn từ .

Hệ quả là, những tài liệu JavaScript có sẵn bỗng nhanh chóng trở nên lỗi thời. Nhưng không sao, bôi cao sẽ khỏi. Đã có Ehkoo ở đây cào nát Internet và những-trang-mà-ai-cũng-biết-là-trang-gì-đó, để chọn ra 10+ tài liệu JavaScript đáng đồng tiền bát gạo nhất dành cho bạn, từ cơ bản đến nâng cao, và hoàn toàn MIỄN PHÍ.

Tài Liệu JavaScript Cơ Bản

JavaScript Guide của MDN


“Hướng dẫn JavaScript” của Mạng lập trình viên Mozilla (Mozilla Developer Network – MDN) là tài liệu đầu tiên bạn cần tham khảo – cực kì đầy đủ và luôn được cập nhật mỗi khi JS phát hành phiên bản mới. Tài liệu được chia ra làm ba phần:

  • Sơ cấp: giới thiệu những khái niệm căn bản của JavaScript, cách khai báo biến, giá trị, các cấu trúc điều khiển và vòng lặp if/else/for/while/switch, cách khai báo hàm và biểu thức, các lớp căn bản như Date hay RegExp v.v…
  • Trung cấp: giới thiệu về lập trình hướng đối tượng trong JavaScript, làm việc với các APIs của trình duyệt, khái niệm closure, v.v…
  • Cao cấp: phần này tập trung vào những khái niệm nâng cao như các liên kết prototype, cách thao tác trực tiếp lên dữ liệu dạng nhị phân, quản lý bộ nhớ và cách thức EventLoop hoạt động, v.v…

Bên cạnh đó, tài liệu này cũng nhắc đến những vấn đề không liên quan đến kỹ thuật, chẳng hạn như sự liên hệ giữa JavaScript và Java (bật mí: không có liên quan gì hết ^^’), hay JavaScript và ECMAScript có dây mơ rễ má ra sao.

Nếu bạn còn ” mới tinh ” về JavaScript, lời khuyên của Ehkoo là : chỉ cần đọc hết 8 chương tiên phong, cùng với phần ” Working with objects “, bạn đã hoàn toàn có thể nắm cơ bản về ngôn từ rồi. Tiếp đến, hãy bắt tay vào làm một ứng dụng nhỏ để củng cố kiến thức và kỹ năng. Sau này, khi đã quen với JavaScript, bạn hãy quay lại và xem những chủ đề trung hoặc hạng sang hơn .
Tài liệu được phân phối không lấy phí tại https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide

Eloquent JavaScript, 3rd Edition

Tác giả: Marijn Haverbeke

Số trang: 456

Năm xuất bản: 2018

Nhà xuất bản: No Starch Press

Eloquent JavaScript là một quyển sách đặc biệt quan trọng, vì nó không chỉ ra mắt về JS. Đối tượng fan hâm mộ mà sách hướng đến là những bạn đang chập chững làm quen với lập trình, do đó tác giả Haverbeke chú trọng lý giải những nguyên tắc của việc lập trình, mối quan hệ giữa ngôn từ lập trình và máy tính, v.v… Sách được chia làm ba phần :

  • Phần 1: giới thiệu về ngôn ngữ JavaScript — biến, kiểu dữ liệu, cấu trúc chương trình, hàm, object và array, regex, v.v…
  • Phần 2: hướng dẫn lập trình trên trình duyệt — DOM, xử lý sự kiện, v.v…
  • Phần 3: NodeJS căn bản

Bằng cách tiếp cận ” học song song với hành “, người đọc sẽ được hướng dẫn thực thi vài ứng dụng nho nhỏ, từ kiến thiết xây dựng một robot giao hàng, setup một ngôn từ lập trình đơn thuần, đến thực thi một website. Nhờ vận dụng ngay những kiến thức và kỹ năng học được vào thực tiễn, fan hâm mộ hoàn toàn có thể ghi nhớ nhanh gọn hơn .
Bạn hoàn toàn có thể đọc quyển sách này không tính tiền tại https://eloquentjavascript.net/

Có thể bạn chưa biết: Marijn Haverbeke là tác giả của thư viện CodeMirror — một chương trình soạn thảo nền web được sử dụng rất rộng rãi.

You Don’t Know JS

Tác giả: Kyle Simpson

Năm xuất bản: 2015

Nhà xuất bản: O’Reilly

You Don’t Know JS là loạt sách gồm 6 quyển chuyên về JavaScript .

  • Phần 1: Up & Going — cung cấp những kiến thức cơ bản về lập trình nói chung và JavaScript nói riêng
  • Phần 2: Scope & Closures — giới thiệu về khái niệm tầm vực, phân biệt giữa tầm vực trong khối và hàm, v.v…
  • Phần 3: this & Object Prototypes — đề cập đến lập trình hướng đối tượng trong JavaScript, giới thiệu về lớp và prototype
  • Phần 4: Types & Grammar — kiểu dữ liệu trong JavaScript
  • Phần 5: Async & Performance — thực thi các thao tác bất đồng bộ và hiệu năng của ứng dụng JavaScript
  • Phần 6: ES6 & Beyond — phiên bản ES6 của JS và những khái niệm liên quan

Bạn hoàn toàn có thể đọc sách không lấy phí tại https://github.com/getify/You-Dont-Know-JS

Tài Liệu JavaScript Nâng Cao

Exploring ES6

Tác giả: Axel Rauschmayer

Số trang: 641

Năm xuất bản: 2015 – 2018

Khi nói đến ES6, có lẽ không quyển sách nào qua được Exploring ES6 của Dr. Axel Rauschmayer – tác giả blog 2ality. Sách dày hơn 600 trang, mô tả chi tiết từng tính năng của ES6, từ let với const là gì, hàm mũi tên, modules, v.v… đến những chuyện bên lề như tại sao có khi lại gọi ES5 là ES2015. Sách dành cho những bạn đã có kiến thức về JavaScript.

Bạn hoàn toàn có thể đọc không lấy phí ở đây http://exploringjs.com/es6. Ngoài ra, tác giả còn hai quyển sách ” chị em ” cùng chủ đề : Exploring ES2016 and ES2017 và Exploring ES2018 and ES2019 .

Understanding ECMAScript 6

Tác giả: Nicholas Zakas

Số trang: 322

Nhà xuất bản: LeanPub

Một quyển sách khác về ES6. So với Exploring ES6 thì cuốn này mỏng dính hơn nhưng cũng bao hàm không thiếu những tính năng quan trọng của ES6. Bạn hoàn toàn có thể đọc sách không tính tiền tại https://leanpub.com/understandinges6 .

Có thể bạn chưa biết: Nicholas Zakas là tác giả của ESLint — công cụ phân tích và kiểm tra mã nguồn JavaScript được sử dụng rộng rãi trong hầu hết các dự án hiện nay. Anh cũng là tác giả của khá nhiều quyển sách hay ho khác về JS mà Ehkoo sẽ giới thiệu tiếp theo đây.

The Principles of Object-Oriented JavaScript

Tác giả: Nicholas Zakas

Số trang: 120

Năm xuất bản: 2014

Nhà xuất bản: No Starch Press

Lập trình hướng đối tượng người tiêu dùng ( object-oriented programming — OOP ) trong JavaScript hoàn toàn có thể hơi khác lạ nếu bạn đến từ những ngôn từ thuần OOP như Java hay C #. Nhưng cách thực thi hướng đối tượng người dùng dựa vào bản mẫu ( prototype-based ) của JS lại làm cho ngôn từ này trở nên mê hoặc, vì cách tiếp cận này vẫn bảo toàn 4 nguyên tắc cơ bản của OOP : tính khái quát ( Abstraction ), tính bao đóng ( Encapsulation ), tính thừa kế ( Inheritance ), và tính đa hình ( Polymorphism ) .

Sách mỏng, dễ đọc, giúp bạn hiểu rõ hơn về cách thức objects được tổ chức và lưu trữ trong JavaScript. Dù cho sách vẫn dùng những khái niệm cũ của ES5, khi JavaScript chưa chính thức hỗ trợ class, bạn vẫn có thể dễ dàng liên hệ những gì đọc được với ES6 class.

Rediscovering JavaScript – Master ES6, ES7, and ES8

Tác giả: Venkat Subramaniam

Số trang: 257

Năm xuất bản: 2018

Nhà xuất bản: The Pragmatic Programmers

Rediscovering JavaScript là quyển sách dành cho những bạn đã tìm hiểu và khám phá về ES6 / 7/8. Sách trình làng những kinh nghiệm tay nghề trong thực tiễn khi thao tác với JS phiên bản mới, ví dụ điển hình như cách phân rã biến và sử dụng giá trị mặc định khi khai báo hàm, để bảo vệ chữ ký hàm vẫn rõ ràng và dễ sử dụng ; hay lời khuyên không nên lạm dụng hàm mũi tên ; hoặc những ví dụ về siêu lập trình ( metaprogramming ) trong JS. Mỗi chương đều có đi kèm bài tập, giúp bạn kiểm tra lại kiến thức và kỹ năng của mình .

Chuyên Đề: Lập Trình Hàm

Professor Frisby’s Mostly Adequate Guide to Functional Programming

Tác giả: Brian Lonsdorf

Lập trình hàm ngày càng được nhiều người chăm sóc bởi những quyền lợi mà nó mang lại. Nhưng trong quy trình khám phá, hoàn toàn có thể bạn sẽ phát hiện những khái niệm ” lạ hoắc lạ huơ ” như Functor, IO hay ( don’t you dare ) Monad. Đừng tìm đâu xa, Mostly Adequate là quyển sách bạn muốn đọc ngay. Bằng giọng văn hài hước, cách hành văn dễ hiểu, ” Giáo sư Frisby ” Brian Lonsdorf sẽ dẫn bạn qua những ví dụ đơn thuần nhất, phối hợp với nhau cho đến khi bạn vỗ đùi ” hóa ra Monad là rứa ” .
Sách có 12 chương, và bạn hoàn toàn có thể đọc không lấy phí ở https://mostly-adequate.gitbooks.io/mostly-adequate-guide/ .

JavaScript Allongé, the “Six” Edition

Tác giả: Reg “raganwald” Braithwaite

Nhà xuất bản: LeanPub

JavaScript Allongé là quyển sách về lập trình với hàm, ” vô tình ” lại được bộc lộ bằng JavaScript. Phiên bản mới của sách sử dụng ES6, ngoài dùng class ( de, lập trình hàm mà dùng class ) còn đề cập đến mixin, generators, v.v… Bạn nhất định phải đọc quyển sách này cùng với quyển Mostly Adequate ở trên, nếu bạn hứng thú với lập trình hàm !
Sách hoàn toàn có thể đọc không tính tiền tại https://leanpub.com/javascriptallongesix/read .

Functional-Light JavaScript: Balanced, Pragmatic FP in JavaScript

Tác giả: Kyle Simpson

Nhà xuất bản: LeanPub

So với hai quyển sách ở trên, Functional-Light JavaScript nhẹ nhàng hơn và không sử dụng những thuật ngữ sâu xa trong lập trình hàm. Thay vào đó, sách chỉ ra cách vận dụng những khái niệm của FP vào thực tiễn. Lời đề tựa của sách được viết bởi Giáo sư Frisby .
Đọc không lấy phí tại https://github.com/getify/functional-light-js

Chuyên Đề: Refactoring

Refactoring JavaScript – Turning Bad Code into Good Code

Tác giả: Evan Burchard

Số trang: 499

Năm xuất bản: 2017

Nhà xuất bản: O’Reilly Media

Mặc dù mỗi dự án Bất Động Sản sẽ có những đặc thù đặc trưng, dẫn đến những kế hoạch refactoring khác nhau, nhưng quyển sách này hoàn toàn có thể phân phối cho bạn một cái nhìn khái quát khi bắt tay vào sửa chữa thay thế code JavaScript. Sách khởi đầu bằng cách đặt câu hỏi tiềm năng refactoring là gì, tiềm năng bạn hướng đến khi refactor, sau đó gợi ý những kế hoạch riêng để giải quyết và xử lý chuỗi, hàm, mã chết, hay những tác vụ bất đồng bộ .
Ehkoo khuyên đọc nếu bạn đang có dự tính ” đập đi xây lại ” với dự án Bất Động Sản hiện tại. Thường thì phá dễ hơn sửa, và nhiều lúc chưa hẳn là giải pháp tốt. Bạn hoàn toàn có thể tải về quyển sách này MIỄN PHÍ tại http://refactoringjs.com/ .

Simplifying JavaScript – Writing Modern JavaScript with ES5, ES6, and Beyond

Tác giả: Joe Morgan

Số trang: 255

Năm xuất bản: 2018

Nhà xuất bản: The Pragmatic Programmers

Nhìn tựa có vẻ như như nói về JS thế hệ mới, nhưng nội dung chính của quyển sách này là những mẹo / lời khuyên để bạn hoàn toàn có thể viết JavaScript rõ ràng hơn. Do đó, nếu bạn là người ” hốt rác ” chuyên nghiệp, đừng bỏ lỡ quyển sách này .

Chuyên Đề: (Có Thể) Cũ Mà Hay

Even Faster Web Sites: Performance Best Practices for Web Developers

Tác giả: Steve Souders

Số trang: 256

Năm xuất bản: 2009

Nhà xuất bản: O’Reilly Media

High Performance JavaScript

Tác giả: Nicholas Zakas

Số trang: 232

Năm xuất bản: 2010

Nhà xuất bản: O’Reilly Media, Yahoo! Press

Maintainable JavaScript

Tác giả: Nicholas Zakas

Số trang: 242

Năm xuất bản: 2012

Nhà xuất bản: O’Reilly Media

Điểm chung của 3 quyển sách trên là gì? Đầu tiên là cũ. Thứ hai là Ehkoo chưa đọc :p, nhưng được một blogger nhiều tên ít tuổi trong cộng đồng giới thiệu. Nếu bạn đọc thấy không hay thì tìm @huytd ở WeBuildVN mà mắng vốn nhé.

Kết

Với vận tốc đổi khác nhanh còn hơn cả triều cường TP HCM sau mưa của JS, thì Ehkoo không chắc list tài liệu JavaScript nêu ở trên sẽ còn ” hợp thời ” đến chừng nào. Tuy nhiên, Ehkoo sẽ cố gắng nỗ lực update tiếp tục .
Và, vẫn một lời đã cũ, nếu bạn biết tài liệu / sách JavaScript hay ho mê hoặc nào khác, đừng quên san sẻ cho Ehkoo và đồng bọn trải qua phần phản hồi phía dưới nhé !

Bạn thích bài viết này?

Đăng ký ngay để nhận những tin tức mới nhất về lập trình frontend trong tuần. Bản tin sẽ được gửi vào mỗi sáng thứ Bảy ✌ ️

Powered by Buttondown