🔰Denoに入門してみた
Overview
Deno is the most productive, secure, and performant JavaScript runtime for the modern programmer.
Deno は、現代のプログラマーにとって最も生産性、安全性、パフォーマンスに優れた JavaScript ランタイムです。
Node.jsを開発したライアンダールさんが発明した技術みたいです。デフォルトでTypeScriptをサポートしてます。
インストールする方法ですが、私の場合はなぜか、curl
でできなかったのでhomebrew
を使いました。
curlはこっち:
curl -fsSL https://deno.land/install.sh | sh
homebrewはこっち:
brew install deno
summary
使い方は、PJを作成して、名前はなんでも良いので、TypeScriptのファイルを作成する。
touch index.ts
挨拶を返す例:
interface Greet {
// ロジックを持たないメソッド
say(): string
}
// インターフェースを実装したクラス
class GreetImpl implements Greet {
// インターフェースで定義されたメソッドを実装
say() {
return 'Hello'
}
}
// インターフェースを実装したクラスをインスタンス化
let greet: Greet = new GreetImpl()
console.log(greet.say()) // Hello
実行するときは、ターミナルで、deno run [ファイル名]を実行する
deno run index.ts
実行結果:
Promiseを使った例:
/*
void型のPromiseを返す関数を定義して、
setTimeout関数を使って指定した時間後にresolveするようにしています。
*/
function delay(ms: number): Promise<void> {
return new Promise((resolve) => {
setTimeout(resolve, ms);
});
}
// この関数を使って、2秒後に処理を実行するPromiseを作成しています。
delay(2000)
.then(() => {
console.log("2秒後に処理を実行!");
})
.catch((error) => {
console.error("An error occurred:", error);
});
実行結果:
async/awaitで書いた例:
// async/awaitで書いた例
async function delay(ms: number): Promise<void> {
await new Promise((resolve) => {
setTimeout(resolve, ms);
});
}
// この関数を使って、2秒後に処理を実行するPromiseを作成しています。
(async () => {
try {
await delay(2000);
console.log("2秒後に処理を実行!");
} catch (error) {
console.error("An error occurred:", error);
}
})();
Objectをjsonに、jsonをObjectに変換する処理:
interface Person {
name: string;
age: number;
}
// オブジェクトを作成
let person: Person = {
name: "John",
age: 30,
};
// オブジェクトの値をjsonに変換
let json = JSON.stringify(person);
console.log(json);
// jsonをオブジェクトに変換
let obj = JSON.parse(json);
console.log(obj);
実行結果:
fetchメソッドがあり🛜インターネットのデータを取得できるようだ。
const jsonplaceholder = fetch('https://jsonplaceholder.typicode.com/posts/1')
// response.jsonで、jsonをobjectに変換する
.then(response => response.json())
.then(json => console.log(json));
実行結果:
yを選ばないといけない。yes
ってことか。
JSONのデータをObjectに変換して表示された。
thoughts
今回は、Node.jsに変わるランタイムを使ってみました。私は、昔ランチタイムと呼んでたけど笑。ランチタイムエラーとか呼んでたような笑
Denoみなさんも使ってみてください!
ランタイムとは ランタイムとは、アプリケーションの開発・実行の両方の機能を備えたソフトウェアから、開発の機能を省き、実効の機能のみを取り出したプログラムのことである。 ランタイムは、アプリケーションを実行するために必要な単体プログラムのほか、開発ツールを用いて開発したファイル群を意味することもある。
Discussion