🏋 Top Posts

👉 Authenticate Firebase với custom token

Trong phần mở bài tôi sẽ nói luôn, vì tôi sợ mất thời gian của các bạn khi click vào để đọc bài viết. Việc xác xác thực thông qua custom token là ở trường hợp hệ thống của của không xác thực qua những hình thức third party như (facebook, github, google mail...). Nếu bạn không thuộc trường hợp này stop tại đây và bạn đọc thêm về những lợi ích khi sử dụng firebase như hosting, notification, app index, storage, authentication, cloud mesenger, test lab

👉 [lab javascript] - Sử dụng javascript detect sự kiện 'lắc' điện thoại như momo, zalo...

detect sự kiện 'lắc' điện thoại như momo, zalo - Trong bài viết này chúng ta sẽ làm một ví dụ nho nhỏ để biết sức mạng của javascript có thể làm được những gì so với app. Các bạn biết đấy trong các ứng dụng mobile ví dụ như momo hay zalo thì có những chương trình lắc lì xì qua app. vậy event lắc đó như thế nào trong app thì tôi không quan tâm nhưng với một devjs như tôi thì tôi tin javascript đủ khả năng làm được điều đó.

👉 Tự học javascript - Utils useful is JavaScript using ES6

Tự học javascript - Hẳn là trong mỗi lập trình viên Javascipt đều có cho mình một lib về các func hữu ích, và nó sẽ đi theo mình suốt một dự án hay dài hơn nữa là cả cuộc đời thăng trầm. Và đây tôi sẽ chia sẻ cho các bạn lib của tôi, lúc đầu tôi làm es5 nhưng sau này tôi đã chuyển về es6 để thuận tiện phù hợp cho các dự án tiếp theo. Các bạn nào chưa hiểu về cấu trúc của es5 khác với es6 như thế nào thì tôi khuyên hãy đọc qua bài này.

🏋 New Posts

👉 spf là gì? Hệ thống gửi Email hãy cẩn thận - Chỉ dành cho kỹ sư cao cấp

SPF viết tắc là Sender Policy Framework. Sender Policy Framework (SPF) là một công nghệ sử dụng địa chỉ IP để xác thực danh tính của người gửi email nhằm phát hiện gian lận email. Đây là một giải pháp thư rác rất hiệu quả.

👉 Chính vì Lexical scope là gì? Mà thằng miền trung nói gì thằng Miền Nam không hiểu?

Lexical scope là gì? Vì sao chúng tôi lại đặt tiêu đề như vậy, thử hỏi "Quê mi ở mô?", "Choa có chộ mô mồ". Đố thằng miền Nam mà hiểu đó. Đố luôn đó. Bài viết này lấy một ví dụ thực tế để giúp các bạn làm quen với javascript để hiểu hơn về khái niệm scope trong javascript.

👉 const let var difference - So sánh nhanh cho những người lười đọc

const, let, var trong javascript. Một bài viết so sánh nhanh nếu bạn nào lười đọc về ý nghĩa sâu xa của những khái niệm đó. Còn nếu muốn tìm hiểu thật sâu để biết rằng vì sao có var rồi, lại thêm const và let nữa thì xin mời theo tôi.

👉 Scope in javascript - 66 khái niệm cần hiểu khi học lập trình javascript

Scope in javascript. Đó là một khái niệm mà tôi không nghĩ những lập trình viên mới làm quen thì phạm vi trong javascript không hề dễ một chút nào? Và trước khi học những khái niệm như closure thì vì sao bạn phải học về scope trong javascript. Bài viết này sẽ cố gắng hết sức để giải thích phạm vi và chuỗi phạm vi một cách đơn giản nhất. Tips javascript hy vọng bạn có thể tiếp thu được cái gì đó trong những ví dụ cụ thể này.

👉 Tracking người dùng chỉ sử dụng css là đủ, có cần javascript???

Việc theo dõi người dùng thì Google Analytics nó là vua rồi. Nhưng chúng ta cũng phải add một url của nó vào sites chúng ta. Mà đã add thì ắt có chặn. Vậy thử hỏi, một trình duyệt mà off hết javascript thì lấy gì mà tracking đây? Sử dụng css thử xem?

👉 Serverless là gì? Chúng ta có thực sự cần Serverless không? Đừng tin ai ngoài chúng ta

Serverless nghĩa đen là không có dịch vụ hoặc có thể định nghĩa là một kiến ​​trúc không máy chủ (server), là một cách tiếp cận kiến ​​trúc mới. Nó cũng là một công nghệ rất phổ biến hiện nay và nhiều công ty lớn đang làm việc hướng tới Serverless. Vậy thật sự là Serverless là một kiến trúc không có máy chủ? Đừng hiểu lầm như những người nói như vậy, hãy xem câu trả lời của các chuyên gia.

👉 Check user online hay offline như facebook với 1 dòng code javascript

Online, Offline with JavaScript. Một thủ thuật Detecting Online/Offline nhỏ của facebook cũng đủ làm chúng ta hài lòng và cảm giác chúng ta được trân trọng. Nhìn vậy thôi chứ dễ lắm. Với việc sử dụng navigator.onLine chúng ta có thể làm được điều đó.

👉 Nodejs là gì? Dùng để làm gì? Bạn sẽ toả sáng với kiến thức này

Node js là gì? Ngày càng có nhiều ứng dụng ra đời có sự đóng góp của Node. Ngày càng có nhiều lập trình viên tìm hiểu về Nodejs. Và ngày càng có nhiều bài viết phân tích về Node.js. Nhưng thật sự nodejs để làm gì? Và tại sao lại dụng thì có thể bạn chưa biết, và nếu có biết thì cũng chỉ một vài phần mà thôi. Hãy xem bài phân tích dưới đây, lúc đó bạn sẽ biết bạn ở đâu?

👉 5 cách tối ưu hoá hình ảnh cho website từ 9 seconds xuống 2 seconds

Tối ưu hoá hình ảnh là một thủ thuật làm cho ứng dụng nhanh hơn, giúp cho người dùng có một cách trải nghiệm mượt mà và ít tốn dung lượng 4G hay 5G nhất có thể. Và khái niệm tối ưu hoá hình ảnh cũng nằm trong 24 đề xuất tối ưu hoá hệ thống được các chuyên gia Front-End đưa ra. Và bài viết này, với 6 cách được đưa ra, hy vọng bạn sẽ có một cách làm cho riêng mình.

👉 Một vài mẹo thực tế để viết JavaScript trong ngày lễ độc thân cho mấy Chế DEV

Học lập trình javascript, ai đã theo thì cũng hiểu, những tính năng được cập nhật liên tục. Thay vì bạn cứ sử dụng những code cũ đã tồn tại nhiều năm, thì bạn có thể tìm thấy những phương án hay hơn trong bài viết về những mẹo này. Có thể ngay lúc này bạn không cần, nhưng đến lúc bạn cũng sẽ tìm, vì vậy sao không thử xem những mẹo javascript là gì?

👉 Adapter pattern là gì? Một bài viết quá rõ ràng với ví dụ tạo giỏ hàng với javasscript

Adapter pattern được sử dụng trong đời sống rất nhiều chứ không phải là chỉ trong các mẫu thiết kết của lập trình. Nó được ứng dụng rộng rãi trong thế giới thực, tôi nghĩ chắc cũng vì lý do đó cho nên nó đã được áp dụng nguyên lý vào trong lập trình javascript nói riêng và các ngôn ngữ khác nói Chung. Tôi sẽ chia sẻ cho các bạn một ví dụ cụ thể để hiểu rõ hơn về Adapter pattern javascript

👉 Cơ chế mượn xe VINFAST thông qua Singleton pattern - Phần 3 (ĐỌC BÀI TRƯỚC ĐỂ HIỂU VỀ XE VINFAST)

Singleton là gì? Có lẽ một trong những khái niệm được nhắc tới nhiều nhất trên google. Nhưng tất cả bài viết đó đều mang hơi hướng lý thuyết và không có một ví dụ thực tế nào dể cho chúng ta tìm hiểu. Sự thật đó là khi đọc xong, hầu như tôi hay các bạn đều không hiểu What is singleton? Và trong Series về Design pattern này, tôi cũng nói rõ nhất có thể về Singleton pattern kèm theo đó là một ví dụ thực tế, chắc rằng những lập trình viên có thể đều hiểu sau khi đọc bài viết này.

👉 Phần 2: Factory pattern, cách mà tôi triển khai trong nhà máy VINFAST (FRESHER và JUNIOR nên bỏ qua phần 3)

Factory pattern là gì? Trước khi đi vào định nghĩa thì chúng ta đi xem xét một ví dụ thực tế trong đời sống hằng ngày của chúng ta. Đó là việc đi mua xe ô tô của tôi diễn ra như thế nào? Và chúng ta sẽ lấy việc mua ô tô ra làm ví dụ và sử dụng Factory pattern để mô phỏng quá trình này. Và từ đó chúng ta sẽ có một kết luận cho riêng chúng ta. Bắt đầu.

👉 Các tính năng mới của JavaScript ES12 - ES2021 nên chú ý tính năng thứ 3, vì nó rất quan trọng.

ES12 hay ES2021 chuẩn bị sắp phát hành những tính năng mới, cùng với đó là ES11 đã là một phiên bản cũ. Từng đó cũng đủ cho tôi và các bạn cảm thấy những phương thức, cách hoạt động thay đổi và nâng cấp một cách chóng mặt. Nhưng từ đó cũng sẽ đào thải những developers không theo kịp hoặc không tìm hiểu và phát huy những thế mạnh của những tính năng cho năm 2021 này.

👉 9 mẫu thiết kế mà mỗi lập trình viên dều phải biết - phần 1: Builder pattern

Design pattern là gì? Builder pattern là một mẫu thiết kế thuộc "Nhóm khởi tạo" (Creational Pattern). Và là một mẫu thiết kế để cung cấp một giải pháp linh hoạt để tạo các đối tượng. Cụ thể hơn là Builder pattern giúp chúng ta xây dựng một đối tượng phức tạp bằng cách sử dụng các đối tượng đơn giản bằng cách cung cấp cách tiếp cận từng đối tượng đơn giản. Cùng xem một hướng dẫn dưới đây.

👉 Triển khai Notes App trong javascript kèm theo source code

Triển khai Notes App trong javascript kèm theo source code

👉 cookieStore là gì? Tạo sao nó lại thay thế document.cookie kế từ phiên bản Chrome 87

cookieStore là gì? Nó ra đời như một điều tất yếu vì việc sử dụng cookie bây giờ là tương đối phức tạp và chẳng có một API nào tốt và an toàn để cho lập trình viên sử dụng một cách thoải mái. API duy nhất mà mỗi nhà phát triển sử dụng chính là document.cookie. Nhưng kể từ phiên bản Chrome 87 chúng ta sẽ làm quen một API tốt hơn đó là cookieStore

👉 Trở thành lập trình viên theo lộ trình hot nhất thế giới! (ĐỪNG BỎ QUA TÀI NGUYÊN NÀY)

Những yếu tố để trở thành lập trình viên ngoài chọn trường, lớp ngành nghề thì cơ bản chúng ta phải tìm kiếm được những lộ trình thích hợp và nhanh chóng. Nếu chọn đúng thì bạn đi rất nhanh, ngược lại nếu bạn chọn sai thì quay đầu cũng không muộn nếu bạn chọn theo lộ trình trở thành Lập trình viên như những hướng dẫn dưới đây.

👉 Tổng hợp 150 packages và resource Node.js chất lượng cao - Cập nhật liên tục

Tổng hợp 150 packages và resource Node.js chất lượng cao - Cập nhật liên tục

👉 Promise all và các tình huống ứng dụng phổ biến

Promise all là một phương thức không thể thiếu trong lập trình đồng bộ đối với lập trình viên. Vẫn biết rằng Promise được sử dụng rất rộng rãi nhưng vẫn còn đâu đó những developers vẫn chưa biết vì sao Promise all lại được sủ dụng nhiều như vậy. Bài viết này sẽ làm sáng tỏ những tình huống mà bạn nên sử dụng Promise.

👉 Tối ưu tốc độ website không cần biết nhiều chỉ biết 1 quy tắc này là xong

Tối ưu tốc độ website là một điều rất quan trọng cho nên nhiều lập trình viên cứ nghĩ rằng đó là việc của backend hay việc này của những team khác, vì thế mình là mới ít kinh nghiệm nên chưa cần hoặc chưa cần biết về việc cải thiện hiệu suất của hệ thống. Đúng nhưng bài viết này cũng giúp bạn không phải có kinh nhiệm nhiều nhưng cũng nắm bắt được những điều quan trọng sau đây.

👉 Vì sao coder không hài lòng toán tử || thay vào đó là toán tử ??

Nullish coalescing Operator chính là toán tử ?? được giới thiệu trong ES2020 cách đây không lâu. Nhưng sự hiện diện của ?? làm cho toán tử || đặt ra nhiều nghi vấn. Và có nhiều lập trình viên cho rằng đáng lẽ ra chức năng này phải ra sớm hơn chứ không phải chờ đến ES2020.

👉 webpack là gì? 4 thao tác giúp bạn làm quen với cấu hình của webpack

Webpack là một module bundler cho phép bạn viết bất kỳ định dạng module nào (cũng có thể kết hợp), sau đó biên dịch cho trình duyệt. Webpack phân tách mã dựa trên cách nó được sử dụng trong ứng dụng của bạn và với phân tích trách nhiệm theo module này, việc quản lý, gỡ lỗi, xác minh và kiểm tra mã của bạn trở nên dễ dàng hơn nhiều.

👉 8 thư viện JavaScript để xử lý lưu trữ cục bộ (Local Storage) tốt hơn

Local Storage la gì? Như chúng ta đã biết, HTTP là một giao thức không trạng thái, máy khách khởi tạo một yêu cầu, máy chủ xử lý yêu cầu từ máy khách và sau đó gửi phản hồi lại cho máy khách. Sau khi quá trình trao đổi dữ liệu giữa máy khách và máy chủ hoàn tất, kết nối giữa máy chủ và máy khách sẽ bị đóng lại, máy chủ hầu như không có thông tin để xác định người dùng nào đã gửi yêu cầu cũng như không thể ghi lại chuỗi yêu cầu của người dùng truy cập mỗi khi dữ liệu được trao đổi Cần thiết lập kết nối mới, sau này có người dùng, website muốn hiểu được nhu cầu của người dùng, tuy nhiên theo hiện trường lúc đó thì rõ ràng là không thể đáp ứng được nhu cầu công việc, chính vì vậy việc lưu trữ cục bộ(Local Storage) ra đời có thể bù đắp phần phần nào trạng thái của giao thức HTTP.

👉 Logger Nodejs là gì? Sử dụng Winston là phải chuyên nghiệp như thế này

Không nói quá chứ bất kỳ chương trình phần mềm nào cũng cần phải có file quản lý log một cách chuyên nghiệp. Chính vì lẽ đó mỗi ngôn ngữ lập trình đều có những module đi kèm như java thì có Log2j, và trong nodejs thì có rất nhiều chẳng hạn như Winston, log4js, Bunyan. Và trong bài viết này thì tôi chỉ đề cập đến Winston vì ở đó có những tất cả mà một người làm backend như tôi đang tìm kiếm.

👉 Muốn học React JS trong vòng 3 tháng thì 8 điều cơ bản sau phải biết đầu tiên

Lập trình React JS nghe có vẻ cao siêu và tôi chắc chắn rằng sẽ có nhiều cơ hội trong tương lai của bạn. Nhưng để học React JS một cách khôn khéo và nhanh chóng hiểu được những cú pháp trong React JS là không phải ai cũng có thể làm dược trong một thời gian ngắn. Và nếu bạn đọc được bài viết này thì chỉ 3 tháng thôi bạn sẽ có thể vươn lên một bậc rồi.

👉 Speech Recognition API - Chuyển giọng nói thành văn bản javascript

Speech Recognition API - Trên thực tế có hai loại API trong HTML5 về Web Speech đó là (Speech Recognition) và loại còn lại là (Speech Synthesis). Hai thuật ngữ này nghe có vẻ rất cao siêu, nhưng trên thực tế cả hai api này đề cập đến "lời nói thành văn bản" và "văn bản thành lời nói". Nó chỉ vậy mà thôi.

👉 Có bao nhiêu cách tìm một phần tử trong một mảng, Cảm ơn anh đã đến phỏng vấn và xin chào!

Đôi khi chúng ta muốn sử dụng một điều kiện nào đó để tìm xem có phần tử nào trong mảng thỏa mãn điều kiện thay đổi hay không, rồi trả về phần tử hoặc giá trị chỉ số của phần tử. Javascript cung cấp cho chúng ta nhiều phương thức khác nhau, chủ yếu được chia thành tìm kiếm theo giá trị và tìm kiếm theo điều kiện nhất định. Bài viết này giới thiệu các phương pháp này.

👉 Lần trước 24 phương pháp ES6 thực tế đã được đón nhận, lần này thêm 10 phương pháp nữa

Không có nghi ngờ gì khi nói rằng JavaScript là một trong những ngôn ngữ lập trình phổ biến nhất trong phát triển ứng dụng hiện đại bao gồm cả Front-end và back-end. Cho dù bạn đang sử dụng React, Vue hay Angular, nó chỉ là JavaScript. JS xoay quanh một hệ sinh thái quan trọng và rộng lớn và cung cấp vô số khuôn khổ và thư viện có thể giúp chúng tôi phát triển ứng dụng nhanh hơn

👉 Fix lỗi javascript nhanh với hai kỹ thuật hữu ích

fix bug là gì? Fix lỗi javascript trong lập trình là một việc làm kiếm ra tiền cho chúng ta. Thử hỏi nếu một ứng dụng trơn tru quá thì khó mà kiếm tiền từ việc bảo trì. Nhưng việc bảo trì nhanh hay chậm cũng liên quan đến việc fix bug như thế nào? Với hai thủ thuật đơn giản nghĩ là không cần nhưng nó rất cần thiết đối với nhiều developers.

👉 10 tính năng hữu ích của HTML5, có thể bạn chưa sử dụng

HTML5 không phải là một điều gì quá mới đối với developers. Chúng tôi đã sử dụng một số tính năng của nó kể từ lần phát hành đầu tiên (tháng 1 năm 2008). Như một phần sáng kiến cảu dự án #100DaysOfCode, tôi đã xem xét kỹ lại danh sách tính năng HTML5. Xem những gì tôi tìm thấy? Tôi đã không thực sự sử dụng chúng cho đến bây giờ!

👉 Kinh nghiệm học lập trình - tôi ghé thăm code của một bạn có kinh nghiệm 3 năm và cái kết

Kinh nghiệm lập trình là một cụm từ được mỗi người định nghĩa khác nhau. Nhưng với tôi thì kinh nghiệm lập trình có nhiều yếu tố hình thành nên. Và hầu hết mọi người đều chỉ ra kinh nghiêm lập trình qua thời gian, chưa đủ, và bai viết này tôi sẽ nói lên quan điểm của tôi về vấn đề này.

👉 Transaction là gì? Thực hành trên MongoDB 4.0 đơn giản và dễ hiểu

Transaction là gì? Tôi tin rằng những lập trình viên đã sử dụng cơ sở dữ liệu quan hệ chính thống không quá xa lạ với Transaction. Nhiều hoạt động dữ liệu can thiệp vào nhau và khi xảy ra lỗi trong bất kỳ hàm thực thi nào thì giao dịch sẽ bị hủy bỏ và dữ liệu sẽ được khôi phục, đảm bảo tính nhất quán của dữ liệu khi sửa đổi dữ liệu trong nhiều bảng cùng một lúc đó chính là Transaction.

👉 Tôi có kinh nghiệm trong bảo mật hệ thống? Nổ cho to vào? bạn có xấu hổ không?

Hệ thống web hay ứng dụng của bạn có thực sự an toàn không? Mỗi ngày có gần 2K users vào trang tips javascript. Ở đây đa số là hiện tại là những lập trình viên và cũng có thể là những developers tương lai. Nhưng có một điểm chung như thế này đó là việc ai cũng mong muốn viết code làm sao cho xong ứng dụng của mình mà quên đi việc nó có an toàn về bảo mật cho hệ thống mình hay chưa?

👉 Moment.js thông báo rằng nó đã ngừng phát triển, chúng ta nên sử dụng gì bây giờ?

Moment.js đã chính thức đưa ra thông báo ngừng phát triển và đi vào trạng thái bảo trì. Moment.js là một thư viên ngày và giờ lớn và đầy đủ tính năng nhất, tạo điều kiện rất nhiều cho nhiều dự án tính toán ngày và giờ trong JavaScript. Nó có hơn 12 triệu lượt tải xuống mỗi tuần và đã được sử dụng thành công trong hàng triệu dự án.

👉 OAuth 2.0 là gì? Tìm hiểu cơ chế và cách hoạt động đăng nhập - phần 4 (cuối)

OAuth 2.0 là gì? OAuth 2.0 là một giao thức tiêu chuẩn mở cho phép các ứng dụng truy cập vào dữ liệu được người thông qua những ứng dụng khác. Ví dụ: một trò chơi có thể lấy thông tin người dùng trong Facebook hoặc app theo dõi location có thể lấy thông tin người dùng trong Foursquare.

👉 Lập trình viên sớm muộn gì bạn cũng phải biết về cơ chế đăng nhập SSO (Single SignOn) - Phần 3

SSO là gì? Tên tiếng Anh đầy đủ của SSO là Single SignOn, hay còn gọi là cơ chế đăng nhập một lần nhưng có thể sử dụng khắp mọi nơi. SSO có trong nhiều hệ thống ứng dụng. Người dùng chỉ cần đăng nhập một lần để truy cập vào tất cả các hệ thống ứng dụng đáng tin cậy lẫn nhau. Nó bao gồm một cơ chế có thể ánh xạ thông tin đăng nhập chính này với các ứng dụng khác để đăng nhập cùng một người dùng. Nó là một trong những giải pháp phổ biến nhất được sử dụng rộng rãi hiện nay. Và nếu bạn là một lập trình viên thì bạn cần nên hiểu nó.

👉 Cơ chế đăng nhập với token hơn cookie và session như thế nào? - Phần 2

Sau khi bài viết sử dụng Cookie và Session để hoàn tất xác minh đăng nhập, và chúng ta đã phát hiện ra một số vấn đề ở cơ chế đăng nhập này. Thì bầy giờ chúng ta tiếp tục theo dõi và tìm hiểu cơ chế login khi sử dụng token và đây là một phương pháp đang được các dev quan tâm nhất hiện nay.

👉 4 cơ chế đăng nhập, bài viết này là đủ cho dân lập trình - Phần 1

Đăng nhập là chức năng thường được sử dụng trong mọi trang web hay những app hiện nay. Không khó để nhận ra vấn đề này đang được quan tâm nhất bởi vì lướt qua những page về lập trình như tips javascript, hay javascript Việt Nam đều thấy nhiều câu hỏi ở đó. Thật sự bạn có biết khi enter thì cơ chế nó hoạt động như thế nào không? Và hiện nay, những ứng dụng lớn họ triển khai login như thế nào? Hôm nay chúng tôi sẽ giới thiệu một số phương pháp đăng nhập phổ biến nhất

👉 Node.js Series: Bắt đầu!!!

Loạt bài nhập môn Node.js sẽ là tập hợp các bài hướng dẫn tham khảo, bắt đầu từ phần này, chúng ta chính thức gia nhập bộ môn Nodejs. Tôi không dám khẳng định rằng khi học xong những bài viết về Nodejs của chúng tôi bạn sẽ được tăng lương nhưng chúng tôi cam đoan với các bạn rẳng. Bạn sẽ tự tin hơn trước rất nhiều... Vì sao?