Promise trong JavaScript chắc hẳn không còn xa lạ với bất kỳ ai. Một Promise đại diện cho một "lời hứa" rằng khi gọi hàm, nó chắc chắn sẽ trả về giá trị trong tương lai. Cho dù là xử lý được (resolve) hay không được (reject) thì chúng ta đều đoán được khả năng xảy ra 1 trong 2. Và chắc chắn một điều rằng cả 2 không thể xảy ra cùng một lúc. Nếu nghiên cứu kỹ hơn về Promise, bạn sẽ thấy...
1 ngày trước
Bất kỳ ai khi tìm hiểu sâu vào Node.js có thể đã thấy các bài viết phân biệt sự khác nhau giữa setTimeout, setImmediate và process.nextTick. Tôi cũng không phải là ngoại lệ! Thời gian đầu, tôi luôn cố gắng hiểu được cách sử dụng chúng bằng cách đọc các bài viết và cả tài liệu của Node. Nhưng hầu như chúng đều mang nặng tính lý thuyết. Nghĩ cũng phải vì để thực sự hiểu được sự khác nhau cũng như cách dùng, cần phải...
1 tháng trước
Tôi & khao khát "chơi chữ"
Bạn đã thử viết? Và rồi thất bại hoặc chưa ưng ý? Tại 2coffee.dev chúng tôi đã có quãng thời gian chật vật với công việc viết. Đừng nản chí, vì giờ đây chúng tôi đã có cách giúp bạn. Hãy bấm vào để trở thành hội viên ngay!
Bạn đã thử viết? Và rồi thất bại hoặc chưa ưng ý? Tại 2coffee.dev chúng tôi đã có quãng thời gian chật vật với công việc viết. Đừng nản chí, vì giờ đây chúng tôi đã có cách giúp bạn. Hãy bấm vào để trở thành hội viên ngay!
Viết là một trong những kỹ năng quan trọng với nhiều người. Nghiên cứu chỉ ra rằng một người trung bình dành 45% thời gian giao tiếp để nghe, 16% để đọc. Tuy vậy giữa nói và viết rất khác biệt. Trong khi nghe là tiếp nhận thông tin một cách thụ động còn đọc là chủ động. Mặc dù nghe chiếm phần lớn thời gian, nhưng hiệu quả lại không cao. Ví dụ, sinh viên thường chỉ nhớ được 50% thông tin họ nghe sau 24 giờ và giảm xuống 25% sau hai tuần. Trong khi đó kỹ năng viết được xem là quan trọng trong các môi trường chuyên nghiệp.
Tại 2coffee.dev, chúng tôi có hơn 4 năm kinh nghiệm viết. Trong thời gian đó, chúng tôi liên tục đổi mới phương pháp học và viết. Cho thấy viết là một kỹ năng có thể mài giũa từng ngày. Nếu bạn là người mới bắt đầu hoặc còn đang loay hoay làm thế nào để viết được một bài blog, hay thậm chí là viết mọi thứ, thì đừng chần chừ gì nữa. Hãy trở thành thành viên để tìm hiểu về kỹ năng viết của chúng tôi.
Node.js là một môi trường chạy mã JavaScript được kết hợp từ nhiều thành phần khác nhau. Trong một loạt bài viết về Kiến trúc Node.js - Giới thiệu về Node.js, chúng ta đã tìm hiểu về những thành phần và cả chức năng của nó. Trong Node, có rất nhiều build-in modules - tức là các modules được tích hợp sẵn ngay từ đầu. Một trong số đó là util mà theo như tôi thấy đang chưa nhận được nhiều sự chú ý. Trong util là tập hợp các hàm tiện ích nho nhỏ có ích trong một số trường hợp. Bài viết ngày hôm nay chúng ta sẽ đi qua một số hàm có trong này nhé...
3 tháng trước
Khi mới tiếp xúc với Node.js và cũng là lần đầu học cách sử dụng Linux, nodemon là một thư viện mà tôi thường hay sử dụng để phát triển ứng dụng, vì chỉ cần lưu mã thì ngay lập tức nó sẽ "nạp" lại mã mới mà không cần phải "kill" đi bật lại ứng dụng một cách thủ công nữa, tính năng này ngày nay còn được gọi là "hot reload". Sau bước phát triển là bước triển khai. Trong lúc thực hành chạy ứng dụng ở trên máy chủ, loay hoay mãi không biết làm sao để chạy được nó. Nếu...
4 tháng trước
Biến là một thành phần không thể thiếu trong hầu hết ngôn ngữ lập trình. Khi nhắc đến biến, chúng ta thường liên tưởng ngay đến một cú pháp bao gồm từ khóa (keyword), tên biến, kiểu dữ liệu bao gồm cả giá trị ban đầu của nó. Biến - đúng như cái tên của nó, giá trị của biến có thể thay đổi thông qua một phép gán. Việc thay đổi giá trị của biến giúp cho người lập trình tái sử dụng lại được tên biến, tiết kiệm bộ nhớ và...
10 tháng trước
Sẽ thật là thiếu sót nếu không nói về Promise trong JavaScript. Thực tế, các bài viết về Promise đã có rất nhiều người viết, bạn đọc có thể tìm thấy chúng bằng Google hoặc thi thoảng lại bắt gặp trên một hội nhóm có liên quan đến lập trình nào đó. Nhưng vì Promise là một kiến thức quan trọng và mỗi người lại có cách truyền đạt khác nhau cho nên tôi vẫn quyết định viết bài này. Thời gian đầu mới học JavaScript, Promise là thứ gây nhầm lẫn nhiều nhất. Cứ ngỡ mình hiểu và biết cách sử dụng rồi nhưng trên thực tế, vẫn có nhiều cú trượt dài đau điếng…
1 năm trước
Lần đầu tiếp xúc với phong cách này, tôi khá là bối rối. toJSON, handleResult, handleError ở đây là gì? Nó là một hàm vậy thì tham số của nó đâu rồi? Tại sao nó có thể chạy được khi mà không cần kết thúc bằng () để gọi hàm chứ? Hay chí ít là, tham số đầu vào của nó đâu?... Chà, hàng tá câu hỏi hiện ra trong đầu tôi, nhưng lúc đó không có ai để giải thích cho mình hiểu. Cái gì gặp nhiều ắt sẽ quen, tôi bắt chước theo phong cách đó và ngầm hiểu "À thì ra mình cứ viết theo như vậy, nó sẽ chạy". Mãi sau này...
1 năm trước
Điều mà tôi tin rằng rất nhiều lập trình viên mong muốn tiến tới là việc viết mã sao cho dễ đọc dễ hiểu. Bằng chứng là có rất nhiều Design Pattern được đưa ra để hướng dẫn mọi người giải quyết vấn đề theo cách mà nhiều người vẫn làm. Nhưng đó chưa phải là tất cả, việc viết mã hoàn chỉnh thì lại phụ thuộc vào từng lập trình viên. Chúng ta có nhiều công cụ hỗ trợ soạn thảo mã nguồn theo nhiều cách. Như định dạng, màu sắc, giao diện hiển thị, công cụ hỗ trợ gỡ lỗi... thoải mái lựa chọn theo sở thích hoặc cùng làm việc nhóm. Bên cạnh đó, vẫn có những quy tắc được đặt ra để các thành viên tham gia phát triển phải tuân theo.
1 năm trước
Điều khiến bạn cảm thấy "sợ hãi" khi làm việc với Node.js là gì? Đối với tôi, chắc đó là maintain một mã nguồn Node.js/JavaScript đời đầu, hay có nghĩa là một dự án đã được viết từ rất lâu trước đó, đang sử dụng một phiên bản Node rất thấp mới có thể chạy được. Không có gì khó hiểu khi tôi hay thậm chí nhiều bạn đọc cũng có cảm giác tương tự. Có rất nhiều lý do để đưa ra như cú pháp lỗi thời, tổ chức mã không trật tự, thư viện bị ngừng hỗ trợ hoặc thậm chí là không còn tài liệu nữa... thử nghĩ mà xem, một thư viện mà ta chưa từng dùng trước đó bỗng nhiên không còn dấu vết của tài liệu nữa thì biết dựa vào đâu mà viết tiếp đây? Chưa kể khi gặp vấn đề trên một thư viện đã "archive" thì đúng là không còn ai để mà hỏi nữa...
1 năm trước
JavaScript đã xuất hiện lần đầu tiên cách đây gần 30 năm về trước, là một ngôn ngữ lập trình mới thời đó, chắc hẳn phải trải qua một thời gian nữa thì nó mới thực sự ổn định và được sử dụng rộng rãi. Cho đến bây giờ thì chúng ta không thể phủ nhận được sự thành công của JavaScript, nó xuất hiện ở khắp mọi nơi trong thế giới web. Hơn thế, nó còn "thoát" mình ra khỏi trình duyệt để làm được nhiều điều hơn nữa. Một sản phẩm của công nghệ thì không thể nào ngừng phát triển. Trải qua rất nhiều năm, JavaScript liên tục lột xác và mang lại nhiều tính năng hữu ích hơn...
1 năm trước
Xin chào, tôi là Hoài.
Bấm vào để làm quen!