<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Cập nhật nội dung bbdrug.com</title>
  <subtitle>Cập nhật về đặc tả JSON, truy vấn, chuyển đổi, hiệu năng và công cụ</subtitle>
  <id>https://bbdrug.com/vi/feed.xml</id>
  <link rel="self" type="application/atom+xml" href="https://bbdrug.com/vi/feed.xml"/>
  <link rel="alternate" type="text/html" href="https://bbdrug.com/vi"/>
  <updated>2026-11-07T00:00:00Z</updated>
  <author>
    <name>bbdrug.com</name>
    <uri>https://bbdrug.com/vi</uri>
  </author>
  <language>vi</language>
  <generator uri="https://bbdrug.com/">bbdrug.com feed generator</generator>
  <entry>
    <title>Tệp JSON lớn không mở được: chọn đúng công cụ theo dung lượng</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/performance/open-large-json-files"/>
    <id>https://bbdrug.com/vi/performance/open-large-json-files</id>
    <published>2026-11-07T00:00:00Z</published>
    <updated>2026-11-07T00:00:00Z</updated>
    <category term="performance" label="Hiệu năng và bảo mật"/>
    <summary type="text">Các tệp xuất JSON hàng chục MB thường khiến trình soạn thảo văn bản và công cụ trực tuyến bị treo, trong khi việc phân tích chỉ mất vài trăm mili giây. Chúng tôi đo thời gian và bộ nhớ ở từng giai đoạn trên mẫu 45 MB với 500.000 bản ghi, chỉ ra chi phí thực nằm ở số dòng và số nút, và đưa ra bảng chọn công cụ theo dung lượng: xem trực tuyến, dòng lệnh, xử lý luồng và ứng dụng desktop.</summary>
  </entry>
  <entry>
    <title>Thực hành với tệp JSONL: mở, chuyển đổi và xử lý dòng lỗi</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/formats/jsonl-file-handbook"/>
    <id>https://bbdrug.com/vi/formats/jsonl-file-handbook</id>
    <published>2026-11-06T00:00:00Z</published>
    <updated>2026-11-06T00:00:00Z</updated>
    <category term="formats" label="Định dạng mở rộng và các biến thể"/>
    <summary type="text">Ném cả tệp .jsonl vào JSON.parse rồi nhận lỗi gần như chưa bao giờ có nghĩa là tệp hỏng — mà nghĩa là cách đọc sai. Bài viết này bao gồm các cách chuẩn để kiểm tra và đọc JSONL từng dòng, các lệnh chuyển đổi hai chiều với mảng JSON, bảng sáu loại dòng lỗi và cách đúng để tiêu thụ NDJSON từ phản hồi HTTP dạng stream.</summary>
  </entry>
  <entry>
    <title>Kiểm thử hợp đồng JSON Schema: hàn quy tắc xác thực vào CI</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/schema/json-schema-contract-testing"/>
    <id>https://bbdrug.com/vi/schema/json-schema-contract-testing</id>
    <published>2026-11-05T00:00:00Z</published>
    <updated>2026-11-05T00:00:00Z</updated>
    <category term="schema" label="Schema và xác thực dữ liệu"/>
    <summary type="text">Schema không kết thúc khi viết xong — đó là nơi thoái hóa bắt đầu. Một lỗi chính tả âm thầm nới lỏng xác thực, một lần refactor làm hỏng mọi fixture. Hướng dẫn này trình bày bộ khung kiểm thử hợp đồng khả thi: fixture dương, âm và snapshot, lint chính schema, biên dịch một lần tái sử dụng, và bốn cổng CI biến vỡ hợp đồng thành build đỏ.</summary>
  </entry>
  <entry>
    <title>JSON sang CSV: header đến từ đâu và vì sao giá trị bị thay đổi</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/conversion/json-to-csv-columns"/>
    <id>https://bbdrug.com/vi/conversion/json-to-csv-columns</id>
    <published>2026-11-04T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="conversion" label="Chuyển đổi định dạng"/>
    <summary type="text">Chín thí nghiệm trên một bộ chuyển đổi thật: chiến lược &quot;khóa của dòng đầu tiên&quot; mất trường trong im lặng, null, vắng mặt và chuỗi rỗng đều thành ô trống, số nguyên 20 chữ số mất độ chính xác ngay ở JSON.parse, và dấu chấm trong khóa khiến hai đường dẫn khác nhau va chạm trong cùng một cột. Header được xây thế nào, giá trị nào bị bóp méo và cách chọn chiến lược theo mục đích phía sau.</summary>
  </entry>
  <entry>
    <title>JSON sang lớp Java: bộ tạo chỉ đưa khung, để lên production còn thiếu năm thứ</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/conversion/json-to-java-pojo"/>
    <id>https://bbdrug.com/vi/conversion/json-to-java-pojo</id>
    <published>2026-11-04T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="conversion" label="Chuyển đổi định dạng"/>
    <summary type="text">Cái nhìn thực tế về thứ một bộ tạo JSON-to-Java thực sự xuất ra — số trở thành Double, đối tượng lồng nhau thành class nội bộ static, và không sinh ra một annotation Jackson nào. Độ chính xác tiền tệ, đổi tên trường, xoá kiểu, trường lạ và ngày tháng là năm thứ bạn phải tự bổ sung, mỗi thứ kèm code chép được ngay.</summary>
  </entry>
  <entry>
    <title>JSON sang TypeScript: interface, type guard và giới hạn của sinh mã</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/conversion/json-to-typescript-interface"/>
    <id>https://bbdrug.com/vi/conversion/json-to-typescript-interface</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="conversion" label="Chuyển đổi định dạng"/>
    <summary type="text">Sinh interface từ JSON mẫu chỉ là nửa việc: trường tùy chọn, null, union, ngày tháng và số nguyên lớn cần con người xem lại, và kiểu không hề kiểm chứng runtime.</summary>
  </entry>
  <entry>
    <title>Tại sao số nguyên lớn mất độ chính xác</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/json-bigint-precision"/>
    <id>https://bbdrug.com/vi/faq/json-bigint-precision</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">Số nguyên vượt quá 2^53-1 mất độ chính xác trong JSON.parse. ID snowflake, mã đơn hàng và bigint trong cơ sở dữ liệu đều gặp vấn đề này, nên hãy giữ chúng dưới dạng chuỗi từ đầu đến cuối.</summary>
  </entry>
  <entry>
    <title>Tra cứu thông báo lỗi JSON: từ văn bản lỗi đến cách sửa</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/basics/json-error-message-lookup"/>
    <id>https://bbdrug.com/vi/basics/json-error-message-lookup</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="basics" label="Kiến thức cơ bản về JSON và đặc tả"/>
    <summary type="text">Tra cứu nguyên nhân theo đúng thông báo JSON.parse: 12 lỗi thường gặp trên Chrome, Firefox và Safari, bao gồm trang lỗi HTML, nội dung bị cắt và phân tích hai lần.</summary>
  </entry>
  <entry>
    <title>Cùng một JSON, bốn công cụ, bốn kết quả: chọn trình định dạng thế nào</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/ecosystem/json-formatter-tool-comparison"/>
    <id>https://bbdrug.com/vi/ecosystem/json-formatter-tool-comparison</id>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <category term="ecosystem" label="Công cụ &amp; Hệ sinh thái"/>
    <summary type="text">Định dạng không phải là không mất dữ liệu. Cùng một JSON có số bắt đầu bằng 0, BOM hoặc số nguyên 20 chữ số lại cho kết quả khác nhau ở Python, Node, jq và json.tool: có nơi báo lỗi, có nơi lặng lẽ đổi giá trị. Mười mẫu tự chạy trên bốn đường xử lý cho ra bảng chọn công cụ và đoạn script kiểm tra chặt chẽ.</summary>
  </entry>
  <entry>
    <title>JSON sang YAML bằng dòng lệnh: bốn cái bẫy đằng sau một lệnh yq</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/conversion/json-to-yaml-cli"/>
    <id>https://bbdrug.com/vi/conversion/json-to-yaml-cli</id>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <category term="conversion" label="Chuyển đổi định dạng"/>
    <summary type="text">Lệnh bị chép lại nhiều nhất trong mọi tutorial, yq -P input.json &gt; output.yaml, trên yq v4 vẫn xuất ra JSON. Bài này đo yq v4.44.6, PyYAML 6.0.3 và js-yaml trên mẫu 2.39 MB, giải thích vì sao phần mở rộng đầu vào quyết định định dạng đầu ra, và đưa ra cách viết đúng cho chuyển đổi hàng loạt, dấu ngoặc, thụt lề và độ chính xác số nguyên lớn.</summary>
  </entry>
  <entry>
    <title>Không đóng additionalProperties thì xác thực Schema vô nghĩa</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/schema/schema-additional-properties"/>
    <id>https://bbdrug.com/vi/schema/schema-additional-properties</id>
    <published>2026-11-02T00:00:00Z</published>
    <updated>2026-11-02T00:00:00Z</updated>
    <category term="schema" label="Schema và xác thực dữ liệu"/>
    <summary type="text">Xác thực thành công không đồng nghĩa dữ liệu sạch. Pydantic mặc định bỏ qua trường lạ, Zod gỡ bỏ chúng, Ajv cho qua — tham số bịa và khóa gõ sai lọt thẳng. Bài viết chỉ ra ba dạng chấp nhận im lặng và đưa ra cách làm đầy đủ: đóng đối tượng, kiểm soát ép kiểu, siết từng tầng lồng nhau.</summary>
  </entry>
  <entry>
    <title>Gỡ lỗi JSON đã nén: từ dòng 1 cột 23611 đến đúng byte bị hỏng</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/basics/minified-json-error-position"/>
    <id>https://bbdrug.com/vi/basics/minified-json-error-position</id>
    <published>2026-11-01T00:00:00Z</published>
    <updated>2026-11-01T00:00:00Z</updated>
    <category term="basics" label="Kiến thức cơ bản về JSON và đặc tả"/>
    <summary type="text">Một tệp JSON 4 MB trên một dòng báo lỗi dòng 1 cột 23611, chẳng nói lên điều gì. Dựa trên các mẫu đo cục bộ, hướng dẫn này giải thích vì sao Python, Node và jq báo ba con số khác nhau, cách một độ lệch ký tự đưa bạn thẳng đến byte bị hỏng, và ba cạm bẫy âm thầm làm hỏng dữ liệu sau khi đã sửa cú pháp.</summary>
  </entry>
  <entry>
    <title>Cách sửa lỗi phân tích JSON: kiểm tra Unexpected token từng bước</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/basics/json-parse-error-fix"/>
    <id>https://bbdrug.com/vi/basics/json-parse-error-fix</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-11-01T00:00:00Z</updated>
    <category term="basics" label="Kiến thức cơ bản về JSON và đặc tả"/>
    <summary type="text">Biến lỗi JSON.parse thành dòng và ký tự, rồi loại trừ sáu nguyên nhân: dấu phẩy cuối, dấu nháy đơn, comment, ký tự điều khiển, BOM và nội dung bị cắt.</summary>
  </entry>
  <entry>
    <title>JMESPath cho người mới: truy vấn projection vượt JSONPath</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/query/jmespath-guide"/>
    <id>https://bbdrug.com/vi/query/jmespath-guide</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="query" label="Truy vấn và sửa từng phần"/>
    <summary type="text">JMESPath định hình lại lô object trực tiếp hơn JSONPath. Hướng dẫn cho người mới này bao gồm cú pháp, projection, pipe, hàm tích hợp và cách dùng trong AWS CLI.</summary>
  </entry>
  <entry>
    <title>JSON nhị phân: chọn giữa MessagePack, CBOR và BSON</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/formats/json-binary-formats"/>
    <id>https://bbdrug.com/vi/formats/json-binary-formats</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="formats" label="Định dạng mở rộng và các biến thể"/>
    <summary type="text">MessagePack, CBOR và BSON đều nén JSON thành byte. Hãy so sánh chi phí byte, cách xử lý int64 và dữ liệu nhị phân, rồi có một ranh giới rõ ràng cho việc khi nào chuyển đổi là đáng.</summary>
  </entry>
  <entry>
    <title>Chọn công cụ JSON diff: diff văn bản, diff cấu trúc và trực quan hoá</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/ecosystem/json-diff-tools"/>
    <id>https://bbdrug.com/vi/ecosystem/json-diff-tools</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="ecosystem" label="Công cụ &amp; Hệ sinh thái"/>
    <summary type="text">Diff văn bản tìm ra nơi tệp khác nhau; diff cấu trúc quyết định nội dung có tương đương không. Chọn đúng lớp giúp thứ tự khóa không bị nhầm thành sự cố.</summary>
  </entry>
  <entry>
    <title>Kiểm chứng JSON trong CI: pipeline với jsonlint, ajv và jq</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/ecosystem/json-lint-and-validate-cli"/>
    <id>https://bbdrug.com/vi/ecosystem/json-lint-and-validate-cli</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="ecosystem" label="Công cụ &amp; Hệ sinh thái"/>
    <summary type="text">Kiểm chứng cú pháp chứng minh tệp phân tích được; kiểm chứng schema chứng minh các trường tuân theo hợp đồng. Trong CI, điều quan trọng là mã thoát rõ ràng, định vị lỗi và đường sửa.</summary>
  </entry>
  <entry>
    <title>Sổ ghi bộ nhớ của JSON: chuỗi, object và mảng lớn thật sự tốn bao nhiêu</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/performance/json-memory-footprint"/>
    <id>https://bbdrug.com/vi/performance/json-memory-footprint</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="performance" label="Hiệu năng và bảo mật"/>
    <summary type="text">Một tệp JSON 10MB có thể thành 30-50MB trong heap V8. Hãy hiểu chuỗi, object và số thật sự tốn bao nhiêu, cách lấy đường cơ sở bằng process.memoryUsage, và khi nào truyền luồng giúp ích.</summary>
  </entry>
  <entry>
    <title>Đừng nén JSON sai thứ tự: minify so với gzip so với brotli, có đo đạc</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/performance/json-minify-vs-gzip"/>
    <id>https://bbdrug.com/vi/performance/json-minify-vs-gzip</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="performance" label="Hiệu năng và bảo mật"/>
    <summary type="text">Minify cắt 30-50% khỏi JSON thô, nhưng gzip xóa gần hết lợi ích đó. Các con số đo được trên hình dạng dữ liệu thật, cùng bốn trường hợp minify làm mọi thứ tệ hơn.</summary>
  </entry>
  <entry>
    <title>JSON Patch trên production: tính nguyên tử, tính bất biến và xung đột đồng thời</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/query/json-patch-safety"/>
    <id>https://bbdrug.com/vi/query/json-patch-safety</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="query" label="Truy vấn và sửa từng phần"/>
    <summary type="text">JSON Patch chỉ là một định dạng thay đổi; tính nguyên tử, tính bất biến và điều kiện đồng thời vẫn là việc của bạn. Bài viết nói về điều kiện tiên quyết bằng test, escape đường dẫn, quay lui và phối hợp ETag.</summary>
  </entry>
  <entry>
    <title>Vì sao cây JSON lớn bị giật: cuộn ảo và chiến lược thu gọn</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/performance/json-render-virtualization"/>
    <id>https://bbdrug.com/vi/performance/json-render-virtualization</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="performance" label="Hiệu năng và bảo mật"/>
    <summary type="text">Giật bắt đầu khi các nút DOM được tạo, không phải khi bạn cuộn. Bài viết trình bày kết xuất ưu tiên thu gọn, danh sách ảo, tô sáng khi tìm kiếm và ranh giới Worker, kèm các chỉ số.</summary>
  </entry>
  <entry>
    <title>Khi lỗi JSON Schema vô lý: định vị lỗi Ajv và quản trị thông báo</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/schema/json-schema-error-messages"/>
    <id>https://bbdrug.com/vi/schema/json-schema-error-messages</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="schema" label="Schema và xác thực dữ liệu"/>
    <summary type="text">Trình xác thực phát ra lỗi cho máy đọc; người dùng lại muốn biết ô nhập nào sai. Bài viết bao gồm mảng errors của Ajv, phân biệt instancePath và schemaPath, nhóm lỗi và cách diễn đạt thông báo.</summary>
  </entry>
  <entry>
    <title>Tái sử dụng JSON Schema: $ref, $defs và kết hợp allOf/oneOf</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/schema/json-schema-ref-composition"/>
    <id>https://bbdrug.com/vi/schema/json-schema-ref-composition</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="schema" label="Schema và xác thực dữ liệu"/>
    <summary type="text">$ref giải quyết tái sử dụng, allOf và oneOf giải quyết kết hợp, còn xếp chồng cả hai chính là chỗ mọi thứ vỡ. Bài viết bao gồm $id, $defs, điều kiện, đệ quy, bundle và debug.</summary>
  </entry>
  <entry>
    <title>JSON Text Sequences (RFC 7464): JSON dạng luồng phân tách bằng RS</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/formats/json-seq-rfc7464"/>
    <id>https://bbdrug.com/vi/formats/json-seq-rfc7464</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="formats" label="Định dạng mở rộng và các biến thể"/>
    <summary type="text">RFC 7464 dùng ký tự phân tách 0x1E để truyền luồng các văn bản JSON mà bạn có thể đọc và ghi cùng lúc. Bài viết trình bày quy tắc, khác biệt so với NDJSON, và cách hiện thực tách-rồi-phân-tích.</summary>
  </entry>
  <entry>
    <title>JSON sang SQL: câu lệnh INSERT, thiết kế bảng và bẫy ánh xạ kiểu</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/conversion/json-to-sql-insert"/>
    <id>https://bbdrug.com/vi/conversion/json-to-sql-insert</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="conversion" label="Chuyển đổi định dạng"/>
    <summary type="text">Việc biến JSON thành SQL INSERT che giấu việc tách bảng lồng nhau, NULL so với thiếu trường, escaping và khác biệt dialect. Câu lệnh chạy được và bảng so sánh cho từng bẫy.</summary>
  </entry>
  <entry>
    <title>JSON, TOML, YAML hay CSON: chọn định dạng cấu hình</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/formats/json-toml-config-formats"/>
    <id>https://bbdrug.com/vi/formats/json-toml-config-formats</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="formats" label="Định dạng mở rộng và các biến thể"/>
    <summary type="text">Tệp cấu hình cần chú thích, ngày tháng và văn bản nhiều dòng, đó là những chỗ JSON thiếu. Hãy so sánh JSON, TOML, YAML và CSON, và xem chuyển đổi luôn làm mất những gì.</summary>
  </entry>
  <entry>
    <title>Phiên bản hoá hợp đồng JSON: tương thích, ngừng hỗ trợ và di trú dữ liệu</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/practice/json-versioning-and-migration"/>
    <id>https://bbdrug.com/vi/practice/json-versioning-and-migration</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="practice" label="Thực tiễn kỹ thuật"/>
    <summary type="text">Thêm một trường không tự động là an toàn. Bài viết nói về ranh giới tương thích, trường phiên bản, cửa sổ ngừng hỗ trợ, di trú ghi kép, kiểm thử hợp đồng và số liệu canary.</summary>
  </entry>
  <entry>
    <title>Công cụ trực quan hoá JSON: tree view, folding và những đánh đổi với dữ liệu lớn</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/ecosystem/json-visualization-tools"/>
    <id>https://bbdrug.com/vi/ecosystem/json-visualization-tools</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="ecosystem" label="Công cụ &amp; Hệ sinh thái"/>
    <summary type="text">Công cụ trực quan hoá biến JSON thành cây có thể thu gọn. Cách render cây, hiệu năng với tệp lớn và quyền riêng tư quyết định mỗi công cụ phù hợp với việc gì, nên hãy bắt đầu từ chỗ dữ liệu nằm ở đâu.</summary>
  </entry>
  <entry>
    <title>Filter JSONPath chuyên sâu: đệ quy, slice và khớp nhiều điều kiện</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/query/jsonpath-filter-advanced"/>
    <id>https://bbdrug.com/vi/query/jsonpath-filter-advanced</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="query" label="Truy vấn và sửa từng phần"/>
    <summary type="text">Duyệt đệ quy, slice và filter nhiều điều kiện là chỗ JSONPath mạnh lên và cũng bị dùng sai nhiều nhất. Bài viết nói về ngữ nghĩa filter, hình dạng kết quả và khác biệt thư viện.</summary>
  </entry>
  <entry>
    <title>Phân tích, kết xuất và truyền luồng JSON lớn</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/performance/large-json-performance"/>
    <id>https://bbdrug.com/vi/performance/large-json-performance</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="performance" label="Hiệu năng và bảo mật"/>
    <summary type="text">Phân tích thường không phải nút cổ chai; kết xuất và sao chép mới là. Hãy tối ưu theo bốn lớp &quot;phân tích → duyệt → kết xuất → truyền tải&quot; để công sức của bạn không bị lãng phí.</summary>
  </entry>
  <entry>
    <title>Câu hỏi thường gặp về hiệu năng và bảo mật: chậm, giật và dữ liệu không đáng tin</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/faq-performance-security"/>
    <id>https://bbdrug.com/vi/faq/faq-performance-security</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">Tại sao một tệp JSON vài chục MB không mở được, sao chép sâu tốn kém đến mức nào, làm sao ngăn ô nhiễm __proto__, và XSS lọt vào từ đâu — mười kết luận sơ cứu xếp theo triệu chứng.</summary>
  </entry>
  <entry>
    <title>Câu hỏi thường gặp về truy vấn và kiểm chứng: JSONPath và Schema</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/faq-query-and-schema"/>
    <id>https://bbdrug.com/vi/faq/faq-query-and-schema</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">Truy vấn theo đường dẫn nên dùng JSONPath hay Pointer, chọn giữa Patch và Merge Patch thế nào, Schema chặn được gì, và chọn phiên bản draft ra sao — tất cả trong một lượt.</summary>
  </entry>
  <entry>
    <title>Câu hỏi thường gặp về cú pháp và định dạng: chú thích, dấu phẩy cuối và độ chính xác</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/faq-syntax-formats"/>
    <id>https://bbdrug.com/vi/faq/faq-syntax-formats</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">Chú thích có được phép không, tại sao dấu phẩy cuối lại lỗi, khóa có cần nháy không, tại sao 9007199254740993 biến đổi — mười hai kết luận, mỗi kết luận đối chiếu với RFC 8259.</summary>
  </entry>
  <entry>
    <title>Câu hỏi thường gặp về cách dùng công cụ: dữ liệu, tệp và xuất</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/faq-tool-usage"/>
    <id>https://bbdrug.com/vi/faq/faq-tool-usage</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">Dữ liệu có bị tải lên không, tệp lớn đến mức nào thì dùng được, có gì được lưu cục bộ, tại sao tiếng Trung biến thành escape: mười câu hỏi nói rõ ranh giới thực sự của một công cụ JSON trực tuyến.</summary>
  </entry>
  <entry>
    <title>Câu hỏi thường gặp về cộng tác nhóm: hợp đồng, cấu hình và fixture</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/faq-workflow"/>
    <id>https://bbdrug.com/vi/faq/faq-workflow</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">Phong cách đặt tên, định dạng thời gian, ngữ nghĩa null, hình dạng enum, định dạng cấu hình, tổ chức fixture và xung đột merge — mười hai điểm đánh đổi mà các nhóm thực sự tranh cãi.</summary>
  </entry>
  <entry>
    <title>Những điểm then chốt khi thiết kế hợp đồng dữ liệu API JSON</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/practice/json-api-design"/>
    <id>https://bbdrug.com/vi/practice/json-api-design</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="practice" label="Thực tiễn kỹ thuật"/>
    <summary type="text">Sáu thứ rất khó thay đổi sau khi đã phát hành: vỏ bọc phản hồi, định dạng lỗi, hình dạng phân trang, cách biểu diễn ID và thời gian, ngữ nghĩa của null so với vắng mặt, và tiến hoá phiên bản.</summary>
  </entry>
  <entry>
    <title>Một phản hồi API nên dùng cấu trúc nào</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/json-api-response-structure"/>
    <id>https://bbdrug.com/vi/faq/json-api-response-structure</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">Object trần thì sạch cho đến khi bạn cần metadata; envelope đầy đủ thì an toàn nhưng dài dòng. Với hầu hết dự án, hãy dùng mã trạng thái HTTP cho kết quả và một envelope ổn định cho dữ liệu.</summary>
  </entry>
  <entry>
    <title>BOM có làm hỏng việc phân tích JSON không</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/json-bom"/>
    <id>https://bbdrug.com/vi/faq/json-bom</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">BOM UTF-8 là ba byte vô hình, nên JSON.parse thất bại ở ký tự đầu và báo dòng 1 cột 1, làm tệp trông như rỗng hoặc bị cắt cụt.</summary>
  </entry>
  <entry>
    <title>Tại sao tiếng Trung biến thành \u4e2d\u6587</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/json-chinese-unicode-escape"/>
    <id>https://bbdrug.com/vi/faq/json-chinese-unicode-escape</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">Chuỗi escape \u4e2d\u6587 là Unicode hợp lệ, không phải lỗi encoding. Mojibake thật trông khác, và việc phân biệt hai trường hợp quyết định bạn thực sự cần sửa gì.</summary>
  </entry>
  <entry>
    <title>JSON có thể có chú thích không</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/vi/faq/json-comment"/>
    <id>https://bbdrug.com/vi/faq/json-comment</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="Câu hỏi thường gặp"/>
    <summary type="text">RFC 8259 không có cú pháp chú thích, nên // và chú thích khối làm JSON.parse ném lỗi. Hãy dùng JSON5 hoặc JSONC, một trường _comment, mô tả trong Schema, hoặc YAML thay thế.</summary>
  </entry>
</feed>
