deno tutorial

table of contents

What is deno that can replace Node.js

  • [Overview of Deno](./introduction/Overview of #deno)
  • [Comparison with Node.js] (Comparison with ./introduction/#nodejs)
  • [Advantages of Deno](./introduction/#Advantages of deno)
  • [Deno architecture](./introduction/#deno architecture)

[Development environment setup] (Development environment setup for ./deno)

  • [2-1 Install Deno] (./deno development environment setup/#2-1-deno installation)
    • [2-1-1 Installation on Windows] (Setting up the development environment for ./deno/Installation on #2-1-1-windows)
    • [2-1-2 Installation on macOS] (Setting up development environment for ./deno/Installation on #2-1-2-macos)
    • [2-1-3 Installation on Linux] (Setting up the development environment for ./deno/Installation on #2-1-3-linux)
  • [2-2 Deno basic commands] (./deno development environment setup/#2-2-deno basic commands)
    • [2-2-1 deno run] (./deno development environment setup/#2-2-1-deno-run)
    • [2-2-2 deno eval] (./deno development environment setup/#2-2-2-deno-eval)
    • [2-2-3 deno test] (./deno development environment setup/#2-2-3-deno-test)
  • [2-3 Editor settings and extensions] (./deno development environment setup/#2-3-Editor settings and extensions)

[Chapter 3: Creating Deno Scripts] (Creating ./deno Scripts)

  • [3-1 Deno script basic structure] (./deno script creation/#3-1-deno script basic structure)
    • [3-1-1 Entry point creation] (./deno script creation/#3-1-1-Entry point creation)
    • [3-1-2 Import module] (Create ./deno script/#3-1-2-Import module)
  • [3-2 Using core modules] (Creating ./deno script/#3-2-Using core modules)
    • [3-2-1 fs module] (./deno script creation/#3-2-1-fs module)
    • [3-2-2 http module] (./deno script creation/#3-2-2-http module)
    • [3-2-3 path module] (./deno script creation/#3-2-3-path module)

[Chapter 4: Asynchronous Programming](./deno Asynchronous Programming)

  • [4-1 Callbacks and asynchronous functions] (./deno asynchronous programming/#4-1-Callbacks and asynchronous functions)
  • [4-2 Using Promise] (./deno asynchronous programming/#4-2-Using Promise)
    • [4-2-1 Basic usage of Promise] (./deno asynchronous programming/#4-2-1-Basic usage of Promise)
    • [4-2-2 Promise chain] (./deno asynchronous programming/#4-2-2-Promise chain)
    • [4-2-3 Promise parallel execution] (./deno asynchronous programming/#4-2-3-Promise parallel execution)
  • [4-3 Introduction of async/await] (Asynchronous programming of ./deno/Introduction of #4-3-async-await)
    • [4-3-1 async/await basic syntax] (./deno asynchronous programming/#4-3-1-async-await basic syntax)
    • [4-3-2 Combination of async/await and Promise] (Asynchronous programming of ./deno/#4-3-2-Combination of async-await and Promise)

[Chapter 5: Module Management] (./deno module management)

  • [5-1 Introduction to package manager] (Module management of ./deno/#5-1-Introduction to package manager)
  • [5-2 Installing and using modules] (./deno module management/#5-2-Installing and using modules)
    • [5-2-1 Package installation] (./deno module management/#5-2-1-Package installation)
    • [5-2-2 How to use packages] (./deno module management/#5-2-2-How to use packages)
  • [5-3 Module version management] (./deno module management/#5-3-Module version management)
    • [5-3-1 SemVer] (./deno module management/#5-3-1-SemVer)
    • [5-3-2 Version specification method] (Module management of ./deno/#5-3-2-Version specification method)

[Chapter 6: Testing and Debugging](testing and debugging ./deno)

  • [6-1 How to write a unit test] (./deno test and debug/#6-1- How to write a unit test)
    • [6-1-1 Select test runner] (./deno testing and debugging/#6-1-1- Select test runner)
    • [6-1-2 Using Assertions] (Testing and Debugging ./deno/#6-1-2-Using Assertions)
  • [6-2 Basic strategy for debugging] (Testing and debugging ./deno/#6-2-Basic strategy for debugging)
    • [6-2-1 Using console.log] (Testing and debugging ./deno/Using #6-2-1-console.log)
    • [6-2-2 Insert debug statement] (./deno test and debug/#6-2-2-Insert debug statement)
  • [6-3 Using Deno’s debugging tools] (./deno testing and debugging/#6-3-Using Deno’s debugging tools)
    • [6-3-1 Set breakpoints] (.deno/test and debug/#6-3-1-set breakpoints)
    • [6-3-2 Step execution and variable monitoring] (Testing and debugging ./deno/#6-3-2-Step execution and variable monitoring)

[Chapter 7: Security and Performance](./deno Security and Performance)

  • [7-1 Security considerations] (./deno security and performance/#7-1-Security considerations)
    • [7-1-1 Permission restrictions] (./deno security and performance/#7-1-1-Permission restrictions)
    • [7-1-2 Utilization of sandbox] (./deno security and performance/#7-1-2- Utilization of sandbox)
  • [7-2 Module caching and bundling] (./deno security and performance/#7-2-Module caching and bundling)
    • [7-2-1 Module Cache] (./deno Security and Performance/#7-2-1-Module Cache)
    • [7-2-2 How to create and use a bundle] (Security and performance of ./deno/#7-2-2- How to create and use a bundle)

[Chapter 8: Deno Project Perspective](./deno Project Perspective)

  • [8-1 Deno future update](./deno project outlook/#8-1-Deno future update)
  • [8-2 Deno community and resources] (./deno project outlook/#8-2-Deno community and resources)
  • [8-3 Deno’s actual use case](./deno project outlook/#8-3-Deno’s actual use case)

[Chapter 9: Deno Command Line Options](./deno Command Line Options)

  • [9-1 How to use options] (./deno command line options/#9-1- How to use options)
  • [9-2 Permission-related options] (./deno command line options/# Permission-related options)
  • [9-3 Debug-related options] ( ./deno command-line options/#Debug-related options)
  • [9-4 Module-related options] (./deno command-line options/#module-related options)
  • [9-5 Sandbox-related options] (./deno command-line options/#Sandbox-related options)
  • [9-6 Other useful options] (./deno command line options/#other useful options)
  • [9-7 Option combinations and usage examples] (Combinations and usage examples of ./deno command line options/# options)