<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>به‌روزرسانی‌های محتوای bbdrug.com</title>
  <subtitle>تازه‌های مشخصات JSON، پرس‌وجو، تبدیل، کارایی و ابزارها</subtitle>
  <id>https://bbdrug.com/fa/feed.xml</id>
  <link rel="self" type="application/atom+xml" href="https://bbdrug.com/fa/feed.xml"/>
  <link rel="alternate" type="text/html" href="https://bbdrug.com/fa"/>
  <updated>2026-11-07T00:00:00Z</updated>
  <author>
    <name>bbdrug.com</name>
    <uri>https://bbdrug.com/fa</uri>
  </author>
  <language>fa</language>
  <generator uri="https://bbdrug.com/">bbdrug.com feed generator</generator>
  <entry>
    <title>فایل بزرگ JSON باز نمی‌شود؟ ابزار مناسب را بر اساس حجم انتخاب کنید</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/performance/open-large-json-files"/>
    <id>https://bbdrug.com/fa/performance/open-large-json-files</id>
    <published>2026-11-07T00:00:00Z</published>
    <updated>2026-11-07T00:00:00Z</updated>
    <category term="performance" label="عملکرد و امنیت"/>
    <summary type="text">خروجی‌های JSON چند ده مگابایتی اغلب ویرایشگرهای متنی و ابزارهای آنلاین را قفل می‌کنند، حال آنکه خود پارس تنها چند صد میلی‌ثانیه طول می‌کشد. ما زمان و حافظه هر مرحله را روی نمونه‌ای ۴۵ مگابایتی با ۵۰۰ هزار رکورد اندازه گرفتیم، نشان دادیم هزینه واقعی در تعداد خطوط و گره‌هاست و جدول انتخاب ابزار بر اساس حجم فایل ارائه کردیم: مشاهده آنلاین، استخراج خط فرمانی، پردازش جریانی و برنامه دسکتاپ.</summary>
  </entry>
  <entry>
    <title>کار عملی با فایل‌های JSONL: باز کردن، تبدیل و رفع اشکال خطوط خراب</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/formats/jsonl-file-handbook"/>
    <id>https://bbdrug.com/fa/formats/jsonl-file-handbook</id>
    <published>2026-11-06T00:00:00Z</published>
    <updated>2026-11-06T00:00:00Z</updated>
    <category term="formats" label="قالب‌های گسترده و گویش‌ها"/>
    <summary type="text">اگر کل فایل .jsonl را به JSON.parse بدهید و خطا بگیرید، تقریباً هرگز به معنی خراب بودن فایل نیست — یعنی روش خواندن اشتباه بوده. این راهنما روش‌های استاندارد بازرسی و خواندن خط به خط JSONL، دستورات تبدیل دوطرفه با آرایه JSON، جدول شش نوع خط خراب و روش درست مصرف NDJSON از پاسخ‌های HTTP استریمی را پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>تست قرارداد JSON Schema: قواعد اعتبارسنجی را در CI جوش دهید</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/schema/json-schema-contract-testing"/>
    <id>https://bbdrug.com/fa/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 و اعتبارسنجی"/>
    <summary type="text">اسکیما با نوشتن تمام نمی‌شود — از همان‌جا زوال آغاز می‌شود. یک غلط تایپی بی‌صدا اعتبارسنجی را شل می‌کند، یک ریفکتور همه فیکسچرها را می‌شکند. این راهنما ساختاری عملی برای تست قرارداد ارائه می‌دهد: فیکسچرهای مثبت، منفی و اسنپ‌شات، لینت خودِ اسکیما، کامپایل یک‌باره و استفاده مجدد، و چهار دروازه CI که شکست قرارداد را به بیلد قرمز تبدیل می‌کند.</summary>
  </entry>
  <entry>
    <title>JSON به CSV: سرصفحه از کجا می‌آید و چرا مقادیر تغییر می‌کنند</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/conversion/json-to-csv-columns"/>
    <id>https://bbdrug.com/fa/conversion/json-to-csv-columns</id>
    <published>2026-11-04T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="conversion" label="تبدیل قالب"/>
    <summary type="text">نه آزمایش روی یک مبدل واقعی: راهبرد «کلیدهای رکورد اول» بی‌سروصدا فیلد گم می‌کند، null و غیبت و رشتهٔ خالی همه به خانه‌های خالی تبدیل می‌شوند، عدد صحیح ۲۰ رقمی همان‌جا در JSON.parse دقتش را از دست می‌دهد، و نقطه در یک کلید دو مسیر متفاوت را در یک ستون به برخورد می‌اندازد. سرصفحه چگونه ساخته می‌شود، کدام مقادیر تغییر شکل می‌یابند و چگونه بسته به مصرف پایین‌دستی راهبرد انتخاب کنید.</summary>
  </entry>
  <entry>
    <title>JSON به کلاس جاوا: مولد فقط اسکلت می‌دهد، برای تولید پنج چیز دیگر لازم است</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/conversion/json-to-java-pojo"/>
    <id>https://bbdrug.com/fa/conversion/json-to-java-pojo</id>
    <published>2026-11-04T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="conversion" label="تبدیل قالب"/>
    <summary type="text">نگاهی عملی به آنچه یک مولد JSON-to-Java واقعاً تولید می‌کند — اعداد Double می‌شوند، اشیای تو در تو کلاس‌های داخلی static می‌شوند و حتی یک حاشیه‌نویسی Jackson هم تولید نمی‌شود. دقت پولی، تغییر نام فیلدها، پاک‌شدن نوع، فیلدهای ناشناخته و تاریخ‌ها پنج چیزی هستند که باید خودتان اضافه کنید، هرکدام با کد آماده برای کپی.</summary>
  </entry>
  <entry>
    <title>JSON به TypeScript: interfaceها، type guardها و محدودیت‌های تولید</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/conversion/json-to-typescript-interface"/>
    <id>https://bbdrug.com/fa/conversion/json-to-typescript-interface</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="conversion" label="تبدیل قالب"/>
    <summary type="text">تولید interface از JSON نمونه نیمی از کار است: فیلدهای اختیاری، null، unionها، تاریخ‌ها و عددهای صحیح بزرگ به بازبینی انسانی نیاز دارند و نوع‌ها هیچ اعتبارسنجی زمان اجرا انجام نمی‌دهند.</summary>
  </entry>
  <entry>
    <title>چرا عددهای صحیح بزرگ دقت را از دست می‌دهند</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/json-bigint-precision"/>
    <id>https://bbdrug.com/fa/faq/json-bigint-precision</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">عددهای صحیح بالاتر از 2^53-1 در JSON.parse دقت را از دست می‌دهند. شناسه‌های snowflake، شماره سفارش و bigintهای پایگاه‌داده همه به این مشکل می‌خورند، پس آن‌ها را سرتاسر به‌صورت رشته نگه دارید.</summary>
  </entry>
  <entry>
    <title>جست‌وجوی پیام خطای JSON: از متن خطا مستقیم به رفع آن</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/basics/json-error-message-lookup"/>
    <id>https://bbdrug.com/fa/basics/json-error-message-lookup</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-11-04T00:00:00Z</updated>
    <category term="basics" label="مبانی JSON و استاندارد آن"/>
    <summary type="text">علت را با متن دقیق JSON.parse جست‌وجو کنید: ۱۲ خطای پرتکرار در Chrome، Firefox و Safari، شامل صفحه‌های خطای HTML، بریدگی و تجزیه دوباره.</summary>
  </entry>
  <entry>
    <title>یک JSON، چهار ابزار، چهار نتیجه: چگونه فرمت‌کننده انتخاب کنیم</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/ecosystem/json-formatter-tool-comparison"/>
    <id>https://bbdrug.com/fa/ecosystem/json-formatter-tool-comparison</id>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <category term="ecosystem" label="ابزارها و اکوسیستم"/>
    <summary type="text">فرمت کردن بی‌اتلاف نیست. همان JSON با صفر پیشرو، BOM یا عدد ۲۰ رقمی در Python، Node، jq و json.tool نتایج متفاوتی می‌دهد: برخی خطا می‌دهند و برخی بی‌صدا مقدار را تغییر می‌دهند. ده نمونه اجرا شده روی چهار مسیر، جدول انتخاب و یک اسکریپت اعتبارسنجی سختگیرانه به دست می‌دهد.</summary>
  </entry>
  <entry>
    <title>تبدیل JSON به YAML در خط فرمان: چهار تله پشت یک دستور yq</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/conversion/json-to-yaml-cli"/>
    <id>https://bbdrug.com/fa/conversion/json-to-yaml-cli</id>
    <published>2026-11-03T00:00:00Z</published>
    <updated>2026-11-03T00:00:00Z</updated>
    <category term="conversion" label="تبدیل قالب"/>
    <summary type="text">رایجترین دستوری که در آموزشها تکرار میشود، yq -P input.json &gt; output.yaml، در yq v4 همچنان JSON خروجی میدهد. این مقاله yq v4.44.6، PyYAML 6.0.3 و js-yaml را روی نمونهای 2.39 MB اندازه میگیرد، توضیح میدهد چرا پسوند ورودی قالب خروجی را تعیین میکند و دستور صحیح تبدیل دستهای، گیومهگذاری، تورفتگی و دقت اعداد صحیح بزرگ را میدهد.</summary>
  </entry>
  <entry>
    <title>بدون additionalProperties، اعتبارسنجی اسکیما هیچ‌چیز را اعتبارسنجی نمی‌کند</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/schema/schema-additional-properties"/>
    <id>https://bbdrug.com/fa/schema/schema-additional-properties</id>
    <published>2026-11-02T00:00:00Z</published>
    <updated>2026-11-02T00:00:00Z</updated>
    <category term="schema" label="Schema و اعتبارسنجی"/>
    <summary type="text">قبولی اعتبارسنجی به معنای داده تمیز نیست. Pydantic به‌طور پیش‌فرض فیلدهای ناشناخته را نادیده می‌گیرد، Zod آن‌ها را حذف می‌کند و Ajv رد می‌کند — پارامترهای توهمی و کلیدهای غلط املایی بی‌صدا عبور می‌کنند. این مقاله سه شکل پذیرش بی‌صدا را نشان می‌دهد و دستور کامل می‌دهد: بستن اشیا، کنترل تبدیل نوع، سفت‌کردن هر سطح تودرتو.</summary>
  </entry>
  <entry>
    <title>اشکال‌زدایی JSON فشرده: از line 1 column 23611 تا بایت شکسته</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/basics/minified-json-error-position"/>
    <id>https://bbdrug.com/fa/basics/minified-json-error-position</id>
    <published>2026-11-01T00:00:00Z</published>
    <updated>2026-11-01T00:00:00Z</updated>
    <category term="basics" label="مبانی JSON و استاندارد آن"/>
    <summary type="text">یک فایل JSON 4 MB تک‌خطی «line 1 column 23611» را گزارش می‌کند که هیچ چیزی نمی‌گوید. این راهنما با نمونه‌های اندازه‌گیری‌شده محلی توضیح می‌دهد چرا Python، Node و jq سه عدد متفاوت گزارش می‌کنند، افست کاراکتر چگونه مستقیم به بایت شکسته می‌رسد و کدام سه دام پس از درست شدن نحو، داده را بی‌صدا خراب می‌کنند.</summary>
  </entry>
  <entry>
    <title>چگونه خطاهای تجزیه JSON را رفع کنیم: بررسی گام‌به‌گام Unexpected token</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/basics/json-parse-error-fix"/>
    <id>https://bbdrug.com/fa/basics/json-parse-error-fix</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-11-01T00:00:00Z</updated>
    <category term="basics" label="مبانی JSON و استاندارد آن"/>
    <summary type="text">خطاهای JSON.parse را به شماره خط و کاراکتر تبدیل کنید و سپس شش علت را کنار بگذارید: ویرگول انتهایی، تک‌گیومه، کامنت، کاراکتر کنترلی، BOM و بریدگی.</summary>
  </entry>
  <entry>
    <title>JMESPath برای مبتدیان: پرس‌وجوهای projection که از JSONPath بهترند</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/query/jmespath-guide"/>
    <id>https://bbdrug.com/fa/query/jmespath-guide</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="query" label="پرس‌وجو و تغییر افزایشی"/>
    <summary type="text">JMESPath دسته‌های اشیا را مستقیم‌تر از JSONPath بازشکل می‌دهد. این راهنمای مبتدی نحو، projectionها، pipeها، توابع داخلی و استفاده در AWS CLI را پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>JSON دودویی: انتخاب بین MessagePack، CBOR و BSON</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/formats/json-binary-formats"/>
    <id>https://bbdrug.com/fa/formats/json-binary-formats</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="formats" label="قالب‌های گسترده و گویش‌ها"/>
    <summary type="text">MessagePack، CBOR و BSON همگی JSON را به بایت فشرده می‌کنند. هزینه بایت، مدیریت int64 و دودویی را مقایسه کنید و خط روشنی برای ارزش تغییر بگیرید.</summary>
  </entry>
  <entry>
    <title>انتخاب ابزار تفاوت JSON: تفاوت متنی، ساختاری و بصری‌سازی</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/ecosystem/json-diff-tools"/>
    <id>https://bbdrug.com/fa/ecosystem/json-diff-tools</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="ecosystem" label="ابزارها و اکوسیستم"/>
    <summary type="text">تفاوت متنی می‌گوید فایل‌ها کجا متفاوت‌اند؛ تفاوت ساختاری تصمیم می‌گیرد آیا محتوا هم‌ارز است. انتخاب لایه درست مانع از اشتباه گرفتن ترتیب کلید با یک حادثه می‌شود.</summary>
  </entry>
  <entry>
    <title>اعتبارسنجی JSON در CI: خط لوله‌ای با jsonlint، ajv و jq</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/ecosystem/json-lint-and-validate-cli"/>
    <id>https://bbdrug.com/fa/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="ابزارها و اکوسیستم"/>
    <summary type="text">اعتبارسنجی نحو ثابت می‌کند فایل تجزیه می‌شود؛ اعتبارسنجی schema ثابت می‌کند فیلدها از قرارداد پیروی می‌کنند. در CI آنچه اهمیت دارد کدهای خروج بی‌ابهام، مکان خطا و مسیر ترمیم است.</summary>
  </entry>
  <entry>
    <title>دفتر حافظه JSON: رشته‌ها، اشیا و آرایه‌های بزرگ واقعاً چه هزینه‌ای دارند</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/performance/json-memory-footprint"/>
    <id>https://bbdrug.com/fa/performance/json-memory-footprint</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="performance" label="عملکرد و امنیت"/>
    <summary type="text">فایل JSON ده مگابایتی می‌تواند در heap V8 به ۳۰ تا ۵۰ مگابایت تبدیل شود. بیاموزید رشته‌ها، اشیا و عددها واقعاً چه هزینه‌ای دارند، چگونه با process.memoryUsage خط پایه بگیرید و جریان چه زمانی کمک می‌کند.</summary>
  </entry>
  <entry>
    <title>فشرده‌سازی JSON را به ترتیب اشتباه انجام ندهید: minify در برابر gzip در برابر brotli، اندازه‌گیری‌شده</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/performance/json-minify-vs-gzip"/>
    <id>https://bbdrug.com/fa/performance/json-minify-vs-gzip</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="performance" label="عملکرد و امنیت"/>
    <summary type="text">فشرده‌سازی متنی ۳۰ تا ۵۰ درصد از JSON خام را می‌کوبد، اما gzip بیشتر این بهره را پاک می‌کند. اعداد اندازه‌گیری‌شده روی شکل‌های واقعی، به‌علاوه چهار موردی که فشرده‌سازی وضع را بدتر می‌کند.</summary>
  </entry>
  <entry>
    <title>JSON Patch در محیط تولید: اتمیک بودن، idempotency و تعارض‌های هم‌زمانی</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/query/json-patch-safety"/>
    <id>https://bbdrug.com/fa/query/json-patch-safety</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="query" label="پرس‌وجو و تغییر افزایشی"/>
    <summary type="text">JSON Patch فقط یک قالب تغییر است؛ اتمیک بودن، idempotency و هم‌زمانی همچنان کار شماست. پیش‌شرط‌های test، escape مسیر، rollback و هماهنگی ETag را پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>چرا درخت‌های بزرگ JSON لرزان‌اند: اسکرول مجازی و راهبردهای جمع‌کردن</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/performance/json-render-virtualization"/>
    <id>https://bbdrug.com/fa/performance/json-render-virtualization</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="performance" label="عملکرد و امنیت"/>
    <summary type="text">لرزش وقتی شروع می‌شود که گره‌های DOM ساخته می‌شوند، نه هنگام اسکرول. رندر جمع‌شده-اول، لیست مجازی، هایلایت جست‌وجو و مرزهای Worker را با معیارها پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>وقتی خطاهای JSON Schema بی‌معنا می‌شوند: مکان‌یابی خطا و مدیریت پیام در Ajv</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/schema/json-schema-error-messages"/>
    <id>https://bbdrug.com/fa/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 و اعتبارسنجی"/>
    <summary type="text">اعتبارسنج خطاهای ماشینی می‌دهد؛ کاربران می‌خواهند بدانند کدام جعبه ورودی اشتباه است. آرایه errors در Ajv، instancePath در برابر schemaPath، گروه‌بندی و جمله‌بندی را پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>بازاستفاده از JSON Schema: $ref، $defs و ترکیب allOf/oneOf</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/schema/json-schema-ref-composition"/>
    <id>https://bbdrug.com/fa/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 و اعتبارسنجی"/>
    <summary type="text">$ref بازاستفاده را حل می‌کند، allOf و oneOf ترکیب را، و روی‌هم گذاشتن هر دو جایی است که چیزها می‌شکنند. $id، $defs، شرطی‌ها، بازگشت، بسته‌بندی و عیب‌یابی را پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>دنباله‌های متن JSON (RFC 7464): JSON جریانی با جداکننده RS</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/formats/json-seq-rfc7464"/>
    <id>https://bbdrug.com/fa/formats/json-seq-rfc7464</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="formats" label="قالب‌های گسترده و گویش‌ها"/>
    <summary type="text">RFC 7464 از جداکننده 0x1E برای جریان دادن متن‌های JSON استفاده می‌کند که هم‌زمان می‌توانید بخوانید و بنویسید. قواعد، تفاوت با NDJSON و پیاده‌سازی تقسیم-سپس-تجزیه را پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>JSON به SQL: دستورهای INSERT، طراحی جدول و تله‌های نگاشت نوع</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/conversion/json-to-sql-insert"/>
    <id>https://bbdrug.com/fa/conversion/json-to-sql-insert</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="conversion" label="تبدیل قالب"/>
    <summary type="text">تبدیل JSON به INSERT SQL شکستن جدول‌های تودرتو، NULL در برابر غایب، escape و شکاف گویش‌ها را پنهان می‌کند. دستورهای قابل اجرا و جدول مقایسه برای هر تله.</summary>
  </entry>
  <entry>
    <title>JSON، TOML، YAML یا CSON: انتخاب قالب پیکربندی</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/formats/json-toml-config-formats"/>
    <id>https://bbdrug.com/fa/formats/json-toml-config-formats</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="formats" label="قالب‌های گسترده و گویش‌ها"/>
    <summary type="text">فایل‌های پیکربندی به کامنت، تاریخ و متن چندخطی نیاز دارند که JSON در آن‌ها کم می‌آورد. JSON، TOML، YAML و CSON را مقایسه کنید و ببینید تبدیل همیشه چه چیزی را از دست می‌دهد.</summary>
  </entry>
  <entry>
    <title>نسخه‌بندی قراردادهای JSON: سازگاری، منسوخ‌سازی و مهاجرت داده</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/practice/json-versioning-and-migration"/>
    <id>https://bbdrug.com/fa/practice/json-versioning-and-migration</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="practice" label="رویه مهندسی"/>
    <summary type="text">افزودن فیلد خودکار امن نیست. مرزهای سازگاری، فیلد نسخه، پنجره منسوخ‌سازی، مهاجرت هم‌زمان‌نویسی، آزمون قرارداد و معیارهای canary را پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>ابزارهای بصری‌سازی JSON: نمای درختی، folding و معایب داده بزرگ</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/ecosystem/json-visualization-tools"/>
    <id>https://bbdrug.com/fa/ecosystem/json-visualization-tools</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="ecosystem" label="ابزارها و اکوسیستم"/>
    <summary type="text">ابزارهای بصری‌سازی JSON را به درخت قابل جمع‌شدن تبدیل می‌کنند. رندر درختی، عملکرد فایل بزرگ و حریم خصوصی تعیین می‌کند هر ابزار به چه کار می‌آید، پس با محل داده شروع کنید.</summary>
  </entry>
  <entry>
    <title>فیلترهای JSONPath به‌طور عمیق: بازگشت، برش‌ها و تطبیق چندشرطی</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/query/jsonpath-filter-advanced"/>
    <id>https://bbdrug.com/fa/query/jsonpath-filter-advanced</id>
    <published>2026-10-31T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="query" label="پرس‌وجو و تغییر افزایشی"/>
    <summary type="text">نزول بازگشتی، برش‌ها و فیلترهای چندشرطی جایی هستند که JSONPath هم قدرتمند می‌شود و هم بد استفاده. معناشناسی فیلتر، شکل نتیجه و تفاوت کتابخانه‌ها را پوشش می‌دهد.</summary>
  </entry>
  <entry>
    <title>تجزیه، رندر و جریان دادن JSON بزرگ</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/performance/large-json-performance"/>
    <id>https://bbdrug.com/fa/performance/large-json-performance</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-31T00:00:00Z</updated>
    <category term="performance" label="عملکرد و امنیت"/>
    <summary type="text">تجزیه غالباً گلوگاه نیست؛ رندر و کپی هستند. در چهار لایه «تجزیه → پیمایش → رندر → انتقال» بهینه کنید تا تلاشتان تلف نشود.</summary>
  </entry>
  <entry>
    <title>پرسش‌های متداول عملکرد و امنیت: کند، لرزان و داده نامعتمد</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/faq-performance-security"/>
    <id>https://bbdrug.com/fa/faq/faq-performance-security</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">چرا فایل JSON چند ده مگابایتی باز نمی‌شود، شبیه‌سازی عمیق چقدر گران است، چگونه از آلودگی __proto__ جلوگیری کنیم و XSS از کجا وارد می‌شود — ده نتیجه کمک اولیه که بر اساس نشانه مرتب شده‌اند.</summary>
  </entry>
  <entry>
    <title>پرسش‌های متداول پرس‌وجو و اعتبارسنجی: JSONPath و Schema</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/faq-query-and-schema"/>
    <id>https://bbdrug.com/fa/faq/faq-query-and-schema</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">آیا پرس‌وجوی مسیر باید از JSONPath یا Pointer استفاده کند، چگونه بین Patch و Merge Patch انتخاب کنیم، Schema چه چیزی را می‌تواند مسدود کند، و نسخه draft را چگونه انتخاب کنیم — همه در یک مرور توضیح داده شده است.</summary>
  </entry>
  <entry>
    <title>پرسش‌های متداول نحو و قالب: کامنت، ویرگول انتهایی و دقت</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/faq-syntax-formats"/>
    <id>https://bbdrug.com/fa/faq/faq-syntax-formats</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">آیا کامنت مجاز است، چرا ویرگول انتهایی خطا می‌دهد، آیا کلیدها به گیومه نیاز دارند، چرا 9007199254740993 تغییر می‌کند — دوازده نتیجه که هر یک بر اساس RFC 8259 بررسی شده است.</summary>
  </entry>
  <entry>
    <title>پرسش‌های متداول ابزار: داده، فایل و خروجی</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/faq-tool-usage"/>
    <id>https://bbdrug.com/fa/faq/faq-tool-usage</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">آیا داده آپلود می‌شود، چه حجم فایلی کار می‌کند، چیزی محلی ذخیره می‌شود، چرا چینی به escape تبدیل می‌شود: ده پرسش که مرزهای واقعی یک ابزار آنلاین JSON را روشن می‌کند.</summary>
  </entry>
  <entry>
    <title>پرسش‌های متداول همکاری تیمی: قرارداد، پیکربندی و fixture</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/faq-workflow"/>
    <id>https://bbdrug.com/fa/faq/faq-workflow</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">سبک نام‌گذاری، قالب زمان، معناشناسی null، شکل enum، قالب پیکربندی، سازمان‌دهی fixture و تعارض ادغام — دوازده مصالحه‌ای که تیم‌ها واقعاً بر سرشان بحث می‌کنند.</summary>
  </entry>
  <entry>
    <title>نکات کلیدی طراحی قرارداد داده API در JSON</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/practice/json-api-design"/>
    <id>https://bbdrug.com/fa/practice/json-api-design</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="practice" label="رویه مهندسی"/>
    <summary type="text">شش چیز پس از انتشار بسیار سخت تغییر می‌کنند: پاکت پاسخ، قالب خطا، شکل صفحه‌بندی، نمایش شناسه و زمان، معناشناسی null در برابر غایب، و تکامل نسخه.</summary>
  </entry>
  <entry>
    <title>پاسخ API باید چه ساختاری داشته باشد</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/json-api-response-structure"/>
    <id>https://bbdrug.com/fa/faq/json-api-response-structure</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">اشیای خالی تا وقتی به فراداده نیاز پیدا نکنید تمیزند؛ پاکت کامل امن اما پرگو است. برای بیشتر پروژه‌ها از وضعیت HTTP برای نتیجه و پاکت پایدار برای داده استفاده کنید.</summary>
  </entry>
  <entry>
    <title>آیا BOM تجزیه JSON را می‌شکند</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/json-bom"/>
    <id>https://bbdrug.com/fa/faq/json-bom</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">BOM در UTF-8 سه بایت نامرئی است، پس JSON.parse روی نخستین نویسه شکست می‌خورد و خط ۱ ستون ۱ را گزارش می‌کند، که فایل را خالی یا ناقص نشان می‌دهد.</summary>
  </entry>
  <entry>
    <title>چرا چینی به \u4e2d\u6587 تبدیل می‌شود</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/json-chinese-unicode-escape"/>
    <id>https://bbdrug.com/fa/faq/json-chinese-unicode-escape</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">escape به‌صورت \u4e2d\u6587 یونیکد قانونی است، نه خرابی رمزگذاری. mojibake واقعی متفاوت به نظر می‌رسد و تشخیص این دو تعیین می‌کند واقعاً چه چیزی باید اصلاح شود.</summary>
  </entry>
  <entry>
    <title>آیا JSON می‌تواند کامنت داشته باشد</title>
    <link rel="alternate" type="text/html" href="https://bbdrug.com/fa/faq/json-comment"/>
    <id>https://bbdrug.com/fa/faq/json-comment</id>
    <published>2026-10-30T00:00:00Z</published>
    <updated>2026-10-30T00:00:00Z</updated>
    <category term="faq" label="پرسش‌های متداول"/>
    <summary type="text">RFC 8259 نحو کامنت ندارد، پس `//` و کامنت بلوکی باعث پرتاب خطا توسط JSON.parse می‌شوند. از JSON5 یا JSONC، فیلد `_comment`، توضیح Schema یا YAML استفاده کنید.</summary>
  </entry>
</feed>
