Deno — V8 mühərriki və Rust proqramlaşdırma dilinə əsaslanan JavaScript, TypeScript və WebAssembly üçün işləmə mühiti.[5] Deno Node.js-nin yaradıcısı olan Rayan Dal tərəfindən ortaq şəkildə yaradılmışdır.[6]
| Deno | |
|---|---|
| | |
| Tərtibatçı | Rayan Dal |
| Repozitoriya | github.com/denoland/deno |
| Proqramlaşdırma dili | Rust[3][4], TypeScript, JavaScript, C++ |
| Əməliyyat sistemi | Linux, macOS, Windows |
| Yayımlanma tarixi | 13 may 2018[1] |
| Sonuncu versiya |
|
| Sayt | deno.com |
Deno ayrıca paket meneceri tələb etmək yerinə özü həm işləmə mühiti, həm də paket meneceri rolunu tək bir çalışdırılan proqramda icra edir.[5][7]
Deno JSConf EU 2018 konfransında Rayan Dal tərəfindən "Node.js haqqında təəssüf etdiyim 10 şey" adlı çıxışında elan edildi.[8] Protocol Buffers kimi serializasiya vasitələrindən istifadə edərək mesajların ötürülməsi yolu ilə sistem çağırışlarının bağlanmasına (ing. system call bindings) nail olmaq və girişə nəzarət etmək üçün əmr sətrində parametrlər təmin etmək məqsədi daşıyan Deno prototipini təqdim etdi.[9]
Deno ilk dəfə Go dilində yazılmışdı və imtiyazlı (Go, sistem çağırışı icazəsi ilə) və imtiyazsız (V8) tərəflər arasında serializasiya üçün Protocol Buffers istifadə edirdi.[10] İkiqat iş mühiti və tullantı toplama ilə bağlı narahatlıqlar səbəbindən Go Rust ilə əvəz olundu.[11] Tokio libuv-un yerinə hadisələrlə idarə olunan asinxron platforma olaraq təqdim edildi[12] və FlatBuffers daha sürətli, "zero-copy" serializasiya və deserializasiya üçün qəbul edildi.[13] Lakin 2019-cu ilin aprel ayında seriallaşdırmanın əhəmiyyətli əlavə xərclərini ölçən testlər yayımlandıqdan sonra FlatBuffers 2019-cu ilin avqust ayında silindi.[14]
2018-ci ilin noyabr ayında geniş alətlər və utilitlər təqdim etmək üçün Go-nun standart kitabxanası əsasında modelləşdirilmiş standart kitabxana Node.js-nin paket ağacının çox böyüməsi problemini qismən həll etdi.[15]
Deno 1.0 rəsmi olaraq 13 may 2020-ci ildə yayımlandı.[16]
Cloudflare Workers-dən ilhamlanan Deno Deploy 23 iyun 2021-ci ildə yayımlandı.[17][18] 4 may 2022-ci ildə yayımlanan Beta 4-də idarəetmə paneli təkmilləşdirilib və hesablaşma funksiyaları əlavə edilib. Deno Deploy-un ümumi əlçatanlılığı 2022-ci ilin üçüncü rübü üçün nəzərdə tutulub.[19]
Deno Fresh 1.0, client tərəfinə sıfır JavaScript göndərən Deno üçün yeni tam stack veb freymvorku, 28 iyun 2022-ci ildə yayımlandı.[20] Freymvorkda yerləşdirmə müddətlərində böyük təkmilləşdirmələr sırasına imkan verən heç bir yaratma addımı yoxdur. Fresh-in 1.1 versiyası 8 sentyabr 2022-ci ildə yayımlandı.[21]
Deno SaaSKit beta versiyası 4 aprel 2023-cü ildə yayımlandı. Bu Fresh və Deno istifadə edilərək hazırlanmış müasir açıq mənbəli SaaS şablonudur.[22]
- ↑ GitHub (ing.). // (untranslated) 2007.
- ↑ denoland Release v2.5.6 · denoland/deno (ing.).
- ↑ https://www.openhub.net/p/deno/analyses/latest/languages_summary.
- ↑ https://github.com/EvanLi/Github-Ranking/blob/master/Data/github-ranking-2025-07-06.csv. 2025.
- ↑ 1 2 "Deno Manual". deno.land. 8 yanvar 2020 tarixində arxivləşdirilib. İstifadə tarixi: 17 may 2019.
- ↑ Schiemann, Dylan. "Deno: Secure V8 TypeScript Runtime from Original Node.js Creator". InfoQ (ingilis). 26 dekabr 2018. 17 may 2019 tarixində arxivləşdirilib. İstifadə tarixi: 17 may 2019.
- ↑ Paul Krill. "Ryan Dahl's Node.js regrets lead to Deno". InfoWorld. 21 iyun 2018. 10 iyun 2019 tarixində arxivləşdirilib. İstifadə tarixi: 19 sentyabr 2023.
- ↑ JSConf, 10 Things I Regret About Node.js - Ryan Dahl - JSConf EU 2018, 6 iyun 2018, 17 may 2019 tarixində arxivləşdirilib, İstifadə tarixi: 17 may 2019
- ↑ Dahl, Ryan. "Design mistakes in Node" (PDF). Github. 6 iyun 2018.
- ↑ "denoland/deno, branch "golang"". Github.
- ↑ "Suggestion: Look into porting to Rust and using Tokio". GitHub. 29 avqust 2018 tarixində arxivləşdirilib. İstifadə tarixi: 19 sentyabr 2023.
- ↑ "Tokio - The asynchronous run-time for the Rust programming language". Tokio.rs. 20 may 2020 tarixində arxivləşdirilib. İstifadə tarixi: 19 sentyabr 2023.
- ↑ "Protobuf seems like a lot of overhead for this use case?". Github. 8 dekabr 2020 tarixində arxivləşdirilib. İstifadə tarixi: 19 sentyabr 2023.
- ↑ "Replace flatbuffers". GitHub (ingilis). 15 aprel 2019. 26 noyabr 2020 tarixində arxivləşdirilib. İstifadə tarixi: 11 iyul 2019.
- ↑ "denoland/deno_std: deno standard modules". Github. 3 mart 2022. 15 iyun 2020 tarixində arxivləşdirilib. İstifadə tarixi: 19 sentyabr 2023.
- ↑ "Deno 1.0". deno.land. 14 may 2020 tarixində arxivləşdirilib. İstifadə tarixi: 14 may 2020.
- ↑ Dahl, Ryan. "JavaScript Containers". tinyclouds.org. 4 may 2022. 4 may 2022 tarixində arxivləşdirilib.
- ↑ Krill, Paul. "Deno Company unveils server-side JavaScript hosting service". InfoWorld (ingilis). 24 iyun 2021. 27 iyun 2022 tarixində arxivləşdirilib. İstifadə tarixi: 14 aprel 2022.
- ↑ Krill, Paul. "Deno Deploy moves toward GA, adds paid plan". InfoWorld (ingilis). 3 iyun 2022. 7 iyun 2023 tarixində arxivləşdirilib. İstifadə tarixi: 24 iyul 2022.
- ↑ Luca, Casonato. "Introduction Fresh 1.0 as new full stack web framework for Deno". Deno Blog (ingilis). 22 iyul 2022. İstifadə tarixi: 24 iyul 2022.
- ↑ Casonato, Luca. "Fresh 1.1 - automatic JSX, plugins, DevTools, and more". Deno Blog (ingilis). 8 sentyabr 2022. İstifadə tarixi: 10 sentyabr 2022.
- ↑ Jiang, Andy. "Announcing Deno SaaSKit: an open-source SaaS template built with Fresh". Deno Blog (ingilis). 4 aprel 2023. İstifadə tarixi: 4 aprel 2022.
- deno.com — rəsmi saytı
- Official Deno manual