CSDN|Deno 是面向代码的浏览器?( 四 )
// Copyright 2018-2020 the oak authors. All rights reserved. MIT license.// This file contains the external dependencies that oak depends upon// `std` dependenciesexport { HmacSha256 } from "https://deno.land/std@0.51.0/hash/sha256.ts";export {Response,serve,Server,ServerRequest,serveTLS,} from "https://deno.land/std@0.51.0/http/server.ts";export {Status,STATUS_TEXT,} from "https://deno.land/std@0.51.0/http/http_status.ts";export {Cookies,Cookie,setCookie,getCookies,delCookie,} from "https://deno.land/std@0.51.0/http/cookie.ts";export {basename,extname,join,isAbsolute,normalize,parse,resolve,sep,} from "https://deno.land/std@0.51.0/path/mod.ts";export { assert } from "https://deno.land/std@0.51.0/testing/asserts.ts";// 3rd party dependenciesexport {contentType,lookup,} from "https://deno.land/x/media_types@v2.3.1/mod.ts";我创建了Oak服务器 , 并维护了18个月 , 经历了Deno和Deno std库的40个版本发布 , 包括将media_types从内部移动到oak , 再移到std库中 , 目的是为了将其从std库中“弹出” , 成为自己的一部分 。 我从来没有感到我需要一个程序包管理器来管理这一切 。TypeScript的好处之一是以全面验证代码与其他代码的兼容性 。 如果依赖项是为Deno编写的“原始” TypeScript , 那就太好了 , 但是如果你希望将TypeScript当做JavaScript的预处理来使用 , 同时还想保持能够安全地依赖远程代码的便利 。 Deno支持几种不同的方法来实现这一点 , 但是最无缝的是对X-TypeScript-Types头部的支持 。 此头部告诉Deno类型文件所在的位置 , 对依赖的JavaScript文件进行类型检查时可以使用 。 Pika CDN支持此功能 。 任何CDN上拥有类型说明的文件都会提供该头部 , 而Deno也将获取这些类型并在对文件进行类型检查时使用 。说了这么多 , 我们可能依然需要将某个远程(或本地)依赖项“映射”成代码中的表示 。 这时可以使用尚不稳定的import-maps功能 。 这是一个提案规范 , 是W3C孵化器的一部分 。 它允许提供一个映射 , 该映射会将代码中的特定依赖项映射到另一个资源 , 无论是本地文件还是远程模块 。我们曾在Deno中实现了很长一段时间 , 因为我们真的希望它会被广泛采用 。 遗憾的是 , 这只是来自Chrome的一项实验 , 并没有得到更广泛的采用 。 因此我们不得不将其置于Deno 1.0的--unstable标志后面 。 我个人认为这个功能很可能会无疾而终 , 所以应该避免使用 。但是 , 但是 , 但是... 我知道很多人仍然对Deno的模型感到怀疑 。 我认为Deno尝试采取的策略(我非常赞同)是 , 在出现实际问题时进行处理 。 我听到的很多反对意见来自Deno的新手 , 他们从接触过Deno , 也没有试图了解可能会有不同的方式 。话虽如此 , 如果我们共同遇到一个问题 , 并且迫切需要在Deno CLI中进行某些更改 , 我敢肯定这个问题一定会解决 , 但是很多问题根本就不存在 , 或者还有其他解决方式 , 这些解决方式并不需要运行时有强烈的意见 , 也不会需要与外部程序耦合来管理代码 。因此 , 我希望你能尝试一下没有软件包管理器或中心式仓库的情况 , 看看它好不好用 。 您可能永远不会回头! 作者简介:Kitson Kelly , 首席技术工程师@ThoughtWorks , 澳大利亚墨尔本 。 原文链接:https://kitsonkelly.com/posts/deno-is-a-browser-for-code/你点的每个“在看” , 我都认真当成了喜欢
推荐阅读
- CSDN|由 Apache 说开,中国开源项目已经走向世界!
- CSDN|软件对于英特尔意味着什么?
- CSDN|中国首家苹果零售店重开业,苹果CEO库克发文揭幕;“携号转网”服务用户破千万;GitHub 完成北极源代码存档|极客头条
- 智能机器人|快商通智能客服云平台荣获CSDN“AI优秀案例实践奖”
- CSDN|万亿美元软件浪潮来临,开发者是核心!
- 行业互联网|快商通智能客服云平台荣获CSDN“AI优秀案例实践奖”
- CSDN|OpenInfra Days China 2020 官网正式上线,含免费注册通道!
- 电脑使用技巧|Win10 20H2面向Beta会员推送:修复大量BUG、完工在即
- CSDN|实战 | 对抗外部威胁防护和勒索病毒,大厂怎么做?
- CSDN|它估值 25 亿!被马云领投,是华为“老战友”,网友:也许股价能超茅台!
