Fork me on GitHub

گاهشماری جلالی

بیشتر نرم افزار هایی که فارسی هستند، نیاز دارند تا زمان را به تاریخ ایران نشان دهند. برای این کار چندین ابزار و کتابخانه به زبان های گوناگون نوشته شده است. سال گذشته، زمانی که روی یک نرم افزار کار می کردم، خیلی به دنبال یک کتابخانه ی تاریخ گشتم ولی هیچ کدام نیاز هایم را براورده نکرد. بیشتر آن ها الگوریتم نادرستی داشتند. برخی تنها در یک بازه ی زمانی کوتاه که کمتر از ۱۰۰ سال بود کار می کردند. برخی مشکل پروانه (License) داشتند. سرانجام تصمیم گرفتم خودم دست به کار شوم و گاهشماری جلالی را ساختم.

کاربرد koa برای نوشتن وب سرور ها با آزانگر (Generator) در جاوا اسکریپت - بخش چهار

پیش از خواندن این نوشته، بخش یکم، بخش دوم و بخش سوم آن را بخوانید.

در بخش پیش با co و thunkify آشنا شدیم و دیدیم که چگونه با به کار گیری آزانگر در کنترل روند به ما کمک می کنند. در این جا با ابزاری به نام koa آشنا می شویم که برای نوشتن وب سرور ها با به کار گیری آزانگر ها به کار می رود و می تواند جایگزینی برای ابزار پر کاربرد express باشد.

کاربرد co و thunkify برای کنترل روند با آزانگر (Generator) در جاوا اسکریپت - بخش سه

پیش از خواندن این نوشته، بخش یکم و بخش دوم آن را بخوانید.

در بخش پیش دیدیم که چگونه می توانیم اجرای تابع آزانگر را کنترل کنیم. تابعی به نام run نوشتیم که می توانست تابع های آزانگر را اجرا کند. می توانستیم آن را توسعه دهیم ولی چندین کتابخانه ی دیگر از پیش نوشته شده اند که کاری همانند آن انجام می دهند. یکی از آن ها کتابخانه ای به نام co است که در اینجا با آن و یک کتابخانه ی دیگر به نام thunkify آشنا می شویم.

کاربرد آزانگر (Generator) در جاوا اسکریپت برای کنترل روند اجرا - بخش دو

پیش از خواندن این نوشته، بخش نخست آن را بخوانید.

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

یک لاگ سرور ساده با nodejs، express و mongodb

در این مقاله کوچک قصد دارم یک نمونه کد و نحوه کار با چند ماژول بسیار پر کاربرد نود جی‌اس را آموزش بدهم.

این کد یک برنامه کوچک برای ثبت log (خطا، اخطار و اطلاع‌رسانی) است.

مزیت این log server در نوع ثبت و نگهداری اطلاعات logها می‌باشد که در آن از یک نوع بانک‌ اطلاعاتی غیر رابطه‌ای (Document oriented) استفاده شده است.

شیء گرایی در جاوا اسکریپت

شاید برای خیلی ها عجیب باشد که در مورد شیء گرایی با جاوا اسکریپت متنی بخوانند. واقعیت این است که جاوا اسکریپت ساختارهای شیء گرایی با قابلیتهای بسیار بالایی دارد اما به دلیل تفاوت این شیء گرایی با شیء گرایی های معمول در زبان های شبه C، این ساختارها برای برنامه نویسانی که از ابتدا با Java، C و ... کار کرده اند کمی عجیب است.

همه از فواید شیء گرایی و ماهیت آن اطلاع داریم بنابراین از شرح شیء گرایی می گذریم. در اینجا می خواهیم با نوع خاصی از شیء گرایی آشنا شویم که به عنوان prototyping شناخته می شود.