<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="text">Kiến thức lập trình ứng dụng, Website, PHP,  Java, HTML, CSS</title>
  <updated>2026-03-15T23:20:08+00:00</updated>
  <generator uri="https://getlaminas.org" version="2">Laminas_Feed_Writer</generator>
  <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net"/>
  <link rel="self" type="application/atom+xml" href="/feed.rss"/>
  <id>https://mail.xuanthulab.net</id>
  <author>
    <name>Kiến thức lập trình ứng dụng, Website, PHP,  Java, HTML, CSS</name>
    <uri>https://mail.xuanthulab.net</uri>
  </author>
  <link rel="hub" href="http://pubsubhubbub.appspot.com/"/>
  <entry>
    <title type="html"><![CDATA[PHP kết nối và làm việc với MS SQL Server]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/php-ket-noi-va-lam-viec-voi-ms-sql-server-1817.jpg' />Cài đặt các Extension SQLSRV, PDO_SQLSRV cho PHP để cung cấp khả năng PHP thực hiện được kết nối, truy vấn CSDL MS SQL Server]]></summary>
    <published>2022-12-07T03:22:09+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/php-ket-noi-va-lam-viec-voi-ms-sql-server.html"/>
    <id>https://mail.xuanthulab.net/php-ket-noi-va-lam-viec-voi-ms-sql-server.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Quy tắc @media trong CSS với thiết kế responsive]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/quy-tac-media-trong-css-voi-thiet-ke-responsive-1816.jpg' />Sử dụng quy tắc @media để viết các CSS chỉ có hiệu lực tùy thuộc vào loại màn hình, kích thước màn hình, hướng màn hình, các truy vấn media như min-width, max-width, device-width ...]]></summary>
    <published>2022-11-16T08:07:12+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/quy-tac-media-trong-css-voi-thiet-ke-responsive.html"/>
    <id>https://mail.xuanthulab.net/quy-tac-media-trong-css-voi-thiet-ke-responsive.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng Grid bố cục trang trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-grid-bo-cuc-trang-trong-css-1815.jpg' />Kích hoạt và sử dụng Grid tạo ra lưới để bố trí các phần tử trong đó, mục đích để dàn trang - bố cục trang web linh hoạt và mềm dẻo, rất nhiều thuộc tính về grid được trình bày như grid-template-columns, grid-template-rows ...]]></summary>
    <published>2022-11-15T09:39:13+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-grid-bo-cuc-trang-trong-css.html"/>
    <id>https://mail.xuanthulab.net/su-dung-grid-bo-cuc-trang-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thuộc tính transition biến đổi động các thuộc tính CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuoc-tinh-transition-bien-doi-dong-cac-thuoc-tinh-css-1814.jpg' />Sử dụng transition để thiết lập biến đổi liên tục các giá trị thuộc tính CSS tạo ra hiệu ứng động trên màn hình, liệt kê các thuộc tính động với transition-property, thời gian diễn ra hiệu ứng với transition-duration]]></summary>
    <published>2022-11-07T02:30:02+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuoc-tinh-transition-bien-doi-dong-cac-thuoc-tinh-css.html"/>
    <id>https://mail.xuanthulab.net/thuoc-tinh-transition-bien-doi-dong-cac-thuoc-tinh-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các thuộc tính left top right bottom trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-thuoc-tinh-left-top-right-bottom-trong-css-1813.jpg' />Thiết lập khoảng đệm bên trái, phải, trên, dưới trong CSS với các thuộc tính left, top, right, bottom khi phần tử trong ngữ cảnh định vị của nó như relative, absolute]]></summary>
    <published>2022-10-27T03:32:00+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-thuoc-tinh-left-top-right-bottom-trong-css.html"/>
    <id>https://mail.xuanthulab.net/cac-thuoc-tinh-left-top-right-bottom-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thuộc tính text-overflow trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuoc-tinh-text-overflow-trong-css-1812.jpg' />Sử dụng text-overflow để thiết lập ứng sử khi dòng chữ dài vượt qua kích thước rộng của phần tử chứa như thiết lập cắt bỏ nội dung tràn, thiết lập cho thêm dâu ba chấm ...]]></summary>
    <published>2022-10-24T06:32:01+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuoc-tinh-text-overflow-trong-css.html"/>
    <id>https://mail.xuanthulab.net/thuoc-tinh-text-overflow-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thuộc tính tô nền phần tử background trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuoc-tinh-to-nen-phan-tu-background-trong-css-1811.jpg' />Sử dụng thuộc tính background để tô nền phần tử với cú pháp ngắn gọn, kết hợp nhiều thuộc tính background-* thành một, ngoài ra background có thể tô nhiều lớp nền chồng lên nhau cho phần tử]]></summary>
    <published>2022-10-20T08:16:10+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuoc-tinh-to-nen-phan-tu-background-trong-css.html"/>
    <id>https://mail.xuanthulab.net/thuoc-tinh-to-nen-phan-tu-background-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thuộc tính margin trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuoc-tinh-margin-trong-css-1810.jpg' />Thiết lập khoảng cách giữa các phần tử với thuộc tính riêng lẻ margin-left, margin-top, margin-right, margin-bottom hoặc viết tổng hợp với thuộc tính margin trong CSS]]></summary>
    <published>2022-10-07T16:23:30+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuoc-tinh-margin-trong-css.html"/>
    <id>https://mail.xuanthulab.net/thuoc-tinh-margin-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thuộc tính padding trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuoc-tinh-padding-trong-css-1809.jpg' />Thuộc tính padding thiết lập khoảng không gian quanh nội dung phần tử, các thuộc tính thiết lập riêng lẻ gồm padding-top, padding-bottom, padding-left và padding-right]]></summary>
    <published>2022-10-07T10:35:22+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuoc-tinh-padding-trong-css.html"/>
    <id>https://mail.xuanthulab.net/thuoc-tinh-padding-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thuộc tính letter-spacing và word-spacing trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuoc-tinh-letter-spacing-va-word-spacing-trong-css-1808.jpg' />letter-spacing là thuộc tính dùng để thiết lập khoảng cách giữa các ký tự (các chữ) trong từ. word-spacing thiết lập khoảng cách giữa các từ (word) hoặc giữa các phần tử HTML]]></summary>
    <published>2022-10-02T05:12:59+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuoc-tinh-letter-spacing-va-word-spacing-trong-css.html"/>
    <id>https://mail.xuanthulab.net/thuoc-tinh-letter-spacing-va-word-spacing-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Giãn dòng với thuộc tính line-height trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/gian-dong-voi-thuoc-tinh-line-height-trong-css-1807.jpg' />Sử dụng thuộc tính line-height để thiết lập chiều cao box từng dòng chữ, qua đó thiết lập khoảng cách giữa các dòng chữ (giãn dòng) trong CSS]]></summary>
    <published>2022-10-02T02:07:32+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/gian-dong-voi-thuoc-tinh-line-height-trong-css.html"/>
    <id>https://mail.xuanthulab.net/gian-dong-voi-thuoc-tinh-line-height-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thuộc tính text-transform trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuoc-tinh-text-transform-trong-css-1806.jpg' />Sử dụng text-transform để chuyển đổi chữ in thường sang chũ in hoa và ngược lại trong CSS. Có thể đổi các chữ đầu tiên của từ là in hoa, hoặc bất kỳ chữ nào cũng in hoa.]]></summary>
    <published>2022-09-29T14:56:06+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuoc-tinh-text-transform-trong-css.html"/>
    <id>https://mail.xuanthulab.net/thuoc-tinh-text-transform-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cú pháp CSS cơ bản]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cu-phap-css-co-ban-1805.jpg' />Cú pháp viết code CSS, khai báo thuộc tính và thiết lập giá trị cho thuộc tính CSS, viết ghi chú (comment) trong CSS]]></summary>
    <published>2022-09-25T17:20:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cu-phap-css-co-ban.html"/>
    <id>https://mail.xuanthulab.net/cu-phap-css-co-ban.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Top-level statement trong lập trình C# .NET 6]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/top-level-statement-trong-lap-trinh-c-net-6-1804.jpg' />Tìm hiểu Top-level statement, loại bỏ hàm Main trong trong C#10 (.NET6), tìm hiểu với template mới phát sinh khung ứng dụng với lệnh dotnet, cách dịch chuyển code ASP.NET cũ sang top-level mới.]]></summary>
    <published>2022-09-21T03:21:27+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/top-level-statement-trong-lap-trinh-c-net-6.html"/>
    <id>https://mail.xuanthulab.net/top-level-statement-trong-lap-trinh-c-net-6.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thẻ <textarea> trong HTML]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/the-textarea-trong-html-1803.jpg' />Sử dụng thẻ <textarea> tạo ra điều hiển là hộp cho phép nhập văn bản text nhiều dòng trong FORM HTML]]></summary>
    <published>2022-09-18T11:55:06+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/the-textarea-trong-html.html"/>
    <id>https://mail.xuanthulab.net/the-textarea-trong-html.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thẻ <label> và thẻ <input> trong HTML]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/the-label-va-the-input-trong-html-1802.jpg' />Sử dụng thẻ <label> để tạo nhãn và liên kết với control trong FORM HTML, thẻ <input> để tạo ra các control phổ biến trong FORM HTML như: TextBox, Radio, CheckBox, Chọn File, Nhập Email, nhập URL, nhập số điện thoại ...]]></summary>
    <published>2022-09-18T11:15:26+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/the-label-va-the-input-trong-html.html"/>
    <id>https://mail.xuanthulab.net/the-label-va-the-input-trong-html.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Vấn đề các khoảng trắng whitespace trong HTML]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/van-de-cac-khoang-trang-whitespace-trong-html-1801.jpg' />Tìm hiểu về các ký tự khoảng trắng như space (spacebar), ký tự xuống dòng, ký tự tab ảnh khi viết HTML, cách trình duyệt render các khoảng trắng khi hiện thị trang web]]></summary>
    <published>2022-09-18T05:58:52+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/van-de-cac-khoang-trang-whitespace-trong-html.html"/>
    <id>https://mail.xuanthulab.net/van-de-cac-khoang-trang-whitespace-trong-html.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thẻ <div> và <span> trong HTML]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/the-div-va-span-trong-html-1800.jpg' />Thẻ <div> để phân chia nội dung trang, là loại phần tử cấp  độ block tổng quát. Thẻ <span> trong HTML là loại phần tử cấp độ inline tổng quát.]]></summary>
    <published>2022-09-18T02:46:07+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/the-div-va-span-trong-html.html"/>
    <id>https://mail.xuanthulab.net/the-div-va-span-trong-html.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các thuộc tính chung toàn cục của phần tử HTML]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-thuoc-tinh-chung-toan-cuc-cua-phan-tu-html-1799.jpg' />Sử dụng các thuộc tính global, có thể áp dụng cho mọi phần tử HTML như các thuộc tính: class, style, id, data-*,  title, hidden, draggable]]></summary>
    <published>2022-09-16T08:31:42+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-thuoc-tinh-chung-toan-cuc-cua-phan-tu-html.html"/>
    <id>https://mail.xuanthulab.net/cac-thuoc-tinh-chung-toan-cuc-cua-phan-tu-html.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lưu trữ và phục hồi biến đối tượng với hàm serialize và unserialize trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/luu-tru-va-phuc-hoi-bien-doi-tuong-voi-ham-serialize-va-unserialize-trong-php-1798.jpg' />Sử dụng hàm serialize phát sinh mảng byte của một đối tượng, biến để có thể lưu trữ dề dàng và dùng hàm unserialize để phục hồi giá trị]]></summary>
    <published>2022-09-13T07:19:01+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/luu-tru-va-phuc-hoi-bien-doi-tuong-voi-ham-serialize-va-unserialize-trong-php.html"/>
    <id>https://mail.xuanthulab.net/luu-tru-va-phuc-hoi-bien-doi-tuong-voi-ham-serialize-va-unserialize-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Debug đơn giản trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/debug-don-gian-trong-php-1797.jpg' />Để gỡ rối chương trình, truy vấn thông tin tìm lỗi một cách đơn giản bạn có thể xuất thông tin biến ra stdout với các hàm var_dump, var_export, print_r]]></summary>
    <published>2022-09-13T03:41:44+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/debug-don-gian-trong-php.html"/>
    <id>https://mail.xuanthulab.net/debug-don-gian-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các hàm kiểm tra kiểu dữ liệu của biến hủy biến trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-ham-kiem-tra-kieu-du-lieu-cua-bien-huy-bien-trong-php-1796.jpg' />Các hàm kiểm tra kiểu dữ liệu trong PHP như is_int, is_float. Hàm isset kiểm tra sự tồn tại của biến và có giá trị khác null, giá trị rỗng empty. Hủy biến trong PHP với hàm unset]]></summary>
    <published>2022-09-12T16:20:43+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-ham-kiem-tra-kieu-du-lieu-cua-bien-huy-bien-trong-php.html"/>
    <id>https://mail.xuanthulab.net/cac-ham-kiem-tra-kieu-du-lieu-cua-bien-huy-bien-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Kiểu dữ liệu trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/kieu-du-lieu-trong-php-1795.jpg' />Các kiểu dữ liệu như số nguyên int, kiểu logic boolean, số thực float ... Khai báo và sử dụng, các cách convert giá trị từ kiểu này sang kiểu khác casting type trong PHP]]></summary>
    <published>2022-09-12T06:06:19+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/kieu-du-lieu-trong-php.html"/>
    <id>https://mail.xuanthulab.net/kieu-du-lieu-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Quy ước viết tên trong lập trình]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/quy-uoc-viet-ten-trong-lap-trinh-1794.jpg' />Tim hiểu một số quy ước định dạng khi viết tên biến, tên hàm, tên lớp trong lập trình như Camel Case, Snake Case, Kebab Case, công cụ convert giữa các quy ước đặt tên]]></summary>
    <published>2022-09-10T07:31:09+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/quy-uoc-viet-ten-trong-lap-trinh.html"/>
    <id>https://mail.xuanthulab.net/quy-uoc-viet-ten-trong-lap-trinh.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các hằng số ma thuật trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-hang-so-ma-thuat-trong-php-1793.jpg' />Tìm hiểu các hằng số mà giá trị tùy thuộc vào nơi nó được dùng trong PHP, như: __LINE__, __FILE__, __DIR__, __FUNCTION__, __CLASS__ ,__TRAIT__, __METHOD__ ,__NAMESPACE__, ClassName::class]]></summary>
    <published>2022-09-09T14:59:12+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-hang-so-ma-thuat-trong-php.html"/>
    <id>https://mail.xuanthulab.net/cac-hang-so-ma-thuat-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Giao diện interface trong lập trình PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/giao-dien-interface-trong-lap-trinh-php-1792.jpg' />Cách khai báo giao diện interface trong lập trình hướng đối tượng OOP với PHP, triển khai giao diện với từ khóa implements]]></summary>
    <published>2022-09-09T02:31:07+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/giao-dien-interface-trong-lap-trinh-php.html"/>
    <id>https://mail.xuanthulab.net/giao-dien-interface-trong-lap-trinh-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lớp và phương thức abstract trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lop-va-phuong-thuc-abstract-trong-php-1791.jpg' />Khái niệm về lớp và phương thức trừu tượng, khai báo lớp phương thức trừu tượng với từ khóa abstract trong PHP, ví dụ sử dụng lớp trừu tượng]]></summary>
    <published>2022-09-08T16:28:22+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lop-va-phuong-thuc-abstract-trong-php.html"/>
    <id>https://mail.xuanthulab.net/lop-va-phuong-thuc-abstract-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tính kế thừa trong lập trình OOP với PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tinh-ke-thua-trong-lap-trinh-oop-voi-php-1790.jpg' />Tìm hiểu tính kế thừa trong lập trình hướng đối tượng với PHP, khái niệm về lớp cha, lớp con, nạp chồng phương thức, lớp con gọi phương thức lớp cha và các lớp phương thức final]]></summary>
    <published>2022-09-08T14:55:42+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tinh-ke-thua-trong-lap-trinh-oop-voi-php.html"/>
    <id>https://mail.xuanthulab.net/tinh-ke-thua-trong-lap-trinh-oop-voi-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Hàm tạo và hàm hủy của lớp trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/ham-tao-va-ham-huy-cua-lop-trong-php-1789.jpg' />Khai báo phương thức khởi tạo __construct trong lớp PHP, phương thức tự động chạy khi đối tượng khởi tạo,
phương thức hủy __destruct tự động chạy khi đối tượng bị hủy. Cách tạo đối tượng mới với static, hàm factory]]></summary>
    <published>2022-09-08T05:53:21+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/ham-tao-va-ham-huy-cua-lop-trong-php.html"/>
    <id>https://mail.xuanthulab.net/ham-tao-va-ham-huy-cua-lop-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lớp (class) và đối tượng trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lop-class-va-doi-tuong-trong-php-1788.jpg' />Khái niệm về lớp (class), cách khai báo lớp, tạo ra các phương thức, thuộc tính của lớp. Khởi tạo đối tượng mới từ lớp, truy cập các thuộc tính, phương thức, hằng số lớp PHP]]></summary>
    <published>2022-09-07T15:51:28+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lop-class-va-doi-tuong-trong-php.html"/>
    <id>https://mail.xuanthulab.net/lop-class-va-doi-tuong-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Phương thức __invoke __call __callStatic trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/phuong-thuc-invoke-call-callstatic-trong-php-1787.jpg' />Tìm hiểu phương thức magic khai báo trong lớp như __invoke thi hành lớp như một hàm, __call và __callStatic chạy khi truy cập một phương thức không được định nghĩa trong lớp.]]></summary>
    <published>2022-09-05T13:14:18+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/phuong-thuc-invoke-call-callstatic-trong-php.html"/>
    <id>https://mail.xuanthulab.net/phuong-thuc-invoke-call-callstatic-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Hàm ẩn danh Anonymous function và hàm mũi tên Arrow function trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/ham-an-danh-anonymous-function-va-ham-mui-ten-arrow-function-trong-php-1786.jpg' />Cách viết biểu thức lambda tronng PHP, các hàm ẩn danh anonymous function và hàm mũi tên arrow function, một số minh họa khai báo, gọi thi hành hàm ẩn danh]]></summary>
    <published>2022-09-05T07:05:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/ham-an-danh-anonymous-function-va-ham-mui-ten-arrow-function-trong-php.html"/>
    <id>https://mail.xuanthulab.net/ham-an-danh-anonymous-function-va-ham-mui-ten-arrow-function-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Hàm exit die trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/ham-exit-die-trong-php-1785.jpg' />Sử dụng hàm exit và die để kết thúc ngay lập tức scrip php đang thực thi, hàm register_shutdown_function đăng ký hàm shutdown tự động chạy khi một script php kết thúc]]></summary>
    <published>2022-09-03T15:51:36+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/ham-exit-die-trong-php.html"/>
    <id>https://mail.xuanthulab.net/ham-exit-die-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thẻ <select> và <option> trong HTML]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/the-select-va-option-trong-html-1784.jpg' />Sử dụng thẻ select để tạo menu thả xuống, danh sách thả xuống dropdown list, ví dụ phát sinh dropdown list menu bằng PHP]]></summary>
    <published>2022-09-02T03:02:20+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/the-select-va-option-trong-html.html"/>
    <id>https://mail.xuanthulab.net/the-select-va-option-trong-html.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Hàm filter_input và filter_var trong PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/ham-filter-input-va-filter-var-trong-php-1783.jpg' />Tìm hiểu về kiểm tra xác thực dữ liệu phù hợp và lọc, biến đổi dữ liệu trong PHP với hàm filter_var, kiểm tra và lọc dữ liệu gửi đến với filter_input]]></summary>
    <published>2022-08-31T03:42:48+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/ham-filter-input-va-filter-var-trong-php.html"/>
    <id>https://mail.xuanthulab.net/ham-filter-input-va-filter-var-trong-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Kiểu dữ liệu trong SQL Server]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/kieu-du-lieu-trong-sql-server-1782.jpg' />Tìm hiểu các kiểu dữ liệu như kiểu dữ liệu dạng số chính xác (số nguyên ...), số thực,  kiểu ngày tháng và chuỗi ký tự trong SQL Server]]></summary>
    <published>2022-08-29T02:24:47+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/kieu-du-lieu-trong-sql-server.html"/>
    <id>https://mail.xuanthulab.net/kieu-du-lieu-trong-sql-server.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Kiểu dữ liệu trong MySQL]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/kieu-du-lieu-trong-mysql-1781.jpg' />Tìm hiểu các kiểu dữ liệu data type trong MySQL, kiểu dạng số như int, double, float, decimal, kiểu dữ liệu ngày tháng trong MySQL như datetime, chuỗi như varchar, text ...]]></summary>
    <published>2022-08-28T15:59:12+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/kieu-du-lieu-trong-mysql.html"/>
    <id>https://mail.xuanthulab.net/kieu-du-lieu-trong-mysql.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[HTTPBin server cung cấp dịch vụ nhận HTTP request để kiểm tra]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/httpbin-server-cung-cap-dich-vu-nhan-http-request-de-kiem-tra-1780.jpg' />Sử dụng HTTPBin để kiểm tra dữ liệu bạn gửi đi bằng giao thức HTTP, kiểm tra Submit (gửi) form HTML, gửi truy vấn khi bạn sử dụng các HTTP Client]]></summary>
    <published>2022-08-27T07:34:31+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/httpbin-server-cung-cap-dich-vu-nhan-http-request-de-kiem-tra.html"/>
    <id>https://mail.xuanthulab.net/httpbin-server-cung-cap-dich-vu-nhan-http-request-de-kiem-tra.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Mệnh đề DROP TABLE xóa bảng khỏi DB SQL]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/menh-de-drop-table-xoa-bang-khoi-db-sql-1779.jpg' />Thực hiện lệnh DROP TABLE xóa toàn bộ cấu trúc bảng, dữ liệu, dàng buộc của bảng khỏi CSDL tronng SQL.]]></summary>
    <published>2022-08-22T03:43:04+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/menh-de-drop-table-xoa-bang-khoi-db-sql.html"/>
    <id>https://mail.xuanthulab.net/menh-de-drop-table-xoa-bang-khoi-db-sql.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài đặt và sử dụng OPCache để tối ưu tốc độ ứng dụng website chạy bằng PHP]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-dat-va-su-dung-opcache-de-toi-uu-toc-do-ung-dung-website-chay-bang-php-1778.jpg' />Kích hoạt OPcache trong PHP trong, cấu hình để lưu cache mã nguồn PHP đã biên dịch để tăng tốc ứng dụng  website]]></summary>
    <published>2022-08-17T07:56:13+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-dat-va-su-dung-opcache-de-toi-uu-toc-do-ung-dung-website-chay-bang-php.html"/>
    <id>https://mail.xuanthulab.net/cai-dat-va-su-dung-opcache-de-toi-uu-toc-do-ung-dung-website-chay-bang-php.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Công cụ chọn màu theo bánh xe màu sắc. - ColorWheel]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cong-cu-chon-mau-theo-banh-xe-mau-sac-colorwheel-1777.jpg' />Sử dụng công cụ để chọn các màu phối hợp với nhau, như các màu tương phản, màu tương tự,  tương phản T, tam giác ...]]></summary>
    <published>2022-02-19T08:51:07+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cong-cu-chon-mau-theo-banh-xe-mau-sac-colorwheel.html"/>
    <id>https://mail.xuanthulab.net/cong-cu-chon-mau-theo-banh-xe-mau-sac-colorwheel.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Phối màu 60-30-10 quy luật cơ bản trong trang trí thiết kế nội thất]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/phoi-mau-60-30-10-quy-luat-co-ban-trong-trang-tri-thiet-ke-noi-that-1776.jpg' />Quy luật phối màu 60-30-10 là những nguyên tắc phối màu cơ bản trong thiết kế nội thất giúp bạn chọn được cách phối màu trong thiết kế với không gian nội thất cụ thể.]]></summary>
    <published>2022-02-18T08:07:47+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/phoi-mau-60-30-10-quy-luat-co-ban-trong-trang-tri-thiet-ke-noi-that.html"/>
    <id>https://mail.xuanthulab.net/phoi-mau-60-30-10-quy-luat-co-ban-trong-trang-tri-thiet-ke-noi-that.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Phối màu sắc cho căn phòng của bạn]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/phoi-mau-sac-cho-can-phong-cua-ban-1775.jpg' />Bạn yêu thích màu sắc nào trong thiết kế nội thất? Hãy duyệt qua các gợi ý đưa ra cho bạn để chọn màu thích hợp nhất.]]></summary>
    <published>2022-02-18T07:53:06+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/phoi-mau-sac-cho-can-phong-cua-ban.html"/>
    <id>https://mail.xuanthulab.net/phoi-mau-sac-cho-can-phong-cua-ban.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Ý nghĩa của màu sắc trong thiết kế nội thất]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/y-nghia-cua-mau-sac-trong-thiet-ke-noi-that-1774.jpg' />Trong thiết kế nội thất ý nghĩa màu sắc đề cập đến tác dụng tâm lý, tình cảm và sức khỏe của người sống trong không gian nội thất đó, vậy màu sắc có các ý nghĩa như thế nào.]]></summary>
    <published>2022-02-18T07:26:01+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/y-nghia-cua-mau-sac-trong-thiet-ke-noi-that.html"/>
    <id>https://mail.xuanthulab.net/y-nghia-cua-mau-sac-trong-thiet-ke-noi-that.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tỷ lệ vàng ứng dụng trong thiết kế nội thất kiến trúc và kiểu dáng mỹ thuật]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/ty-le-vang-ung-dung-trong-thiet-ke-noi-that-kien-truc-va-kieu-dang-my-thuat-1773.jpg' />Tỷ lệ thiết kế là yếu tố trong nguyên lý thiết kế, tìm hiểu tỷ lệ vàng trong kiến trúc để chọn được tương quan hợp lý các yếu tố trong tổng thể công trình kiến trúc, nội thất, mỹ thuật.]]></summary>
    <published>2022-02-18T04:55:21+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/ty-le-vang-ung-dung-trong-thiet-ke-noi-that-kien-truc-va-kieu-dang-my-thuat.html"/>
    <id>https://mail.xuanthulab.net/ty-le-vang-ung-dung-trong-thiet-ke-noi-that-kien-truc-va-kieu-dang-my-thuat.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Bánh xe màu sắc và ứng dụng trong phối màu nội thất và thời trang]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/banh-xe-mau-sac-va-ung-dung-trong-phoi-mau-noi-that-va-thoi-trang-1772.jpg' />Tìm hiểu khái niệm về bánh xe màu sắc (vòng tròn màu) vận dụng phối màu trang trí, thiết kế nội thất, kết hợp màu sắc thiết kế, nhằm tạo ra không gian nội thất ấn tượng và hài hòa.]]></summary>
    <published>2022-02-17T14:14:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/banh-xe-mau-sac-va-ung-dung-trong-phoi-mau-noi-that-va-thoi-trang.html"/>
    <id>https://mail.xuanthulab.net/banh-xe-mau-sac-va-ung-dung-trong-phoi-mau-noi-that-va-thoi-trang.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Quy luật cơ bản trong thiết kế nội thất và kiến trúc nguyên lý thiết kế]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/quy-luat-co-ban-trong-thiet-ke-noi-that-va-kien-truc-nguyen-ly-thiet-ke-1771.jpg' />Các quy luật cơ bản trong thiết kế nội thất và thiết kế kiến trúc nhà ở đó là luật về sự cân bằng, nhịp điệu, nhấn mạnh, hài hòa, tương xứng và tỉ lệ]]></summary>
    <published>2022-02-17T13:56:41+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/quy-luat-co-ban-trong-thiet-ke-noi-that-va-kien-truc-nguyen-ly-thiet-ke.html"/>
    <id>https://mail.xuanthulab.net/quy-luat-co-ban-trong-thiet-ke-noi-that-va-kien-truc-nguyen-ly-thiet-ke.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế cái cày Halasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-cai-cay-halasana-1770.jpg' />Thực hành tư thế Halasana, cái cày, tư thế này có tác dụng rất tôt để chống bệnh đau lưng, sưng khớp vùng lưng và vùng háng]]></summary>
    <published>2022-02-17T07:13:31+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-cai-cay-halasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-cai-cay-halasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài đặt và cấu hình vhost trong Nginx trên CentOS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-dat-va-cau-hinh-vhost-trong-nginx-tren-centos-1769.jpg' />Cài đặt máy chủ Nginx trên CentOS, một số cấu hình cơ bản cho nginx]]></summary>
    <published>2022-01-23T15:46:37+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-dat-va-cau-hinh-vhost-trong-nginx-tren-centos.html"/>
    <id>https://mail.xuanthulab.net/cai-dat-va-cau-hinh-vhost-trong-nginx-tren-centos.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài đặt và cấu hình VirtualHost cho máy chủ Httpd Apache]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-dat-va-cau-hinh-virtualhost-cho-may-chu-httpd-apache-1768.jpg' />Cài đặt máy chủ Apache Httpd trên Centos, một số cấu hình tạo VirtualHost cho máy chủ]]></summary>
    <published>2022-01-23T09:31:25+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-dat-va-cau-hinh-virtualhost-cho-may-chu-httpd-apache.html"/>
    <id>https://mail.xuanthulab.net/cai-dat-va-cau-hinh-virtualhost-cho-may-chu-httpd-apache.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tạo các Requirement và Authorization handler chứng thực quyền truy cập Authorize trong ASP.NET Core]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tao-cac-requirement-va-authorization-handler-chung-thuc-quyen-truy-cap-authorize-trong-asp-net-core-1767.jpg' />Tim hiểu về các Requirement, tạo các Requirement và khai báo sử dụng nó trong các policy, tạo ra Authorization handler kiểm tra user có phù hợp với requirement]]></summary>
    <published>2021-08-15T09:06:33+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tao-cac-requirement-va-authorization-handler-chung-thuc-quyen-truy-cap-authorize-trong-asp-net-core.html"/>
    <id>https://mail.xuanthulab.net/tao-cac-requirement-va-authorization-handler-chung-thuc-quyen-truy-cap-authorize-trong-asp-net-core.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sao lưu và phục hồi database trong SQL Server]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/sao-luu-va-phuc-hoi-database-trong-sql-server-1766.jpg' />Thực hiện sao lưu full backup csdl với lệnh BACKUP DATABASE, lưu thành file .bak và phục hồi với lệnh RESTORE DATABASE]]></summary>
    <published>2021-07-06T15:42:38+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/sao-luu-va-phuc-hoi-database-trong-sql-server.html"/>
    <id>https://mail.xuanthulab.net/sao-luu-va-phuc-hoi-database-trong-sql-server.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Kiểm tra và thu gọn file data file log của Database trong SQL Server]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/kiem-tra-va-thu-gon-file-data-file-log-cua-database-trong-sql-server-1765.jpg' />Các truy vấn T-SQL thực hiện kiểm tra kích thước file của database, kiểm tra kích thước các bảng trong SQL Server, thực hiện thu gọn với SHRINKDATABASE và SHRINKFILE, kiểm tra các query đang chạy]]></summary>
    <published>2021-07-06T08:49:14+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/kiem-tra-va-thu-gon-file-data-file-log-cua-database-trong-sql-server.html"/>
    <id>https://mail.xuanthulab.net/kiem-tra-va-thu-gon-file-data-file-log-cua-database-trong-sql-server.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ADO.NET) DataAdapter DataSet và DataTable tìm hiểu và sử dụng]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/ado-net-dataadapter-dataset-va-datatable-tim-hieu-va-su-dung-1764.jpg' />Tìm hiểu cấu trúc lớp biểu diễn cấu trúc cơ sở dữ liệu, dữ liệu bảng với DataTable và DataSet, khai báo SqlDataAdapter là cầu nối để tương tác với nguồn dữ liệu, ánh xạ dữ liệu trong bộ nhớ và CSDL thực tế]]></summary>
    <published>2021-03-07T13:39:55+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/ado-net-dataadapter-dataset-va-datatable-tim-hieu-va-su-dung.html"/>
    <id>https://mail.xuanthulab.net/ado-net-dataadapter-dataset-va-datatable-tim-hieu-va-su-dung.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lớp Uri Dns Ping và các lớp về Networking trong lập trình C# NET Core]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lop-uri-dns-ping-va-cac-lop-ve-networking-trong-lap-trinh-c-net-core-1763.jpg' />Sử dụng lớp Uri, Dns trong C#, kiểm tra phản hồi của Server với Ping và các thư viện về Networking trong .NET với C#]]></summary>
    <published>2021-02-20T06:33:07+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lop-uri-dns-ping-va-cac-lop-ve-networking-trong-lap-trinh-c-net-core.html"/>
    <id>https://mail.xuanthulab.net/lop-uri-dns-ping-va-cac-lop-ve-networking-trong-lap-trinh-c-net-core.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Địa chỉ URL (URI URN) đường dẫn URL trang web và file]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/dia-chi-url-uri-urn-duong-dan-url-trang-web-va-file-1762.jpg' />Tìm hiểu về URI - địa chỉ xác định tài nguyên trong các truy vấn HTTP, cấu trúc địa chỉ URL,  địa URL website, URL tương đối, tuyệt đối trong HTML và CSS]]></summary>
    <published>2021-02-19T07:06:56+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/dia-chi-url-uri-urn-duong-dan-url-trang-web-va-file.html"/>
    <id>https://mail.xuanthulab.net/dia-chi-url-uri-urn-duong-dan-url-trang-web-va-file.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Giao thức HTTP và cấu trúc cơ bản của HTTP Message]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/giao-thuc-http-va-cau-truc-co-ban-cua-http-message-1761.jpg' />Tìm hiểu về giao thức HTTP (Hypertext Transfer Protocol), cấu trúc của Request và Response, một số header thông dụng trong HTTP Message]]></summary>
    <published>2021-02-15T18:34:23+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/giao-thuc-http-va-cau-truc-co-ban-cua-http-message.html"/>
    <id>https://mail.xuanthulab.net/giao-thuc-http-va-cau-truc-co-ban-cua-http-message.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Code C# chuyển số thành chữ]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/code-c-chuyen-so-thanh-chu-1760.jpg' />Chia sẽ mã nguồn C# có chức năng chuyển đổi số nhập vào thành chữ,  dễ sử dụng cho các ứng dụng tạo hóa đơn, chứng từ để đổi số tiền ra văn bản chữ]]></summary>
    <published>2021-01-19T09:18:19+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/code-c-chuyen-so-thanh-chu.html"/>
    <id>https://mail.xuanthulab.net/code-c-chuyen-so-thanh-chu.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng Varnish Cache để tăng tốc ứng dụng web]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-varnish-cache-de-tang-toc-ung-dung-web-1759.jpg' />Tìm hiểu Varnish Cache, hướng dẫn cài đặt trên CentOS, cấu hình làm việc với Nginx, tăng tốc ứng dụng web có sử dụng SSL (https)]]></summary>
    <published>2020-11-30T15:26:10+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-varnish-cache-de-tang-toc-ung-dung-web.html"/>
    <id>https://mail.xuanthulab.net/su-dung-varnish-cache-de-tang-toc-ung-dung-web.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Triển khai ứng dụng ASP.NET trên Server Linux với Kestrel Apache Nginx]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-trien-khai-ung-dung-asp-net-tren-server-linux-voi-kestrel-apache-nginx-1758.jpg' />Tìm hiểu và cấu hình máy chủ http Kestrel, máy chủ mặc định chạy cùng ứng dụng ASP.NET Core, publish ứng dụng và triển khai trên server linux với proxy là Apache hoặc Linux, cấu hình https cho ứng dụng ASP.NET]]></summary>
    <published>2020-10-22T13:41:13+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-trien-khai-ung-dung-asp-net-tren-server-linux-voi-kestrel-apache-nginx.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-trien-khai-ung-dung-asp-net-tren-server-linux-voi-kestrel-apache-nginx.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Giới thiệu một số admin template và tích hợp SB Admin]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-gioi-thieu-mot-so-admin-template-va-tich-hop-sb-admin-1757.jpg' />Một số mẫu giao diện HTML miễn phí cho trang quản trị admin, thực hành tích hợp SB Admin vào website asp.net]]></summary>
    <published>2020-10-15T16:31:30+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-gioi-thieu-mot-so-admin-template-va-tich-hop-sb-admin.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-gioi-thieu-mot-so-admin-template-va-tich-hop-sb-admin.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Tích hợp trình quản lý file vào website]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-tich-hop-trinh-quan-ly-file-vao-website-1756.jpg' />Hướng dẫn từng bước tích hợp thư viện quản lý file elFinder vào Asp.net MVC, cho phép  quản lý các file upload, tích hợp với công cụ soạn thảo summernote]]></summary>
    <published>2020-10-14T06:37:57+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-tich-hop-trinh-quan-ly-file-vao-website.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-tich-hop-trinh-quan-ly-file-vao-website.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core) Sử dụng công cụ LibMan lấy thư viện client-side]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-su-dung-cong-cu-libman-lay-thu-vien-client-side-1755.jpg' />Cài đặt và sử dụng công cụ tải về thư viện client-side css, js như bootstrap, jquery từ các nguồn CDN như cdnjs, unpkg để tích hợp vào dự án website asp.net core]]></summary>
    <published>2020-10-12T18:40:00+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-su-dung-cong-cu-libman-lay-thu-vien-client-side.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-su-dung-cong-cu-libman-lay-thu-vien-client-side.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Xây dựng giỏ hàng Cart với .NET Core]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-xay-dung-gio-hang-cart-voi-net-core-1754.jpg' />Xây dựng các chức năng về giỏ hàng  sử dụng Session, đưa sản phẩm vào giỏ hàng, cập nhật giỏ hàng cart trong ứng dụng web asp.net core mvc]]></summary>
    <published>2020-10-12T09:33:58+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-gio-hang-cart-voi-net-core.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-gio-hang-cart-voi-net-core.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Xây dựng ứng dụng mẫu - Trang hiện thị các bài viết (phần 4)]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-xay-dung-ung-dung-mau-trang-hien-thi-cac-bai-viet-phan-4-1753.jpg' />Xây dựng các trang hiện thị bài viết tới người dùng cuối, gồm duyệt các danh mục và xem chi tiết bài viết]]></summary>
    <published>2020-10-10T14:53:03+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-ung-dung-mau-trang-hien-thi-cac-bai-viet-phan-4.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-ung-dung-mau-trang-hien-thi-cac-bai-viet-phan-4.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core) Sử dụng gulp.js build SCSS (SASS) thành CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-su-dung-gulp-js-build-scss-sass-thanh-css-1752.jpg' />Cài đặt và cấu hình gulp trong dự án ASP.NET Core để tự động build mã nguồn SASS (SCSS) thành CSS]]></summary>
    <published>2020-10-08T07:35:22+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-su-dung-gulp-js-build-scss-sass-thanh-css.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-su-dung-gulp-js-build-scss-sass-thanh-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Xây dựng ứng dụng mẫu - Các bài Post của Blog (phần 3)]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-xay-dung-ung-dung-mau-cac-bai-post-cua-blog-phan-3-1751.jpg' />Thêm Model biểu diễn các bài viết (Post) của Blog vào ứng dụng, tạo các chức năng quản lý Post như tạo mới, cập nhật, xóa bài viết. Các Post có quan hệ nhiều nhiều với bảng danh mục Category]]></summary>
    <published>2020-10-06T09:47:02+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-ung-dung-mau-cac-bai-post-cua-blog-phan-3.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-ung-dung-mau-cac-bai-post-cua-blog-phan-3.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Xây dựng ứng dụng mẫu - Tích hợp HTML Editor Summernote (phần 2)]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-xay-dung-ung-dung-mau-tich-hop-html-editor-summernote-phan-2-1750.jpg' />Tích hợp HTML Editor (WYSIWYG HTML) vào trang web ASP.NET MVC Core, sử dụng Summernote Editor]]></summary>
    <published>2020-10-02T12:21:35+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-ung-dung-mau-tich-hop-html-editor-summernote-phan-2.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-ung-dung-mau-tich-hop-html-editor-summernote-phan-2.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Xây dựng ứng dụng mẫu - Danh mục của Blog (phần 1)]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-xay-dung-ung-dung-mau-danh-muc-cua-blog-phan-1-1749.jpg' />Từng bước xây dựng Website mẫu với ASP.NET Core MVC, phần này xây dựng danh mục để chuẩn bị cho một  Website là một blog đăng các bài viết]]></summary>
    <published>2020-09-30T13:37:39+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-ung-dung-mau-danh-muc-cua-blog-phan-1.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-xay-dung-ung-dung-mau-danh-muc-cua-blog-phan-1.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Binding và Validation dữ liệu submit trong ASP.NET]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-binding-va-validation-du-lieu-submit-trong-asp-net-1748.jpg' />Tìm hiểu cơ chế binding model của Asp.net core, sử dụng  các thuộc tính BindProperty, FromPost ... Binding model với dữ liệu phức tạp, kiểm tra sự phù hợp của dữ liệu Model]]></summary>
    <published>2020-09-29T04:17:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-binding-va-validation-du-lieu-submit-trong-asp-net.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-binding-va-validation-du-lieu-submit-trong-asp-net.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Tích hợp Entity Framework và Identity]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-tich-hop-entity-framework-va-identity-1747.jpg' />Hướng dẫn tích hợp thư viện Entity Framework vào ASP.NET MVC để truy cập đến cơ sở dữ liệu, tích hợp Identity để có chức năng quản lý User, đăng nhập, xác  thực ...]]></summary>
    <published>2020-09-24T01:55:44+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-tich-hop-entity-framework-va-identity.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-tich-hop-entity-framework-va-identity.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core MVC) Chi tiết về route trong asp.net mvc]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-mvc-chi-tiet-ve-route-trong-asp-net-mvc-1746.jpg' />Chi tiết hơn về cấu hình và tạo các route trong asp.net mvc, tích hợp razor page vào mvc, tạo route với thuộc tính [Route], [HttpGet], [HttpPost], thiết lập Http Method cho Action với AcceptVerbs]]></summary>
    <published>2020-09-19T17:24:54+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-mvc-chi-tiet-ve-route-trong-asp-net-mvc.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-mvc-chi-tiet-ve-route-trong-asp-net-mvc.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Sử dụng IAuthorizationService chứng thực quyền Identity]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-su-dung-iauthorizationservice-chung-thuc-quyen-identity-1745.jpg' />Sử dụng trực tiếp dịch vụ IAuthorizationService để xác định quyền trong Identity]]></summary>
    <published>2020-09-18T15:24:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-su-dung-iauthorizationservice-chung-thuc-quyen-identity.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-su-dung-iauthorizationservice-chung-thuc-quyen-identity.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Chứng thực quyền của User theo RoleClaim]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-chung-thuc-quyen-cua-user-theo-roleclaim-1743.jpg' />Sử dụng Authorize thiết lập dùng policy kiểm tra xem User có các RoleClaim phù hợp để thực hiện tác vụ]]></summary>
    <published>2020-09-18T01:49:11+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-chung-thuc-quyen-cua-user-theo-roleclaim.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-chung-thuc-quyen-cua-user-theo-roleclaim.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Sử dụng thuộc tính Authorize chứng thực quyền truy cập theo Role]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-su-dung-thuoc-tinh-authorize-chung-thuc-quyen-truy-cap-theo-role-1742.jpg' />Hướng dẫn xác định quyền truy cập tới trang Razor Page, Controller, Action của Asp.net sử dụng thuộc tính Authorize để chứng thực theo Role - Role-based Authorization]]></summary>
    <published>2020-09-17T06:38:21+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-su-dung-thuoc-tinh-authorize-chung-thuc-quyen-truy-cap-theo-role.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-su-dung-thuoc-tinh-authorize-chung-thuc-quyen-truy-cap-theo-role.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Xây dựng chức năng quản lý Role  gán role cho User trong ASP.NET]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-xay-dung-chuc-nang-quan-ly-role-gan-role-cho-user-trong-asp-net-1741.jpg' />Giới thiệu về Role và dịch vụ quản lý các role RoleManager, xây dựng chức năng quản lý role (thêm, xóa) và gán role cho User]]></summary>
    <published>2020-09-16T16:02:32+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-xay-dung-chuc-nang-quan-ly-role-gan-role-cho-user-trong-asp-net.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-xay-dung-chuc-nang-quan-ly-role-gan-role-cho-user-trong-asp-net.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Tạo partial phân trang HTML BootStrap trong ASP.NET truy vấn phân trang  LINQ]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-tao-partial-phan-trang-html-bootstrap-trong-asp-net-truy-van-phan-trang-linq-1740.jpg' />Hướng dẫn tạo partial phát sinh HTML điều hướng trang, HTML sử  dụng CSS trình bày paging trong Bootstrap, lưu ý  khi  sử  dụng LINQ để truy vấn lấy phần tử  theo  trang]]></summary>
    <published>2020-09-16T08:24:21+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-tao-partial-phan-trang-html-bootstrap-trong-asp-net-truy-van-phan-trang-linq.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-tao-partial-phan-trang-html-bootstrap-trong-asp-net-truy-van-phan-trang-linq.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Các trang quản lý tài khoản cá nhân trong Identity]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-cac-trang-quan-ly-tai-khoan-ca-nhan-trong-identity-1739.jpg' />Tìm hiểu và tùy biến các trang để quản lý tài khoản cá nhân, thêm trường dữ liệu và bảng User (model User) của Identity, thực hiện cập nhật profile, đổi passowrd, đổi email và quản lý đăng nhập Facebook, Google]]></summary>
    <published>2020-09-14T04:10:25+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-cac-trang-quan-ly-tai-khoan-ca-nhan-trong-identity.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-cac-trang-quan-ly-tai-khoan-ca-nhan-trong-identity.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Sử dụng Facebook để xác thực đăng nhập trong Identity]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-su-dung-facebook-de-xac-thuc-dang-nhap-trong-identity-1738.jpg' />Hướng dẫn tạo ứng dụng Facebook có tính năng đăng nhập từ Facebook, tích hợp đăng nhập Facebook vào ASP.NET Core Identity]]></summary>
    <published>2020-09-13T04:11:09+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-su-dung-facebook-de-xac-thuc-dang-nhap-trong-identity.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-su-dung-facebook-de-xac-thuc-dang-nhap-trong-identity.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Sử dụng tài khoản Google để xác thực trong Identity]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-su-dung-tai-khoan-google-de-xac-thuc-trong-identity-1737.jpg' />(Identity 3) Hướng dẫn cấu hình sử dụng dịch vụ ngoài để xác thực trong Identity, đăng ký OAuth của Google áp dụng vào dự án, tùy biến trang ExternalLogin của Identity]]></summary>
    <published>2020-09-12T17:41:27+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-su-dung-tai-khoan-google-de-xac-thuc-trong-identity.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-su-dung-tai-khoan-google-de-xac-thuc-trong-identity.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Tính năng lockout và lấy lại mật khẩu trong Identity]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-tinh-nang-lockout-va-lay-lai-mat-khau-trong-identity-1736.jpg' />(Identity phần 2) Sử dụng tính năng lockout tạm thời khóa đăng nhập khi quá trình xác thực thất bại nhiều lần và tính năng để người dùng đặt lại mật khẩu khi bị quyên]]></summary>
    <published>2020-09-12T04:16:01+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-tinh-nang-lockout-va-lay-lai-mat-khau-trong-identity.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-tinh-nang-lockout-va-lay-lai-mat-khau-trong-identity.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Core) Gửi Mail trong ứng dụng Web Asp.net]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-core-gui-mail-trong-ung-dung-web-asp-net-1735.jpg' />Tìm hiểu cách sử dụng SmtpClient để gửi mail trong ứng dụng Web ASP.NET, cấu hình sử dụng Gmail để gửi thư, sử dụng MailKit]]></summary>
    <published>2020-09-09T14:53:35+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-core-gui-mail-trong-ung-dung-web-asp-net.html"/>
    <id>https://mail.xuanthulab.net/asp-net-core-gui-mail-trong-ung-dung-web-asp-net.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Sử dụng Identity để tạo user xác thực đăng nhập website]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-su-dung-identity-de-tao-user-xac-thuc-dang-nhap-website-1734.jpg' />(Identity phần 1) Giới thiệu Identity hệ thống quản lý User, quản lý quá trình xác thực đăng nhập, xây dựng ứng dụng với chức năng đăng ký tài khoản, login/logout  của ASP.NET, cấu hình Identity lockout khóa user nếu đăng nhập thất bại nhiều lần]]></summary>
    <published>2020-09-08T16:55:19+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-su-dung-identity-de-tao-user-xac-thuc-dang-nhap-website.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-su-dung-identity-de-tao-user-xac-thuc-dang-nhap-website.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Lớp HtmlHelper tạo html trong Razor]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-lop-htmlhelper-tao-html-trong-razor-1733.jpg' />Tìm hiểu lớp HtmlHelper, truy cập nó qua thuộc tính Html trong View, dùng để dựng mã HTML nhanh chóng]]></summary>
    <published>2020-09-07T03:10:38+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-lop-htmlhelper-tao-html-trong-razor.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-lop-htmlhelper-tao-html-trong-razor.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Ứng dụng EF làm việc với cơ sở dữ liệu]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-ung-dung-ef-lam-viec-voi-co-so-du-lieu-1732.jpg' />Tích hợp Entity Framework vào ứng dụng Web ASP.NET Core để kết nối và làm việc với CSDL như SQL Server]]></summary>
    <published>2020-09-06T09:53:31+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-ung-dung-ef-lam-viec-voi-co-so-du-lieu.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-ung-dung-ef-lam-viec-voi-co-so-du-lieu.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Upload file trong Razor Page với IFormFile]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-upload-file-trong-razor-page-voi-iformfile-1731.jpg' />Thực hiện upload một file, nhiều file trong Razor Page, binding file upload với thuộc tính Model bằng IFormFile]]></summary>
    <published>2020-09-05T09:53:33+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-upload-file-trong-razor-page-voi-iformfile.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-upload-file-trong-razor-page-voi-iformfile.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) HTML Form và Validation kiểm tra dữ liệu]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-html-form-va-validation-kiem-tra-du-lieu-1730.jpg' />Tạo các HTML Form đơn giản, dùng TagHelper để phát sinh HTML, kiểm tra phù hợp dữ liệu do Form gửi lên, tạo Validation riêng, tạo ModelBinder riêng]]></summary>
    <published>2020-09-05T08:21:52+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-html-form-va-validation-kiem-tra-du-lieu.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-html-form-va-validation-kiem-tra-du-lieu.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Model Binding tự động ánh xạ dữ liệu gửi đến vào Model C# ASP.NET Core]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-model-binding-tu-dong-anh-xa-du-lieu-gui-den-vao-model-c-asp-net-core-1729.jpg' />Tìm hiểu cơ chế tự động lấy dữ liệu từ request gửi đến và thiết lập dữ liệu đọc được cho các thuộc tính của Model hoặc cho các tham số của Handler, Action trong lập trình web với ASP.NET Core]]></summary>
    <published>2020-09-04T15:55:57+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-model-binding-tu-dong-anh-xa-du-lieu-gui-den-vao-model-c-asp-net-core.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-model-binding-tu-dong-anh-xa-du-lieu-gui-den-vao-model-c-asp-net-core.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Sử dụng PageModel code-behind cho  Razor Page và các Hander cơ bản]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-su-dung-pagemodel-code-behind-cho-razor-page-va-cac-hander-co-ban-1728.jpg' />Tìm hiểu và triển khai PageModel, mã C# độc lập với Razor, hình thành Model cho Razor, tìm hiểu các handler trong PageModel truyền dữ liệu từ Model đến Razor]]></summary>
    <published>2020-09-03T10:02:36+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-su-dung-pagemodel-code-behind-cho-razor-page-va-cac-hander-co-ban.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-su-dung-pagemodel-code-behind-cho-razor-page-va-cac-hander-co-ban.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Một số TagHelper xây dựng TagHelper riêng]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-mot-so-taghelper-xay-dung-taghelper-rieng-1727.jpg' />Giới thiệu một số TagHelper để phát sinh các phần tử HTML, cách xây dựng TagHelper riêng phục vụ phát sinh HTML cho những chức năng riêng biệt]]></summary>
    <published>2020-09-03T07:19:46+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-mot-so-taghelper-xay-dung-taghelper-rieng.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-mot-so-taghelper-xay-dung-taghelper-rieng.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Tạo và sử dụng ViewComponent]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-tao-va-su-dung-viewcomponent-1726.jpg' />Tìm hiểu cấu trúc ViewComponent trong lập trình ASP.NET Core, áp dụng tạo ViewComponent và dựng HTML với Component.InvokeAsync, xây dựng trang thông báo trước khi chuyển hướng với ViewComponent]]></summary>
    <published>2020-09-02T18:16:38+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-tao-va-su-dung-viewcomponent.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-tao-va-su-dung-viewcomponent.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Sử dụng Partial Page Partial View để chia nhỏ layout trang Razor]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-su-dung-partial-page-partial-view-de-chia-nho-layout-trang-razor-1725.jpg' />Tìm hiểu về Partial View, Partial Page trong Razor Page và MVC Net Core, cách tạo Partial và nạp Partial vào .cshtml, truyền dữ liệu đến Partial]]></summary>
    <published>2020-09-01T08:47:12+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-su-dung-partial-page-partial-view-de-chia-nho-layout-trang-razor.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-su-dung-partial-page-partial-view-de-chia-nho-layout-trang-razor.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Layout trong ASP.NET Core C Sharp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-layout-trong-asp-net-core-c-sharp-1724.jpg' />Tìm hiếu cấu trúc và sử dụng các Layout trong trang Razor Page với ASP.NET Core C#, sử dụng ViewStartcshtml tự động chèn vào các Razor Page và Layout lồng nhau]]></summary>
    <published>2020-09-01T05:27:45+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-layout-trong-asp-net-core-c-sharp.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-layout-trong-asp-net-core-c-sharp.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cú pháp trong trang Razor Page ASP.NET Core]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cu-phap-trong-trang-razor-page-asp-net-core-1723.jpg' />Viết các biểu thức cơ bản trong Razor, các khối lệnh trong Razor, sử dụng các cấu trúc điều khiển, vòng lặp và các chỉ thị trong Razor]]></summary>
    <published>2020-08-31T15:58:41+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cu-phap-trong-trang-razor-page-asp-net-core.html"/>
    <id>https://mail.xuanthulab.net/cu-phap-trong-trang-razor-page-asp-net-core.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(ASP.NET Razor) Giới thiệu Razor Page và Route trong Razor Page]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/asp-net-razor-gioi-thieu-razor-page-va-route-trong-razor-page-1722.jpg' />Tìm hiểu ứng dụng ASP.NET Core với Razor Page, kích hoạt Razor, Route đến Razor Page .cshtml với MapRazorPages, tìm hiểu về Areas thay đổi thư mục lưu Razor, tùy biến Url truy cập Razor Page]]></summary>
    <published>2020-08-31T03:58:33+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/asp-net-razor-gioi-thieu-razor-page-va-route-trong-razor-page.html"/>
    <id>https://mail.xuanthulab.net/asp-net-razor-gioi-thieu-razor-page-va-route-trong-razor-page.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tạo thư viện C# NET Core và chia sẻ lên nuget.org]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tao-thu-vien-c-net-core-va-chia-se-len-nuget-org-1721.jpg' />Cách tạo ra dự án thư viện lớp trong C# Net core, thiết lập một dự án khác tham chiếu đến dự án thư viện, build thư viện và chia sẻ lên nuget.org để có thể tích hợp  vào bất ký lúc nào]]></summary>
    <published>2020-08-30T07:36:06+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tao-thu-vien-c-net-core-va-chia-se-len-nuget-org.html"/>
    <id>https://mail.xuanthulab.net/tao-thu-vien-c-net-core-va-chia-se-len-nuget-org.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Partial Type và Nested Type phân code thành nhiều file và lớp lồng nhau trong C# C Sharp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/partial-type-va-nested-type-phan-code-thanh-nhieu-file-va-lop-long-nhau-trong-c-c-sharp-1720.jpg' />Tìm hiểu các viết code ở nhiều nơi với partial trong C# .Net Core, khai báo lớp partial và lớp trong lớp Nested]]></summary>
    <published>2020-08-19T08:40:24+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/partial-type-va-nested-type-phan-code-thanh-nhieu-file-va-lop-long-nhau-trong-c-c-sharp.html"/>
    <id>https://mail.xuanthulab.net/partial-type-va-nested-type-phan-code-thanh-nhieu-file-va-lop-long-nhau-trong-c-c-sharp.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Namespace trong C# C Sharp .Net Core]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/namespace-trong-c-c-sharp-net-core-1719.jpg' />Tìm hiểu về namespace trong lập trình C#, khai báo và tạo ra các namespace, các namespace lông nhau, sử dụng nạp các phương thức tĩnh của lớp]]></summary>
    <published>2020-08-19T04:29:34+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/namespace-trong-c-c-sharp-net-core.html"/>
    <id>https://mail.xuanthulab.net/namespace-trong-c-c-sharp-net-core.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các đơn vị px em rem mm đo độ dài trong CSS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-don-vi-px-em-rem-mm-do-do-dai-trong-css-1718.jpg' />Tìm hiểu các loại đơn vị tuyệt đối trong CSS như px, mm, cm và các đơn vị tương đối như em, rem để xác định kích thước rộng, cao, cỡ font ...]]></summary>
    <published>2020-08-16T09:42:03+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-don-vi-px-em-rem-mm-do-do-dai-trong-css.html"/>
    <id>https://mail.xuanthulab.net/cac-don-vi-px-em-rem-mm-do-do-dai-trong-css.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Khởi tạo phương thức khởi tạo trong C Sharp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/khoi-tao-phuong-thuc-khoi-tao-trong-c-sharp-1717.jpg' />Tìm hiểu và triển khai các loại phương thức khởi tạo trong lập trình C#, gồm có phương thức khởi tạo tĩnh, riêng tư, gọi phương thức khởi tạo lớp cơ sở]]></summary>
    <published>2020-08-12T07:17:46+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/khoi-tao-phuong-thuc-khoi-tao-trong-c-sharp.html"/>
    <id>https://mail.xuanthulab.net/khoi-tao-phuong-thuc-khoi-tao-trong-c-sharp.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Kiểu giá trị và kiểu tham chiếu truyền tham số tham chiếu trong C Sharp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/kieu-gia-tri-va-kieu-tham-chieu-truyen-tham-so-tham-chieu-trong-c-sharp-1716.jpg' />Tìm hiểu các loại biến có kiểu giá trị, và các loại biến có kiểm tham chiếu, truyền biến kiểu giá trị dạng tham chiếu trong phương thức với ref và out của C#]]></summary>
    <published>2020-08-10T09:34:49+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/kieu-gia-tri-va-kieu-tham-chieu-truyen-tham-so-tham-chieu-trong-c-sharp.html"/>
    <id>https://mail.xuanthulab.net/kieu-gia-tri-va-kieu-tham-chieu-truyen-tham-so-tham-chieu-trong-c-sharp.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài đặt Laminas Skeleton chương trình khung MVC Laminas]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-dat-laminas-skeleton-chuong-trinh-khung-mvc-laminas-1715.jpg' />Tạo dự án ứng dụng MVC Laminas đầu tiên, cấu hình để chạy ứng dụng Web từ mã nguồn Laminas]]></summary>
    <published>2020-07-29T14:03:02+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-dat-laminas-skeleton-chuong-trinh-khung-mvc-laminas.html"/>
    <id>https://mail.xuanthulab.net/cai-dat-laminas-skeleton-chuong-trinh-khung-mvc-laminas.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cấu hình xác thực http trong HAProxy]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cau-hinh-xac-thuc-http-trong-haproxy-1714.jpg' />Thực hành cấu hình yêu cầu nhập user, password mới được truy cập đến một địa http sử dụng HAProxy]]></summary>
    <published>2020-07-23T15:54:42+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cau-hinh-xac-thuc-http-trong-haproxy.html"/>
    <id>https://mail.xuanthulab.net/cau-hinh-xac-thuc-http-trong-haproxy.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thiết lập cấu hình log trong Docker]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thiet-lap-cau-hinh-log-trong-docker-1713.jpg' />Cấu hình log cho các container và docker daemon, tránh log quá lớn chiếm hết dung lượng đĩa]]></summary>
    <published>2020-07-23T08:46:18+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thiet-lap-cau-hinh-log-trong-docker.html"/>
    <id>https://mail.xuanthulab.net/thiet-lap-cau-hinh-log-trong-docker.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tập trung tư tưởng và luyện mắt]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tap-trung-tu-tuong-va-luyen-mat-1712.jpg' />Tìm hiểu làm chủ tư tưởng và tăng cường sự tập trung, tự tin bằng các bài luyện mắt yoga, tăng cường thị lực bằng yoga]]></summary>
    <published>2020-07-19T14:10:40+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tap-trung-tu-tuong-va-luyen-mat.html"/>
    <id>https://mail.xuanthulab.net/yoga-tap-trung-tu-tuong-va-luyen-mat.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế quả núi Parvatasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-qua-nui-parvatasana-1711.jpg' />Thực hành tư thế Parvatasana, Lưu thông máu vùng bụng dưới làm dịu một vài bệnh mỏi lưng do cúi nhiều, đặt lại những đốt sống thành chuỗi thẳng. Dễ dàng cho tiêu hoá sau một bữa cơm khó tiêu]]></summary>
    <published>2020-07-17T08:43:07+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-qua-nui-parvatasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-qua-nui-parvatasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế con cá Matsyasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-con-ca-matsyasana-1710.jpg' />Thực hành tư thế Matsyasana, làm nở ngực do đó tăng thêm sinh lực vì tăng khả năng thở, xoa nắn lưng, chống với tư thế tự nhiên là luôn cúi về phía trước, Nó kích thích hệ thần kinh, tăng sức cho các cơ quan bụng]]></summary>
    <published>2020-07-17T08:20:22+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-con-ca-matsyasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-con-ca-matsyasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế trồng nến Sarvangasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-trong-nen-sarvangasana-1708.jpg' />Thực hành tư thế Sarvangasana toàn thân (trồng nến), thân người lộn ngược, máu sẽ dồn về mạnh hơn ở nhũng phần trên của cơ thể và ở những hạch nội tiết, thông máu hai chân ở vùng chân, đưa trở lại chỗ cũ những phủ tạng bị sa xuống]]></summary>
    <published>2020-07-17T05:56:14+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-trong-nen-sarvangasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-trong-nen-sarvangasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế vươn phần trên Purvottasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-vuon-phan-tren-purvottasana-1707.jpg' />Thực hành vươn trên, bù lại cho vươn dưới, tăng thêm sức bắp tay và cổ tay, tăng thêm hoạt động cho các khớp vai, kéo thẳng người]]></summary>
    <published>2020-07-17T04:04:21+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-vuon-phan-tren-purvottasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-vuon-phan-tren-purvottasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế Vươn phần dưới Paschimottanasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-vuon-phan-duoi-paschimottanasana-1706.jpg' />Thực hành tư thế Paschimottanasana, duy trì được tuổi thanh xuân dó tác động đến các hạch nội tiết]]></summary>
    <published>2020-07-17T03:43:52+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-vuon-phan-duoi-paschimottanasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-vuon-phan-duoi-paschimottanasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế vươn vặn]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-vuon-van-1705.jpg' />Thực hành tư thế yoga vươn vặn, Cột sống được xoa nắn xoay tròn từ gáy đến xương cùng. Giãn các cơ rút ở lưng giúp cho việc đưa vào đúng chỗ những sai khớp nhỏ]]></summary>
    <published>2020-07-17T02:44:15+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-vuon-van.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-vuon-van.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tính chỉ số khối cơ thể BMI xác định tình trạng thừa cân thiếu cân]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tinh-chi-so-khoi-co-the-bmi-xac-dinh-tinh-trang-thua-can-thieu-can-1704.jpg' />Công đo BMI (Body mass Index), chỉ số được tính từ chiều cao và cân nặng, đưa ra đánh giá về tình trạng thiếu cân, béo phì]]></summary>
    <published>2020-07-15T03:39:11+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tinh-chi-so-khoi-co-the-bmi-xac-dinh-tinh-trang-thua-can-thieu-can.html"/>
    <id>https://mail.xuanthulab.net/tinh-chi-so-khoi-co-the-bmi-xac-dinh-tinh-trang-thua-can-thieu-can.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế Tiếng Sét (Vajrasana)]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-tieng-set-vajrasana-1703.jpg' />Tư thế yoga làm nhẹ bụng, chóng tiêu. Khỏi tê khớp xương đầu gối và mềm khớp cổ chân.]]></summary>
    <published>2020-07-12T06:49:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-tieng-set-vajrasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-tieng-set-vajrasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế Rắn Hổ Mang Bhujang Asana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-ran-ho-mang-bhujang-asana-1702.jpg' />Tư thế yoga Làm kích thích hệ thần kinh thực vật hoạt động tốt. Kích thích tuyến giáp trạng, chống táo bón, rửa thận]]></summary>
    <published>2020-07-12T06:38:14+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-ran-ho-mang-bhujang-asana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-ran-ho-mang-bhujang-asana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế lộn ngược - Viparita karani]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-lon-nguoc-viparita-karani-1701.jpg' />Tư thế lộn ngược làm cho máu dồn về óc và mặt, làm cho mặt trẻ ra, xóa đi những nếp nhăn, làm đẹp da. Tăng cường trí nhớ. Ngăn ngừa được một số bệnh về tủy não]]></summary>
    <published>2020-07-12T06:33:25+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-lon-nguoc-viparita-karani.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-lon-nguoc-viparita-karani.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Biến đổi của tư thế nằm giơ chân (Paschimottanasana)]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-bien-doi-cua-tu-the-nam-gio-chan-paschimottanasana-1700.jpg' />Lợi ích cho thăng bằng, làm cho bắp chân thon nở, giảm mỡ ở chân và ở đùi. Làm dịu được chứng bệnh đau lưng ở một số người. Tăng sức cho các cơ quan nội tạng, đai bụng. Làm mềm cột sống và có lợi cho tiêu hóa]]></summary>
    <published>2020-07-12T06:26:04+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-bien-doi-cua-tu-the-nam-gio-chan-paschimottanasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-bien-doi-cua-tu-the-nam-gio-chan-paschimottanasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế nằm nắm ngón chân cái - Suptapadagustasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-nam-nam-ngon-chan-cai-suptapadagustasana-1699.jpg' />Thực hành tư thế yoga, nắm ngón chân cái làm mềm dẻo và thon thả hai vùng cơ bắp chân. Có thể phòng tránh được đâu thần kinh tọa. Lưu thông tĩnh mạch]]></summary>
    <published>2020-07-12T06:17:43+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-nam-nam-ngon-chan-cai-suptapadagustasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-nam-nam-ngon-chan-cai-suptapadagustasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế vặn vỏ đỗ Vakrasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-van-vo-do-vakrasana-1698.jpg' />Thực hành tư thế Vakrasana vặn vỏ đỗ, Giảm được nghiêng vẹo cột sống. Tác động tốt đến hệ thần kinh và nội tạng]]></summary>
    <published>2020-07-11T14:47:08+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-van-vo-do-vakrasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-van-vo-do-vakrasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Cách vươn hai]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-cach-vuon-hai-1697.jpg' />Cách vươn thứ hai trong yoga, tư thế vươn A4, giúp săn chắc cơ bụng]]></summary>
    <published>2020-07-11T14:33:38+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-cach-vuon-hai.html"/>
    <id>https://mail.xuanthulab.net/yoga-cach-vuon-hai.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Vươn người nằm ngửa]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-vuon-nguoi-nam-ngua-1696.jpg' />Tư thế Yoga, chuẩn bị tốt cho cột sống trong mọi tư thế và công việc. Những đốt sống được kéo dài, giãn lưng ra và các khớp được đặt đúng chỗ]]></summary>
    <published>2020-07-11T14:18:15+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-vuon-nguoi-nam-ngua.html"/>
    <id>https://mail.xuanthulab.net/yoga-vuon-nguoi-nam-ngua.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế thoải mái Sukhasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-thoai-mai-sukhasana-1695.jpg' />Sukhasana - Tư thế thực hành thở đầy đủ, một tư thế để bắt đầu buổi tập yoga, tạo ra sự thư giãn - thoải mái]]></summary>
    <published>2020-07-11T13:55:33+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-thoai-mai-sukhasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-thoai-mai-sukhasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Tư thế nghỉ hoàn toàn Shavasana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-tu-the-nghi-hoan-toan-shavasana-1694.jpg' />Tập tư thế yoga nghỉ hoàn toàn, tư thế cái xác]]></summary>
    <published>2020-07-11T09:51:31+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-tu-the-nghi-hoan-toan-shavasana.html"/>
    <id>https://mail.xuanthulab.net/yoga-tu-the-nghi-hoan-toan-shavasana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[(Yoga) Thực hành thở sâu Ujjayi Pranayama]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/yoga-thuc-hanh-tho-sau-ujjayi-pranayama-1693.jpg' />Tập thở có kiểm soát, sống tốt hơn bằng nghệ thuật thở sâu yoga]]></summary>
    <published>2020-07-11T09:25:17+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/yoga-thuc-hanh-tho-sau-ujjayi-pranayama.html"/>
    <id>https://mail.xuanthulab.net/yoga-thuc-hanh-tho-sau-ujjayi-pranayama.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tính lượng calo calories hấp thụ của cơ thể với chỉ số BMR]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tinh-luong-calo-calories-hap-thu-cua-co-the-voi-chi-so-bmr-1692.jpg' />Công cụ tính chỉ số BMR, Tee tổng lượng calories tiêu thụ của cơ thể để giảm cân bằng cách thay đổi calo nạp vào từ tham khảo calo của các khẩu phần món ăn, và calo tiêu thu của các môn thể thao]]></summary>
    <published>2020-07-04T10:46:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tinh-luong-calo-calories-hap-thu-cua-co-the-voi-chi-so-bmr.html"/>
    <id>https://mail.xuanthulab.net/tinh-luong-calo-calories-hap-thu-cua-co-the-voi-chi-so-bmr.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Javascript gọi hàm của Dart và Dart gọi hàm Javascript]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/javascript-goi-ham-cua-dart-va-dart-goi-ham-javascript-1691.jpg' />Sử dụng package package:js/js.dart, thiết lập để gọi hàm javascript từ Dart và ngược lại gọi hàm dart từ Javascript]]></summary>
    <published>2020-07-04T03:40:19+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/javascript-goi-ham-cua-dart-va-dart-goi-ham-javascript.html"/>
    <id>https://mail.xuanthulab.net/javascript-goi-ham-cua-dart-va-dart-goi-ham-javascript.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng Rancher để quản lý Kubernetes Cluster]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-rancher-de-quan-ly-kubernetes-cluster-1690.jpg' />Triển khai Rancher 2.x, sử dụng để quản lý các Cluster Kubernetes, thực hiện quản lý Cluster có sẵn và khởi tạo mới từ các dịch vụ như Kubernetes Engine của Google]]></summary>
    <published>2020-07-02T09:22:12+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-rancher-de-quan-ly-kubernetes-cluster.html"/>
    <id>https://mail.xuanthulab.net/su-dung-rancher-de-quan-ly-kubernetes-cluster.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài đặt và sử dụng Sublime Text]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-dat-va-su-dung-sublime-text-1689.jpg' />Hướng dẫn cài đặt IDE soạn thảo code Sublime Text 3 trên Windows, macOS, Ubuntu, cài đặt các gói mở rộng cho Sublime Text]]></summary>
    <published>2020-06-30T08:03:34+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-dat-va-su-dung-sublime-text.html"/>
    <id>https://mail.xuanthulab.net/cai-dat-va-su-dung-sublime-text.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng Windows File Restore công cụ miễn phí để phục hồi các file bị xóa]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-windows-file-restore-cong-cu-mien-phi-de-phuc-hoi-cac-file-bi-xoa-1688.jpg' />Hướng dẫn cài đặt và sử dụng Windows File Restore để phục hồi file lỡ bị xóa trên Windows]]></summary>
    <published>2020-06-29T06:06:01+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-windows-file-restore-cong-cu-mien-phi-de-phuc-hoi-cac-file-bi-xoa.html"/>
    <id>https://mail.xuanthulab.net/su-dung-windows-file-restore-cong-cu-mien-phi-de-phuc-hoi-cac-file-bi-xoa.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git fetch git pull cập nhật dữ liệu từ remote]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-fetch-git-pull-cap-nhat-du-lieu-tu-remote-1687.jpg' />Thực hiện lệnh git pull và lệnh git fetch để cập nhật dữ liệu thay đổi từ remote repo về local repo, tìm khác nhau giữa git fetch và git pull.]]></summary>
    <published>2020-06-21T07:56:57+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-fetch-git-pull-cap-nhat-du-lieu-tu-remote.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-fetch-git-pull-cap-nhat-du-lieu-tu-remote.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git push đẩy dữ liệu từ local lên server]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-push-day-du-lieu-tu-local-len-server-1686.jpg' />Thực hiện lệnh git push để tạo upstream, đẩy dữ liệu từ local repo đến remote repo, push các nhánh, xóa các nhánh của remote]]></summary>
    <published>2020-06-21T05:59:07+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-push-day-du-lieu-tu-local-len-server.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-push-day-du-lieu-tu-local-len-server.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git remote quản lý các liên kết tới remote repo]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-remote-quan-ly-cac-lien-ket-toi-remote-repo-1685.jpg' />Tạo, xem thông tin, xóa các liên kết giữa local repo và remote repo trong git]]></summary>
    <published>2020-06-20T10:26:02+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-remote-quan-ly-cac-lien-ket-toi-remote-repo.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-remote-quan-ly-cac-lien-ket-toi-remote-repo.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git merge và rebase - gộp và viết lại lịch sử commit]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-merge-va-rebase-gop-va-viet-lai-lich-su-commit-1684.jpg' />Thực hiện gộp nhánh bằng lệnh git merge và lệnh git rebase,  sự khác nhau giữa merge và rebase]]></summary>
    <published>2020-06-20T04:32:57+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-merge-va-rebase-gop-va-viet-lai-lich-su-commit.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-merge-va-rebase-gop-va-viet-lai-lich-su-commit.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git checkout git switch git restore để chuyển nhánh và phục hồi]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-checkout-git-switch-git-restore-de-chuyen-nhanh-va-phuc-hoi-1683.jpg' />Sử dụng các lệnh để chuyển nhánh làm việc như git checkout và git switch, để phục hồi file như git checkout -- và git restore]]></summary>
    <published>2020-06-15T09:26:43+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-checkout-git-switch-git-restore-de-chuyen-nhanh-va-phuc-hoi.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-checkout-git-switch-git-restore-de-chuyen-nhanh-va-phuc-hoi.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git clone sao chép về một remote repo]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-clone-sao-chep-ve-mot-remote-repo-1682.jpg' />Thực hiện lệnh git clone để copy, sao chép về các repo từ server, từ dịch vụ lưu trữ git repo, hay từ máy này sang máy khác, thư mục này sang thư mục khác]]></summary>
    <published>2020-06-15T08:08:22+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-clone-sao-chep-ve-mot-remote-repo.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-clone-sao-chep-ve-mot-remote-repo.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git diff kiểm tra sự thay đổi trên Git]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-diff-kiem-tra-su-thay-doi-tren-git-1681.jpg' />Kiểm tra sự khác nhau, thay đổi giữa thư mục làm việc và commit cuối, giữa index và commit cuối, giữa các nhánh ... bằng lệnh git diff]]></summary>
    <published>2020-06-15T06:25:46+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-diff-kiem-tra-su-thay-doi-tren-git.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-diff-kiem-tra-su-thay-doi-tren-git.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng lệnh git log xem lại lịch sử các commit trên git]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-lenh-git-log-xem-lai-lich-su-cac-commit-tren-git-1680.jpg' />Tìm kiếm, xem lại, lọc các thông tin log lịch sử commit trên git bằng lệnh git log với các thiết lập khác nhau, như pretty, hiện thị đồ thị log]]></summary>
    <published>2020-06-14T08:35:05+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-lenh-git-log-xem-lai-lich-su-cac-commit-tren-git.html"/>
    <id>https://mail.xuanthulab.net/su-dung-lenh-git-log-xem-lai-lich-su-cac-commit-tren-git.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Dùng lệnh git reset hủy commit cuối hoặc staging]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/dung-lenh-git-reset-huy-commit-cuoi-hoac-staging-1679.jpg' />Cách sử dụng lệnh git reset để undo, hủy commit cuối hoặc hủy đưa thay đổi vào vùng staging]]></summary>
    <published>2020-06-14T04:57:00+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/dung-lenh-git-reset-huy-commit-cuoi-hoac-staging.html"/>
    <id>https://mail.xuanthulab.net/dung-lenh-git-reset-huy-commit-cuoi-hoac-staging.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng lệnh git commit]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-lenh-git-commit-1678.jpg' />Thực hiện câu lệnh git commit để lưu dữ liệu vào hệ thống Git, tùy chọn các tham số như tự động staging, cập nhật vào commit cuối]]></summary>
    <published>2020-06-14T03:44:42+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-lenh-git-commit.html"/>
    <id>https://mail.xuanthulab.net/su-dung-lenh-git-commit.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git status xem trạng thái của Repo]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-status-xem-trang-thai-cua-repo-1677.jpg' />Sử dụng lệnh git để biết thông tin trạng thái sửa đổi, thêm mới, xóa các file trước khi thực hiện commit]]></summary>
    <published>2020-06-13T16:20:24+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-status-xem-trang-thai-cua-repo.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-status-xem-trang-thai-cua-repo.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git add lưu thông tin chuẩn bị commit]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-add-luu-thong-tin-chuan-bi-commit-1676.jpg' />Thực hiện lệnh tạo snapshot, lưu thông tin thay đổi vào vùng staging để chuẩn bị cho lệnh commit]]></summary>
    <published>2020-06-13T10:13:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-add-luu-thong-tin-chuan-bi-commit.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-add-luu-thong-tin-chuan-bi-commit.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lệnh git init tạo dự án Git mới]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lenh-git-init-tao-du-an-git-moi-1675.jpg' />Sử dụng lệnh git init để khởi tạo một local repo mới hoặc repo lưu trữ ở server với git init --bare]]></summary>
    <published>2020-06-13T04:24:47+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lenh-git-init-tao-du-an-git-moi.html"/>
    <id>https://mail.xuanthulab.net/lenh-git-init-tao-du-an-git-moi.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng winget tải và cài đặt ứng dụng trên Windows]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-winget-tai-va-cai-dat-ung-dung-tren-windows-1674.jpg' />Giới thiệu trình quản lý gói dòng lệnh winget (Winndows Package Manager), cài đặt và sử dụng trên Windows 10]]></summary>
    <published>2020-05-24T14:14:58+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-winget-tai-va-cai-dat-ung-dung-tren-windows.html"/>
    <id>https://mail.xuanthulab.net/su-dung-winget-tai-va-cai-dat-ung-dung-tren-windows.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài đặt và sử dụng Windows Terminal]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-dat-va-su-dung-windows-terminal-1673.jpg' />Giới thiệu công cụ dòng lệnh mới Windows Terminal, tùy chọn mà sắc, ảnh nền, cách sử dụng khi tạo tab, tạo panel ...]]></summary>
    <published>2020-05-24T10:04:18+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-dat-va-su-dung-windows-terminal.html"/>
    <id>https://mail.xuanthulab.net/cai-dat-va-su-dung-windows-terminal.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Giới thiệu về Linux và các Distro Linux]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/gioi-thieu-ve-linux-va-cac-distro-linux-1672.jpg' />Tìm hiểu cơ bản về Linux, hạt nhân Linux và các Distro phổ biến như CentOS, Ubuntu, RHEL, Debian]]></summary>
    <published>2020-05-24T06:34:01+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/gioi-thieu-ve-linux-va-cac-distro-linux.html"/>
    <id>https://mail.xuanthulab.net/gioi-thieu-ve-linux-va-cac-distro-linux.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng ngrok để truy cập từ internet vào máy cá nhân]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-ngrok-de-truy-cap-tu-internet-vao-may-ca-nhan-1671.jpg' />Tìm hiểu công cụ ngrok để tạo đường hầm kết nối, mở kết nối để từ internet truy cập vào máy cá nhân hỗ trợ giao thức http và tcp]]></summary>
    <published>2020-05-17T10:25:03+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-ngrok-de-truy-cap-tu-internet-vao-may-ca-nhan.html"/>
    <id>https://mail.xuanthulab.net/su-dung-ngrok-de-truy-cap-tu-internet-vao-may-ca-nhan.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng Elasticsearch trong Wordpress với ElasticPress]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-elasticsearch-trong-wordpress-voi-elasticpress-1670.jpg' />Cài đặt plugin ElasticPress và thiết lập website Wordpress sử dụng Elasticsearch để chỉ mục và tìm kiếm bài viết sản phẩm]]></summary>
    <published>2020-05-15T08:01:38+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-elasticsearch-trong-wordpress-voi-elasticpress.html"/>
    <id>https://mail.xuanthulab.net/su-dung-elasticsearch-trong-wordpress-voi-elasticpress.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài đặt và chạy Docker trong WSL2 Windows]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-dat-va-chay-docker-trong-wsl2-windows-1669.jpg' />Thực hiện chạy docker native trong Windows với Windows Subsystem for Linux]]></summary>
    <published>2020-05-14T13:59:36+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-dat-va-chay-docker-trong-wsl2-windows.html"/>
    <id>https://mail.xuanthulab.net/cai-dat-va-chay-docker-trong-wsl2-windows.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng VSC mở dự án trong Linux WSL]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-vsc-mo-du-an-trong-linux-wsl-1668.jpg' />Cài đặt extension Remote WSL để mở dự an code trong Ubuntu của WSL]]></summary>
    <published>2020-05-14T08:49:17+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-vsc-mo-du-an-trong-linux-wsl.html"/>
    <id>https://mail.xuanthulab.net/su-dung-vsc-mo-du-an-trong-linux-wsl.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài đặt NodeJS trên WSL tạo ứng dụng ExpressJS]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-dat-nodejs-tren-wsl-tao-ung-dung-expressjs-1667.jpg' />Thực hành cài đặt node, npm, express trên Ubuntun chạy trong WSL, tạo ứng dụng node expressjs đầu tiên]]></summary>
    <published>2020-05-14T08:13:13+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-dat-nodejs-tren-wsl-tao-ung-dung-expressjs.html"/>
    <id>https://mail.xuanthulab.net/cai-dat-nodejs-tren-wsl-tao-ung-dung-expressjs.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cài LAMP (Linux Apache MySQL PHP) trên Windows với WSL]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cai-lamp-linux-apache-mysql-php-tren-windows-voi-wsl-1666.jpg' />Sử dụng WSL Windows Subsystem for Linux để cài đặt LAMP, cài đặt demo ứng dụng Web WordPress]]></summary>
    <published>2020-05-14T04:20:25+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cai-lamp-linux-apache-mysql-php-tren-windows-voi-wsl.html"/>
    <id>https://mail.xuanthulab.net/cai-lamp-linux-apache-mysql-php-tren-windows-voi-wsl.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Giới thiệu và cài đặt WSL trên Windows]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/gioi-thieu-va-cai-dat-wsl-tren-windows-1665.jpg' />Giới thiệu tính năng chạy Linux trên Windows - WSL Windows Subsystem for Linux - chạy đặt và chạy thử Ubuntu trên Windows 10]]></summary>
    <published>2020-05-13T14:48:36+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/gioi-thieu-va-cai-dat-wsl-tren-windows.html"/>
    <id>https://mail.xuanthulab.net/gioi-thieu-va-cai-dat-wsl-tren-windows.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Triển khai NGINX Ingress Controller trong Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/trien-khai-nginx-ingress-controller-trong-kubernetes-1664.jpg' />Triển khai và sử dụng NGINX Ingress Controller trong Kubernetes, ví dụ tạo Ingress chuyển hướng traffic http, https vào một dịch vụ trong Kubernetes]]></summary>
    <published>2020-05-12T08:15:11+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/trien-khai-nginx-ingress-controller-trong-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/trien-khai-nginx-ingress-controller-trong-kubernetes.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tìm hiểu và cài đặt ELK Elasticsearch Logstash Kibana]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tim-hieu-va-cai-dat-elk-elasticsearch-logstash-kibana-1663.jpg' />Tìm hiểu hệ thống quản lý log trong tâm ELK Stack, thực hiện cài đặt Elasticsearch Logstash Kibana trên CentOS, cài đặt Filebeat để thu thập file log]]></summary>
    <published>2020-05-09T11:45:25+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tim-hieu-va-cai-dat-elk-elasticsearch-logstash-kibana.html"/>
    <id>https://mail.xuanthulab.net/tim-hieu-va-cai-dat-elk-elasticsearch-logstash-kibana.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Transformation và các ma trân biến đổi trong Sketchup Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/transformation-va-cac-ma-tran-bien-doi-trong-sketchup-ruby-1662.jpg' />Transformation và các ma trân biến đổi trong Sketchup Ruby]]></summary>
    <published>2020-02-19T14:19:35+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/transformation-va-cac-ma-tran-bien-doi-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/transformation-va-cac-ma-tran-bien-doi-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Module Geom và lớp Point3d Vector3d trong Ruby SketchUp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/module-geom-va-lop-point3d-vector3d-trong-ruby-sketchup-1661.jpg' />Tìm hiểu các phương thức module Geom và lớp biểu điễn điểm, vector trong không gian 3D]]></summary>
    <published>2020-02-18T20:17:03+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/module-geom-va-lop-point3d-vector3d-trong-ruby-sketchup.html"/>
    <id>https://mail.xuanthulab.net/module-geom-va-lop-point3d-vector3d-trong-ruby-sketchup.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lớp Array trong SketchUp API]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lop-array-trong-sketchup-api-1660.jpg' />Sử dụng lớp Array để biểu diễn các điểm 2d, 3d cũng như vector trong Sketchup]]></summary>
    <published>2020-02-16T20:40:20+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lop-array-trong-sketchup-api.html"/>
    <id>https://mail.xuanthulab.net/lop-array-trong-sketchup-api.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng HtmlDialog tạo các hộp thoại tương tác giữa SketchUp Ruby và JavaScript HTML]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-htmldialog-tao-cac-hop-thoai-tuong-tac-giua-sketchup-ruby-va-javascript-html-1659.jpg' />Sử dụng lớp HtmlDialog tạo các hộp thoại nội dung dung HTML, truy cập SketchUP API bằng JavaScript]]></summary>
    <published>2020-02-15T09:47:30+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-htmldialog-tao-cac-hop-thoai-tuong-tac-giua-sketchup-ruby-va-javascript-html.html"/>
    <id>https://mail.xuanthulab.net/su-dung-htmldialog-tao-cac-hop-thoai-tuong-tac-giua-sketchup-ruby-va-javascript-html.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tool trong SketchUp Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tool-trong-sketchup-ruby-1658.jpg' />Tạo các Tool, bắt các sự kiện trên SketchUp như sự kiện bấm chuột, bấm bàn phím ...]]></summary>
    <published>2020-02-13T06:22:51+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tool-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/tool-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Plugin View và Toolbar trong SketchUp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/plugin-view-va-toolbar-trong-sketchup-1657.jpg' />Tìm hiểu về Plugin, Toolbar và View trong Sketchup Ruby]]></summary>
    <published>2020-02-11T18:28:23+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/plugin-view-va-toolbar-trong-sketchup.html"/>
    <id>https://mail.xuanthulab.net/plugin-view-va-toolbar-trong-sketchup.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tạo menu trong SketchUp Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tao-menu-trong-sketchup-ruby-1656.jpg' />Tạo menu chính và menu ngữ cảnh trong SketchUp Ruby, sử dụng Command để tạo menu item]]></summary>
    <published>2020-02-10T19:43:11+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tao-menu-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/tao-menu-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các hộp thoại Dialog trong Ruby SketchUp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-hop-thoai-dialog-trong-ruby-sketchup-1655.jpg' />Tạo các hộp thoại thông báo UI.messagebox, hộp thoại nhập dữ liệu UI.inputbox và các hộp thoại khác của SketchUp với Ruby API]]></summary>
    <published>2020-02-10T09:32:22+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-hop-thoai-dialog-trong-ruby-sketchup.html"/>
    <id>https://mail.xuanthulab.net/cac-hop-thoai-dialog-trong-ruby-sketchup.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[EntityObserver  SelectionObserver trong SketchUp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/entityobserver-selectionobserver-trong-sketchup-1654.jpg' />Tạo các Obserrver lắng nghe sự kiện trên SketchUp, ví dụ sử dụng SelectionObserver để bắt sự kiện chọn đối tượng và EntityObserver để bắt sự kiện thay đổi Entity]]></summary>
    <published>2020-02-09T18:57:36+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/entityobserver-selectionobserver-trong-sketchup.html"/>
    <id>https://mail.xuanthulab.net/entityobserver-selectionobserver-trong-sketchup.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Attributes trong SketchUp Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/attributes-trong-sketchup-ruby-1653.jpg' />Attributes - Các thuộc tính trong đối tượng của SketchUp]]></summary>
    <published>2020-02-08T11:56:41+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/attributes-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/attributes-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Component trong SketchUp Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/component-trong-sketchup-ruby-1652.jpg' />Tìm hiểu về Component với các lớp ComponentDefinition, ComponentInstance và Behavior.]]></summary>
    <published>2020-02-05T19:06:03+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/component-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/component-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các lớp - layer và nhóm - group trong SketchUp Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-lop-layer-va-nhom-group-trong-sketchup-ruby-1651.jpg' />Tìm hiểu về các layer và tạo layer bằng code Ruby SketchUp, các nhóm trong Ruby - tạo nhóm thêm hình vào nhóm]]></summary>
    <published>2020-02-05T06:44:19+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-lop-layer-va-nhom-group-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/cac-lop-layer-va-nhom-group-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Vật liệu và màu sắc trong SketchUp Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/vat-lieu-va-mau-sac-trong-sketchup-ruby-1650.jpg' />Tìm hiểu về lớp Material các vật liệu trong SketchUp với code Ruby, tạo các vật liệu - gán màu sắc, texture]]></summary>
    <published>2020-02-04T16:05:35+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/vat-lieu-va-mau-sac-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/vat-lieu-va-mau-sac-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Duyệt qua các đối tượng Entity trong SketchUp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/duyet-qua-cac-doi-tuong-entity-trong-sketchup-1649.jpg' />Duyệt qua mảng các đối tượng hình học Face, Edge ... để trích lọc thông tin với các phương thức find, find_all, each]]></summary>
    <published>2020-02-03T09:01:20+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/duyet-qua-cac-doi-tuong-entity-trong-sketchup.html"/>
    <id>https://mail.xuanthulab.net/duyet-qua-cac-doi-tuong-entity-trong-sketchup.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Đối tượng Text 2D và 3D trong SketchUp Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/doi-tuong-text-2d-va-3d-trong-sketchup-ruby-1648.jpg' />Tạo đối tượng văn bản 2D với phương thức add_text và văn bản 3D với add_3d_text, chèn ảnh Image vào Sketchup]]></summary>
    <published>2020-02-01T18:00:40+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/doi-tuong-text-2d-va-3d-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/doi-tuong-text-2d-va-3d-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Suy diễn điểm đường trong SketchUp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/suy-dien-diem-duong-trong-sketchup-1647.jpg' />Nội suy tham chiếu theo điểm, đường, trục trong Sketchu, bật chế độ hiện thị crosshair, hiện thị màu biên các hình căn theo trục]]></summary>
    <published>2020-01-31T10:58:11+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/suy-dien-diem-duong-trong-sketchup.html"/>
    <id>https://mail.xuanthulab.net/suy-dien-diem-duong-trong-sketchup.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Biến đổi với Transformation trong SketchUp Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/bien-doi-voi-transformation-trong-sketchup-ruby-1646.jpg' />Tạo các đối tượng chuyển đổi Transformation để thực hiện biến đổi hình tịnh tiến, tỷ lệ, quay với phương thức transform_entities]]></summary>
    <published>2020-01-31T06:32:52+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/bien-doi-voi-transformation-trong-sketchup-ruby.html"/>
    <id>https://mail.xuanthulab.net/bien-doi-voi-transformation-trong-sketchup-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tạo mặt Face và các phương thức hình học trên Face SketchUp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tao-mat-face-va-cac-phuong-thuc-hinh-hoc-tren-face-sketchup-1645.jpg' />Tạo Face với phương thức add_face, các phương thức cơ bản của lớp Face, như edges, area ... Chuyển Face thành hình 3D với các phương thức pushpull, followme]]></summary>
    <published>2020-01-29T07:22:40+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tao-mat-face-va-cac-phuong-thuc-hinh-hoc-tren-face-sketchup.html"/>
    <id>https://mail.xuanthulab.net/tao-mat-face-va-cac-phuong-thuc-hinh-hoc-tren-face-sketchup.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Nạp Ruby Script vào Sketchup vẽ các đường cong đường tròn đa giác cung tròn]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/nap-ruby-script-vao-sketchup-ve-cac-duong-cong-duong-tron-da-giac-cung-tron-1644.jpg' />Tìm hiểu cách nạp script ruby vào SketchUp, ý nghĩa của các vector, thực hiện vẽ các hình cơ bản như đường cong với add_curve, đường tròn với add_circle, đa giác với add_ngon, cung tròn với add_arc]]></summary>
    <published>2020-01-27T17:18:50+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/nap-ruby-script-vao-sketchup-ve-cac-duong-cong-duong-tron-da-giac-cung-tron.html"/>
    <id>https://mail.xuanthulab.net/nap-ruby-script-vao-sketchup-ve-cac-duong-cong-duong-tron-da-giac-cung-tron.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Ba cấu trúc dữ liệu cơ bản của SketchUp lớp cơ bản EntityDrawingelement Drawingelement Edge]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/ba-cau-truc-du-lieu-co-ban-cua-sketchup-lop-co-ban-entitydrawingelement-drawingelement-edge-1643.jpg' />Ba cấu trúc dữ liệu cơ bản của SketchUp là Sketchup, Model, Entities, tìm hiểu các lớp Entity, Drawingelement, Edge]]></summary>
    <published>2020-01-27T06:25:01+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/ba-cau-truc-du-lieu-co-ban-cua-sketchup-lop-co-ban-entitydrawingelement-drawingelement-edge.html"/>
    <id>https://mail.xuanthulab.net/ba-cau-truc-du-lieu-co-ban-cua-sketchup-lop-co-ban-entitydrawingelement-drawingelement-edge.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thuộc tính soft smooth của các Edge chế độ xem các đối tượng ẩn trong SketchUp]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuoc-tinh-soft-smooth-cua-cac-edge-che-do-xem-cac-doi-tuong-an-trong-sketchup-1642.jpg' />Tìm hiểu tác dụng thuộc tính soft, smooth của các Edge, ẩn đi các đối tượng, bật chế độ xem các đối tượng ẩn]]></summary>
    <published>2020-01-26T16:13:39+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuoc-tinh-soft-smooth-cua-cac-edge-che-do-xem-cac-doi-tuong-an-trong-sketchup.html"/>
    <id>https://mail.xuanthulab.net/thuoc-tinh-soft-smooth-cua-cac-edge-che-do-xem-cac-doi-tuong-an-trong-sketchup.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Làm việc với file trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lam-viec-voi-file-trong-ruby-1641.jpg' />Tạo file, đọc file, xóa file và lấy các thông tin về file trong lập trình Ruby]]></summary>
    <published>2020-01-23T16:00:50+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lam-viec-voi-file-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/lam-viec-voi-file-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Proc và Lambda trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/proc-va-lambda-trong-ruby-1640.jpg' />Tìm hiểu tạo và sử dụng Proc, Lambda trong lập trình với Ruby]]></summary>
    <published>2020-01-23T13:41:18+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/proc-va-lambda-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/proc-va-lambda-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Struct OStruct và lớp Math Time trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/struct-ostruct-va-lop-math-time-trong-ruby-1639.jpg' />Khai báo và sử dụng Struct, OStruct và lớp cơ bản Math, Time trong lập trình Ruby]]></summary>
    <published>2020-01-23T11:22:07+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/struct-ostruct-va-lop-math-time-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/struct-ostruct-va-lop-math-time-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Module Mixin Namespace trong lập trình Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/module-mixin-namespace-trong-lap-trinh-ruby-1638.jpg' />Tổ chức các lớp, các phương thức thành các Module, sử dụng Mixin và Namespace]]></summary>
    <published>2020-01-23T09:45:50+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/module-mixin-namespace-trong-lap-trinh-ruby.html"/>
    <id>https://mail.xuanthulab.net/module-mixin-namespace-trong-lap-trinh-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tính kế thừa và đóng gói trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tinh-ke-thua-va-dong-goi-trong-ruby-1637.jpg' />Lập trình hướng đối tượng, kế thừa các lớp trong Ruby, thực hiện nạp chồng phương thức, thiết lập tính đóng gói với public, private, protected]]></summary>
    <published>2020-01-23T08:46:41+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tinh-ke-thua-va-dong-goi-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/tinh-ke-thua-va-dong-goi-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Lớp trong Ruby - lập trình hương đối tượng]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/lop-trong-ruby-lap-trinh-huong-doi-tuong-1636.jpg' />Khái niệm về lớp, khai báo lớp, khởi tạo lớp trong Ruby, các loại phương thức và biến trong lớp]]></summary>
    <published>2020-01-23T07:08:07+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/lop-trong-ruby-lap-trinh-huong-doi-tuong.html"/>
    <id>https://mail.xuanthulab.net/lop-trong-ruby-lap-trinh-huong-doi-tuong.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Phương thức khai báo và sử dụng phương thức trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/phuong-thuc-khai-bao-va-su-dung-phuong-thuc-trong-ruby-1635.jpg' />Các khai báo phương thức, gọi phương thức, phương thức có tham số mặc định, giá trị trả về của phương thức và đệ quy trong Ruby]]></summary>
    <published>2020-01-22T11:07:27+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/phuong-thuc-khai-bao-va-su-dung-phuong-thuc-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/phuong-thuc-khai-bao-va-su-dung-phuong-thuc-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Bảng băm hash symbol và duyệt phần tử với each trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/bang-bam-hash-symbol-va-duyet-phan-tu-voi-each-trong-ruby-1634.jpg' />Các khai báo bảng băm, sử dụng symbol và duyệt qua các phần tử mảng, bảng băm với each]]></summary>
    <published>2020-01-22T08:31:00+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/bang-bam-hash-symbol-va-duyet-phan-tu-voi-each-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/bang-bam-hash-symbol-va-duyet-phan-tu-voi-each-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Mảng trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/mang-trong-ruby-1633.jpg' />Khai báo và sử dụng mảng, các phép toán trên mảng, duyệt qua các phần tử mảng trong ngôn ngữ lập trình Ruby]]></summary>
    <published>2020-01-22T06:53:05+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/mang-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/mang-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các vòng lặp while until for do trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-vong-lap-while-until-for-do-trong-ruby-1632.jpg' />Tìm hiểu và sử dụng các vòng lặp như for, while và điều hướng vòng lặp với break, redo, next]]></summary>
    <published>2020-01-22T02:42:27+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-vong-lap-while-until-for-do-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/cac-vong-lap-while-until-for-do-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Cấu trúc rẽ nhánh if unless case trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cau-truc-re-nhanh-if-unless-case-trong-ruby-1631.jpg' />Sử dụng các cấu trúc rẽ nhánh với lệnh if, elseif, unless, case with trong Ruby, sử dụng dải dữ liệu với toán tử hai chấm, ba chấm]]></summary>
    <published>2020-01-21T18:45:18+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cau-truc-re-nhanh-if-unless-case-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/cau-truc-re-nhanh-if-unless-case-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Kiểu Boolean toán tử so sánh toán tử logic]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/kieu-boolean-toan-tu-so-sanh-toan-tu-logic-1630.jpg' />Tìm hiểu kiểu boolean nhận giá trị true, false. Các toán tử so sánh như so sánh bằng, so sánh lớn hơn ... phép toán logic như và, hoặc, phủ định]]></summary>
    <published>2020-01-21T16:53:53+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/kieu-boolean-toan-tu-so-sanh-toan-tu-logic.html"/>
    <id>https://mail.xuanthulab.net/kieu-boolean-toan-tu-so-sanh-toan-tu-logic.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng Ingress trong Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-ingress-trong-kubernetes-1629.jpg' />Giới thiệu và triển khai Ingress trong Kubernetes, dùng HAProxy Ingress Controller tiếp nhận các yêu cầu http, https đến cluster]]></summary>
    <published>2020-01-21T08:37:35+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-ingress-trong-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/su-dung-ingress-trong-kubernetes.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Chuỗi ký tự và nhập dữ liệu trong Ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/chuoi-ky-tu-va-nhap-du-lieu-trong-ruby-1628.jpg' />Tìm hiểu về chuỗi, nhúng biểu thức vào chuỗi và cách người dùng nhập dữ liệu bằng gets]]></summary>
    <published>2020-01-21T08:14:11+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/chuoi-ky-tu-va-nhap-du-lieu-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/chuoi-ky-tu-va-nhap-du-lieu-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Các toán tử số học trong ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/cac-toan-tu-so-hoc-trong-ruby-1627.jpg' />Các phép toán cộng, trừ, nhân, chia trong Ruby, độ ưu tiên của các toán tử]]></summary>
    <published>2020-01-21T07:33:55+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/cac-toan-tu-so-hoc-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/cac-toan-tu-so-hoc-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Biến hằng số và kiểu dữ liệu trong ruby]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/bien-hang-so-va-kieu-du-lieu-trong-ruby-1626.jpg' />Khai báo biến và gán giá trị vào biến trong ruby, các khai báo và sử dụng hằng số, khái niệm về kiểu dữ liệu ruby]]></summary>
    <published>2020-01-21T06:19:28+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/bien-hang-so-va-kieu-du-lieu-trong-ruby.html"/>
    <id>https://mail.xuanthulab.net/bien-hang-so-va-kieu-du-lieu-trong-ruby.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Giới thiệu Ruby và viết chương trình đầu tiên]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/gioi-thieu-ruby-va-viet-chuong-trinh-dau-tien-1625.jpg' />Giới thiệu ngôn ngữ lập trình Ruby, cài đặt Ruby trên Windows, macOS, sử dụng VSC viết chương trình Ruby đầu tiên in ra lời chào, các ghi chú trong mã Ruby]]></summary>
    <published>2020-01-20T18:18:29+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/gioi-thieu-ruby-va-viet-chuong-trinh-dau-tien.html"/>
    <id>https://mail.xuanthulab.net/gioi-thieu-ruby-va-viet-chuong-trinh-dau-tien.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tạo dự án extension SketchUp với VSC]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tao-du-an-extension-sketchup-voi-vsc-1624.jpg' />Tìm hiểu cấu trúc một dự án Ruby phát triển Extension cho SketchUp, cách nạp Extension vào SketchUp từ thư mục ngoài Plugin, cấu hình Debugger mã Ruby cho VSC làm việc với SketchUp]]></summary>
    <published>2020-01-19T18:08:57+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tao-du-an-extension-sketchup-voi-vsc.html"/>
    <id>https://mail.xuanthulab.net/tao-du-an-extension-sketchup-voi-vsc.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Thực hành tạo Headless Service trên Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/thuc-hanh-tao-headless-service-tren-kubernetes-1623.jpg' />Tạo Service kiểu headless, truy vấn thắng đến các IP của các Pod trên Kubernetes]]></summary>
    <published>2019-12-22T08:29:31+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/thuc-hanh-tao-headless-service-tren-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/thuc-hanh-tao-headless-service-tren-kubernetes.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng PersistentVolume NFS trên Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-persistentvolume-nfs-tren-kubernetes-1622.jpg' />Hướng dẫn tạo máy chủ chia sẻ file NFS trên CentOS, tạo PersistentVolume truy cập đến NFS trên Kubernetes]]></summary>
    <published>2019-12-22T06:47:26+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-persistentvolume-nfs-tren-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/su-dung-persistentvolume-nfs-tren-kubernetes.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng Persistent Volume (pv) và Persistent Volume Claim (pvc) trong Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-persistent-volume-pv-va-persistent-volume-claim-pvc-trong-kubernetes-1621.jpg' />Tạo ổ đĩa lưu dữ liệu lâu dài PV và yêu cầu truy cập đến PV bằng PVC, cách mount PVC vào POD]]></summary>
    <published>2019-12-16T17:17:42+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-persistent-volume-pv-va-persistent-volume-claim-pvc-trong-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/su-dung-persistent-volume-pv-va-persistent-volume-claim-pvc-trong-kubernetes.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[DaemonSet Job và CronJob trong Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/daemonset-job-va-cronjob-trong-kubernetes-1620.jpg' />Sử dụng DaemonSet tạo các Pod chạy trên từng Node, thi hành tác vụ vụ Job, tự động chạy các tác vụ với CronJob]]></summary>
    <published>2019-12-16T12:57:38+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/daemonset-job-va-cronjob-trong-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/daemonset-job-va-cronjob-trong-kubernetes.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Sử dụng Service và Secret Tls trong Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/su-dung-service-va-secret-tls-trong-kubernetes-1619.jpg' />Khai báo và sử dụng service, các kiểu service như NodePort, ClusterIP. Định nghĩa endpoint cho Service, sử dụng Secret Tls]]></summary>
    <published>2019-12-15T16:39:00+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/su-dung-service-va-secret-tls-trong-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/su-dung-service-va-secret-tls-trong-kubernetes.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Deployment trong Kubernetes triển khai cập nhật và scale]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/deployment-trong-kubernetes-trien-khai-cap-nhat-va-scale-1618.jpg' />Tạo Deployment, triển khai ứng dụng, thực hiện cập nhật, scale, tự động scale, hủy cập nhật rollback deployment]]></summary>
    <published>2019-12-12T06:07:56+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/deployment-trong-kubernetes-trien-khai-cap-nhat-va-scale.html"/>
    <id>https://mail.xuanthulab.net/deployment-trong-kubernetes-trien-khai-cap-nhat-va-scale.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[ReplicaSet và HorizontalPodAutoscaler trong Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/replicaset-va-horizontalpodautoscaler-trong-kubernetes-1617.jpg' />Khai báo, triển khai và sử dụng ReplicaSet (RS) để quản lý các POD theo nhãn trên cluster kubernetes, sử dụng HorizontalPodAutoscaler HPA để tự động scale]]></summary>
    <published>2019-12-11T12:17:41+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/replicaset-va-horizontalpodautoscaler-trong-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/replicaset-va-horizontalpodautoscaler-trong-kubernetes.html</id>
  </entry>
  <entry>
    <title type="html"><![CDATA[Tìm hiểu về POD và Node trong Kubernetes]]></title>
    <summary type="html"><![CDATA[<img width='300' src='https://mail.xuanthulab.net/images/post/tim-hieu-ve-pod-va-node-trong-kubernetes-1616.jpg' />Tìm hiểu khái niệm về POD, cách khai báo tạo ra các POD manifest từ cấu hình yaml, chạy các POD và quản lý các POD tronng Kubernetes, xem log của POD, xóa POD ...]]></summary>
    <published>2019-12-06T08:25:18+00:00</published>
    <updated>2026-03-15T23:20:08+00:00</updated>
    <link rel="alternate" type="text/html" href="https://mail.xuanthulab.net/tim-hieu-ve-pod-va-node-trong-kubernetes.html"/>
    <id>https://mail.xuanthulab.net/tim-hieu-ve-pod-va-node-trong-kubernetes.html</id>
  </entry>
</feed>
