Chuyên mục
Công Nghệ

Component trong ReactJS

1. Component là gì? ReactJS là một thư viện JavaScript được Facebook phát triển để xây dựng giao diện người dùng (UI) tương tác và linh hoạt. Một trong những khái niệm cốt lõi nhất của ReactJS là “Component“. Component là khối xây dựng cơ bản (fundamental building block) của một ứng dụng React, cho […]

Chuyên mục
Công Nghệ

Software Architecture là gì? Sự quan trọng của kiến trúc phần mềm

Trước đây, việc các nhà phát triển phần mềm bắt đầu viết mã nguồn cho một ứng dụng phần mềm mà không hoặc rất ít sử dụng bất kỳ kiến trúc phần mềm (software architecture) là điều rất phổ biến. Khi không có kiến trúc rõ ràng ngay từ đầu, các lập trình viên có […]

Chuyên mục
Công Nghệ

Mô hình Publisher-Subscriber là gì? (Pub-Sub)

Trong kiến trúc phân tán, các thành phần hệ thống thường cần cung cấp thông tin cho các thành phần khác khi có các sự kiện diễn ra trong hệ thống. Việc gửi thông tin trực tiếp và đồng bộ giữa các thành phần sẽ làm tăng tải cho bộ xử lý thông điệp, khi […]

Chuyên mục
Công Nghệ

Message queue là gì? Cách hoạt động của Message Queue

Trong các hệ thống lớn và phân tán, đặc biệt là các hệ thống sử dụng kiến trúc Microservice thì không thể thiếu một thành phần quan trọng là Message queue. Vậy Message queue là gì, nó hoạt động ra sao và giúp giải quyết được những vấn đề gì mà các hệ thống lớn […]

Chuyên mục
Công Nghệ

Architecture Pattern – Phần 1: Các cách phân loại kiến trúc phần mềm

Trong bài này, chúng ta sẽ cùng tìm hiểu cách các kiến trúc mềm được phân loại như nào cùng ưu và nhược của từng loại. Khoá học Design System: Thiết kế hệ thống Microservice 1. Cách phân loại phổ biến Các mẫu kiến trúc phần mềm thường được chia thành hai loại chính: Kiến […]

Chuyên mục
Công Nghệ

Architecture Pattern – Phần 2: Kiến trúc phân lớp (Layered architecture)

Xin chào các bạn, đây là Series Architecture Pattern! Ở các bài trước Architecture Pattern – Phần 1, chúng ta đã tìm hiểu khái niệm và các đặc tính của kiến trúc phần mềm (software architecture) cũng như cách phân loại chúng. Trong bài này, chúng ta sẽ cùng tìm hiểu một trong số mẫu […]

Chuyên mục
Công Nghệ

Các dạng câu hỏi phổ biến trong phỏng vấn lập trình backend

Mặc dù câu hỏi phỏng vấn backend rất đa dạng, phụ thuộc vào nhu cầu của nhà tuyển dụng, nhưng sau thời gian tìm hiểu và trải nghiệm phỏng vấn từ level junior cho tới senior cũng như tham khảo bạn bè, tôi nghĩ mình hoàn toàn có thể chia những câu hỏi phỏng vấn […]

Chuyên mục
Công Nghệ

Architecture Pattern – Phần 3: Kiến trúc hướng sự kiện (Event-driven architecture)

Xin chào các bạn, đây là Series Architecture Pattern! Trong bài trước Architecture Pattern – Phần 2, tôi đã giới thiệu kiến trúc “quốc dân” là kiến trúc phân lớp (Layered Architecture). Trong bài này, chúng ta sẽ cùng tìm hiểu kiến trúc hướng sự kiện (Event-driven architecture). Đây là mẫu kiến trúc phần mềm […]

Chuyên mục
Công Nghệ

Architecture Pattern – Phần 4: Kiến trúc vi nhân (Microkernel architecture)

Xin chào các bạn, đây là Series Architecture Pattern! Trong bài trước Architecture Pattern – Phần 3, tôi đã giới thiệu kiến trúc hướng sự kiện (Event-driven architecture). Trong bài này, chúng ta sẽ cùng tìm hiểu kiến trúc vi nhân (Microkernel architecture). Đây là mẫu kiến trúc phần mềm ít phổ biến hơn hai […]

Chuyên mục
Công Nghệ

Large Language Model là gì ? Giải thích dễ hiểu

Large Language Model có nghĩa là gì? Cùng 200Lab tìm hiểu những ứng dụng của Large Language Model trong thực tếnhé. 1. Large Language Model (LLM) có nghĩa là gì? Một Large Langue Model (LLM) là một loại mô hình học máy có khả năng thực hiện nhiều nhiệm vụ xử lý ngôn ngữ tự […]

Chuyên mục
Công Nghệ

Caching là gì? Các chiến lược Caching phổ biến

Trong thế giới công nghệ thông tin, tốc độ và hiệu suất là hai yếu tố quan trọng hàng đầu đối với sự thành công của bất kỳ ứng dụng hoặc hệ thống nào. Caching là một trong những kỹ thuật tối ưu hóa hiệu suất mạnh mẽ nhất, cho phép nhanh chóng truy cập […]

Chuyên mục
Công Nghệ

Message Broker là gì? Giới Thiệu về Message Broker

Hiện nay, trong lĩnh vực phần mềm, việc phát triển các ứng dụng phức tạp và được phân tán đã trở thành một xu hướng thịnh hành. Điều này tạo ra những thách thức không nhỏ trong việc điều phối giao tiếp và chia sẻ dữ liệu giữa các bộ phận của hệ thống. Để […]

Chuyên mục
Công Nghệ

Architecture Pattern – Phần 5: Giới thiệu kiến trúc Microservice

Trong bài Architecture pattern – Phần 4, chúng ta đã tìm hiểu về kiến trúc vi nhân (microkernel architecture). Trong bài này, chúng ta sẽ cùng nhau tìm hiểu về kiến trúc đang rất nổi tiếng trong những năm trở lại đây – Microservice. Tham khảo khoá học System Design – Thiết kế hệ thống […]

Chuyên mục
Công Nghệ

Architecture Pattern – Phần 6: Kiến trúc hướng không gian (Space-based architecture)

Trong bài Architecture pattern – Phần 5, chúng ta đã tìm hiểu về kiến trúc microservices. Trong bài này, chúng ta sẽ cùng nhau tìm hiểu về kiến trúc hướng không gian (space-based architecture – SBA). Đây là phong cách kiến trúc đạt được hiệu suất nhờ loại bỏ cơ sở dữ liệu ra khỏi […]

Chuyên mục
Công Nghệ

Cách viết test hiệu quả trong Go

Tôi nhớ 2 năm đầu tiên đi làm, tôi không hề được viết tí test nào. Team chúng tôi thường rất tí tởn khi hoàn thành chức năng đúng (thậm chí là trước) deadline. Nhưng mọi thứ trở nên thật hỗn loạn khi client (luôn là tester/QA hoặc PM) thực hiện thao tác trên giao […]

Chuyên mục
Công Nghệ

Phỏng vấn Software Engineer tại Google diễn ra như thế nào?

Trong bài viết này, 200Lab sẽ đề cập đến mọi thứ bạn cần biết để chuẩn bị cho các cuộc phỏng vấn kỹ sư phần mềm tại Google. Như các bạn biết đấy Google, Facebook, Microsoft, … đã trở thành biểu tượng trong ngành IT về những đóng góp công nghệ mà họ mang lại, […]

Chuyên mục
Công Nghệ

Làm thế nào để trở thành Cloud DevOps Engineer chuyên nghiệp?

Với sự bùng nổ của điện toán đám mây (cloud computing), DevOps không chỉ giúp tối ưu hóa quy trình làm việc mà còn tạo ra những sản phẩm và dịch vụ chất lượng cao, đáp ứng nhanh chóng yêu cầu của thị trường. Vì thế, vai trò của Cloud DevOps Engineer đang trở nên […]

Chuyên mục
Công Nghệ

Concurrency pattern trong Golang – Phần 1

Trong lập trình Golang, concurrency pattern là những kỹ thuật thiết kế giúp quản lý và tổ chức code cho các tác vụ chạy đồng thời, tận dụng tối đa khả năng xử lý đồng thời của hệ thống. Các kỹ thuật này giúp giải quyết các vấn đề phức tạp liên quan đến đa […]

Chuyên mục
Công Nghệ

DevOps Cloud là gì?

Trong thế giới công nghệ thông tin ngày càng phát triển, DevOps và Cloud đã trở thành hai khái niệm không thể tách rời, giúp các doanh nghiệp nhanh chóng thích ứng với nhu cầu thay đổi liên tục. DevOps Cloud là sự kết hợp giữa văn hóa DevOps – một phương pháp nhằm cải […]

Chuyên mục
Công Nghệ

Data Envelopment Analysis (DEA) là gì? Giải thích dễ hiểu

Các tập đoàn toàn cầu nổi tiếng trong nhiều lĩnh vực chẳng hạn như gã khổng lồ trong ngành sản xuất ô tô: Toyota và Ford, tổ chức chăm sóc sức khỏe như Kaiser Permanente, tổ chức giáo dục nổi tiếng như Đại học Harvard, hay ngay cả các cơ quan chính phủ lớn, đã […]