[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"public:announcements":3,"public:navigations:zh":4,"tag:detail:algorithms:zh":56,"footer:categories:zh":66,"tag:posts:algorithms:zh:1":186},[],[5,18,25,33,41,49],{"id":6,"title":7,"url":12,"icon":13,"parent_id":13,"location":14,"order":6,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},1,{"zh":8,"en":9,"ja":10,"zh_TW":11},"首页","Home","ホーム","首頁","\u002F",null,"header",true,false,"2026-09-30T18:09:54.251095Z",{"id":19,"title":20,"url":24,"icon":13,"parent_id":13,"location":14,"order":19,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},2,{"zh":21,"en":22,"ja":23,"zh_TW":21},"文章","Posts","記事","\u002Fposts",{"id":26,"title":27,"url":32,"icon":13,"parent_id":13,"location":14,"order":26,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},3,{"zh":28,"en":29,"ja":30,"zh_TW":31},"分类","Categories","カテゴリー","分類","\u002Fcategories",{"id":34,"title":35,"url":40,"icon":13,"parent_id":13,"location":14,"order":34,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},4,{"zh":36,"en":37,"ja":38,"zh_TW":39},"标签","Tags","タグ","標籤","\u002Ftags",{"id":42,"title":43,"url":48,"icon":13,"parent_id":13,"location":14,"order":42,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},5,{"zh":44,"en":45,"ja":46,"zh_TW":47},"关于","About","概要","關於","\u002Fpage\u002Fabout",{"id":50,"title":51,"url":55,"icon":13,"parent_id":13,"location":14,"order":50,"is_active":15,"target_blank":16,"created_at":17,"updated_at":13},6,{"zh":52,"en":53,"ja":54,"zh_TW":52},"留言板","Guestbook","ゲストブック","\u002Fpage\u002Fguestbook",{"id":57,"name":58,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":65},13,{"en":59,"ja":60,"zh":61,"zh_Hant":61},"Algorithms","アルゴリズム","算法","algorithms","#ef4444","2026-09-30T18:09:53.700921Z",8,[67,82,96,111,126,142,157,171],{"id":6,"name":68,"slug":73,"description":74,"icon":79,"color":80,"cover_image":13,"created_at":81,"post_count":65},{"en":69,"ja":70,"zh":71,"zh_Hant":72},"Technology","テクノロジー","技术","技術","technology",{"en":75,"ja":76,"zh":77,"zh_Hant":78},"Cutting-edge technology exploration and in-depth analysis covering programming languages, frameworks, and architecture design","プログラミング言語、フレームワーク、アーキテクチャ設計を含む先端技術の探究","前沿技术探索与深度分析，涵盖编程语言、框架、架构设计等核心领域","前沿技術探索與深度分析，涵蓋編程語言、框架、架構設計等核心領域","heroicons:cog-6-tooth","#6366f1","2026-09-30T18:09:53.633610Z",{"id":19,"name":83,"slug":87,"description":88,"icon":93,"color":94,"cover_image":13,"created_at":95,"post_count":50},{"en":84,"ja":85,"zh":86,"zh_Hant":86},"Tutorial","チュートリアル","教程","tutorial",{"en":89,"ja":90,"zh":91,"zh_Hant":92},"Hands-on tutorials from scratch with clear steps and complete code for developers at all levels","ゼロから始める実践的なチュートリアル。明確な手順と完全なコードで、全てのレベルの開発者に最適","从零开始的实战教程，步骤清晰，代码完整，适合各阶段开发者学习","從零開始的實戰教程，步驟清晰，代碼完整，適合各階段開發者學習","heroicons:academic-cap","#10b981","2026-09-30T18:09:53.641581Z",{"id":26,"name":97,"slug":101,"description":102,"icon":107,"color":108,"cover_image":13,"created_at":109,"post_count":110},{"en":98,"ja":99,"zh":100,"zh_Hant":100},"Frontend","フロントエンド","前端","frontend",{"en":103,"ja":104,"zh":105,"zh_Hant":106},"Full coverage of web frontend development including Vue, React, new CSS features, and performance optimization","Vue、React、CSSの新機能やパフォーマンス最適化を含むWebフロントエンド開発の全領域","Web前端开发全栈覆盖，包括Vue、React、CSS新特性及性能优化等话题","Web前端開發全棧覆蓋，包括Vue、React、CSS新特性及性能優化等話題","heroicons:computer-desktop","#ec4899","2026-09-30T18:09:53.644838Z",7,{"id":34,"name":112,"slug":117,"description":118,"icon":123,"color":124,"cover_image":13,"created_at":125,"post_count":26},{"en":113,"ja":114,"zh":115,"zh_Hant":116},"Backend","バックエンド","后端","後端","backend",{"en":119,"ja":120,"zh":121,"zh_Hant":122},"Server-side development best practices including API design, database optimization, and microservices architecture","API設計、データベース最適化、マイクロサービスアーキテクチャを含むサーバーサイド開発の実践","服务端开发实战经验，API设计、数据库优化、微服务架构等深度内容","服務端開發實戰經驗，API設計、數據庫優化、微服務架構等深度內容","heroicons:server-stack","#f59e0b","2026-09-30T18:09:53.647836Z",{"id":42,"name":127,"slug":132,"description":133,"icon":138,"color":139,"cover_image":13,"created_at":140,"post_count":141},{"en":128,"ja":129,"zh":130,"zh_Hant":131},"Fullstack","フルスタック","全栈","全棧","fullstack",{"en":134,"ja":135,"zh":136,"zh_Hant":137},"End-to-end development guides covering the full project lifecycle and technology stack selection","フロントエンドからバックエンドまでの開発プロセス全体をカバーするガイド","从前端到后端的全流程开发指南，覆盖完整项目生命周期与技术选型","從前端到後端的全流程開發指南，覆蓋完整項目生命週期與技術選型","heroicons:swatch","#8b5cf6","2026-09-30T18:09:53.650513Z",0,{"id":50,"name":143,"slug":148,"description":149,"icon":154,"color":155,"cover_image":13,"created_at":156,"post_count":34},{"en":144,"ja":145,"zh":146,"zh_Hant":147},"Essays","エッセイ","随笔","隨筆","essays",{"en":150,"ja":151,"zh":152,"zh_Hant":153},"Technical reflections and development insights recording the programmer's growth journey","プログラマーの成長の軌跡を記録する技術的考察と開発の洞察","技术思考与开发心得分享，记录程序员成长路上的点滴感悟","技術思考與開發心得分享，記錄程序員成長路上的點滴感悟","heroicons:pencil-square","#f43f5e","2026-09-30T18:09:53.653105Z",{"id":110,"name":158,"slug":162,"description":163,"icon":168,"color":169,"cover_image":13,"created_at":170,"post_count":34},{"en":159,"ja":160,"zh":161,"zh_Hant":161},"Tools","ツール","工具","tools",{"en":164,"ja":165,"zh":166,"zh_Hant":167},"Development toolchain and productivity tool recommendations to supercharge your development experience","開発効率を飛躍的に向上させるツールチェーンと生産性ツールの推奨","开发工具链与效率提升利器推荐，让你的开发体验如虎添翼","開發工具鏈與效率提升利器推薦，讓你的開發體驗如虎添翼","heroicons:wrench-screwdriver","#06b6d4","2026-09-30T18:09:53.655605Z",{"id":65,"name":172,"slug":177,"description":178,"icon":183,"color":184,"cover_image":13,"created_at":185,"post_count":141},{"en":173,"ja":174,"zh":175,"zh_Hant":176},"Translation","翻訳","翻译","翻譯","translation",{"en":179,"ja":180,"zh":181,"zh_Hant":182},"Curated translations of high-quality foreign technical articles to keep up with international trends","国際的な技術トレンドを追うための厳選された海外技術記事の翻訳","优质外文技术文章精选翻译，紧跟国际技术前沿动态","優質外文技術文章精選翻譯，緊跟國際技術前沿動態","heroicons:language","#84cc16","2026-09-30T18:09:53.658041Z",{"items":187,"total":65,"page":6,"page_size":294,"total_pages":6},[188,218,242,271,297,311,325,339],{"id":189,"title":190,"subtitle":13,"slug":191,"excerpt":192,"cover_image":13,"author":193,"category":196,"tags":197,"status":214,"views":215,"likes_count":141,"comments_count":26,"is_pinned":16,"created_at":216,"published_at":216,"updated_at":217,"reading_time":6},27,"测试金字塔：单元\u002F集成\u002FE2E 测试比例与落地","post-27-测试金字塔单元集","系统解析测试金字塔架构：从底层单元测试（大量快速、Mock 隔离依赖）、中层集成测试（服务\u002F数据库\u002F消息协作真实交互）、顶层 E2E 测试（真实用户路径少量精测）的推荐比例 70% \u002F 20% \u002F 10%，附项目覆盖率指标与落地实践。",{"id":6,"username":194,"nickname":194,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":195},"Choyeon","2026-09-30T18:09:53.330367Z",{"id":6,"name":71,"slug":73,"description":77,"icon":79,"color":80,"cover_image":13,"created_at":81,"post_count":141},[198,203,208,213],{"id":6,"name":199,"slug":200,"color":201,"icon":13,"is_active":15,"created_at":202,"post_count":141},"Python","python","#3776ab","2026-09-30T18:09:53.663835Z",{"id":50,"name":204,"slug":205,"color":206,"icon":13,"is_active":15,"created_at":207,"post_count":141},"TypeScript","typescript","#3178c6","2026-09-30T18:09:53.680697Z",{"id":65,"name":209,"slug":210,"color":211,"icon":13,"is_active":15,"created_at":212,"post_count":141},"Node.js","nodejs","#339933","2026-09-30T18:09:53.685769Z",{"id":57,"name":61,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":141},"published",418,"2026-09-23T16:09:53.733462Z","2026-10-01T10:32:41.719776Z",{"id":219,"title":220,"subtitle":13,"slug":221,"excerpt":222,"cover_image":13,"author":223,"category":224,"tags":225,"status":214,"views":239,"likes_count":141,"comments_count":34,"is_pinned":16,"created_at":240,"published_at":240,"updated_at":241,"reading_time":6},22,"算法与数据结构：动态规划 5 大解题模板","post-22-算法与数据结构动态","彻底掌握动态规划：先给出通用 DP 解题五步法，再精解五大高频模板：背包类、子序列类、区间DP、状态压缩DP、树形DP，每个模板附典型代码与变形要点。",{"id":6,"username":194,"nickname":194,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":195},{"id":19,"name":86,"slug":87,"description":91,"icon":93,"color":94,"cover_image":13,"created_at":95,"post_count":141},[226,227,228,234],{"id":6,"name":199,"slug":200,"color":201,"icon":13,"is_active":15,"created_at":202,"post_count":141},{"id":57,"name":61,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":141},{"id":229,"name":230,"slug":231,"color":232,"icon":13,"is_active":15,"created_at":233,"post_count":141},21,"Rust","rust","#dea584","2026-09-30T18:09:53.723993Z",{"id":219,"name":235,"slug":236,"color":237,"icon":13,"is_active":15,"created_at":238,"post_count":141},"Go","go","#00add8","2026-09-30T18:09:53.726775Z",149,"2026-09-15T22:09:53.733462Z","2026-10-01T10:32:42.611877Z",{"id":243,"title":244,"subtitle":13,"slug":245,"excerpt":246,"cover_image":13,"author":247,"category":248,"tags":249,"status":214,"views":268,"likes_count":141,"comments_count":256,"is_pinned":16,"created_at":269,"published_at":269,"updated_at":270,"reading_time":6},20,"CQRS + Event Sourcing 架构模式解析","post-20-CQRSEve","透彻解析两种高复杂度分布式架构模式：CQRS 读写模型分离实现查询极致性能、Event Sourcing 以事件作为唯一真相源实现全量审计与时间回溯，讨论一致性\u002F快照\u002F幂等难点与反模式。",{"id":6,"username":194,"nickname":194,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":195},{"id":50,"name":146,"slug":148,"description":152,"icon":154,"color":155,"cover_image":13,"created_at":156,"post_count":141},[250,255,261,267],{"id":19,"name":251,"slug":252,"color":253,"icon":13,"is_active":15,"created_at":254,"post_count":141},"FastAPI","fastapi","#009688","2026-09-30T18:09:53.669567Z",{"id":256,"name":257,"slug":258,"color":259,"icon":13,"is_active":15,"created_at":260,"post_count":141},10,"PostgreSQL","postgresql","#336791","2026-09-30T18:09:53.691803Z",{"id":262,"name":263,"slug":264,"color":265,"icon":13,"is_active":15,"created_at":266,"post_count":141},11,"Redis","redis","#dc382d","2026-09-30T18:09:53.695422Z",{"id":57,"name":61,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":141},246,"2026-09-14T09:09:53.733462Z","2026-10-01T04:54:47.237263Z",{"id":272,"title":273,"subtitle":13,"slug":274,"excerpt":275,"cover_image":13,"author":276,"category":277,"tags":278,"status":214,"views":293,"likes_count":141,"comments_count":294,"is_pinned":16,"created_at":295,"published_at":295,"updated_at":296,"reading_time":6},16,"Go 语言并发：goroutine + channel + sync.WaitGroup","post-16-Go语言并发go","完整掌握 Go 原生并发模型：轻量级协程 goroutine（KB 级开销）、CSP 模式 channel 通信、sync.WaitGroup 生命周期管理，加上 Context 取消、工作池模式，以及 goroutine 泄漏防护。",{"id":6,"username":194,"nickname":194,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":195},{"id":34,"name":115,"slug":117,"description":121,"icon":123,"color":124,"cover_image":13,"created_at":125,"post_count":141},[279,280,286,287],{"id":57,"name":61,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":141},{"id":281,"name":282,"slug":283,"color":284,"icon":13,"is_active":15,"created_at":285,"post_count":141},15,"性能优化","performance","#f97316","2026-09-30T18:09:53.707190Z",{"id":219,"name":235,"slug":236,"color":237,"icon":13,"is_active":15,"created_at":238,"post_count":141},{"id":288,"name":289,"slug":290,"color":291,"icon":13,"is_active":15,"created_at":292,"post_count":141},24,"Linux","linux","#fcc624","2026-09-30T18:09:53.731844Z",450,9,"2026-09-07T23:09:53.733462Z","2026-10-01T13:32:25.168107Z",{"id":281,"title":298,"subtitle":13,"slug":299,"excerpt":300,"cover_image":13,"author":301,"category":302,"tags":303,"status":214,"views":308,"likes_count":141,"comments_count":42,"is_pinned":16,"created_at":309,"published_at":309,"updated_at":310,"reading_time":6},"Rust 所有权与借用机制：彻底理解生命周期","post-15-Rust所有权与借","系统攻克 Rust 最独特概念：所有权规则、可变\u002F不可变借用约束、引用生命周期标注。通过编译错误示例 + 修复方案，彻底掌握借用检查器思维方式，写出安全零抽象开销的系统代码。",{"id":6,"username":194,"nickname":194,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":195},{"id":6,"name":71,"slug":73,"description":77,"icon":79,"color":80,"cover_image":13,"created_at":81,"post_count":141},[304,305,306,307],{"id":57,"name":61,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":141},{"id":281,"name":282,"slug":283,"color":284,"icon":13,"is_active":15,"created_at":285,"post_count":141},{"id":229,"name":230,"slug":231,"color":232,"icon":13,"is_active":15,"created_at":233,"post_count":141},{"id":288,"name":289,"slug":290,"color":291,"icon":13,"is_active":15,"created_at":292,"post_count":141},256,"2026-09-06T23:09:53.733462Z","2026-10-01T04:54:47.994804Z",{"id":312,"title":313,"subtitle":13,"slug":314,"excerpt":315,"cover_image":13,"author":316,"category":317,"tags":318,"status":214,"views":322,"likes_count":141,"comments_count":294,"is_pinned":16,"created_at":323,"published_at":323,"updated_at":324,"reading_time":6},14,"Python 并发：asyncio vs ThreadPool vs ProcessPool","post-14-Python并发","深度对比 Python 三大并发模型：GIL 限制下的线程池（IO 密集）、进程池（绕 GIL 适合 CPU 密集）、asyncio 协程（超高并发 IO）。从原理\u002F性能\u002F复杂度四维度给出选型决策树。",{"id":6,"username":194,"nickname":194,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":195},{"id":19,"name":86,"slug":87,"description":91,"icon":93,"color":94,"cover_image":13,"created_at":95,"post_count":141},[319,320,321],{"id":6,"name":199,"slug":200,"color":201,"icon":13,"is_active":15,"created_at":202,"post_count":141},{"id":57,"name":61,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":141},{"id":281,"name":282,"slug":283,"color":284,"icon":13,"is_active":15,"created_at":285,"post_count":141},521,"2026-09-05T09:09:53.733462Z","2026-10-01T12:43:00.074164Z",{"id":65,"title":326,"subtitle":13,"slug":327,"excerpt":328,"cover_image":13,"author":329,"category":330,"tags":331,"status":214,"views":336,"likes_count":141,"comments_count":294,"is_pinned":16,"created_at":337,"published_at":337,"updated_at":338,"reading_time":6},"Redis 缓存设计模式","post-8-Redis缓存设计","系统讲解三种核心缓存模式：Cache-Aside（旁路缓存）一致性保障、Write-Through（写穿透）原子性保证、Write-Behind（写回）高吞吐异步写入，以及缓存击穿\u002F穿透\u002F雪崩解决方案。",{"id":6,"username":194,"nickname":194,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":195},{"id":34,"name":115,"slug":117,"description":121,"icon":123,"color":124,"cover_image":13,"created_at":125,"post_count":141},[332,333,334,335],{"id":6,"name":199,"slug":200,"color":201,"icon":13,"is_active":15,"created_at":202,"post_count":141},{"id":262,"name":263,"slug":264,"color":265,"icon":13,"is_active":15,"created_at":266,"post_count":141},{"id":57,"name":61,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":141},{"id":281,"name":282,"slug":283,"color":284,"icon":13,"is_active":15,"created_at":285,"post_count":141},183,"2026-08-27T20:09:53.733462Z","2026-09-30T21:02:41.376805Z",{"id":110,"title":340,"subtitle":13,"slug":341,"excerpt":342,"cover_image":13,"author":343,"category":344,"tags":345,"status":214,"views":350,"likes_count":141,"comments_count":294,"is_pinned":16,"created_at":351,"published_at":351,"updated_at":352,"reading_time":6},"PostgreSQL 查询优化技巧","post-7-PostgreSQL","深入掌握 PostgreSQL 查询优化的核心方法：从 EXPLAIN ANALYZE 执行计划解读，到索引类型选择（B-tree\u002FGIN\u002FBRIN）、统计信息更新、连接策略调整、分区表设计，全方位提升数据库查询性能。",{"id":6,"username":194,"nickname":194,"avatar":13,"cover_image":13,"bio":13,"website":13,"github":13,"avatar_source":13,"resolved_avatar_url":13,"title":13,"created_at":195},{"id":6,"name":71,"slug":73,"description":77,"icon":79,"color":80,"cover_image":13,"created_at":81,"post_count":141},[346,347,348,349],{"id":256,"name":257,"slug":258,"color":259,"icon":13,"is_active":15,"created_at":260,"post_count":141},{"id":57,"name":61,"slug":62,"color":63,"icon":13,"is_active":15,"created_at":64,"post_count":141},{"id":281,"name":282,"slug":283,"color":284,"icon":13,"is_active":15,"created_at":285,"post_count":141},{"id":288,"name":289,"slug":290,"color":291,"icon":13,"is_active":15,"created_at":292,"post_count":141},559,"2026-08-26T12:09:53.733462Z","2026-10-02T00:03:31.134519Z"]