diff --git a/docs/Javascript-introduction.md b/docs/Javascript-introduction.md index c871390..27d4544 100644 --- a/docs/Javascript-introduction.md +++ b/docs/Javascript-introduction.md @@ -6,28 +6,28 @@ sidebar_label: معرفی Javascript ## ظهور -جاوااسکریپت یکی از معروف ترین زبان های برنامه نویسی دنیاست که حدودا ۲۰ سال پیش به وجود اومد +جاوا اسکریپت یکی از معروف ترین زبان های برنامه نویسی دنیاست که حدودا ۲۰ سال پیش به وجود اومد و زمان نسبتا زیادی هم طول کشید تا به یک زبان خوب و قابل اعتماد تبدیل بشه. -> جاوااسکریپت اولین و تنها زبان برنامه‌ نویسی هست که به صورت native در مرورگرها مورد استفاده قرار می‌گیره. +> جاوا اسکریپت اولین و تنها زبان برنامه‌ نویسی هست که به صورت native در مرورگرها مورد استفاده قرار می‌گیره. -یادتونه همین چند سال پیش وبلاگ‌ها پر بودن از انیمیشن‌های عجیب و غریب، مثل بارش برف، جوونورهایی که دنبال موس راه میوفتادن و برامون خیلی عجیب و جذاب بودن؟ خوب این ها تقریبا بیشترین و اصلی‌ترین استفاده هایی بود که از جاوااسکریپت میشد! +یادتونه همین چند سال پیش وبلاگ‌ها پر بودن از انیمیشن‌های عجیب و غریب، مثل بارش برف، جوونورهایی که دنبال موس راه میوفتادن و برامون خیلی عجیب و جذاب بودن؟ خوب این ها تقریبا بیشترین و اصلی‌ترین استفاده هایی بود که از جاوا اسکریپت میشد! -ولی کم کم با توسعه پیدا کردن و همه‌گیر شدن وب، جاوااسکریپت هم احتیاج به رشد داشت تا بتونه نیازهای بزرگترین و پر‌ استفاده ترین اکوسیستم دنیا (یعنی) وب رو پاسخ‌گو باشه. +ولی کم کم با توسعه پیدا کردن و همه‌گیر شدن وب، جاوا اسکریپت هم احتیاج به رشد داشت تا بتونه نیازهای بزرگترین و پر‌ استفاده ترین اکوسیستم دنیا (یعنی) وب رو پاسخ‌گو باشه. -خیلی از چیزها در این پلتفرم، توسط API مرورگرها فراهم شد، ولی خود زبان جاوااسکریپت هم رشد وسیع و سریعی شاهد بود. +خیلی از چیزها در این پلتفرم، توسط API مرورگرها فراهم شد، ولی خود زبان جاوا اسکریپت هم رشد وسیع و سریعی شاهد بود. -جاوااسکریپت در حال حاضر به شکل وسیعی در خارج از مرورگرها مورد استفاده قرار می‌گیره. ظهور Node.js در سال‌های اخیر باعث شده این زبان در کنار زبان های Server side مطرحی همچون Java, Ruby, Python, Php و ... دیده بشه. +جاوا اسکریپت در حال حاضر به شکل وسیعی در خارج از مرورگرها مورد استفاده قرار می‌گیره. ظهور Node.js در سال‌های اخیر باعث شده این زبان در کنار زبان های Server side مطرحی همچون Java, Ruby, Python, Php و ... دیده بشه. -> در حال حاضر جاوااسکریپت به شکل گسترده ای در دیتابیس ها، سخت افزارها، ساخت نرم افزارهای قابل اجرا در سیستم عامل‌های مختلف، موبایل ها و ... مورد استفاده قرار گرفته، زبانی که روزی فقط در مرورگرها استفاده می‌شد، حالا به معروف‌ترین و پر استفاده ترین زبان برنامه نویسی دنیا تبدیل شده. +> در حال حاضر جاوا اسکریپت به شکل گسترده ای در دیتابیس ها، سخت افزارها، ساخت نرم افزارهای قابل اجرا در سیستم عامل‌های مختلف، موبایل ها و ... مورد استفاده قرار گرفته، زبانی که روزی فقط در مرورگرها استفاده می‌شد، حالا به معروف‌ترین و پر استفاده ترین زبان برنامه نویسی دنیا تبدیل شده. ## تعریف اولیه -جاوااسکریپت زبانی هست که: +جاوا اسکریپت زبانی هست که: High level: به این معنی که این زبان فضایی برای شما فراهم کرده که به جای درگیر شدن با کارهای پیچیده، مثل مدیریت حافظه، یا مفاهیم پیچیده تر، تمرکزتون رو روی کار اصلی بذارید. -**Dynamic**: برعکس زبان های برنامه نویسی `static`, زبان جاوااسکریپت خیلی از چیزهایی که زبان های استاتیک در زمان کامپایل آماده می‌کنند رو در زمان اجرا آماده می‌کنه. این مورد فواید و اشکالاتی داره و به ما قابلیت‌های مفیدی مثل، `dynamic typing`, `late binding`, `reflection`, +**Dynamic**: برعکس زبان های برنامه نویسی `static`, زبان جاوا اسکریپت خیلی از چیزهایی که زبان های استاتیک در زمان کامپایل آماده می‌کنند رو در زمان اجرا آماده می‌کنه. این مورد فواید و اشکالاتی داره و به ما قابلیت‌های مفیدی مثل، `dynamic typing`, `late binding`, `reflection`, `functional programming`, `object runtime alteration`, `closures` و خیلی چیزهای دیگه میده. **Dynamically typed**: به این معنا که متغیرها ما را وادار به داشتن type مشخص نمی‌کنند. @@ -36,18 +36,18 @@ High level: به این معنی که این زبان فضایی برای شما **Weakly typed**: برعکس زبان های `strong type`, زبان های `weakly typed` هیچ اجباری برای `type` های یک آبجکت ندارن. این امکان به دستمون رو باز میذاره، ولی امکان `type checking` رو از ما میگره، چیزی که با کمک `Flow` یا `TypeScript` قابل حله. -**Interpreted**: به این معنی که برعکس زبان هایی مثل `C`, `Java` یا `Go`, جاوااسکریپت قبل از اجرا نیازی به کامپایل شدن ندارد و به اصلاح یک زبان مفصری‌ست. مرورگر قبل از اجرای کدهای جاوااکریپت آن را کامپایل می کند و شما لازم نیست هیچ کار اضافه ای انجام دهید. +**Interpreted**: به این معنی که برعکس زبان هایی مثل `C`, `Java` یا `Go`, جاوا اسکریپت قبل از اجرا نیازی به کامپایل شدن ندارد و به اصلاح یک زبان مفصری‌ست. مرورگر قبل از اجرای کدهای جاوااکریپت آن را کامپایل می کند و شما لازم نیست هیچ کار اضافه ای انجام دهید. -**Multi-paradigm**: جاوااسکریپت برنامه نویسانش را به سبک خاصی از برنامه نویسی وادار نمی‌کند. به این معنا که برعکس زبانی مثل `Java` که برنامه نویسان را به سبک نوشتن `Object oriented` وادار میکند، یا زبان `C` که شما را به نوشتن `Impretive` سوق می‌دهد، در جاوا اسکریپت شما می توانید هر سبکی را که می پسندید انتخاب نمایید. مثل شی گرایی، دستوری (مثل `C`) و `Functional`. +**Multi-paradigm**: جاوا اسکریپت برنامه نویسانش را به سبک خاصی از برنامه نویسی وادار نمی‌کند. به این معنا که برعکس زبانی مثل `Java` که برنامه نویسان را به سبک نوشتن `Object oriented` وادار میکند، یا زبان `C` که شما را به نوشتن `Impretive` سوق می‌دهد، در جاوا اسکریپت شما می توانید هر سبکی را که می پسندید انتخاب نمایید. مثل شی گرایی، دستوری (مثل `C`) و `Functional`. > جالبه بدانید زبان `Javascript` هیچ ربطی به `Java` نداره. متاسفانه این فقط یک انتخاب بد برای این زبان به حساب می‌یاد. -## نسخه های مختلف جاوااسکریپت +## نسخه های مختلف جاوا اسکریپت -اجازه بدید اصطلاح `ECMAScript` را همین‌جا معرفی کنم. ما یک [بخش کامل](javascript-ecmascript.md) رو به معرفی و آموزش `ECMAScript` اختصاص دادیم. ولی فقط برای آشنایی این را بدانید که اکمااسکریپت که به `ES` هم معروفه یک استاندارد برای زبان جاوااسکریپت به حساب می‌یاد. +اجازه بدید اصطلاح `ECMAScript` را همین‌جا معرفی کنم. ما یک [بخش کامل](javascript-ecmascript.md) رو به معرفی و آموزش `ECMAScript` اختصاص دادیم. ولی فقط برای آشنایی این را بدانید که اکمااسکریپت که به `ES` هم معروفه یک استاندارد برای زبان جاوا اسکریپت به حساب می‌یاد. -جاوااسکریپت یک پیاده سازی از این استاندارد محسوب می‌شه و به خاطر همینه که شما اصطلاحاتی مثل ES6, ES2015, ES2019 و ... را زیاد می‌شنوید. +جاوا اسکریپت یک پیاده سازی از این استاندارد محسوب می‌شه و به خاطر همینه که شما اصطلاحاتی مثل ES6, ES2015, ES2019 و ... را زیاد می‌شنوید. -برای مدت زمان طولانی نسخه ES3 جاوااسکریپت در مرورگرها اجرا می‌شد. بعد از اون پروژه نسخه 4 به علت تغییرات بسیار زیادی که یکباره اعمال کرده بودند متوقف شد. سپس نسخه 5 که بزرگترین آپدیت به حساب می آمد معرفی و مورد استفاده قرار گرفت. بعد از آن در سال 2015 نسخه E2015 که به ES6 هم شناخته می‌شه وارد صحنه شد که انقلابی بزرگ برای این زبان به حساب می آمد. +برای مدت زمان طولانی نسخه ES3 جاوا اسکریپت در مرورگرها اجرا می‌شد. بعد از اون پروژه نسخه 4 به علت تغییرات بسیار زیادی که یکباره اعمال کرده بودند متوقف شد. سپس نسخه 5 که بزرگترین آپدیت به حساب می آمد معرفی و مورد استفاده قرار گرفت. بعد از آن در سال 2015 نسخه E2015 که به ES6 هم شناخته می‌شه وارد صحنه شد که انقلابی بزرگ برای این زبان به حساب می آمد. -> در حال حاضر آخرین نسخه جاوااسکریپت `ES2018` است. \ No newline at end of file +> در حال حاضر آخرین نسخه جاوا اسکریپت `ES2018` است. \ No newline at end of file diff --git a/docs/javascript-ecmascript.md b/docs/javascript-ecmascript.md index 1cba837..44046f6 100644 --- a/docs/javascript-ecmascript.md +++ b/docs/javascript-ecmascript.md @@ -4,7 +4,7 @@ title: اکمااسکریپت sidebar_label: ECMAScript --- ## چرا و چگونه -هر زمان که در مورد جاوااسکریپت مطالعه می‌کنید نا خودآگاه این اصطلاحات رو خواهید دید: +هر زمان که در مورد جاوا اسکریپت مطالعه می‌کنید نا خودآگاه این اصطلاحات رو خواهید دید:
@@ -21,18 +21,18 @@ sidebar_label: ECMAScript تمام این‌ها مربوط به استاندارد **ECMAScript** می‌شوند. -> اکمااسکریپت یک استاندارد هست که جاوااسکریپت از آن تبعیت می‌کند. +> اکمااسکریپت یک استاندارد هست که جاوا اسکریپت از آن تبعیت می‌کند. -در کنار جاوااسکریپت زبان‌های دیگری هم هستند که این استاندارد را دارند: +در کنار جاوا اسکریپت زبان‌های دیگری هم هستند که این استاندارد را دارند: - `ActionScript` (زبان اسکریپت نویسی Flash), که دیگه محبوبیت سابق رو نداره. -- `JScript` (زبان اسکریپت‌نویسی مایکروسافت), در زمانی که NETScape از جاوااسکریپت استفاده می‌کرد جهت رقابت و استفاده در مرورگر Internet Explorer ساخته شد و در حال حاضر نیز از آن استفاده ای نمی‌شود. +- `JScript` (زبان اسکریپت‌نویسی مایکروسافت), در زمانی که NETScape از جاوا اسکریپت استفاده می‌کرد جهت رقابت و استفاده در مرورگر Internet Explorer ساخته شد و در حال حاضر نیز از آن استفاده ای نمی‌شود. -ولی جاوااسکریپت معروف‌ترین و بزرگترین زبانی هست که بر اساس این استاندارد شکل گرفته. +ولی جاوا اسکریپت معروف‌ترین و بزرگترین زبانی هست که بر اساس این استاندارد شکل گرفته. حالا چرا این اسم عجیب؟ `Ecma International` یک اتحادیه استاندارد سازی سوییسی هست که این استاندارد رو پایه‌گذاری کرد. -زمانی که جاوااسکریپت به وجود اومد، توسط `Netscape` و `Sun Microsystems` به `ECMA` معرفی شد و اون ها نام `ECMAScript` را با کد `ECMA-262` به آن دادند. +زمانی که جاوا اسکریپت به وجود اومد، توسط `Netscape` و `Sun Microsystems` به `ECMA` معرفی شد و اون ها نام `ECMAScript` را با کد `ECMA-262` به آن دادند. ## نسخه فعلی اکمااسکریپت @@ -40,7 +40,7 @@ sidebar_label: ECMAScript ## تاریخ Release نسخه بعدی -تجربه ثابت کرده که نسخه و استانداردهای جدید جاوااسکریپت تابستان هر سال release می‌شود. پس ما باید توقع داشته باشیم که ES2019 تابستان امسال ارائه شود. البته هیچ تضمینی برای این موضوع وجود ندارد. +تجربه ثابت کرده که نسخه و استانداردهای جدید جاوا اسکریپت تابستان هر سال release می‌شود. پس ما باید توقع داشته باشیم که ES2019 تابستان امسال ارائه شود. البته هیچ تضمینی برای این موضوع وجود ندارد. ## کمیته TC39 چیست؟ @@ -48,7 +48,7 @@ sidebar_label: ECMAScript هر استانداردی که مطرح و پیشنهاد داده می‌شود باید از مراحلی عبور کند که در این [لینک](https://tc39.github.io/process-document/) شرح داده شده است. -در این جدول نسخه‌های منتشر شده جاوااسکریپت را مشاهده می‌کنید. +در این جدول نسخه‌های منتشر شده جاوا اسکریپت را مشاهده می‌کنید. | نسخه | نام اصلی | تاریخ انتشار | |:-----:|:--------:|:------------:| diff --git a/docs/javascript-es6.md b/docs/javascript-es6.md index ad54ca9..c9745d1 100644 --- a/docs/javascript-es6.md +++ b/docs/javascript-es6.md @@ -35,7 +35,7 @@ sidebar_label: ES6 ## Arrow functions -`Arrow function` ها باعث شدن تغییراتی در ظاهر و (نحوه اجرا)ی کدهای جاوااسکریپت به وجود بیاد. به طور خلاصه باعث شد فانکشن ها از: +`Arrow function` ها باعث شدن تغییراتی در ظاهر و (نحوه اجرا)ی کدهای جاوا اسکریپت به وجود بیاد. به طور خلاصه باعث شد فانکشن ها از: ```js const foo = function foo() { @@ -112,7 +112,7 @@ wait().then(() => { - ارتباط دو سویه در زمانی که جنریتور در حال اجراست - `while` لوپی که با اجرا شدنش باعث فریز شدن برنامه ما نمیشه -به زبان جاوااسکریپت می‌دهند. +به زبان جاوا اسکریپت می‌دهند. این یک مثال هست که با کارکرد `Generator` بهتر آشنا بشید. diff --git a/website/blog/2016-03-11-blog-post.md b/website/blog/2016-03-11-blog-post.md index 197d064..2b532d6 100644 --- a/website/blog/2016-03-11-blog-post.md +++ b/website/blog/2016-03-11-blog-post.md @@ -1,5 +1,5 @@ --- -title: جاوااسکریپت چیست؟ +title: جاوا اسکریپت چیست؟ author: معین علیزاده authorURL: https://TrueMoein.ir --- diff --git a/website/i18n/en.json b/website/i18n/en.json index dbc3d70..72fcd3f 100644 --- a/website/i18n/en.json +++ b/website/i18n/en.json @@ -3,7 +3,7 @@ "localized-strings": { "next": "Next", "previous": "Previous", - "tagline": "آموزش‌های فارسی جاوااسکریپت و محصولات مرتبط", + "tagline": "آموزش‌های فارسی جاوا اسکریپت و محصولات مرتبط", "docs": { "javascript-ecmascript": { "title": "اکمااسکریپت", diff --git a/website/pages/en/index.js b/website/pages/en/index.js index e0c58b9..194afc2 100644 --- a/website/pages/en/index.js +++ b/website/pages/en/index.js @@ -71,13 +71,13 @@ class Index extends React.Component {

هدف

- این روزها جاوااسکریپت به معروف‌ترین و پرکاربردترین زبان برنامه نویسی تبدیل شده. + این روزها جاوا اسکریپت به معروف‌ترین و پرکاربردترین زبان برنامه نویسی تبدیل شده. تقریبا هیچ کاری نیست که با این زبان نشه انجام داد. - آقای Jeff Atwood گفته "هر برنامه ای که بتوان با جاوااسکریپت نوشت، در نهایت با جاوااسکریپت نوشته خواهد شد." + آقای Jeff Atwood گفته "هر برنامه ای که بتوان با جاوا اسکریپت نوشت، در نهایت با جاوا اسکریپت نوشته خواهد شد."

- JSBooklet - کتابچه آموزش جاوااسکریپت + JSBooklet - کتابچه آموزش جاوا اسکریپت
diff --git a/website/siteConfig.js b/website/siteConfig.js index 3758211..ceb4b6c 100644 --- a/website/siteConfig.js +++ b/website/siteConfig.js @@ -22,8 +22,8 @@ const booklets= [ ]; const siteConfig = { - title: 'کتابچه جاوااسکریپت', - tagline: 'آموزش‌های فارسی جاوااسکریپت و محصولات مرتبط', + title: 'کتابچه جاوا اسکریپت', + tagline: 'آموزش‌های فارسی جاوا اسکریپت و محصولات مرتبط', url: 'https://JSBooklet.ir', baseUrl: '/',