{"id":13639404,"url":"https://github.com/chenshenhai/deno_note","last_synced_at":"2025-10-06T22:51:10.019Z","repository":{"id":104048045,"uuid":"161982049","full_name":"chenshenhai/deno_note","owner":"chenshenhai","description":"《Deno进阶开发笔记》 (不定时更新)  🌶🌶🌶","archived":false,"fork":false,"pushed_at":"2021-05-08T12:28:05.000Z","size":10654,"stargazers_count":660,"open_issues_count":0,"forks_count":37,"subscribers_count":58,"default_branch":"master","last_synced_at":"2025-08-06T09:07:35.550Z","etag":null,"topics":["deno","deno-chapter","deno-note","deno-study"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chenshenhai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2018-12-16T08:30:14.000Z","updated_at":"2025-03-29T12:45:26.000Z","dependencies_parsed_at":"2023-06-29T11:00:08.566Z","dependency_job_id":null,"html_url":"https://github.com/chenshenhai/deno_note","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/chenshenhai/deno_note","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenshenhai%2Fdeno_note","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenshenhai%2Fdeno_note/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenshenhai%2Fdeno_note/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenshenhai%2Fdeno_note/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chenshenhai","download_url":"https://codeload.github.com/chenshenhai/deno_note/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chenshenhai%2Fdeno_note/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278692914,"owners_count":26029405,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-06T02:00:05.630Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["deno","deno-chapter","deno-note","deno-study"],"created_at":"2024-08-02T01:01:00.317Z","updated_at":"2025-10-06T22:51:10.004Z","avatar_url":"https://github.com/chenshenhai.png","language":"TypeScript","funding_links":[],"categories":["TODO","TypeScript"],"sub_categories":[],"readme":"# Deno进阶开发笔记 (不定时更新)\n\n[![Build Status](https://travis-ci.com/chenshenhai/deno_note.svg?token=XYNG2F1URZ4nW1TzoJNC\u0026branch=master)](https://travis-ci.com/chenshenhai/deno_note)\n[![Build Status](https://dev.azure.com/chenshenhai/chenshenhai/_apis/build/status/chenshenhai.deno_note?branchName=master)](https://dev.azure.com/chenshenhai/chenshenhai/_build?definitionId=1\u0026_a=summary)\n\n\u003chr/\u003e\n\n![deno_note_logo](./note/image/deno-mini.jpg)\n\n\u003chr/\u003e\n\n## 阅读须知\n\n截至 2021年5月上旬，本笔记教程用的是`Deno@v1.9.2`，如需本地运行demo实例，请保证在您电脑本地的运行环境是`Deno@v1.9.2`\n\n## 本书目标\n\n- 一本关于`Deno`的技术开发入门教程\n- 从实际 `应用开发` 层面去学习`Deno`的使用，暂时不会深究底层原理\n- 以 `Deno` 原生的能力实现相关代码，不依赖`deno_std`(单元测试除外)  \n- 以 `TDD` 开发模式结合集成测试保证 例子demo适应各种生产环境\n\n## 关于作者\n- [关于作者(我)](https://chenshenhai.com)\n- [关于作者(我) GitHub](https://github.com/chenshenhai)\n- 本书便捷阅读入口 [https://chenshenhai.com/deno_note](https://chenshenhai.com/deno_note)\n- 本书笔记内容不定时更新，如果想第一时间知道本书进展，可以 `watch` 本项目 或者 [关注公众号](https://github.com/chenshenhai/deno_note/blob/master/note/chapter_01/01.md#关注本书)。\n\n## 免责声明\n\n目前，本书内容属于学习笔记资料，不建议用于生产环境。因为`Deno`官方功能处于开发阶段，所以本书正处于和将长期处于更新阶段，里面代码内容不建议用于生产环境，但我也希望有开发者能用于生产环境经验，并分享相关的实战经验。\n\n本书协议 [LICENSE MIT](./LICENSE)\n\n## 目录\n\n* [1 致读者]\n    * [1.1 本书初衷](./note/chapter_01/01.md)\n    * [1.2 参考资料](./note/chapter_01/02.md)\n* [2 快速开始]\n    * [2.1 快速安装](./note/chapter_02/install.md)\n    * [2.2 快速使用](./note/chapter_02/start.md)\n* [3 前置基础知识]\n    * [3.1 Deno和Node.js](./note/chapter_03/nodejs_compare.md)\n    * [3.2 缓冲区基础知识点](./note/chapter_03/buffer_info.md)\n    * [3.3 TypeScript基础](./note/chapter_03/ts_basic.md)\n    * [3.4 Deno常见问题点](./note/chapter_03/deno_faq.md)\n* [4 Deno基础知识点]\n    * [4.1 Deno常用命令简介](./note/chapter_04/deno_cmd.md)\n    * [4.2 Deno模块体系](./note/chapter_04/deno_mod.md)\n    * [4.3 window全局API](./note/chapter_04/deno_window_api.md)\n    * [4.4 Deno系统信息](./note/chapter_04/deno_api_sys.md)\n    * [4.5 Deno文件操作](./note/chapter_04/deno_api_fs.md)\n    * [4.6 Deno目录操作](./note/chapter_04/deno_api_dir.md)\n    * [4.7 Deno删除操作](./note/chapter_04/deno_api_del.md)\n    * [4.8 Deno进程操作](./note/chapter_04/deno_api_process.md)\n    * [4.9 Deno使用import-maps](./note/chapter_04/deno_import_maps.md)\n* [5 基础进阶学习]\n    * [5.1 开发Debug](./note/chapter_05/debug.md)\n    * [5.2 单元测试](./note/chapter_05/testing.md)\n    * [5.3 单元测试进阶](./note/chapter_05/testing_unit.md)\n    * [5.4 集成测试](./note/chapter_05/testing_integrate.md)\n    * [5.5 文件/目录操作](./note/chapter_05/fs_dir.md)\n    * [5.6 Buffer进阶读操作](./note/chapter_05/buffer_reader.md)\n    * [5.7 原生Deno实现简单HTTP服务](./note/chapter_05/http_simple.md)\n    * [5.8 原生Deno处理HTTP请求](./note/chapter_05/http_request.md)\n    * [5.9 原生Deno处理HTTP响应](./note/chapter_05/http_response.md)\n    * [5.10 原生Deno实现稳定HTTP服务](./note/chapter_05/http_stable.md)\n* [6 WEB进阶开发]\n    * [6.1 中间件式框架简单实现](./note/chapter_06/web_framework_middleware.md)\n    * [6.2 中间件-路由实现](./note/chapter_06/web_framework_router.md)\n    * [6.3 中间件-静态资源实现](./note/chapter_06/web_framework_static.md)\n    * [6.4 表单文件上传功能实现](./note/chapter_06/web_upload.md)\n    * [6.5 异步文件上传功能实现](./note/chapter_06/web_upload_async.md)\n    * [6.x HTML模板编译实现]\n* [7 工具类开发]\n    * [7.1 Linux系统下CLI原始功能实现](./note/chapter_07/deno_cli.md)  \n    * [7.2 终端输入/输出 效果处理](./note/chapter_07/deno_cmd.md) \n* [8 Rust插件开发]\n    * [8.1 插件开发入门](./note/chapter_08/deno_plugin_dev.md)  \n    * [8.2 Rust基础学习]\n* [9 生态]\n    * [9.1 Deno借助jspm使用npm](./note/chapter_09/use_npm_by_jspm.md) \n\n## 为啥要写这本书  \n\n- 2020年 感想\n    - Deno官方API基本稳定下来，也官宣将于2020年5月13日两周年之际发布 1.0 版本\n    - Deno官方也出了 API 的使用文档 [Deno官方API文档](https://doc.deno.land/https/github.com/denoland/deno/releases/latest/download/lib.deno.d.ts)\n    - 意味着 Deno 趋近完善，后续用于生产环境指日可待\n- 2019年 感想\n    - Deno自2018年6月诞生，引发JavaScript开发社区的强烈讨论，很多开发者误解甚至还纷纷传言`ry`大神将以`Deno`作为下一代`Node.js`，甚至还闹出了啼笑皆非的`issue`盖楼闹剧。\n    - 到了2018年底至2019年初，在JavaScript社区里，Deno的相关讨论声音渐渐消退，更多是谈论`TypeScript`是否将引领下一波前端开发潮流，甚至带动`Deno`起飞。\n    - 既然有新东西可以玩，先不管别人怎么议论，工具好不好得自己用了才知道。面对一个新生技术，人云亦云和断章取义不是一个技术开发者的应有的行为。\n    - 趁着2019年春节在家，好好利用这个“寒假”玩玩这个新技术。截止2019年初，`Deno`国内外资料实在太少。\n        - 除了出现 [《Deno核心指南》](https://github.com/denolib/guide) 以及对应的GitHub组织`denolib`推荐的学习文档比较有建设性，除此之外，对于deno的开发资料乏善可陈。\n    - `Deno`基本模块和官方标准模块 `deno_std` [deno_std](https://github.com/denoland/deno_std) 处于开发中不稳定状态，存在一堆`// TODO` 的代码和`API`频繁变更的不定性。\n    - 2019年春节期间 硬生生啃了好几个国外 `Deno` 试验项目仓库。写下这本《Deno进阶开发笔记》，一来是作为自己学习`Deno`的笔记记录，二来希望能给`Deno`开发社区添砖加瓦。\n\n\n## 本书特点\n\n既然 `Deno` 官方主旨是为现代程序员提供高效，安全的脚本环境。以本书日常`WEB`开发，工具开发的常用功能实现为主。\n\n- `TDD`开发例子，功能例子都以 `TDD(Test-Driven Development)` 开发模式为主，一个功能模块，配备对应的单元测试。\n- `Travis CI build`，用于集成构建测试在`Linux`环境下所有单元测试\n- `Azure Pipelines`，用于集成构建测试在`Window|Mac|Ubuntu`环境下所有单元测试，保证例子在各个生产环境都能正常执行。\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchenshenhai%2Fdeno_note","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchenshenhai%2Fdeno_note","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchenshenhai%2Fdeno_note/lists"}