Saturday, February 28, 2026

Mutable và Immutable khác biệt ra sao

Chào bạn mừng các bạn đã đến với blog của mình! Đối với lập trình Python, nếu bạn từng gặp trường hợp thay đổi một danh sách bên trong hàm và bất ngờ thấy danh sách gốc bên ngoài cũng... "biến hình" theo, thì chúc mừng, bạn đã chạm mặt một trong những khái niệm quan trọng nhất Python: Mutable (Khả biến)Immutable (Bất biến).

Hãy cùng mình giải mã cơ chế này để không bao giờ bị Python "lừa" nữa nhé!

Hằng số và tính bất biến trong JavaScript 

Các method trong class

Chào bạn! Nếu bạn từng bối rối không biết khi nào nên dùng self, khi nào dùng @classmethod, hay tại sao có những hàm chẳng cần dùng gì cả, thì bài viết này dành cho bạn.

Trong Python, một Class không chỉ đơn thuần là "chứa" hàm. Nó chia các hàm (phương thức) thành 3 loại "anh em" với vai trò riêng biệt. Hãy cùng bóc tách chúng nhé!

Python Class Method vs. Static Method vs. Instance Method – PYnative 

Saturday, February 21, 2026

Đa luồng (Multi-threading) và Đa tiến trình (Multi-processing)

Trong thế giới lập trình, chúng ta thường nghe về việc làm sao để chương trình chạy nhanh hơn, xử lý được nhiều việc cùng lúc hơn. Hai khái niệm "đinh" mà bất kỳ developer nào cũng cần nắm vững chính là Multi-threadingMulti-processing.

Nhưng chúng khác nhau thế nào? Khi nào dùng cái nào? Hãy cùng mình giải mã qua ví dụ về một "Nhà hàng lẩu" nhé!

Introduction to Multithreading and Multiprocessing in Python - KDnuggets 

Friday, February 20, 2026

Decorator trong python là gì?

Chào bạn! Nếu bạn từng thấy những dòng code có ký hiệu @ đứng trước một hàm trong Python và tự hỏi "Cái gì đây?", thì chúc mừng, bạn đã chạm mặt Decorator.

Đừng để cái tên mang tính "hàn lâm" này làm bạn sợ. Hãy nghĩ về Decorator như một chiếc áo khoác. Bạn vẫn là bạn, nhưng khi khoác thêm áo vào, bạn có thêm túi để đựng đồ, có thêm lớp vải để giữ ấm. Decorator giúp "mặc" thêm tính năng cho một hàm mà không cần thay đổi cấu trúc bên trong của hàm đó

Monday, February 16, 2026

Chào đón Bính Ngọ 2026

Xin chào các bạn mình là Thành IT. Mình đang viết bài này vào ngày 16/2/2026 tức ngày 29 tháng chạp năm Ất Tỵ. Đây là ngày cuối cùng của năm âm lịch 2025. Năm nay là năm thứ hai không có ngày 30 Tết nên mình cảm thấy Tết năm nay đến nhanh, không biết các bạn thấy thế nào? Năm vừa rồi các bạn thấy thế nào, khó khăn hay thuận lợi. Giờ là lúc chúng ta cùng nhau nhìn lại một năm, không phải để nuối tiếc những gì chưa làm được mà là để nhìn nhận và rút ra những bài học tránh lặp lại cho những năm tiếp theo.

Những lời chúc Tết Bính Ngọ 2026 hay, độc đáo và ý nghĩa nhất

Saturday, February 14, 2026

Lập trình hướng đối tượng (OOP): 4 "Trụ cột" mà mọi Developer cần nắm vững

Trong hành trình từ một sinh viên Học viện Kỹ thuật quân sự cho đến khi chiến đấu với các dự án thực tế với Python, dù ngôn ngữ có thay đổi thì tư duy về giải quyết vấn đề cụ thể hơn là tư duy về OOP vẫn là "xương sống" giúp code của chúng ta sạch sẽ, dễ bảo trì và mở rộng.

Hôm nay, hãy cùng mình giải mã 4 tính chất cốt lõi của OOP thông qua các ví dụ đời thường nhất nhé.

Basic OOP Concepts Explained with Code 

Thursday, February 12, 2026

Giải mã GIL trong Python: Tại sao Python không thể chạy đa nhân thực thụ?

GIL là gì?

GIL (Global Interpreter Lock) là một "chiếc khóa" quyền lực trong trình thông dịch CPython (phiên bản phổ biến nhất của Python). Nó chỉ cho phép duy nhất một thread kiểm soát trình thông dịch Python tại một thời điểm.

Nói cách khác, ngay cả khi bạn có một CPU 16 nhân, nhưng nếu bạn chạy một chương trình Python đa luồng (multithreading) để xử lý các tác vụ tính toán nặng, thì tại mỗi thời điểm chỉ có một nhân duy nhất hoạt động.

GIL (Global Interperter Lock) là cái gì và tại sao python lại dùng nó? 

Python: "Vị vua" của kỷ nguyên AI hay chỉ là một công cụ chậm chạp?

Python hiện là ngôn ngữ lập trình phổ biến nhất thế giới. Từ một kỹ sư phần mềm tại Samsung cho đến khi làm việc với các dự án Cloud AWS hiện tại, mình thấy Python luôn là lựa chọn hàng đầu. Nhưng tại sao nó lại được yêu thích đến thế, và liệu nó có hoàn hảo?

https://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzv2756ovi75wdyj0tncz.jpg