اولین Hello World با دینو

Hello World with Deno
Hello World with Deno


همه چیز از سخنرانی رایان دال، سازنده‌ی اصلی node.js در سال 2018 شروع شد، دال در این سخنرانی محوریت صحبت‌های خود را روی معایب و مشکلات node.js و بسته‌های npm قرار داد و 10 موردی که نمی‌پسندید را نام برد. سپس deno را معرفی کرد و هدف ساخت آن را رفع مشکلات بیان شده‌ی node.js بیان کرد.

دینو در این چند سال رشد نسبتا خوبی داشته، هر روز بر پکیج هایش افزوده میشه و کامیونتی پشتش بزرگ تر. در این نوشته سعی میکنیم دینو را نصب کنیم کمی با دینو آشنا بشیم و اولین برنامه ی خود را با دینو بسازیم.

نکته: اگر علاقه دارید درباره ی مزایای دینو بدانید یا با ساختار و موارد دیگه ی دینو آشنا بشید میتوانید از نوشته های زیاد دیگر موجود در وب استفاده کنید، در این نوشته ما فقط روی ساخت یک برنامه ی ساده ی دینو کار میکنیم و درباره ی مفاهیم دینو زیاد صحبت نمیکنیم.

با نصب دینو شروع میکنیم:

برای نصب دینو کامند ذیل را اجرا میکنیم:

در لینوکس:

curl -fsSL https://deno.land/install.sh | sh

و در پاورشل ویندوز:

irm https://deno.land/install.ps1 | iex

به همین سادگی دینو در سیستم شما نصب شده است.

حالا بریم سراغ نوشتن اولین برنامه با دینو

دینو با هردو جاوااسکریپت و تایپ اسکریپت سازگار است، بنابر این یک فایل به نام example.ts ایجاد میکنیم و متن ذیل را درون فایل مینویسیم (برای کار با دینو توقع میرود که شما اطلاعات قبلی از جاوا اسکریپت، به ویژه در مورد async/wait داشته باشید)

console.log(&quotWelcome to Deno!&quot);

فایل را سیو میکنیم و با کامند deno run example.ts فایل را اجرا میکنیم.

خروجی باید به شکل ذیل باشد:

Welcome to Deno!

برای ساخت وب سرور با دینو چندیدن فریمورک موجوده که میتوان از هرکدام استفاده کرد ولی در این نوشته از هیچ فریمورکی استفاده نمیکنیم و سعی میکنیم از پکیج http خود دینو استفاده کنیم.

پکیج http را امپورت میکنیم:

import { serve } from &quothttps://deno.land/std@0.145.0/http/server.ts&quot

پورت رو تعریف میکنیم:

const port = 8080;

هندلر مینویسیم تا درخواست رو بگیره و جواب بده:

https://gist.github.com/rashid2003/2b2d7890b23fd6a5bd72c6505535f8dd

و در اخیر هم سرور:

await serve(handler, { port });

کل کد باید چیزی شبیه کد ذیل باشه:

https://gist.github.com/rashid2003/9a9b4e1eca0e2a918e837454f94d8157

حالا با دستو deno run hello_world.ts برنامه ی خودمان را اجرا میکنیم.

اگر همه چیز درست پیش رفته باشه با وارد شدن به ادرس http://localhost:8080 با پیغام Hello World مواجه میشید.

تبریک میگم شما اولین وبسایت خود را با دینو ساختید.


هدفم ازین نوشته فقط معرفی دینو بود و اینکه بگم امتحان کردن چیز های جدید اصلا ترس نداره، برعکس میتونه یک کار خفن و جذاب و باحال باشه.
اگر به دینو علاقه مندید و فکر میکنید در آینده جایگزن NodeJS قراره بشه، میتونین برید داکیومنت هاش رو بخونید، پیکج های ک براش نوشته شده رو ببینید و وب سرویس بعدیی خودتون رو با دینو بنویسید.
منم سعی میکنم در یکی دو نوشته ی دیگه یکم بیشتر با دینو کار کنم و شایدم یک وب سرور واقعی نوشتم.


لینک های مفید:

  • https://deno.land/
  • https://deno.land/manual
  • https://deno.land/x
  • https://7learn.com/blog/what-is-deno-js

در ضمن، خبرنامه ی لاجورد منتشر شده (یک خبرنامه ی هفته گی که در هر شماره چندیدن نوشته ی برنامه نویسی + اخبار دنیای تکنالوژی + چند پروژه ی اوپن سورس جذاب با خود به همراه داره)، اگر علاقه دارید تا درین خبرنامه ثبت نام کنید، میتوانید از لینک ذیل استفاده کنید و خبرنامه ی بعدی خود را صبح دوشنبه در ایمیل خود دریافت کنید:

https://irgsilnmvjo.typeform.com/to/adibAL2s