<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های محمدرضا حاجی مقصودی</title>
        <link>https://virgool.io/feed/@hajimaghsoodi</link>
        <description>برنامه نویس فول استک جاوااسکریپت و عاشق دنیای JS. موسس و مدرس در وبسایت megajs.com | کلی آموزش رایگان و مطالب مفید و تخصصی تو حوزه جاوااسکریپت آموزش دادم که تو سایت مگا جی اس میتونید ببینید.</description>
        <language>fa</language>
        <pubDate>2026-06-18 13:50:25</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/63191/avatar/C5celW.png?height=120&amp;width=120</url>
            <title>محمدرضا حاجی مقصودی</title>
            <link>https://virgool.io/@hajimaghsoodi</link>
        </image>

                    <item>
                <title>مرتب سازی آرایه ها در جاوا اسکریپت - قسمت ۱۲</title>
                <link>https://virgool.io/@hajimaghsoodi/%D9%85%D8%B1%D8%AA%D8%A8-%D8%B3%D8%A7%D8%B2%DB%8C-%D8%A2%D8%B1%D8%A7%DB%8C%D9%87-%D9%87%D8%A7-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D9%82%D8%B3%D9%85%D8%AA-%DB%B1%DB%B2-vsoygirhjlaa</link>
                <description> https://www.aparat.com/v/PQ3d7 آموزش رایگان جاوا اسکریپتدر جلسات قبلی با مفهوم آرایه و متدهای آرایه آشنا شدیم و اگر به مبحث آرایه ها مسلط نیستید پیشنهاد میشه که حتما جلسه 10 و 11 از دوره مقدماتی جاوا اسکریپت رو مطالعه کنید که خیلی مفیده. در این جلسه درباره مرتب سازی آرایه در مدل های مختلف و متدهاشو بررسی میکنیم.مرتب سازی آرایه ها در جاوا اسکریپتدوره مرتبط و تکمیلی: آموزش کامل آرایه ها در جاوا اسکریپتدوره کامل آموزش Arrays در جاوا اسکریپت به همراه کلی مثال کاربردی برای یادگیری عمیق مبجث آرایه ها در جاوااسکریپتمرتب سازی آرایه در جاوا اسکریپتهمون طور که میدونید آرایه ها میتونن تعداد Value زیادی در خود ذخیره کنند؛ مثلا ممکنه یه متغیر از نوع آرایه تا 50 تا مقدار را در خود ذخیره کند. و گاهی لازمه داده خاصی را از بین اون همه پیدا کنیم که کار نسبتا وقت گیریه، اما زمانی که آرایه ها بر اساس معیار خاصی مرتب باشن کار ما خیلی راحت تر میشه.مرتب سازی آرایه بر حسب حروف الفبامتد ()sortمتد sort آرایه را به ترتیب حروف الفبا مرتب میکند.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot]
fruit.sort();
//output:   [&amp;quotApple&amp;quot , &amp;quotBannana&amp;quot , &amp;quotPortugal&amp;quot]متد ()reverseمتد reverse دقیقا برعکس متد sort عمل میکنه، یعنی از آخر به اول مرتب میکنه آرایه رو.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot] 
fruit.reverse();
//output: [&amp;quotPortugal&amp;quot , &amp;quotBannana&amp;quot , &amp;quotApple&amp;quot]</description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Sun, 26 Jul 2020 14:58:17 +0430</pubDate>
            </item>
                    <item>
                <title>متدهای آرایه در javascript - قسمت ۱۱</title>
                <link>https://virgool.io/@hajimaghsoodi/%D9%85%D8%AA%D8%AF%D9%87%D8%A7%DB%8C-%D8%A2%D8%B1%D8%A7%DB%8C%D9%87-%D8%AF%D8%B1-javascript-%D9%82%D8%B3%D9%85%D8%AA-%DB%B1%DB%B1-t5gk3vvpaw40</link>
                <description> https://www.aparat.com/v/wKyIO آموزش رایگان جاوا اسکریپتمتدهای آرایه از اصلی ترین و پرکاربرد ترین مباحث مربوط به javascript است. متدهای آرایه در جاوا اسکریپت به ما کمک میکنه تا به خوبی از آرایه ها، ویژگی و خواص آن استفاده کنیم. در این جلسه از تونل یادگیری جاوا اسکریپت چند تا از متدهای کاربردی آرایه در javascript رو بررسی میکنیم.جلسه مرتبط: آرایه ها در جاو ااسکریپتدوره مرتبط و تکمیلی: آموزش کامل آرایه ها در جاوا اسکریپتدوره کامل آموزش Arrays در جاوا اسکریپت به همراه کلی مثال کاربردی برای یادگیری عمیق مبجث آرایه ها در جاوااسکریپتمتدهای آرایه در جاوا اسکریپتمتد تبدیل آرایه به رشتهگاهی اوقات لازمه که اعضا و آیتم های یک آرایه رو تبدیل به رشته کنیم و کار خاصی روش انجام بدیم. مثلا بخوایم نمایش بدیم. برای اینکار دوتا متد داریم. متد ()toString و متد ()joinمتد ()toStringمتد toString در جاوا اسکریپت آرایه را به رشته تبدیل میکنه. به این صورت که همه آیتم های یک آرایه رو داخل یک رشته میریزه و با یه کاما (ویرگول خارجیا) جدا میکنه.var fruit = [ &amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit.toString();
// output:   Bannana,Apple,Portugalمتد ()joinمتد join کاملا مشابه متد toString عمل میکنه، با این تفاوت که میشه جدا کننده بین آیتم های آرایه رو مشخص کرد. جداکننده رو داخل پرانتز و بین دوتا دبل کوتیشن مینویسیم.var fruit = [ &amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit.join(&amp;quot * &amp;quot);
// output:   Bannana * Apple * Portugalچند متد حذف و درج یک عنصر در آرایهوقتی با آرایه ها کار میکنید، اضافه کردن یا حذف یک آیتم از آخر آرایه کار راحتیه و از دو متد ()pop و ()push در javascript استفاده میکنیم. متد pop برای حذف عنصر (آیتم) از آخر آرایه و متد push برای اضافه کردن به آخر آرایه کاربرد داره.حذف و درج در آخر آرایهمتد ()popمتد pop آخرین آیتم آرایه رو حذف میکنه.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit.pop();    // remove last item of list
//output:  [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot]متد ()pushمتد push، مقداری که داخل پرانتزش قرار داره رو به آخر لیست یا همون آرایه اضافه میکنه.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit.push(&amp;quotKiwi&amp;quot);    // add to end of the list
//output:   [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot , &amp;quotKiwi&amp;quot]حذف و درج در اول آرایهاضافه کردن یا حذف یک آیتم از ابتدا آرایه کار راحتیه و از دو متد ()shift و ()unshift در جاوا اسکریپت استفاده میکنیم. متد shift برای حذف عنصر (آیتم) از اول آرایه و متد unshift برای اضافه کردن به اول آرایه کاربرد داره.متد ()shiftمتد shift مشابه متد pop عمل میکنه با این تفاوت که متد shift از اول آرایه حذف میکنه.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit.shift(); 
//output: [&amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot]متد ()unshiftمتد unshift مشابه متد push عمل میکنه با این تفاوت که متد unshift به اول آرایه اضافه میکنه.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit.unshift(&amp;quotKiwi&amp;quot);
//output: [&amp;quotKiwi&amp;quot , &amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot]تغییر یکی از آیتم های آرایهگاهی اوقات لازمه که مقداری که در آرایه وارد کردید رو ویرایش کنید و مقدار جدید را جایگزین کنید. برای اینکار کافیه که بعد از اسم آرایه، شماره ایندکس آیتم مورد نظرو وارد کنید و با یه (=) مقدار جدید رو اختصاص بدید. مثال زیر را در نظر بگیرید:var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];برای مثال میخوایم مقدار آیتم دوم رو عوض کنیم یعنی Apple. که شماره ایندکس آیتم دوم برابر با [1] است.نکته: برای پیدا کردن شماره ایندکس کافیه از شماره آیتم یه واحد کم کنید. چون شماره ایندکس از [0] شروع میشه.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit[1] = &amp;quotKiwi&quot; 
// output:   [&amp;quotBannana&amp;quot , &amp;quotKiwi&amp;quot , &amp;quotPortugal&amp;quot]به همین راحتی، به همین خوشمزگی.یک متد برای اضافه کردن یا حذف چند عنصر از آرایهاکثر اوقات لازمه که از وسط آرایه چند عنصر حذف یا اضافه بشن، پس متدهای بالا کاربردی ندارند؛ در نتیجه سراغ متد پرکاربرد ()splice میریم.متد ()splice برای اضافه کردن عنصرمتد Splice برای اضافه کردن آیتم های بیشتر در آرایه کاربرد دارد.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit.splice(1, 0, &amp;quotLemon&amp;quot, &amp;quotKiwi&amp;quot);اولین پارامتر (1) مشخص میکند که از کدام شماره ایندکس باید اضافه کردن آرایه شروع شود.دومین پارامتر (0) مشخص میکند که چه تعداد آیتم حذف شود تا آیتم های جدید جایگزین شود. اگر مثل مثال 0 باشه، هیچ آیتمی حذف نمیشه و فقط آیتم های جدید اضافه میشه.بقیه پارامترها ( “Lemon”, “Kiwi” ) همون آیتم های جدیدی هستش که باید به آرایه اضافه بشه.خروجی مثال بالا اینجوری میشه:// output:   [&amp;quotBannana&amp;quot , &amp;quotLemon&amp;quot, &amp;quotKiwi&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];در واقع باید از آخر تحلیل کرد؛( “Lemon”, “Kiwi” ): دو مقدار Kiwi , Lemon(0):  بدون اینکه آیتمی حذف بشه(1): از شماره ایندکس 1 شروع کن به جا گذاری ، در واقع از ایندکس 1 و خود 1 رو  2 تا خونه ببر جلو تا آیتم های جدید اضافه بشن.امیدوارم واضح گفته باشم.متد ()splice برای حذف کردن عنصرخب همون طور که در پاراگراف قبل دیدید، پارامتر دوم تعداد آیتمی رو به ما میده که باید حذف بشه؛ پس اگه فقط به پارامتر اول و دوم مقدار بدیم میتونیم آیتم حذف کنیم. مثال:var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
fruit.splice(1, 2);
// output: [&amp;quotBannana&amp;quot]تحلیل کد بالا:بقیه پارامترها خالی: پس قرار نیست آیتم جدید اضافه بشه.(2): 2 تا آیتم باید حذف بشه.(1): از شماره ایندکس 1 شروع کن به حذف کردن.متد ترکیب دو آرایه باهمگاهی اوقات لازمه تا 2 تا آرایه رو به هم بچسبونیم و تو یه آرایه جدید قرار بدیم یا چند تا Argument جدید به آخر آرایه اضافه کنیم. برای این کار از متد concat استفاده میکنیم.متد ()concatمتد concat بعد از اسم اولین آرایه قرار میگیره و آرایه های دیگه یا Argument های دیگه داخل پرانتزش قرار میگیرن.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
var food = [&amp;quotPizza&amp;quot , &amp;quotCake&amp;quot];
var new = fruit.concat(food); 
// output: [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot , &amp;quotPizza&amp;quot , &amp;quotCake&amp;quot]حتی میتونید 3 تا آرایه رو با هم ترکیب کنید:var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
var food = [&amp;quotPizza&amp;quot , &amp;quotCake&amp;quot];
var drink = [&amp;quotcoca&amp;quot];
var new = fruit.concat(food, drink); 
// output: [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot , &amp;quotPizza&amp;quot , &amp;quotCake&amp;quot , &amp;quotcoca&amp;quot]حتما لازم نیست تا 2 یا چند آرایه رو ترکیب کنید. میتونید به انتهای آرایه Argument اضافه کرد.var fruit = [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot];
var new = fruit.concat([&amp;quotMongo&amp;quot , &amp;quotLemon&amp;quot]);
// output: [&amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot , &amp;quotMongo&amp;quot , &amp;quotLemon&amp;quot]خب اگه آرایه ها و متدهای آرایه در جاوا اسکریپت رو خوب یاد گرفتید؛ جلسه بعد به موضوع “مرتب سازی آرایه ها” میپردازیم.منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/arrays-method-in-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Wed, 22 Jul 2020 11:57:40 +0430</pubDate>
            </item>
                    <item>
                <title>بررسی تخصصی Deno js</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%A8%D8%B1%D8%B1%D8%B3%DB%8C-%D8%AA%D8%AE%D8%B5%D8%B5%DB%8C-deno-js-duh9bl1opt8n</link>
                <description> https://www.aparat.com/v/F1rOb معرفی Deno jsدینو یه محیط Runtime برای اجرای کدهای جاوااسکریپت و تایپ اسکریپت روی موتور V8 گوگل (همون موتوری که nodejs رو اجرا میکنه) هست. Denojs بهشت برنامه نویسای تایپ اسکریپت هست چرا که اتوماتیک کدهای Typescript رو به Javascript تبدیل میکنه و بعد اجراش میکنه. Deno js با زبان برنامه نویسی Rust نوشته شده و با هدف رفع ۱۰ مشکل Nodejs ساخته شده و یه جورایی آپدیت جدید Nodejs محسوب میشه. Deno اومده تا مشکلاتی رایج در Node مثل Dependecyها، کتابخانه ها، ماژول ها، ابزار tooling و امنیت رو از بین ببره و یه جورایی رقبایی که بخاطر این مشکلات برای جاوااسکریپت شاخ شدن رو یه بار دیگه از میدون خارج کنه.پلتفرم denoدینو جی اس چیه؟دینو یا دنو؟ خب اول از همه سر تلفظ اسمش باهم بحث کنیم، تلفظ درستش دِنو هست. اما خود آقای Rayan Dahl (رایان دال) تو کنفرانس آخرش گفت، تلفظ کنیم دینو که نزدیک به کلمه Dinosaur (دایناسور) هست. حالا اینکه چرا دایناسور نمیدونم، صاحبش عشقش کشیده بذاره دینو بر وزن دایناسور. همین آقای رایان دال خالق پلتفرم nodejs در سال ۲۰۰۹ بوده. نکته جالبش اینجاست که در هر دو اسم Deno و Node از حروف یکسان استفاده شده و فقط ترتیب حروف عوض شده. احتمالا علت نام گذاری Denojs همین نکته بوده که یه اسم با معنی و با حروف node پیشنهاد بدن. (یه تحلیل شخصی برای علت که بنده دارم) به نظرم همین که اسم Deno چیدمانی متفاوت از node هست و خالق هر دو پلتفرم یک نفر هست پس میشه این احتمال رو داد که قراره جایگزین nodejs بشه و بعد از ۱۰ سال تجربه ای که سر توسعه nodejs بدست آورده میخواد ضعف های nodejs را بهبود و نقطه قوت هاش رو تقویت کنه. البته این تحلیل شخصی هست و هیچ مستندی نداره. اما در ادامه مقاله با مستندات موجود در سایت رسمی Denojs به آدرس deno.land درباره این پلتفرم جنجالی صحبت کنیم.خب بریم سراغ اصل داستان که Deno چیه؟ و کاربرد Deno چیه؟دینو چیست؟در سال ۲۰۱۸ جناب رایان دال یه کنفرانس داشت که میتونید تو یوتیوب ببینید، درباره ۱۰ تا اشتباه از Nodejs گفت که قراره در پلتفرم جدیدی به اسم nodejs 2 این اشتباهات رو اصلاح کنه و دلیلش هم کاملا مشخصه. یکی از دلایل اصلیش اینه که سال ۲۰۰۹ هنوز اکمااسکریپت ۶ و ۷ معرفی نشده بودند و نود جی اس callback محور بود ولی الان مواردی مثل Promise وجود داره ولی خب امکان آپدیت ورژن nodejs نیست چراکه خیلی از پروژه ها به مشکل میخورن و نمیشه کل پروژه های nodejs رو دوباره تغییر بدهند و ۹ مورد دیگر که تصمیم گرفت در قالب پلتفرمی جدی معرفی کند که طبق آخرین استانداردهای جاوااسکریپت باشد. و این یه نکته جذاب محسوب میشه چون ورژن های اخیر جاوااسکریپت واقعا جذاب و عالی شده.پس تا اینجای کار متوجه شدید که Deno مثل Node  یک پلتفرم مبتنی بر Back-end هست اما هنوز خیلی جای کار داره تا بخواد جایگزین Nodejs بشه.شباهت دینو جی اس با نود جی اس چیست؟کاربرد هر دو پلتفرم Node و Deno توسعه سمت بک اند وبسایت و اپلیکیشن هست.در هر دو پلتفرم Denojs و Nodejs با سینتکس جاوااسکریپت میتونیم کد بزنیم.هم دینو و هم نود روی موتور V8 گوگل اجرا میشوند.تفاوت دینو با نود چیه؟امنیت بیشتر Deno js نسبت به nodejs.کتابخانه استاندارد کامل تر Deno به نسبت کتابخانه پیش فرض Node.پشتیبانی دینو از تایپ اسکریپت در هسته پلتفرم.در Deno js هیچ اجباری در استفاده از NPM ندارید.در deno js نیازی به Package.json نیست تا Dependencyها رو کنترل کنیدDeno js نیازی به Node_modules نیستخب قراره در ادامه مقاله تخصصی تر بررسی کنیم که Deno برای چی اومده و آیا جایگزین مناسبی برای Node هست؟مقاله مرتبط: معرفی پلتفرم Nodejsچرا باید از Deno JS استفاده کنیم؟آقا یعنی بجای node از Deno استفاده کنیم؟ خب طبق گفته های جناب رایان دال در کنفرانس باید این اتفاق بیوفته. خب چرا؟ چون زمانی که nodejs ساخته شد در سال ۲۰۰۹ هنوز چیزی به اسم اکما اسکریپت ۶ یا ۲۰۱۵ درست نشده بود. پس در nodejs خبری از Promise ها نبود و nodejs یک پلتفرم callback محور بود. البته الان میشه با promise ها و async و await هم در nodejs کار کرد بواسطه کتابخانه های موجود در NPM. اما دیگه نمیشه هسته node رو تغییر داد چون خیلی برنامه ها و پروژه ها دارن با callbackها کار میکنن و اگه بخواد همچین تغییری در هسته ایجاد بشه اون برنامه ها از کار میوفتن و کلا داستان بهم میریزه. پس یه پلتفرم جدید ساخته شد به اسم Deno js تا این پلتفرم مطابق آخرین استاندادرهای جاوااسکریپت تا سال ۲۰۱۸ باشد. و پلتفرم Deno JS یک پلتفرم Promise محور هست و مخصوص استفاده از Async و ‌Await توسعه داده شده و این دقیقا همون هدف اصلی جاوااسکریپت در سمت بک اند هست. در هسته این پلتفرم از زبان بسیار قدرتمند و جذاب Rust استفاده شده که به نظرم نقطه قوت Deno js همینجاست.  البته Denojs بر اساس جاوااسکریپت، Go و ++C و تایپ اسکریپت و Rust نوشته شده که خود پشتیبانی از تایپ اسکریپت هم تا حدودی به قدرت این پلتفرم کمک کرده. چرا که خیلی از فریمورک های جاوااسکریپت مثل انگولار از تایپ اسکریپت استفاده میکنن پس شما میتونید از تایپ اسکریپت به صورت Built-in در Deno js استفاده کنید. در Deno js نیازی به Node_modules و Package.json ندارید! فوق العاده اس. میتونید کتابخانه هارو به صورت مستفیم از سرور با URL بگیرید. که روی کامپیوترتون Cache میشه و سرعت کامپایل شدیدا افزایش پیدا میکنه. پس دیگه نیازی به استفاده NPM نیست! ویژگی جدید و خوب Deno امنیت اون هست. Deno به صورت پیش فرض اجازه دسترسی به هیچ چیزی ندارد و مثلا حتی موقع راه انداختن سرور از شما اجازه میخواد. دقیقا مثل اپلیکیشن هایی که شما در  اندروید نصب میکنید و از شما اجازه میخواد تا به دوربین و مخاطبین دسترسی پیدا کنه.آیا دینو جی اس جایگزین نود جی اس میشه؟خب طبق استدلال های پاراگراف بالا Deno js جایگزین بهتر، قوی تر و کامل تر برای Nodejs هست با امنیت بسیار بالاتر. اما چون Deno js تازه معرفی شده و نسخه رسمیش کمتر از ۱ ماه هست که اومده برای اثبات خودش نیاز به گذر زمان داره و این مواردی که گفته شد بر اساس مستندات و گفته های توسعه دهندگانش هست. نکته بعدی اینه که میلیون ها پکیج و کتابحونه برای Nodejs وجود داره اما هیچ کدوم برای استفاده از دینو استاندارد نشدن و شاید بیشتر از ۱ سال زمان نیاز داره تا این اتفاق بیوفته. و هیچ وقت از نسخه های اول هیچ پلتفرمی برای پروژه هاتون استفاده نکیند. چون ایرادات و باگ هایی داره که نیاز به رفع داره. پس اینکه بگیم Denojs جایگزین Node میشه شاید بیشتر از یکسال زمان ببره تا همه انتظارات node در deno براورده بشه. البته همه این ها حدس و احتمال بنده هست و سرعت تکنولوژی خیلی خیلی بیشتر از این حرفاست. شاید زودتر شایدم دیرتر.یعنی دیگه Nodejs یاد نگیریم؟یاد بگیر آقا. حتی اگه در آینده قرار باشه بجای node از deno استفاده کنی باز باید nodejs یاد بگیری. چرا که سینتکس تا حدودی همونه و شما از یادگیری نود جی اس ضرر نمیکنید. در ضمن تا دینو جا بیوفته و بشه اعتماد کرد شاید خیلی طول بکشه و تا اون موقع شما میمونی و دست های خالی. پس پیشنهاد میکنم حتما Nodejs یاد بگیر. مطمئن باش Denojs هم بهتر یاد میگری.الان موقع یادگیری Deno JS هست؟به نظرم الان نه! یعنی در تیرماه ۹۹ که دارم این مقاله رو مینویسم، میگم Deno یاد نگیرید. البته اگه یاد بگیری ضرر نمیکنی. اگه node بلدی و میخوای اضافه یاد بگیری، اوکیه. اما اگه تازه میخوای بک اند شروع کنی پیشنهاد میکنم Node یاد بگیر تا زمانی که دینو جا بیوفته و براش کتابخونه های مورد نیاز بیاد و باگ های احتمالی بر طرف بشه. الان تقریبا هر هفته یک آپدیت برای دینو میاد و برای شمایی که تازه میخوای back-end یاد بگیری منبع و آموزش مناسبی برای deno نیست و در ضمن تعداد برنامه نویس هاش خیلی کمه و اگه به مشکل بخوری ممکنه نتونی زود جوابتو پیدا کنی.پس اول Node یاد بگیر اگه دوس داشتی آپدیت باشی و آینده نگر برو سراغ Deno Jsدر ماه های آینده تخصصی تر Deno js و Node js رو بررسی میکنیم که در چه مواردی کدوم قوی تر عمل میکنه.منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/blog/denojs/what-is-denojs/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Wed, 22 Jul 2020 10:38:29 +0430</pubDate>
            </item>
                    <item>
                <title>آرایه ها در جاوا اسکریپت (Arrays) - قسمت ۱۰</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%A2%D8%B1%D8%A7%DB%8C%D9%87-%D9%87%D8%A7-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-arrays-%D9%82%D8%B3%D9%85%D8%AA-%DB%B1%DB%B0-izvihcn8omba</link>
                <description> https://www.aparat.com/v/HfrTn آموزش رایگان جاوا اسکریپتآرایه ها یا Arrays یکی از انواع داده ای بود که در جلسه ششم از تونل یادگیری جاوا اسکریپت مورد بررسی قرار دادیم. برای ذخیره چند مقدار متفاوت در یک متغیر از آرایه ها استفاده میکنیم.دوره مرتبط و تکمیلی: آموزش کامل آرایه ها در جاوا اسکریپتدوره کامل آموزش Arrays در جاوا اسکریپت به همراه کلی مثال کاربردی برای یادگیری عمیق مبجث آرایه ها در جاوااسکریپتآرایه ها در جاوا اسکریپتآرایه چیست؟آرایه ها متغییر هایی هستند که بیشتر از یک مقدار را در خود ذخیره میکنند و دسترسی به داده های ذخیره شده با شماره ایندکس امکان پذیر است. در واقع اسم دیگه آرایه میشه لیست. مثلا برای ذخیره یه لیست از اسامی میوه بدون استفاده از آرایه ها باید به شکل زیر عمل کنیم.var fruitOne = &amp;quotbannana&quot;
var fruitTwo = &amp;quotPortugal&quot;
var fruitThree = &amp;quotApple&quot;حالا اینو در نظر بگیرید که اینجا فقط 3 تا میوه داریم؛ اگه 300 تا میوه بود تازه با فاجعه اصلی روبرو میشدیم. 300 تا متغییر متفاوت !!! که اینکار علاوه بر بالا بردن حجم برنامه و این داستانا خوانایی و عملکرد برنامه رو به شدت کاهش میدهراه حل این مشکل آرایه ها (Arrays) یا لیست ها هستند. اگه یادتون رفته متغییر ها چی بودند مقاله زیر رو بخونید.جلسه مرتبط: متغیرها در جاوا اسکریپتساختن آرایه در جاوا اسکریپتبرای ساختن یک آرایه در جاوا اسکریپت فقط کافیه مقادیر مورد نظر رو داخل یک براکت یا کروشه بذاریم و هر مقدار رو با یک کاما جدا کنیم. سینتکس کلی ساخت آرایه در جاوا اسکریپت به شکل زیر است.var array_name = [item1, item2, ...];برای مثال همون اسامی میوه را با یک متغیر و تشکیل آرایه به شکل زیر میشه نوشت.var fruit = [ &amp;quotBannana&amp;quot , &amp;quotApple&amp;quot , &amp;quotPortugal&amp;quot]یا برای مرتب نوشتن و راحتی میشه بعد از هر کاما یه Enter بزنید تا هر میوه در یک خط نوشته بشه و خوانایی برنامه بالاتر بره.var fruit = [ &amp;quotBannana&amp;quot,
 &amp;quotApple&amp;quot,
 &amp;quotPortugal&amp;quot]البته یه روش دیگه برای تعریف آرایه وجود داره که تفاوتی با روشای بالا نداره اما میگم بهتون تا بعدا نگید نگفت!این روش رو وقتی شی گرایی در جاوا اسکریپت رو یاد بگیرید به دردتون میخوره و کاربرد زیادی داره.var fruit = new Array(&amp;quotBannana&amp;quot, &amp;quotApple&amp;quot, &amp;quotPortugal&amp;quot);دسترسی به مقادیر آرایهخب حالا در نظر بگیرید میخوایم به یکی از آیتم های آرایه دسترسی داشته باشیم، مثلا ببینیم سومین میوه چی بوده؟ یا اولین میوه رو به لیست علاقه مندی های کاربرمون اضافه کنیم. برای دسترسی به به آیتم های یک آرایه از شماره ایندکس (index number) استفاده میکنیم. برای مثال میخوایم ببینیم اولین آیتم از آرایه fruit رو داخل متغیر favoriteFruit بریزیم.var favoriteFruit= fruit[0];شماره ایندکس آرایه از 0 شروع میشود. یعنی شماره اولین عنصر [0] و دومین عنصر [1] میشه.تغییر آیتم های آرایهاگه نیاز باشه که تو لیست آیتم های یک آرایه تغییری ایجاد کنیم یا کاربر اجازه ویرایش آیتم هارو داشته باشه کافیه شماره ایندکس آیتم مورد نظرو داخل یک براکت جلوی اسم آرایه بنویسیم و مقدار جدیدو اختصاص بدیم.fruit[0] = &amp;quotLemon&quot;الان اولین آیتم آرایه fruit به Lemon تغییر پیدا کرد.دسترسی به کل آیتم های آرایهبرای این کار فقط لازمه اسم آرایه رو فراخونی کنیم.fruit
// output:   (3) [&amp;quotBannana&amp;quot, &amp;quotApple&amp;quot, &amp;quotPortugal&amp;quot]تفاوت آرایه با Objectآرایه ها نوع خاصی از Object ها هستند، یعنی اگه typeof یک متغیر را بگیریم که داخلش آرایه ریختیم با جواب object مواجه میشیم.var fruits = [&amp;quotBanana&amp;quot, &amp;quotApple&amp;quot, &amp;quotPortugal&amp;quot];
typeof fruits;    // returns object(اگه نمیدونید Object چیه؟ نگران نباشید با Object در جلسات بعدی بیشتر آشنا میشیم.) با این تفاوت که برای دسترسی به عناصر یک آرایه از شماره ایندکس استفاده میکنیم اما برای دسترسی به اعضای یک Object از اسامی آن استفاده میکنیم.به طور کلیدر جاوا اسکریپت آرایه ها از numbered indexes (شماره ایندکس) استفاده میکنن.در جااسکریپت Object ها از named indexes (اسم ایتدکس) استفاده میکنن.برای مثال:برای دسترسی به اولین عنصر این آرایه از [0]person استفاده میکنیم.var person = [&amp;quotMohammad&amp;quot, &amp;quotRezaei&amp;quot, 20];
// output:   Mohammadبرای دسترسی به اولین عضو این object از person.firstName استفاده میکنیم.var person = {firstName:&amp;quotMohammad&amp;quot, lastName:&amp;quotRezaei&amp;quot, age:20};
// output:   Mohammadچطور آرایه رو از Object تشخیص بدیم؟همان طور که فهمیدید اگه از typeof استفاده کنیم مقدار object رو به ما برمیگردونه. چون آرایه نوع خاصی از Object است،اما خب راه حل چیه؟در اکما اسکریپت 5 از متد ()Array.isArray برای تشخیص اینکه یک متغیر آرایس یا Object استفاده میشه.چه موقع از آرایه استفاده کنیم؟ چه موقع از Object استفاده کنیم؟Array.isArray(fruits);   // returns trueخواص و ویژگی آرایه ها (Array Properties)برای استفاده بهتر از آرایه ها، خواص و ویژگی هایی وجود دارد.طول آرایه (Array length)برای بدست آوردن تعداد عنصر های یک آرایه از property یا ویژگی Lenght استفاده میکنیم. یعنی آرایه یا لیستی که 4 تا عنصر داشته باشه، عدد 4 برای ما return میشه.var fruits = [&amp;quotBanana&amp;quot, &amp;quotOrange&amp;quot, &amp;quotApple&amp;quot, &amp;quotMango&amp;quot];
fruits.length;   // the length of fruits is 4منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/arrays-in-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Wed, 15 Jul 2020 19:39:39 +0430</pubDate>
            </item>
                    <item>
                <title>متد های رشته در جاوا اسکریپت (Strings Method) - قسمت ۹</title>
                <link>https://virgool.io/@hajimaghsoodi/%D9%85%D8%AA%D8%AF-%D9%87%D8%A7%DB%8C-%D8%B1%D8%B4%D8%AA%D9%87-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-strings-method-%D9%82%D8%B3%D9%85%D8%AA-%DB%B9-fyxdydslp6p8</link>
                <description> https://www.aparat.com/v/qx0ZW آموزش رایگان جاوا اسکریپتمتد رشته ها یا Strings Method مبحث بسیار پر کاربرد در جاوا اسکریپت است که روز قبل با رشته ها آشنا شدیم و با استفاد از ویژگی هایی که متد ها در رشته در اختیار ما میذارن میتونیم ار رشته ها به عنوان یک شی یا Object استفاده کنیم.متدهای رشته ها در جاوا اسکریپت (STRING METHODS)متد های رشته به شما کمک میکنه تا به خوبی با رشته ها کار کنید.متدهای رشته در جاوا اسکریپتویژگی یافتن طول رشته (String Length)از متد Length برای پیدا کردن تعداد کاراکتر یا طول یک رشته استفاده میشه.var name = &amp;quotMega JS&amp;quot
var chr = name.length
// output: 6توجه کنید که Space یا علائم نگارشی نیز شمرده میشن.متد یافتن رشته در رشته ای دیگر (Finding String)متد ()indexOf شماره ایندکس اولین حرف از کلمه داخل پرانتز را به ما برمیگردونه.var text = &amp;quotBest Way To Learn javascript&amp;quot ;
var pos = text.indexOf(&amp;quotjavascript&amp;quot);
// output: 18نکته اینحاست که هر زمان از شماره ایندکس حرف زدیم یعنی شمارش از ۰ شروع میشهمتد یافتن آخرین رشته در رشته ای دیگر (Finding Last String)متد ()lastIndexOf آخرین کلمه ای که در رشته با کلمه داخل پرانتز همخونی داشته باشه بر میگردونه. البته اگه ۲ تا یا بیشتر از کلمه مورد نظر وجود داشته باشه.var text = &amp;quotBest Way To Learn js on Best js website&amp;quot ;
var pos = text.lastIndexOf(&amp;quotjs&amp;quot);
// output: 29هر دو متد indexOf و lastIndexOf اگر کلمه مورد نظر پیدا نشه،  (۱-)  برمیگردونناستخراج قسمتی از یک رشتهبرای استخراج قسمتی از یک رشته یا به اصظلاح (Extracting String Parts) سه روش وجود دارد.slice(start, end)substring(start, end)substr(start, length)متد ()sliceمتد ()slice قسمتی از یک رشته را استخراج میکنه و داخل یک رشته جدید بر میگردونه. متد slice دوتا پارامتر ورودی داره، پارامتر اول شماره ایندکس شروع و پارامتر دوم شماره ایندکس بعد پایان است.var name = &amp;quotMohammad reza Haji maghsoodi&amp;quot ;
var res = name.slice(9, 13) ;
// output: rezaتوجه داشته باشید که پارامتر دوم در خروجی نمایش داده نمیشه و یه شماره قبل اون آخرین کاراکتر نمایشی محسوب میشه.همچین میشه از آخر هم شمرد، به این صورت که ۲تا پارارمتر رو عدد منفی میدیم و جای پارامتر اول و دوم عوض میشه. پارامتر اول شماره ایندکس آخرین خونس و پارامتر دوم شماره ایندکس اولین خونس.var name = &amp;quotMohammad reza Haji maghsoodi&amp;quot ;
var res = name.slice(-19, -15) ;
// output: rezaاگه فقط یه پارامتر داخل پرانتز قرار بگیره، از اون شماره ایندکس تا آخر رشته انتخاب میشه.var name = &amp;quotMohammad reza Haji maghsoodi&amp;quot ;
var res = name.slice(14) ;
// output: Haji maghsoodiمتد ()substringمتد ()substring مشابه متد ()slice عمل میکند. با این تفاوت که در متد substring پارامتر منفی مورد قبول نیست.var name = &amp;quotMohammad reza Haji maghsoodi&amp;quot ;
var res = name.substring(9, 13) ;
// output: rezaمتد ()substrمتد ()substr هم مشابه متد ()slice عمل میکنه با این تفاوت که در متد substr پارامتر دوم تعداد شماره ایندکسی است که باید از پارامتر اول شمرده شود. با یه مثال این مسئله جا میوفته.var name = &amp;quotMohammad reza Haji maghsoodi&amp;quot ;
var res = name.substr(9, 4) ;
// output: rezaدر این مثال، از شماره ایندکس ۹ (پارامتر اول) به تعداد ۴ خونه به جلو حرکت میکنیم (پارامتر دوم) و انتخاب میکنیم.دقت کنید که شمارش پارامتر دوم از اولین خونه حساب میشه، یعنی (R) هم حساب میشهمتد ()REPLACEمتد ()replace دوتا پارامتر ورودی داره، پارامتر اول اون رشته ای که باید از String انتخاب بشه نوشته میشه؛ پارامتر دوم رشته جایگزین رشته اول نوشته میشه.توجه کنید که این متد در رشته اصلی تغیری ایجاد نمیکنه و در واقع یک رشته جدید میسازه.name = &amp;quotBest Way To Learn js&amp;quot ;
str = name.replace(&amp;quotjs&amp;quot, &amp;quotJavaScript&amp;quot);
// output: Best Way To Learn JavaScriptبه صورت پیش فرض این متد اولین کلمه مطابق با رشته ما را انتخاب میکند و تغییر میدهد.متد ()replace به بزرگی و کوچک بودن حروف حساس است.متد بزرگ و کوچک کردن حروف یک رشتهمتد ()toUpperCaseمتد toUpperCase همون طور که از اسمش معلومه تمام حروف یک رشته را Captal یا بزرگ میکند.var txt = &amp;quotHello World!&quot;       // String
var text = txt.toUpperCase();   // text is txt converted to upper
// output: HELLO WORLD!متد ()toLowerCaseمتد toLowerCase هم همون طور که از اسمش معلومه تمام حروف یک رشته را Small یا کوچک میکند.var txt = &amp;quotHELLO World!&quot;       // String
var text = txt.toLowerCase();   // text is txt converted to Lower
// output: hello world!متد ()CONCATمتد concat برای ترکیب کردن ۲ یا چند رشته با هم استفاده میشه.var txt1 = &amp;quotMEGA&quot;
var txt2 = &amp;quotJS&quot;
var txt3 = txt1.concat(&amp;quot &amp;quot, txt2);
// output: MEGA JS!همچنین متد concat میتونه جایگزین عملگر (+) بشه. به مثال زیر توجه کنید:var txt = &amp;quotMega&amp;quot + &amp;quot &amp;quot + &amp;quotJS!&quot;
output: Mega JS!معادل عبارت بالا رو میتونیم به شکل زیر هم بنویسیم.var txt = &amp;quotMega&amp;quot.concat(&amp;quot &amp;quot, &amp;quotJS!&amp;quot);
output: Mega JS!متد ()TRIMمتد ()trim فضای خالی (Space) را از دو طرف رشته پاک میکند.var txt = &amp;quot Mega JS! &quot;
var trm = txt.trim()متد تبدیل رشته به آرایهمتد ()splitمتد ()split رشته را تبدیل به آرایه میکنه. و کاراکتری که داخل پرانتز قرار بگیره جدا کننده رشته و تبدیل اون به آرایس (Array). اگر نمیدونید آرایه یا Array چیه اصلا نگران نباشید، موضوع جلسه بعدی ” آرایه ” هست.var txt = &amp;quota,b,c,d,e&quot;   // String
txt.split(&amp;quot,&amp;quot);          // Split on commas
output: [&amp;quota&amp;quot, &amp;quotb&amp;quot, &amp;quotc&amp;quot, &amp;quotd&amp;quot, &amp;quote&amp;quot] // arrayمثالی دیگر.var txt = &amp;quota b c d e&quot;   // String
txt.split(&amp;quot &amp;quot);          // Split on spaces
output: [&amp;quota&amp;quot, &amp;quotb&amp;quot, &amp;quotc&amp;quot, &amp;quotd&amp;quot, &amp;quote&amp;quot] // arrayمنبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/strings-method-in-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Mon, 13 Jul 2020 14:35:17 +0430</pubDate>
            </item>
                    <item>
                <title>رشته ها در جاوااسکریپت (Strings) - قسمت ۸</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%B1%D8%B4%D8%AA%D9%87-%D9%87%D8%A7-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-strings-%D9%82%D8%B3%D9%85%D8%AA-%DB%B8-vgn7gugjbciw</link>
                <description>https://www.aparat.com/v/OISfKآموزش رایگان جاوا اسکریپترشته ها یا Strings یکی از انواع داده ای بود که در جلسه ششم از دوره مقدماتی جاوا اسکریپت راجع به آن صحبت کردیم. رشته ها در واقع همون کلمه یا Text محسوب مشن و برای اینکه جاوا اسکریپت متوجه این قضیه بشه که داده ما از نوع رشته یا کلمه است باید از ۲تا کوتیشن یا دبل کوتیشن استفاده کنیم و داخل آن متن مورد نظرو بنویسیم.رشته ها در جاوا اسکریپترشته ها در جاوا اسکریپت (STRINGS)رشته ها در جاوا اسکریپت برای ذخیره سازی و تغییر در متن استفاده میشه. رشته ها در جاوا اسکریپت بین دبل کوتیشن (” “) یا سینگل کوتیشن (‘ ‘) قرار میگیره. در واقع به کاراکترهایی که بین دبل کوتیشن و سینگل کوتیشن قرار میگیره، رشته یا String میگن.var x = &amp;quotMEGA JS&quot;
var x = &#039;MEGA JS&#039;;تفاوتی بین سینگل کوتیشن و دبل کوتیشن وجود ندارهطول رشته (STRING LENGTH)برای بدست آوردن تعداد کاراکترهای یک رشته از property یا ویژگی Length استفاده میکنیم.Var x = &amp;quotMEGA JS&quot;
x.length; // output: 7Space یا فاصله هم یک کاراکتر محسوب میشه و شمرده میشهرشته ها میتونن OBJECT باشندر حالت عادی، رشته ها در جاوا اسکریپت دارای مقادیر الفبایی و عددی هستن. اما با استفاده از کلمه کلیدی new  میتونیم رشته ها را به عنوان یک Objectذخیره کنیم.var x = &amp;quotMEGA JS&quot;
var y = new String (&amp;quotMEGA JS&amp;quot);
typeof x; // return String
typeof y; // return Objectتعریف الکی رشته به عنوان Object باعث کندی در اجرا برنامه ما میشه.فقط در صورت نیاز از رشته ها به عنوان Object یا شی استفاده کنید.مقایسه String و Object با مقدار یکسانیرای مقایسه رشته و شی با مقدار یکسان از عملگر مقایسه ای == استفاده میشه.جلسه مرتبط: عملگرها در جاو ااسکریپتVar x = &amp;quotMEGA JS&quot;
var y = new String(&amp;quotMEGA JS&amp;quot);
var z = (x == y);
// z is true because x and y have equal valuesدر مثال بالا true  برگشت داده میشه. چون دو متغیر از لحاظ مقداری با هم برابرند اما اگه از عملگر مقایسه ای === استفاده کنیم مقدار false برگشت داده میشه چون همون طور که در جلسه انواع داده و در جلسه عملگرها یادگرفتیم؛ زمانی که از === استفاده میشه، حتما باید ۲تا متغییر هم از لحاظ مقداری هم از لحاظ نوع داده ای باید برابر باشن تا مقدار true برگشت داده بشه. در این مثال ۲تا متغیر از لحاظ مقداری برابرند اما چون نوع داده ها متفاوت از مقدار falseبرگشت داده میشهVar x = &amp;quotMEGA JS&quot;
var y = new String(&amp;quotMEGA JS&amp;quot);
var z = (x === y);
// z is false because x and y have different types (string and object)در جلسه مربوط به Object ها به طور مفصل راجب ساختار Object ها حرف میزنیم؛ صرفا در این حد بدونید که حتی اگه ۲تا Object مقادیر کاملا یکسانی داشته باشن، این ۲تا Object با هم برابر نیستن. در کل همیشه مقایسه بین Object ها در جاوا اسکریپت مقدار false برگشت داده میشه.var x = new String(&amp;quotMEGA JS&amp;quot);
var y = new String(&amp;quotMEGA JS&amp;quot);
var z = (x == y);
// (x == y) is false because x and y are different objectsمنبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوا اسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوا اسکریپت به زبان فارسی است. که از صفر تا فول استک جاوا اسکریپت همراه شماست. https://megajs.com/learn-javascript/strings-in-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Sat, 11 Jul 2020 13:40:37 +0430</pubDate>
            </item>
                    <item>
                <title>اعداد در جاوا اسکریپت (Numbers) - قسمت ۷</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%A7%D8%B9%D8%AF%D8%A7%D8%AF-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-numbers-%D9%82%D8%B3%D9%85%D8%AA-%DB%B7-nsg29tl0rnh0</link>
                <description> https://www.aparat.com/v/YbmcE آموزش رایگان جاوا اسکریپتاعداد یا Numbers یکی از انواع داده ای بود که در جلسه ششم از دوره مقدماتی جاوا اسکریپت راجع به آن صحبت کردیم. در برنامه نویسی و به خصوص زبان برنامه نویسی جاوا اسکریپت اعداد نقش مهمی دارند و علاوه بر کاربردی که در ریاضیات دارند، متد های زیادی برای کار با اعداد در جاوا اسکریپت وجود دارد.اعداد در جاوا اسکریپت (NUMBERS)اعداد در جاوا اسکریپت فقط یک نوع هستش و همان طور که در جلسه انواع داده گفتیم اعداد به دو شکل Integer و Float در متغیر قرار میگیرد. به اعداد صحیح integer و به اعداد اعشار float می گوین تعریف کرد. البته اعداد خیلی بزرگ یا خیلی کوچک را با نماد علمی (e) هم نشان میدهیم.  اعداد در جاوا اسکریپت همیشه ۶۴بیت از حافظه را اشغال میکنند. اعداد تا ۱۵ رقم صحیح و ۱۷ رقم اعشار قابل تعریف و نمایش در جاوا اسکریپت هستند.قسمت قبل: انواع داده در جاوا اسکریپتاعداد در جاوا اسکریپتجمع عدد و رشته چی میشه؟یکی از عملگرهایی که در جلسه پنجم یاد گرفتیم، عملگر (+) (Plus) بود که کار جمع اعداد را انجام میداد. اما زمانی که یک عدد با یک رشته را جمع کنیم چه میشود؟؟؟ بیاید تست کنیم.var a = 10; // Number
var b = &amp;quotMEGAJS&quot; // String
var z = a + b; // typeof Z is String
// output: &amp;quot10MEGAJS&amp;quotبله! همونطور که دیدید ما تونستیم یک عدد را با یک کلمه جمع کنیم!!! و خروجی به این صورته که عدد و رشته را به صورت یک رشته کنار هم قرار میدهد.رشته های عددی در جاوا اسکریپترشته ها (Strings) در جاوا اسکریپت میتواند شامل اعداد باشد و به رشته هایی که داخل آن فقط عدد باشد، رشته عددی میگویند. به مثال توجه کنید:var x = 125; // Number
var x = &amp;quot125&quot; // Stringجلسه بعد:  رشته ها در جاوا اسکریپتNAN یا Not a Number چیست؟NaN یکی از کلمات رزرو شده جاوا اسکریپت است و زمانی که شما یک عملیات ریاضی مثل ضرب و تقسیم (به جز جمع) بین دو متغیر که یکی عدد است اما دیگری عدد نیست انجام دهید و از متغیر نهایی typeof بگیرید با عبارت NaN روبه رو میشوید.Var x = 100; // Number
var y = &amp;quotMegajs&quot; // String
var z = x / y; // NaN (Not a Number)نکته: اگر رشته مورد نظر از نوع رشته عددی باشد، همه چیز درست کار میکند.Var x = 200; // Number
 var y = &amp;quot5&quot; // String 
var z = x / y; // Number 
// output: 40حالت بی نهایت در جاوا اسکریپتبی نهایت یا infinity زمانی رخ میدهد که یک عمل مانند تقسیم عددی بر صفر صورت بگیره یا جواب نهایی خیلی خیلی بزرگ باشه. البته شما میتونید که از خود کلمه infinity در جاوا اسکریپت استفاده کنید، مثبت بی نهایت (infinity) و منفی بی نهایت (infinity-)مثلا در پیاده سازی عبارات شرطی بسیار کاربرد دارد.var x = 2 / 0; // x will be Infinity
var y = -2 / 0; // y will be Infinityمتدهای اعداد در جاوا اسکریپت (NUMBERS METHODS)متدهای عددی در جاوا اسکریپت به ما کمک میکنند تا کارایی بیشتر و بهتری با اعداد داشته باشیم. با استفاده از متد اعداد در جاوا اسکریپت شما میتونید حتی اعداد ساده با مقادیر ابتدایی مثل: x=2019 را به Object تبدیل کنیدو از خواص و متدهای مختلف استفاده کنید تا به هدف مورد نظر برسید.متد تبدیل عدد به رشته در جاوا اسکریپتمتد ()toStringبا متد ()toString همین طور که از اسمش معلومه اعداد را به رشته تبدیل میکنه. این متد برای تمام اعداد کار میکنه.var x = 2019; // Number output: 2019
x.toString(); // String output: &amp;quot2019&amp;quot
(2019).toString() // String output: &amp;quot2019&amp;quot
(2019+1).toString() // String output: &amp;quot2020&amp;quotمتد اعداد اعشاری در جاوا اسکریپتمتد ()toFixedمتد ()toFixed محدوده اعداد بعد از اعشار رو نشون میده. در واقع عددی که بین دو پرانتز بذاریم تعیین میکنه که تا چند رقم بعد اعشار اعداد را برای ما برگردونه (returns)var x = 2.951357;
x.toFixed(0); // returns 3
x.toFixed(2); // returns 2.95
x.toFixed(4); // returns 3.9513
x.toFixed(8); // returns 3.95135700از اعشار دو رقم برای قیمت محصول دلاری معمولا استفاده میشودمتد محدود کردن ارقام یک عدد در جاوا اسکریپتمتد ()toPrecisionمتد ()toPrecision محدوده کلی یک عدد را مشخص میکنه. تفاوتش با متد ()toFixed اینه که در متد ()toFixed تعداد رقم بعد از اعشار تعیین میشه اما در متد ()toPrecision تعداد کل ارقام یه عدد مشخص میشه.var x = 2.951357;
x.toPrecision();        // returns 2.951357
x.toPrecision(1);        // returns 3
x.toPrecision(4);        // returns 2.951
x.toPrecision(6);        // returns 2.95135متدهای تبدیل رشته به عددبرای تبدیل متغیرها به عدد در javascript سه متد داریم.متد ()Numberمتد ()Number برای تبدیل داده داخل پرانتز به عدد استفاده میشه.Number(true); // returns 1
Number(false); // returns 0
Number(&amp;quot2019&amp;quot); // returns 2019
Number(&amp;quot 2019&amp;quot); // returns 2019
Number(&amp;quot2019 &amp;quot); // returns 2019
Number(&amp;quot 2019 &amp;quot); // returns 2019
Number(&amp;quot20.19&amp;quot); // returns 20.19
Number(&amp;quot20,19&amp;quot); // returns NaN
Number(&amp;quot20 19&amp;quot); // returns NaN
Number(&amp;quotMegajs&amp;quot); // returns NaNاگر هنگام تبدیل متغیرها به عدد اگه مشکلی وجود داشته باشه (NaN (Not a Number برگشت داده میشهاگر اعداد با فاصله یا همون (Space) باشن هیچی برای ما برگشت داده نمیشه. اما اگر به عدد اول نیاز داشته باشیم باید از متد ()parseInt و ()parseّFloat استفاده کنیم.استفاده از متد ()Number برای تبدیل تاریخمیشه از متد ()Number برای تبدیل تاریخ هم استفاده کرد. هر تاریخی که داخل پرانتز قرار بگیره به صورت میلی ثانیه از تاریخ ۱-۱-۱۹۷۰ در نظر گرفته می شود که خیلی از جاها برای محاسبه کاربرد داره. مثال:Number(new Date(&amp;quot2017-09-30&amp;quot)); // returns 1506729600000متد ()parseIntتفاوت متد ()parsInt با ()Number در اینه که متغیر میتونه شامل فاصله (Space) باشه. و اگر عدد اعشاری باشه، فقط قسمت صحیح عدد را برامون بر میگردونه.parseInt(&amp;quot2019&amp;quot); // returns 2019
parseInt(&amp;quot20.19&amp;quot); // returns 20
parseInt(&amp;quot20 19 18&amp;quot); // returns 20
parseInt(&amp;quot20 years&amp;quot); // returns 20
parseInt(&amp;quotyears 20&amp;quot); // returns NaNاگر چند عدد با فاصله باشن فقط عدد اول را برای ما بر میگردونهمتد ()parseFloatمتد ()parseInt دقیقا مثل متد ()parseInt عمل میکنه؛ با این تفاوت که اگه عدد اعشاری باشه، قسمت اعشاری هم برای ما بر میگردونه.parseInt(&amp;quot2019&amp;quot); // returns 2019
parseInt(&amp;quot20.19&amp;quot); // returns 20.19
parseInt(&amp;quot20 19 18&amp;quot); // returns 20
parseInt(&amp;quot20 years&amp;quot); // returns 20
parseInt(&amp;quotyears 20&amp;quot); // returns NaN</description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Thu, 09 Jul 2020 19:39:46 +0430</pubDate>
            </item>
                    <item>
                <title>انواع داده در جاوا اسکریپت (Data Types) - قسمت ۶</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%A7%D9%86%D9%88%D8%A7%D8%B9-%D8%AF%D8%A7%D8%AF%D9%87-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-data-types-%D9%82%D8%B3%D9%85%D8%AA-%DB%B6-s4praxo1prlq</link>
                <description> https://www.aparat.com/v/HIjbh?playlist=252807 آموزش رایگان جاوااسکریپتداده ها مقادیری هستند که داخل یک متغیر میریزیم و انواع مختلفی دارند. هنگام تعریف متغیر در جاوااسکریپت نیاز به تعریف نوع داده نیست و این زبان قدرتمند به طور اتوماتیک متوجه نوع داده ورودی میشه. اما لازمه که به عنوان یه برنامه نویس انواع داده در جاوااسکریپت را بشناسید تا بتونید به خوبی و به وقتش از Data استفاده کنید.در جلسه چهارم آموزش رایگان جاوااسکریپت، متغیرها را یاد گرفتید. برای تعریف متغیرها در جاوااسکریپت از کلمه کلیدی Var استفاده میکنیم و بعد از تعریف یک متغیر میتونیم به اون یه مقدار (Value) بدیم. به مقادیری که به یک متغیر نسبت داده میشه داده (Data) میگویند. اما در جاوا اسکریپت نیازی نیست زمانی که متغیر ها را مقدار دهی میکنید، مشخص کنید که چه نوع داده ای را به متغیر نسیت دادید. اما لازمه تا بدونید از چه نوع داده ای میتونید برای مقدار دهی به متغیر ها استفاده کنید.جلسه چهارم: متغیرها در جاوااسکریپتانواع داده در جاوا اسکریپتتشخیص نوع داده در جاوااسکریپتبرای اینکه بفهمیم یک متغیر و داده (Data) نسبت داده شده به آن از چه نوعی است؛ میتوانیم از دستور typeof استفاده کنیم. کافیه جلوی دستور typeof اسم متغیر یا داده مد نظر را قرار دهیم و در خروجی ببینیم که داده ما از چه نوع است.typeof 6         //returns Number
typeof &amp;quotMEGA JS&amp;quot //returns String
var x;
x = 15;
typeof x         //returns Number
x = &amp;quotLearn JS&amp;quot
typeof x         //returns Stringمتغیرها چه مقادیری را قبول میکنند؟متغیرها در جاوااسکریپت مقادیر مختلفی را قبول میکنند، از جمله داده های مورد قبول میتوان به اعداد (Numbers) ، رشته ها (Strings) ، اشیا (Objects) ، آرایه ها (Arrays) و Booleans که در این مطلب همه آن ها بررسی میشن.داده ها (DATA) در جاوا اسکریپتیکی از مزایای زبان جاوااسکریپت اینه که نیازی نیست هنگام تعریف متغیر و مقداردهی به متغیر مشخص کنید که نوع داده اختصاص شده از چه نوعی است. در واقع این عمل به صورت داینامیک صورت میگیره. با یه مثال این مورد را واضح تر توضیح میدم:var x;          // Now X is undefined
x = &amp;quotMEGA JS&quot;  // Now X is a String
x = 11;         // Now X is a Numberهمان طور که در قطعه کد بالا مشخصه، در خط اول X تعریف شده اما چون هیچ مقداری ندارد undefined (تعریف نشده) است اما در خط بعدی بعد از نسبت دادن کاراکتر (کلمه) به X حالا متغیر X از نوع String (رشته) شده است. در خط سوم عدد ۱۱ را به X نسبت دادیم و نوع داده داخل X به عدد (Number) تغییر پیدا کرد.انواع داده: رشته (STRING)رشته (String) یا متن (Text) به دنباله ای از کاراکتر ها و حروف گفته میشه. در کل هر چیزی که میخوایم مثل یک متن یا جمله نمایش داده بشه باید بین دو تا کوتیشن (Single quotes) (‘ ‘) یا دبل کوتیشن (Double quotes) (” “) نوشته شود. مثل:var firstName = &amp;quotMohammad reza&quot; // Using double quotes
var lastName = &#039;Haji maghsoodi&#039;; // Using single quotesدبل کوتیشن و سینگل کوتیشن تفاوتی با هم ندارند و زمانی که شما از هر دو متغیر Typeof بگیرید با نتیجه زیر روبرو میشوید.typeof firstName // String
typeof lastName // Stringو تنها زمانی که میخواید در متون و جمله های انگلیسی از کوتیشن (Single quotes) استفاده کنید میتونید همزمان از ” ” , ‘ ‘ استفاده کنید. مثل:var Sentence= &amp;quotIt&#039;s alright&quot; // Single quote inside double quotesبیشتر بخوانید: رشته ها در جاوااسکریپتانواع داده: عدد (NUMBER)اعداد به دو شکل Integer و Float در متغیر قرار میگیرد. به اعداد صحیح integer و به اعداد اعشار float می گویند. هنگامی که در یک متغیر قصد داریم اعداد را قرار دهیم، مقادیر را بین کوتیشن قرار نمی دهیم و مانند نمونه ی پایین عمل می کنیم.نکته: اگر اعداد را بین کوتیشین بنویسیم یک رشته یا String حساب میشوند.Var a = 15;
typeof a; // Number
Var b = 18.9;
typeof b; // Number
var c = &amp;quot11&quot;
typeof c; // Stringدر زبان هایی که نوع متغیر باید مشخص شود؛ اگر متغیری از نوع int ایجاد کنیم و مقدار اعشاری در آن قرار دهیم، بخش اعشاری آن عدد حذف میشود و تنها بخش صحیح عدد ذخیره میشود. در توابعی در جاوا اسکریپت هم که در آینده بیشتر با آنها آشنا میشویم این موضوع را بیشتر توضیح خواهیم داد.جلسه هفتم: اعداد در جاوااسکریپتانواع داده: آرایه (ARRAY)در همه ی زبان های برنامه نویسی گاهی اوقات لازم است تا تعدادی داده را در یک متغیر قرار بدهیم در این صورت از آرایه ها (لیست) استفاده میکنیم. تعریف یک آرایه مانند متغیر هاست و هر آرایه دارای یک نام است. مقادیری که میخواهیم در این آرایه قرار بدهیم را بین براکت های باز و بسته [ ] قرار میدهیم. به هر یک از مقادیر که در آرایه قرار میگیرند یک اندیس از آن آرایه میگویند. هر اندیس را با علامت  , از اندیس دیگر جدا میکنیم.در زیر نمونه ای از یک آرایه را میتوانید مشاهده کنید:Var array= [“megajs” , ۱۵ , “javascript”];برای اینکه به هر یک از اندیس های این آرایه دسترسی داشته باشیم، از شماره اندیس ها استفاده میکنیم. شماره اندیس های هر آرایه به این صورت است که ابتدا نام ارایه را نوشته و جلوی آن شماره اندیس آرایه را قرار میدهیم.توجه کنید که شماره ی اندیس هر آرایه از صفر شروع می شود، یعنی اندیس صفرم آرایه ی بالا  “megajs” است.جلسه دهم: آرایه ها در جاوااسکریپتانواع داده: بولین (BOOLEAN)بولین یا منطقی نوعی دیتا است که تنها دو مقدار true و false را میتواند در خود قرار دهد.در زیر نمونه ای از این نوع داده را تعریف کرده ایم.Var a = true;
Var b = false;اگر ما بخواهیم مقادیر این دو را چاپ کینم، true به ما عدد یک را برمیگرداند و false برای ما خروجی نخواهد داشت.انواع داده: شیء (OBJECT)ابجکت ها (Objects) در جاوااسکریپت مانند آرایه ها چندید مقدار را در خود ذخیره میکنند اما با این تفاوت که در Object ها میتوان برای هر اندیس یک key تعریف کنیم. برای تعریف آرایه از براکت های باز و بسته استفاده میکردیم ولی در تعریف Object از آکولاد { } استفاده می کنیم. مثال زیر یک آبجکت است که اطلاعات یک کاربر در آن قرار گرفته است:Var user={
name=”Mohammad reza” ,
lastname=”Haji maghsoodi”,
phoneNumbers= [09120000000, 09020000000]
}جلسه سیزدهم: اشیا در جاوااسکریپتسایر داده ها در جاوا اسکریپتتفاوت Null و Undefinedزمانی که بخواهیم یک متغیر تعریف کنیم و در آن متغیر مقداری قرار ندهیم از مقدار null استفاده میکنیم. اما اگر یک متغیری را فراخوانی کنیم که از قبل وجود نداشته است، کنسول به ما مقدار undefined را بر میگرداند.منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/data-types-in-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Wed, 08 Jul 2020 18:08:10 +0430</pubDate>
            </item>
                    <item>
                <title>عملگرها در جاوا اسکریپت (Operators) - قسمت ۵</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%B9%D9%85%D9%84%DA%AF%D8%B1%D9%87%D8%A7-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-operators-%D9%82%D8%B3%D9%85%D8%AA-%DB%B5-zy8bm6w9dwyf</link>
                <description> https://www.aparat.com/v/EZQzb?playlist=252807 آموزش رایگان جاوا اسکریپتعملگر ها (Operators) در زبان جاوا اسکریپت و اکثر زبان های برنامه نویسی دیگر به یک شکل عمل میکنند و بسیار به یکدیگر شباهت دارند. معمولا از عملگرها برای اختصاص دادن مقدار به یک متغیر استفاده میشود. اما عملگرها در جاوا اسکریپت کاربردهای زیادی دارند که با هم بررسی میکنیم. مثل عملگرهای ریاضی، عملگرهای منطقی، عملگرهای حسابی و…عملگرها در جاوا اسکریپتدوره مرتبط: آموزش کامل عملگرها در جاوا اسکریپتبیشتر از ۱ ساعت آموزش تخصصی عملگرها به همراه کلی مثال کاربردی برای یادگیری عمیق جاوا اسکریپتعملگر های حسابی (ARITHMETIC) در جاوا اسکریپتعملگرهای ریاضی در جاوا اسکریپت همان عملیات های ریاضی است که در دوران ابتدایی طول تحصیل با آنها کار کرده ایم. جمع – تفریق – ضرب و تقسیم.علامت ( = ) در زبان جاوا اسکریپت به معنای انتساب یک مقدار است و شرط تساوی را برای ما چک نمیکند.Var a = 10;
Var b = 8;
c = a + b;
// c = 18

c = a - b;
// c = 2

c = a * b;
// c = 80

c = a / b;
// c = 1.25عملگر درصد % باقی مانده ی تقسیم را به ما برمیگرداند. در مثال بالا a%b به ما مقدار ۲ را برخواهد گرداند.قسمت قبل: متغیرها در جاوا اسکریپتعملگر های انتسابی (ASSIGNMENT) در جاوااسکریپتعملگر های انتسابی در جاوا اسکریپت مقادیر اولیه ای که به یک متغیر انتساب کرده ایم را برای ما به راحتی تغییر میدهند.=+ : متغیر سمت چپ را با متغیر سمت راست جمع میکند و حاصل را در متغیر سمت چپ قرار میدهد. به عنوان مثالx += y برابر با x= x+y است.=- : متغیر سمت چپ را از متغیر سمت راست کم میکند و حاصل را در متغیر سمت چپ قرار میدهد. به عنوان مثال x -= y برابر با x = x-y است.=* : متغیر سمت چپ را در متغیر سمت راست ضرب میکند و حاصل را در متغیر سمت چپ قرار میدهد. به عنوان مثال x *= y برابر با x = x*y است.=/ : متغیر سمت چپ تقسیم بر متغیر سمت چپ میکند و حاصل را در متغیر سمت چپ قرار میدهد. به عنوان مثال x /= y برابر با x = x/y است.var x = 10;
var y = 5;

x += y OR x = x+y;
// x=15

x -= y OR x = x-y;
// x=5

x *= y OR x = x*y;
// x=50

x /= y OR x = x/y;
// x=2;عملگر های مقایسه ای (COMPARISON) در جاوا اسکریپتعملگرهای مقایسه ای در جاوا اسکریپت برای بررسی برابری مقادیر دو متغیر یا بررسی بزرگتر و کوچکتر بودن دو متغیر استفاده میشوند.عملگرهای مقایسه ای در عبارت های شرطی مثل if کاربرد زیادی دارند.== : بررسی میکند که دو طرف معادله از لحاظ مقداری برابر هستند یا نه؛ اگر برابر باشند مقدار (True) در غیر این صورت مقدار (False) برمیگرداند.=== : بررسی میکند که دو طرف معادله هم از لحاظ مقداری هم از لحاظ نوع داده برابر هستند یا نه؛ اگر برابر باشند مقدار (True) در غیر این صورت مقدار (False) برمیگرداند.=! : بررسی میکند که دو طرف معادله از لحاظ مقداری برابر هستند یا نه؛ اگر برابر باشند مقدار (False) در غیر این صورت مقدار (True) برمیگرداند.==! : بررسی میکند که دو طرف معادله هم از لحاظ مقداری هم از لحاظ نوع داده برابر هستند یا نه؛ اگر برابر باشند مقدار (False) در غیر این صورت مقدار (True) برمیگرداند.&gt; : اگر مقدار سمت چپ معادله کوچکتر از سمت راست باشد؛ مقدار (True) و در غیر این صورت مقدار (False) برمیگردد.&lt; : اگر مقدار سمت چپ معادله بزرگتر از سمت راست باشد؛ مقدار (True) و در غیر این صورت مقدار (False) برمیگردد.=&lt; : اگر مقدار سمت چپ معادله بزرگتر یا مساوی با سمت راست باشد؛ مقدار (True) و در غیر این صورت مقدار (False) برمیگردد.=&gt; : اگر مقدار سمت چپ معادله کوچکتر یا مساوی با سمت راست باشد؛ مقدار (True) و در غیر این صورت مقدار (False) برمیگردد.var x = 10;
var y = 20;
var c = 20;

x == y; // False
y == c; // True

x === y; // False
y === c; // True

x != y; // True
y != c; // False

x !== y; // False
y !== c; // False

x &gt; y; // False
x &lt; y; //True

x &lt;= y; // True y &gt;= c; // TrueTrue و False چیست؟True : درستی یا صحیح بودن یک عبارت را مشخص میکند و در برنامه نویسی با (True) یا (۱) نشان داده میشود.False : نادرستی یا غلط بودن یک عبارت را مشخص میکند و در برنامه نویسی با (False) یا (۰) نشان داده میشود.عملگر های منطقی (LOGICAL)  در جاوا اسکریپتعملگرهای منطقی در جاوا اسکریپت زمانی استفاده میشوند که ما بخوایم دو عبارت را در یک معادله مقایسه کنیم.&amp;&amp; : فقط و فقط دز صورتی مقدار (True) برگشت داده میشه که هر دو شرط در دو طرف عملگر درست باشد.|| : دز صورتی مقدار (True) برگشت داده میشه که یکی از دو شرط یا هر دو شرط در دو طرف عملگر درست باشدvar x = 30;
var y = 10;
var z = 5;

x &gt; y &amp;&amp; y &gt; z ;
// x &gt; y True
// y &gt; z True
// True

x &gt; y &amp;&amp; y &lt; z ;
// x &gt; y True
// y &lt; z False
// False


x &gt; y || y &gt; z ;
// x &gt; y True
// y &gt; z True
// True

x &gt; y || y &lt; z ;
// x &gt; y True
// y &lt; z False
// Trueعملگر های مقایسه ای و منطقی برای بررسی درستی یا نادرستی یک عبارت یا معادله استفاده میشود.در جلسه بعد درباره Data Types صحبت میکنیم.منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/operators-in-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Tue, 07 Jul 2020 17:58:38 +0430</pubDate>
            </item>
                    <item>
                <title>متغیرها در جاوااسکریپت (Variables) - قسمت ۴</title>
                <link>https://virgool.io/@hajimaghsoodi/%D9%85%D8%AA%D8%BA%DB%8C%D8%B1%D9%87%D8%A7-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-variables-%D9%82%D8%B3%D9%85%D8%AA-%DB%B4-revquzssnkcc</link>
                <description> https://www.aparat.com/v/wNqP1?playlist=252807 آموزش رایگان جاوااسکریپتتعریف متغیر رکن اصلی همه زبان های برنامه نویسی است و زبان برنامه نویسی جاوااسکریپت هم از این قاعده مستثنا نیست و مانند همه زبان های برنامه نویسی دیگر قابلت تعریف متغیر و دسترسی به حافظه را دارد. متغییر های جاوا اسکریپت خونه هایی از حافظه هستن که دستورات یا مقادیر مد نظر را ذخیره میکنن و هر زمان که نیاز به اجرای دستورات داشتیم، دیگه نیاز نیست از اول بنویسیم؛ فقط کافیه اسم متغیر آورده بشه تا به مقادیر داخلش دسترسی داشته باشیممتغیر چیست؟متغیر (Variable)  یک بخش از حافظه است که یک اسم برای آن در نظر میگیریم و اطلاعاتی را در آن بخش از حافظه قرار می دهیم. برای دسترسی به اطلاعات قرار گرفته در آن بخش از حافظه، تنها کافی است تا نام آن بخش از حافظه (نام متغیر) را فراخوانی کنیم. برای اختصاص دادن مقدار به متغیر از علامت مساوی ( = ) استفاده میکنیم.از متغیر ها برای ذخیره سازی مقادیر و داده استفاده میشود.روش تعریف متغیر در جاوا اسکریپتبرای تعریف یک متغیر در جاوا اسکریپت از یکی از کلمات Var , Let , Const استفاده میکنیم. بعد از آوردن کلمه ی کلیدی Var یا Let یا Const ما یک از بخش از حافظه را انتخاب کرده ایم. حالا باید یک نام برای این بخش از حافظه تنظیم کنیم. در نامگذاری متغیر ها در جاوا اسکریپت باید به نکات زیر توجه کنیم:نام متغیر ها تنها میتواند شامل حروف انگلیسی، اعداد انگلیسی، آندر اسکور (under score) و علامت $ باشد.نام متغیر ها در جاوا اسکریپت نباید با کارکتری بجز حروف انگلیسی شروع شود.نام متغیر ها در جاوااسکریپت میتواند با علامت های $ و _ شروع شوند، اما معمولا استفاده نمی شوند.در تعریف نام متغیر ها، زبان جاوا اسکریپت بر روی بزرگ و کوچک بودن حروف حساس است. به عنوان مثال G با g دو متغیر کاملا متفاوت هستند.در تعریف نام متغیر ها نمیتوان از کلمات کلیدی زبان جاوا اسکریپت استفاده کرد.همانطور که در بالا گفته شد برای تعریف متغیرها در جاوااسکریپت از کلمات کلیدی Var , Const , Let استفاده میشود. در ادامه به این موضوع میپردازیم که تفاوت این ۳ کلمه برای تعریف متغیر چیست؟ و از هر کدام در کجا استفاده میشود.انوع روش تعریف متغیرتعریف متغیر با Varکلمه کلیدی Var از زمان ابداع جاوا اسکریپت تا به امروز برای تعریف متغیر در جاوا اسکریپت استفاده میشده. اما به دلیل مشکلاتی که در محدوده متغیر ها ایجاد میکرد، از سال ۲۰۱۵ با اومدن اکما اسکریپت ۶ یا ES6 کلمه کلیدی Var منسوخ (deprecated) شده و کاربرد زیادی در برنامه های امروزی ندارد. درفریم ورک های محبوب مثل Angular , Vuejs و .. کلمه کلیدی Let جایگزین Var شده است.Var در ورژن های جدید منسوخ شده است اما به این معنی نیست که ما از Var استفاده نمیکنیمvar grade;
grade = 20;همچنین میتوانید در یک دستور هم متغیر را تعریف کنید، هم به آن مقدار اختصاص دهید.var grade = 20;توجه داشته باشید که برای تعریف متغیر از نوع رشته (یا همون کلمه) باید متن مورد نظر را بین ” ” یا ‘ ‘ قرار دهیم.// string
var name = &amp;quotmegajs.com&quot;
// OR
var name = &#039;megajs.com&#039;;یک نکته در دستورات بالا که باید به آن دقت کرد علامت ; در پایان هر دستور است. در زبان جاوا اسکریپت لازم است که در انتهای هر دستور این علامت را قرار دهیم. در صورت درج نکردن ; در انتهای دستورات جاوا اسکریپت، کنسول مرورگر به ما پیغام خطا نشان خواهد داد. البته مرورگر های امروزی و جدید و کد ادیتورهای پیشرفته ارور نمیدن، در واقع به صورت اتوماتیک هر خط از کدهای شما را یک دستور جدا در نظر میگیرند؛ اما برای استاندارد نویسی لازم است که انتهای هر دستور یک ; قرار دهید.در ادامه این دوره برای تعریف یک متغیر از کلمه Var استفاده میکنیمبعد از یادگیری توابع و حلقه ها و دستورات شرطی در یک مطلب جداگانه به محدوده متغیر ها (Variable Scope) میپردازیم و آنجا متوجه میشوید که ضعف Var در چیست و چرا Let و Const جایگزین شدند.متغیر ها و مطالبی که در بالا گفته شد، همگی به صورت مطالبی هستند که به خاطر سپردن آنها شاید کار درستی نباشد و باید حین برنامه نویسی با جاوا اسکریپت تمامی روش های استفاده از آنها را یاد بگیرید. در روزهای بعدی از متغیر ها بیشتر استفاده خواهیم کرد.منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/variable-in-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Tue, 07 Jul 2020 17:53:47 +0430</pubDate>
            </item>
                    <item>
                <title>3) اهمیت کامنت گذاری در جاوااسکریپت - قسمت سوم</title>
                <link>https://virgool.io/@hajimaghsoodi/3-%D8%A7%D9%87%D9%85%DB%8C%D8%AA-%DA%A9%D8%A7%D9%85%D9%86%D8%AA-%DA%AF%D8%B0%D8%A7%D8%B1%DB%8C-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D9%82%D8%B3%D9%85%D8%AA-%D8%B3%D9%88%D9%85-b5wg9io9lvzi</link>
                <description> https://www.aparat.com/v/PWXk4 آموزش رایگان جاوااسکریپتکامنت گذاری هنگام کد نویسی یکی از مواردی است که هر برنامه نویس حرفه ای باید رعایت کنه. مخصوصا توابع و Fuction های پیچیده ای که در برنامه وجود دارد نیاز به کامنت دارند؛ چون ممکنه نفری بعدی که سراغ کدهای شما میاد چیزی سر در نیاره از تابع شما و حسابی گیج بشه. پس برادرم کامنت گذاشتن فقط برای ایسنتاگرام نیست. تو کدنویسی هم کامنت بذار!کامنت گذاری در جاوااسکریپتاول بهتر است تا ببینیم که کامنت چیه؟هنگامی که ما در حال کد نویسی بر روی یک پروژه هستیم ممکن است که بخواهیم نوشته یا قطعه کدی را در برنامه به عنوان توضیحات قرار دهیم تا خوانایی کد های ما بالاتر برود و اگر پس از مدتی دوباره سمت آن کد رفتیم، توضیحاتی در مورد کارهای صورت گرفته در هر بخش از پروژه در آن باشد. به بیانی دیگر، کامنت نوشته ای است که توسط کامپایلر یا مفسر نادیده گرفته میشود و پردازش نمی شود.کامنت گذاری در جاوا اسکریپت به دو صورت انجام می شود:کامنت گذاشتن تک خطیکامنت گذاشتن چند خطیکامنت تک خطی در جاوااسکریپتبرای اینکه فقط یک خط از کد هایمان را کامنت کنیم تا پردازش نشود از // استفاده میکنیم. در زیر مثالی از یک کامنت تک خطی در جاوا اسکریپت را میتوانید مشاهده کنید:// Declare x, give it the value of 5
var x = 5;کامنت چند خطی در جاوااسکریپتاین نوع کامنت زمانی کاربرد دارد که بخواهیم چندید خط از کدهایمان را کامنت کنیم. این کار به این صورت انجاو میشود که خطوط کدمان را بین /* */ قرار میدهیم. در زیز نمونه ای از کامنت چند خطی را در جاوا اسکریپت میتوانید مشاهده کنید:/*
Multi line comment
U can see here
Megajs.com
Declare x, give it the value of 5
*/
var x = 5;مزایای کامنت گذاشتندرج کامنت در کدهای پروژه، کاری است که خواندن دوباره یا تغییر کدهایمان را تا حد زیادی آسان میکند. کامنت گذاشتن در کد، زمانی که به صورت تیمی بر روی یک پروژه فعالیت میکنیم، ضروری است. درج کامنت را در کدهایتان جدی بگیرید تا کد های شما استاندارد باشد؛ مخصوصا کامنت گذاری در کدهای جاوا اسکریپت.منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/comment-in-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Tue, 07 Jul 2020 17:44:18 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش بارگذاری جاوااسکریپت روی قالب سایت - قسمت دوم</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A8%D8%A7%D8%B1%DA%AF%D8%B0%D8%A7%D8%B1%DB%8C-%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D8%B1%D9%88%DB%8C-%D9%82%D8%A7%D9%84%D8%A8-%D8%B3%D8%A7%DB%8C%D8%AA-%D9%82%D8%B3%D9%85%D8%AA-%D8%AF%D9%88%D9%85-zxks1vamkd7w</link>
                <description> https://www.aparat.com/v/FjdgL آموزش رایگان جاوااسکریپتقبل از شروع کد نویسی و بارگذاری جاوااسکریپت روی قالب سایت ما نیاز به یک محیط کد نویسی یا editor داریم.دوره رایگان جاوااسکریپتنصب محیط کد نویسی جاوااسکریپتشمایی که الان دارید در این دوره شرکت میکنید حتما با HTML کار کردید. پس قطعا کدهای html خودتون رو داخل یه Editor نوشتید مثل VS Code, Sublime Text, Atom, PHP Storm, Web Storm  یا هر editor دیگه ای که کار میکنید فرق نمیکنه. پیشنهاد من VS Code و تو این دوره از همین ویرایشگر استفاده میکنیم، به سه دلیل اصلی:VS Code رایگان!VS Code سبک و کم حجمVS Code مناسب کد نویسی با جاوااسکریپتپس vscode برای همه قابل دسترس و رو همه سیستم ها حتی سیستم های ضعیف از نظر سخت افزاری قابل اجراس و همه دوستان در این دوره میتونند استفاده کنند. خب برای شروع به نصب چند تا افزونه یا Extension روی VS Code نیاز داریم کافیه اسم افزونه های زیر رو داخل قسمت Extension نرم افزار VS Code سرچ و نصب کنید:One Dark ProMaterial ThemeLive ServerJavaScript SinppetsBracket Pair ColorsBeautifyAuto Close TagAuto Rename TagPrettierEmmetنصب جاوااسکریپتبرای اجرا کردن دستورات جاوا اسکریپت در سایت نیاز به بارگذاری جاوا اسکریپت روی قالب سایت داریم. در واقع با استفاده از تگ Script فایل با فرمت js. (فرمت مخصوص جاوا اسکریپت) فراخونی میشه و دستورات جاوااسکریپت اجرا میشه. که این فراخونی فایل به دو صورت Internal و External انجام میشه.پس از ایجاد پروژه خودمان نوبت به این میرسد که کد نویسی با زبان جاوا اسکریپت را آغاز کنیم. کدنویسی و ساخت برنامه با زبان جاوا اسکریپت نیازمند کامپایلر یا تنظیمات خاص و پیچیده ندارد و تنها در سند html خود باید از تگ اسکریپت (script) استفاده کنیم. استفاده از این تگ به دو روش استفاده میشود که در ادامه به یادگیری هر دو روش میپردازیم.اینترنال جاوا اسکریپتاکسترنال جاوا اسکریپتجاوااسکریپت داخلی (INTERNAL)در این روش ما تگ اسکریپت را باز میکنیم و به روشی که در کد، پایین تر آمده است کد های جاوا اسکریپت خودمان را مینویسیم. در نسخه های قدیمی تر جاوا اسکریپت لازم بود تا ما توسط خصیصه ی type نوع اسکریپت خودمان را مشخص کنیم و ممکن است در برخی منابع به این شکل تگ script را دیده باشید. برای مشخص کردن نوع کد که جاوا اسکریپت است باید این attribute را در تگ اسکریپت به صورت زیر قرار داد؛ اما با بروز رسانی های به وجود آمده دیگر نیازی به وارد کردن این attribute نداریم.&lt;&amp;quotscript&amp;quot&gt;
document.getElementById(&amp;quotdemo&amp;quot) = &amp;quotMEGAJS.com&quot;
&lt;&amp;quot/script&amp;quot&gt;جاوااسکریپت خارجی (EXTERNAL)در روش اکسترنال ما یک سند جاوا اسکریپت ایجاد میکنیم. پسوند فایل های جاوا اسکریپ js است. در این روش ما کد ها و دستورات جاوااسکریپت خودمان را در فایل جدا گانه ای که پسوند js دارد مینویسیم و در فایل html خود فراخوانی میکنیم. فراخوانی فایل های جاوا اسکریپت خارجی به این صورت شکل میگیرد که تگ اسکریپت را وارد میکنیم و به آن attribute سورس src را اختصاص میدهیم. سپس آدرس فایل جاوا اسکریپت را در بخش src وارد میکنیم.&lt;&amp;quotscript&amp;quot src=&amp;quot./assets/app.js&gt; &lt;&amp;quot/script&amp;quot&gt;منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/run-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Sun, 28 Jun 2020 15:36:20 +0430</pubDate>
            </item>
                    <item>
                <title>جاوااسکریپت چیست ؟ | آموزش جاوااسکریپت قسمت اول</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%DA%86%DB%8C%D8%B3%D8%AA-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D9%82%D8%B3%D9%85%D8%AA-%D8%A7%D9%88%D9%84-tnnurckogvo1</link>
                <description> https://www.aparat.com/v/eGBpr آموزش رایگان جاوااسکریپتجاوااسکریپت (JavaScript) محبوب ترین و پرکاربرد ترین زبان برنامه نویسی در جهان است!!! طبق آمار دو سایت معروف Github و StackOverFlow جاوا اسکریپت ششمین سال متوالی است که رتبه اول را بین زبان های برنامه نویسی دیگه کسب مبکنه و خیلی سریع تر از زبان های دیگه در حال رشده. چون دیگه جاوا اسکریپت فقط یه زبان ساده Client-Side نیست که برای پویا سازی صفحات وب استفاده بشه؛ نکته جالب اینه که شما با جاوااسکریپت میتونید اپلیکیشن موبایل و دسکتاپ و حتی بازی تحت وب ایجاد کنید. پس این زبان قدرتمند را دست کم نگیرید! چرا که جاوا اسکریپت همه کارس!جاوااسکریپت چیست؟داستان تولد جاوا اسکریپتسال های اول پیدایش صفحات وب و زبان HMTL توسط Tim Berners-Lee داکیومنت ها و صفحات وبسایت ها فقط از تگ های html پشتیبانی میکرد، بعدها CSS اضافه شد و رنگ و لعابی به سایت ها اضافه شد، اما از اونجایی که html و css زبان برنامه نویسی نبودن! قابلیت برخی عملیات محاسبه ای و … رو نداشتن، و زبان های برنامه نویسی همه سمت سرور پردازش میشدن و صفحات داخل مرورگر کاربران زیاد جذاب نبود و به اصطلاح پویا نبود. اما جناب Brendan Eich دست به کار شد و یک زبان اسکریپتی که قابلیت های زبان های برنامه نویسی را داشته باشه اما داخل مرورگر پردازش بشه و Client-side باشه. با اضافه شدن جاوااسکریپت به وب اتفاقات جالبی افتاد و صفحات وبسایت ها جذاب تر از قبل شد.جاوااسکریپت چیست؟جاوااسکریپت تنها زبان برنامه نویسی Client-side یا سمت کاربر است که از سال 1995 تا الان خیلی تغییر کرده و حتی به سمت سرور هم کشیده شده؛ اما از جاوااسکریپت به عنوان یک زبان front-end نام برده میشد تا سال 2009 که با معرفی nodejs، جاوااسکریپت وارد دنیای سرورساید شد. و کم کم با پیدایش فریمورک هایی مثل Angular و React و Vue جاوااسکریپت دچار تحولات زیادی شد. و وبسایت ها و اپلیکیشن های مدرن امروزی همگی حداقل یکی از فریمورک ها و کتابخانه های جاوااسکریپت استفاده میکنند. پس به هر برنامه نویسی واجب است که جاوااسکریپت یاد بگیره!حتما باید جاوااسکریپت یاد بگیریم؟بله، اگر میخواهید وارد دنیای برنامه نویسی وب شوید لازمه که حتما جاوااسکریپت یاد بگیرید و اگر میخواهید برنامه نویس Front-end باشید باید خیلی عمیق تر و بهتر با جاوا اسکریپت کار کنید و فریمورک ها و کتابخانه های جاوااسکریپت هم یاد بگیرید. خلاصه که جاوااسکریپت یکی از تکنولوژی های ضروری توسعه وبسایت محسوب میشود؛ یه جورایی مثل HTML لازمه ی طراحی صفحات وبسایت است. البته جاوااسکریپت فقط به دنیای وب محدود نمیشه و برای ساخت اپلیکیشن های Android و ios و Desktop هم حرفی برای گفتن داره که در مراحل بعدی باید با فریمورک React و React native آشنا باشید تا بتونید اپلیکیشن های موبایلی خودتونو توسعه بدید.با جاوا اسکریپت چه کارهایی میشه انجام داد؟از سال ۱۹۹5 که جاوا اسکریپت معرفی شد، جاوا اسکریپت فقط در مرورگر برای ایجاد صفحات تعاملی وب بود. خوشبختانه با توسعه جاوا اسکریپت در سمت سرور که از سال ۲۰۰۹ زبان Nodejs معرفی شد؛ شما میتونید کدهای سرور ساید خودتون رو با nodejs توسعه بدبد که سینتکس و گرامر آن بر اساس زبان جاوا اسکریپت است؛ nodejs به دلیل سرعت پردازش بالا، Real time بودن و دیتابیس noSQL به نام MongoDB که دسترسی و سرعت خواندن اطلاعاتش بسیار بیشتر از MySQL نزد برنامه نویسان و توسعه دهنده ها بسیار محبوب شد. و با معرفی زبان React native تقریبا انقلابی ایجاد کرد!!! چون شما تنها با یادگیری جاوا اسکریپت میتونید حتی اپلیکیشن موبایل هم بنویسید.!!! درسته، با یکبار نوشتن کد اپلیکیشن همزمان ۲ خروجی Android و ios بگیرید و علاوه بر افزایش سرعت و صرفه جویی در زمان از زبان جاوا اسکریپت لذت ببرید.نکته آخرو اینجوری بگم که شما میتونید با جاوااسکریپت بازی بسازید!!!تفاوت اکما اسکریپت و جاوا اسکریپت چیست؟جاوا اسکریپت، یک زبان برنامه نویسی است اما اکما اسکریپت (ECMAScript) یه حالت استاندارد و تایید شده از جاوا اسکریپت است که توسط سازمان اکما مشخص میشه و مطابق با این استاندارد مرورگرها موتور جاوا اسکریپتی خودشونو آپدیت میکنن. اولین ورژن اکما اسکریپت سال ۱۹۹۷ منتشر شد و تا سال ۲۰۱۵ که ورژن اکما اسکریپت ۶ یا ES6/ES2015 را ارائه داد و قرار بر این شد که از سال ۲۰۱۵ هر سال یه نسخه جدید از اکما اسکریپت منتشر بشه.در سال ۲۰۱۹ هستیم ورژن اکما اسکریپت ۱۰ (ES10) منتشر شدهشباهت و تفاوت جاوااسکریپت و جاوا؟‌‍‌‎تنها شباهت جاوا و جاوااسکریپت اینه که جفتشون زبان برنامه نویسی قدرتمندی هستن. از هیچ نظر دیگه شباهت ندارن، نسبت جاوا به جاوااسکریپت دقیقا مثل نسبت Car به Carpet میمونه و فقط شکل نوشتنشون شبیه (Car: خودرو ، Carpet: قالیچه) پس کلا سینتکس نوشتن دستورات ،نحوه اجرا و کاربرد جاوا اسکریپت و جاوا با هم متفاوتن. پس علت شباهت نامشون چیه؟ الان بهتون میگم.چرا جاوااسکریپت و جاوا شبیه هم نوشته میشن؟اسم اصلی و اولیه جاوااسکریپت Mocha بوده که بعدا به LiveScript تغییر پیدا میکنه و بعد از مدتی لایسنس زبان LiveScript رو شرکت Oracle (اون موقع اسمش Sun بوده!) که مالک زبان Java بوده میخره و میبینه که این زبان LiveScript یه زبان اسکریپتیه اسمشو میذاره JavaScript. اما بعد از چند سال برای ثبت این زبان در سازمان استاندارد سازی ECMA (اکما) میبره که اون زمان اجازه ثبت این نام رو نمیدن بهشون. (نمیدونم چرا؟ مگه چش بوده؟) بنابراین اسمش به ECMAScript تغییر پیدا میکنه و از اون به بعد هر سال آپدیت زبان JavaScript با اسم ECMAScript (اکما اسکریپت) یا ES منتشر میشه. مثلا سال 2019 ورژن اکمااسکریپت 10 یا ES10 منتشر شد؛ که هر سال تغییرات جزیی داشته به جز سال 2015 یا ES6 که تغییرات اصلی به خصوص در مبحث شی گرایی داشته.ویژگی های جاوااسکریپتجاوااسکریپت یک زبان اسکریپتی و سبک است.کنترل تاریخ و زمان و ساعت توسط جاوااسکریپت.جاوااسکریپت یک زبان برنامه نویسی شی گراست.کامپایل و اجرا جاوااسکریپت توسط مرورگر (Browser).جاوااسکریپت کنترل کاربر بر روی مرورگر را بیشتر میکند.جاوا اسکریپت نسبت به حروف کوچک و بزرگ حساس است.شناسایی مرورگر و سیستم عاملی که کاربر استفاده میکند.انتهای هر دستور از جاوااسکریپت باید از سیمیکالن (;) استفاده کرد.کد جاوااسکریپت کجا اجرا می شود؟در اصل جاوا اسکریپت ساخته شد تا فقط در مرورگر اجرا بشه. بنابراین همه مروگر ها موتور جاوا اسکریپت (Javascript engine) دارند که به وسیله اون کدهای جاوا اسکریپت اجرا میشه، مثلا مرورگر کروم از موتو جاوا اسکریپت (V8) و فایرفاکس (SpiderMonkey) استفاده میکنند.اجرا جاوا اسکریپت خارج از مرورگرسال ۲۰۰۹ یه مهندس خیلی خفن به اسم Ryan Dahl یه موتور جاوااسکریپت open source در مرورگر کروم میسازه و اونو داخل یه برنامه ++C جا سازی میکنه که اسمش رو Node میذاره. Node در واقع یک برنامه تحت زبان ++C است که شامل موتو جاوااسکریپتی V8 گوگل است. حالا با این قابلیت ما میتونیم جاوااسکریپت رو بیرون مرورگر هم اجرا کنیم. و این بدین معنیه که میتونیم با جاوا اسکریپت Back end وب سایت و اپلیکیشن موبایلی خودمون رو گسترش بدیم.جاوا اسکریپت داخل مرورگر اینترنت و مرورگر node اجرا میشه مرورگر نود (Node browser) و مرورگر (browser) هر دو محیطی رو فراهم میکنند تا کدهای جاوا اسکریپت داخلشون اجرا بشه و ما بتونیم خروجی رو به درسته ببینیم.منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn-javascript/what-is-javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Wed, 24 Jun 2020 19:32:49 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش رایگان جاوااسکریپت  - مرجع تخصصی جاوااسکریپت</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D9%85%D8%B1%D8%AC%D8%B9-%D8%AA%D8%AE%D8%B5%D8%B5%DB%8C-%D8%AC%D8%A7%D9%88%D8%A7%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-rqamabkvocmh</link>
                <description>جاوااسکریپت محبوب ترین زبان برنامه نویسی سال ۲۰۱۹ و ۶ سال گذشته است. فکر کنم همین یه دلیل کافی باشه که یادگیری جاوااسکریپت را شروع کنید!دوره مقدماتی جاوااسکریپتاما این همه ماجرا نیست! چرا که جاوااسکریپت فراتر از یک زبان برنامه نویسی است، با یادگیری جاوااسکریپت از یک منبع درست و حرفه ای مثل وبسایت MEGA JS همه نیاز های شما برطرف میشود. تا قبل از سال ۲۰۰۹ از جاوااسکریپت به عنوان زبان برنامه نویسی Front-End سایت استفاده میشد. اما از سال ۲۰۰۹ و با حضور Nodejs، انقلاب جاوااسکریپت شروع شد. و در سال های بعد با بوجود آمدن فریمورک هایی مثل Angular و Vue js و Electron  ؛ کتابخانه هایی مثل React js و React native تقریبا انقلاب JavaScript تکمیل شد!!! https://www.aparat.com/v/0ikOP وبسایت MEGA JS مرجع تخصصی آموزش JavaScript و فریمورک ها و کتابخانه های جاوا اسکریپت است. جاوااسکریپت یکی از زبان های برنامه نویسی محبوب حال حاضر است. البته جاوا اسکریپت یک زبان اسکریپتی است و منطق برنامه نویسی کمی متفاوت تر نسبت به php و جاوا و سایر زبان های دیگه دارد به همین دلیل معمولا برنامه نویس ها از جاوا اسکریپت فراری اند. اما نمیدونن این زبان چه نعمت بزرگیه وگرنه حتما یادش میگرفتن و صرف اینکه جاوااسکریپت سینتکس متفاوتی نسبت به زبان های دیگه دارد، بیخیال این زبان خفن میشن. اما نگران نباشید ما سعی کردیم با زبانی ساده و محاوره بهترین آموزش جاوا اسکریپت رو آماده کنیم. پس اگر علاقه مند به یادگیری جاوااسکریپت هستید، تا انتهای این صفحه همراه ما باشید تا دیدتون نسبت به جاوا اسکریپت متفاوت بشه.جاوا اسکریپت پرکاربرد ترین زبان برنامه نویسی سال 2019 !!!بخاطر پیدایش فریمورک هایی مثل Angular و Vue و کتابخانه هایی مثل React و React native در جاوا اسکریپت و رشد سریع اون ها باعث بر طرف شدن نیازها هم در سمت کلاینت (Client-side) و هم در سمت سرور (Server-side) مثل Nodejs میشه.یادگیری جاوااسکریپت ، امری ضروری !!!به نظر من در سال ۲۰۱۹ هر کسی سراغ یادگیری جاوااسکریپت و فریم ورک هاش نره، دو هیچ از بقیه برنامه نویسا عقبه. فرقی نداره شما برنامه نویس Front-End یا برنامه نویس Back-End باشید. به هر حال جاوا اسکریپت یک زبان برنامه نویسی همه کارس!!! پس اگر Frot-End کار میکنید، همین حالا یادگیری جاوااسکریپت رو شروع کنید و بعد سراغ فریم ورک Angular و Vue js و کتابخانه React برید. اگر هم برنامه نویس Back-End هستید بعد از دیدن دوره آموزش رایگان جاوااسکریپت و دوره ES6 ، سراغ پلتفرم Node JS برید که سرعت بالا و کیفیتش دیوونتون میکنه!آموزش رایگان جاوا اسکریپتبا آموزش رایگان جاوااسکریپت  در چند جلسه قدم به قدم ۰ تا ۱۰۰ جاوا اسکریپت را یاد بگیرید. آموزش جاوااسکریپت رایگان از سطح مقدماتی شروع میشه و تا سطح پیشرفته JavaScript ادامه دارد. محتوای این چند قسمت هم به صورت متن هم به صورت فیلم آموزش جاوا اسکریپت است که رایگان در اختیار شما عزیزان قرار گرفته است.چرا دوره جاوااسکریپت MEGAJS ؟چون دوره های آموزشی وبسایت MEGA JS مهارت محوره و سعی کردیم که حوصله شما رو با مطالب بیهوده و بی کاربرد سر نبریم، و دوره آموزش رایگان جاوا اسکریپت هم از این قاعده مستثنی نیست. در واقع این دوره با اینکه رایگانه اما از دوره های پولی و طولانی سایت های دیگه کامل تر و مفید تره. (کافیه سر فصلا و محتوا مقایسه بشه)پس دوره های رایگان وبسایت مگا جی اس رو از دست ندید. مخصوصا دوره جاوا اسکریپت رایگان رواگه این دوره خوبه پس چرا رایگانه؟یادگیری جاوااسکریپت اولین قدم از مسیر یادگیری وبسایت Mega JS. در واقع این دوره از سطح مقدماتی جاوا اسکریپت یعنی از بیخ شروع میشه و تا سطح نسبتا خوب و پیشرفته جاوااسکریپت ادامه داره؛ و چون این دوره نیاز همه کاربران سایت ما هستش، پس ما این دوره رو رایگان کردیم تا دسترسیش برای همه ممکن و سریع باشه و کسی در تهیه دوره مشکلی نداشته باشه. اما سطح اطلاعات و کیفیت آموزش بسیار بالاست و ارزش قیمتی بالایی داره.آیا یادگیری جاوااسکریپت کار آسونیه ؟جواب این سوال هم آره هست هم نه؛ زبان برنامه نویسی جاوااسکریپت یکی از پرکاربرد ترین و در عین حال پر چالش ترین زبان های دنیاس؛ پس هم میتونه یادگیری جاوااسکریپت سخت و هم آسون باشه! اما اگر دنبال چالش و محک زدن تواناییاتون نیستید، سراغ یادگیری جاوااسکریپت نرید لطفا چون ناجور گیر میفتید.پیش نیازهای یادگیری جاوااسکریپتاگر میخواید از جاوا اسکریپت در صفحات وب استفاده کنید حتما پیش نیازی که شما قبل از شروع یادگیری جاوااسکریپت باید بلد باشید HTML است. چون قسمت پرکاربرد جاوااسکریپت DOM و Event ها به html نیاز دارند؛ مخصوصا برای پویا سازی فرم ها و صفحات وب. اما اگر قصدتون یادگیری جاوااسکریپت و بعدش مثلا React Native باشه شما کاری به HTML ندارید.سریع ترین روش یادگیری جاوااسکریپتسریع ترین روش یادگیری جاوااسکریپت تمرین تمرین و تمرین است. پس اگر میخواید خیلی سریع جاوااسکریپت یاد بگیرید بعد از دیدن هر قسمت از سری آموزش های MEGA JS حتما خودتون چند بار اون جلسه رو تمرین کنید تا دستتون راه بیوفته. پس شرط یادگیری تمرین کردن اونه.آینده جاوا اسکریپت روشن است!!فک میکنم موارد بالا دلایل کافی برای اینکه چرا جاوااسکریپت یاد بگیریم بیان شد. اگر میخواهید یک زبان برنامه نویسی را انتخاب کنید و به صورت جدی یادگیری آن را شروع کنید؛ زبان برنامه نویسی جاوا اسکریپت یک گزینه ی خیلی عالی و مناسب میتواند باشد که تمام نیاز های شما را رفع میکند. در یادگیری زبان جاوا اسکریپت باید بسیار صبور بود و تمرین کرد. امروز این زبان جایگاه بسیار عالی ای را در بین دیگر زبان های برنامه نویسی کسب کرده است و طبق بررسی ها و آمار های گرفته شده از وبسایت های مختلف، در آینده بهترین زبان  خواهد بود.برای دیدن دوره جاوا اسکریپت چقدر زمان لازمه ؟ببینید دوستان، اینکه چقد زمان لازمه تا جاوااسکریپت یادبگیرید همش به خودتون بر میگرده. یعنی وابسه به وقتی که میذارید ممکنه 1 ماه طول بکشه یا ممکنه 1 سال طول بکشه! اما میانگین اگه روزی 4ساعت بذارید در عرض 1 ماه به جاوااسکریپت مسلط میشید و با تمرین تکرار بعد از 6 ماه میتونید با خیال راحت به عنوان یه فرد حرفه ای جاوا اسکریپت کار کنید. اما یادتون نره، ن تنها جاوااسکریپت، بلکه همه زبان های برنامه نویسی نیازمند تکرار و تمرین هستند و اینطوری نیست که شما با فقط دیدن ویدئو آموزش جاوااسکریپت به اون مسلط بشید. پس خیلی خوب مطالبی که میخونید و میبینید رو تمرین کنید؛ مثلا به ازای هر 15 دقیقه (1 جلسه) ویدئو آموزشی جاوااسکریپت حداقل 45 دقیقه تمرین کنید و کد بزنید.فرصت های شغلی با جاوا اسکریپتبرنامه نویس Back-endبعد از پیشرفت باور نکردنی جاوا اسکریپت در سمت کلاینت، نوبت به حضور جاوا اسکریپت در سمت سرور حس میشد. که در سال 2009 بعد از معرفی پلتفرم Nodejs جاوا اسکریپت به زبان برنامه نویسی کاملی تبدیل شد. شما با یادگیری Nodejs و فریمورک Express JS میتونید اپلیکیشن ها و وبسایت های خودتون رو در سمت سرور هم توسعه بدید و برنامه نویس Back-end بشید.برنامه نویس Full-stackاصطلاح Full-stack به برنامه نویسی گفته میشه که هم به مباحث Front-end هم به مطالب Back-end مسلط باشه. پس یه برنامه نویس فول استک جاوا اسکریپت صفر تا صد یک وبسایت یا اپلیکیشن رو از بیخ طراحی کنه. و قسمت غیر قابل باور ماجرا اینجاست که شما فقط با یادگیری جاوا اسکریپت میتونید به برنامه نویس Full-stack تبدیل بشید و قطعا فرصت های شغلی بهتر و زیادتری به نسبت سایر برنامه نویس ها به شما پیشنهاد میشه.برنامه نویس Front-endماهیت جاوا اسکریپت از ابتدا در سمت کلاینت و فرانت وبسایت بوده و تمامی وبسایت ها از جاوا اسکریپت در سمت کلاینت استفاده میکنند. ولی امروزه و با پیشرفت خارق العاده جاوا اسکریپت و پیدایش فریمورک هاش، کمتر وبسایتی از جاوا اسکریپت خام در کدهای سایت استفاده میکنه و اکثرا از فریمورک ها و کتابخانه های محبوب جاوا اسکریپت استفاده میکنند. شما با یادگیری کامل جاوا اسکریپت و یکی از فریمورک ها مثل Reactjs یا Vuejs یا Angularjs میتونید برنامه نویس Front-end بشیدبرنامه نویس موبایل و اپلیکیشنامروزه همه از موبایل های هوشمند استفاده میکنند و موبایل هامون پر شده از اپلیکیشن های مختلف ایرانی و خارجی که کل زندگی روزانه مارو به خودش اختصاص داده؛ از شبکه های اجتماعی بگیر تا تاکسی اینترنتی و… . تیر خلاص جاوا اسکریپت اینجاست! مطمئنم که دیوونه میشید وقتی بفهمید جاوا اسکریپت فکر اپلیکیشن های موبایلی هم کرده. به لطف فیسبوک و گسترش React native کافیه یکبار کد نویسی کنید و همزمان خروجی ios و Android بگیرید تا قدر جاوا اسکریپت رو به خوبی بدونید.همین موارد بالا کافیه تا به این موضوع پی ببرید که جاوا اسکریپت زبان کامل برنامه نویسی است! و شمارو از یادگیری هز زبان دیگه ای بی نیاز میکنه و این فوق العادس!یکی از مهم ترین دلایل رشد زبان برنامه نویسی javascript درآمد بالایی هست که نسبت به دیگر زبان ها، برنامه نویس ها کسب میکنند.برنامه نویسان جاوا اسکریپت چقدر حقوق میگیرند؟میانگین حقوق توسعه دهنده جاوا اسکریپت در ایران (در سال ۹۸) ماهانه ۳ تا ۸ میلیون تومان است. شما میتونید با یادگیری جاوا اسکریپت به عنوان برنامه نویس Frond-end یا Back-end یا برنامه نویس Full stack JS (یعنی کسی که هم Front end بلده هم Back end) مشغول کار بشید. شما میتونید با یادگیری جاوااسکریپت کدهای سرور ساید خودتون رو بنویسید و وبسایت و اپلیکیشن خودتون رو تنها با یادگیری جاوا اسکریپت در سمت سرور توسعه بدید. با وجود فریمورک هایی مثل React native و Electron حتی اپلیکیشن های اندروید، ویندوز و ios خودتون رو فقط با جاوا اسکریپت بنویسید و گسترش بدید.منبعدر دنیای برنامه نویسی که هر روز یک یا چند قدم از روز قبل جلوتر است یادگیری یک زبان برنامه نویسی که تمامی نیازهایمان را رفع کند بی شک بهترین انتخاب است. بی شک جاوااسکریپت قدرت نسل بعد این عرصه خواهد بود. وبسایت megajs اولین مرجع تخصصی جاوااسکریپت به زبان فارسی است. که از صفر تا فول استک جاوااسکریپت همراه شماست. https://megajs.com/learn/javascript/ </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Sat, 20 Jun 2020 13:28:48 +0430</pubDate>
            </item>
                    <item>
                <title>آموزش جاوااسکریپت (JavaScript)</title>
                <link>https://virgool.io/@hajimaghsoodi/learn-javascript-owkxwlacwecx</link>
                <description>جاوااسکریپتجاوااسکریپت یکی از زبان های محبوب و پرکاربرد در سمت کاربر (Client-side) محسوب میشه. البته تا چند سال پیش اینجوری بود اما امروزه از JavaScript برای نوشتن اپلیکیشن های موبایل و دسکتاپ و طراحی رابط های کاربری هم استفاده میشه که به طرز عجیبی مورد استقبال برنامه نویسا و توسعه دهنده ها ظاهر شده.جاوا اسکریپت یه جورایی یه زبان همه فن حریف محسوب میشه که اگه شما یه مرجع آموزش جاوا اسکریپت معتبر و خوب پیدا کنید میتونید به راحتی با جاوااسکریپت ارتباط برقرار کنید و اپلیکشین های خودتون رو سمت سرور و سمت کلاینت توسعه بدید و به قدرت جاوا اسکریپت پی ببرید.مرجع تخصصی آموزش جاوا اسکریپتوبسایت MEGAJS مرجع تخصصی آموزش های جاوااسکریپت و فریمورک ها و کتابخانه های محبوب و پرکاربرد و جاوااسکریپت محسوب میشه. در وبسایت megajs.com میتونید 0 تا 100 آموزش جاوااسکریپت، آموزش فریمورک های جاوااسکریپت، آموزش کتابخانه های جاوااسکریپت رو پیدا کنید. یه جورایی megajs.com تاسیس شده تا نیاز های شما در زبان جاوااسکریپت بر طرف کنه و در این زمینه بی نیاز باشید.بعد از دیدن آموزش جاوااسکریپت چی میشه؟خب بعد از دیدن دوره های آموزشی جاوااسکریپت، نوبت به استفاده از جاوااسکریپت میرسه. البته یادگیری جاوااسکریپت اولین قدم برای ورود به دنیای جذاب JS است و بعد از اون باید با فریمورک ها و کتابخونه های قدرتمندش کار کنید تا بفهمید که چقدر جاوا اسکریپت خارق العادس. طراحی سایت با جاوااسکریپتاصالت جاوااسکریپت برای طراحی وب سایت و رابط کاربری بوده که تا الان به خوبی حفظش کرده و بخاطر وجود فریمورک هایی مثل Angular و React و Vue همچنان جاوااسکریپت پیشتازه. فریمورک انگولار که توسط گوگل پشتیبانی میشه یکی از فریمورک های جاوااسکریپتی برای بخش Front-end وبسایت استتفاده میشه و جزو پرکاربرد ترین فریمورک جاوااسکریپت محسوب میشه. ری اکت که توسط فیسبوک پشتیبانی میشه در جایگاه بعدی قرار داره.برنامه نویسی سایت با جاوااسکریپتاز سال 2009 و با پیدایش پلتفرم Nodejs جاوااسکریپت وارد دنیای زبان های سرورساید و Back-end شد که بخاطر سرعت بالای Nodejs و پردازش همزمان درخواست ها (Asynchronous) اونو به یک پلتفرم محبوب برای برنامه نویسان Back-end تبدیل کرده که رقیب جدی برای فریمورک هایی مثل Laravel و Django محسوب میشه. با nodejs میتونید اپلیکیشن های Runtime مثل تلگرام رو ایجاد کنید یا از Nodejs برای ساخت سرور استفاده کنید.طراحی اپلیکیشن موبایل با جاوااسکریپتاگه دوس دارید فقط با یک بار کد نویسی همزمان خروجی Android و ios بگیرید و تو زمان صرفه جویی کنید، بدون شک بهترین انتخاب شما جاوااسکریپت و فریمورک محبوب React و React Native است. شاید براتون جالب باشه که بدونید اپلیکیشن اینستاگرام با React Native نوشته شده و همین پشتیبانی قدرتمند فیسبوک از این فریمورک باعث شده تا ری اکت نیتیو به یک فریمورک Cross-platform محبوب تبدیل بشه. البته React native یه رقیب جدی به اسم فلاتر داره که گوگل پشتیبانی این پلتفرم رو بر عهده داره.طراحی اپلیکیشن دسکتاپ با جاوااسکریپتخب اگه میتونید یک وبسایت طراحی کنید، پس میتونید یک اپلیکیشن دسکتاپ (Desktop) هم طراحی کنید. این شعار فریمورک ElectronJS است. با فریمورک Electron میتونید با استفاده از تکنولوژی های وب (HTML و CSS و JavaScript) علاوه بر طراحی وبسایت، خروجی اپلیکیشن دسکتاپ هم بگیرید. با فریمورک Electronjs میتونید وبسایت های خودتون رو به اپلیکیشن Desktop تبدیل کنید. به همین راحتی!واقعا جاوااسکریپت دیگه حرفی برای گفتن نذاشته!!!به نظر من جاوا اسکریپت بهترین زبان برنامه نویسی برای یادگیری تو سال 2020. پس وقتو تلف نکنید و به  سایت megajs.com مراجعه کنید و یادگیری جاوااسکریپت رو شروع کنید.مگا جی اس مرجع تخصصی جاوااسکریپت و فریمورک هاش!</description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Sat, 05 Oct 2019 23:02:00 +0330</pubDate>
            </item>
                    <item>
                <title>طراحی سایت را از کجا شروع کنیم؟</title>
                <link>https://virgool.io/@hajimaghsoodi/%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C-%D8%B3%D8%A7%DB%8C%D8%AA-%D8%B1%D8%A7-%D8%A7%D8%B2-%DA%A9%D8%AC%D8%A7-%D8%B4%D8%B1%D9%88%D8%B9-%DA%A9%D9%86%DB%8C%D9%85-xekmntjvclb2</link>
                <description>در دنیای امروز طراحی سایت یک شغل بسیار محبوب و پر طرفدار در تمامی نقاط جهان است و این موضوع باعث شده تا عده ای جذب این شغل بشوند و برای بدست آوردن مهارت در این زمینه اقدام کنند. طراحی سایت امروزه با پیشرفت سریع این رشته به سرعت در حال گسترش است و هر روز در حال تغییر و توسعه است. همین امر باعث شده تا درآمد یک طراح سایت حرفه ای بسیار بسیار بالا  باشد. به طوری که در برخی از آمار ها طراحی سایت جزء ده شغل پر درآمد جهان به شمار می آید. طراحی سایت را از کجا آغاز کنیم؟این سوال مهم ترین سوالی هست که هر فردی که علاقه مند به یاد گیری طراحی سایت است برایش پیش می آید و ما در این مقاله قصد داریم تا این راه را برای شما به طور کامل شفاف و واضح با بیانی ساده ترسیم کنیم، تا بتوانید با آگاهی کامل پا در این عرصه بگذارید و از اطلاعات نادرستی که  ممکن است باعث سر در گمی شما در مورد شروع طراحی سایت است خارج شوید.  قدم اول چقدر زبان انگلیسی کامپیوتر را متوجه میشویم؟طراحی سایت در سطوح حرفه نیازمند کدنویسی و دانش برنامه نویسی بالاست که بتوان هر آنچه در ذهنمان هست را بروی پروژه ی خود پیاده سازی کنیم. اکثر افراد پس از این که آموزش طراحی سایت را شروع میکنند و به کد نویسی مشغول میشوند به مشکل بر میخورند و تلاش میکنند که کد ها را به خاطر بسپارند. یکی از اصلی ترین موارد در آغاز طراحی سایت این است که تا سطح کمی با  زبان انگلیسی خودمان را آشنا کنیم. یاد گیری این زبان از جهات زیر حائز اهمیت است: بلد بودن زبان انگلیسی سرعت کدنویسی ما را بالا میبرد.زبان کامپیوتر و کد نویسی های ما به زبان انگلیسی صورت میگیرد که این خود ما را تا حدی به زبان انگلیسی وابسته میکند. اگر مدت کمی را برای یاد گیری این زبان صرف کنیم چند برابر سرعت کدنویسی ما افزایش پیدا میکند به طوری که یکی از مهم ترین فاکتورها بین یک برنامه نویس حرفه  ای و غیر حرفه ای در سرعت انجام پروژه هاست.  زبان انگلیسی سرعت و کیفیت یادگیری ما را به طور چشم گیر افزایش میدهد.دومین مورد در یادگیری زبان انگلیسی این است که همه کدها تا حدی مشابه به زبان انسان هستند و یادگیری زبان انگلیسی به توجه به این موضوع یادگیری طراحی سایت و حتی زمینه های دیگر  کامپیوتری را برای ما آسان تر میکند و کد ها برای ما قابل فهم تر میشود. بهترین و به روز ترین منابع آموزشی به زبان انگلیسی هستند.سومین و آخرین مورد این است که بهترین و به روزترین منابع آموزش طراحی سایت و برنامه نویسی به زبان انگلیسی ارائه میشوند و استفاده از آنها مستلزم داشتن مهارت در این زبان است. اینکه شما بتوانید بهتر از بقیه باشید و سریع تر از بقیه مهارت خود در طراحی سایت را بالا ببرید وجه  تمایز مثبت شما در این زمینه است قدم دوم طراحی سایت را از کدام زبان شروع کنیم؟بعد از اینکه شما به طور قطعی تصمیم به یادگیری طراحی سایت کردید این موضوع برای شما اهمیت دارد که طراحی سایت را از کدام زبان باید را شروع کنیم؟ برای پاسخ به این سوال که کدام زبان برای شروع مناسب است و بعدها کدام زبان های برنامه نویسی دیگر مورد نیاز است طبق یک  مثال تمامی راه را به شما نشان خواهیم داد... آموزش زبان HTML اولین گام است.در این مثال ساخت یک وبسایت را به ساخت یک خانه چند طبقه تشبیه میکنیم.هنگام ساخت یک خانه اولین قدم ایجاد چاچوب کلی، اسکلت ساختمان و محل ستون های اصلی است. طراحی سایت هم به همین شکل شروع میشود؛ در اولین مرحله باید ما چارچوب اصلی وبسایت خودمان را  با زبان HTML صورت ،مشخص کنیم. قرار دادن منوها، مطالب، فرم ها و همه ی اجزای اصلی میگیرد.زبان HTML زبان برنامه نویسی محسوب نمیشود زیرا برای ما محاسبه ای انجام نمیدهد. در  واقع اچ تی ام ال یک زبان نشانه گذاری است و به اطلاعات ورودی نیاز ندارد. یادگیری زبان HTML را دست کم نگیرید...!وقتی شما شروع به یادگیری اچ تی ام ال میکنید ممکن است تصور کنید که این زبان بسیار ساده است و زیاد آنرا جدی نگیرید برای همین لازم است این نکته را به شما بگویم که اگر اسکلت ساختمان شما سست باشد همه ی ساختمان شما را خطر تهدید میکند.پس این زبان را به طور کامل یاد بگیرید و از هیچ بخش آن نگذرید.هدف ما این است که به یک طراح سایت حرفه ای تبدیل  شویم، پس تسلط به مطالب پایه و ساده برای ما الزامی است. یادگیری زبان اچ تی ام ال چه مقدار زمان نیاز دارد؟  ساعت زمان نیاز دارد که با توجه به مقدار زمانی 25 آموزش اچ تی ام ال در سطح خوب زمانی حدود که صرف تمرین و انجام پروژه های مختلف میکنید خودتان سطح حرفه ای بودنتان را مشخص میکنید. پس زیاد تمرین کنید و کدنویسی کنید تا کاملا مسلط شوید. کدنویسی بیشتر مهارت شما را  بالاتر خواهد برد. قدم سوم بعد از HTML باید چه چیزی را یاد بگیریم؟بعد از اینکه شما پایه و اسکلت سایت خود را با استفاده از زبان HTML بنا کردید لازم است دیوار های این خانه را بسازید و تمام امکانات ظاهری آن را کامل کنید. درست کردن ظاهر یک خانه بخش مهمی است و نشان دهنده ی میزان مهارت و سلیقه ی سازنده ی آن است. زبان CSS قدم سوم در طراحی سایت است.برای اینکه ما ظاهر وبسایت خودمان را تغییر دهیم و آن را زیبا تر کنیم نیاز به آموزش زبان CSS داریم. زبان CSS به ما این امکان را میدهد تا جایگاه هر قسمت از وبسایت را تعیین کنیم، رنگ ها را تغییر دهیم؛ حالت انیمیشنی به برخی از اجزای سایتمان دهیم و هزار روش و ترفند برای زیباتر کردن وبسایت را به ما میدهد به شکلی که سایت ما بدون سی اس اس به ندرت از نظر کاربران جذاب به نظر میرسد؛ که این مهم جلوی جذب کاربر را میگیرد.پس سی اس اس هم اهمیت  بالایی برای ما دارد. کد نویسی زبان سی اس اس چگونه است؟کدنویسی زبان CSS بسیار شیرین و جذاب است اما اگر تازه کار باشیم، در برخی موارد خاص مانند تنظیم موقعیت اجزای سایت کار برای ما کمی سخت است؛ به همین منظور بسیار بسیار CSS را تمرین کنید. چرا که اگر تمرین نکنید به هیچ راه و روشی نمیتوانید در این زبان به تسلط لازم برسید. اگر شما HTML و CSS کامل بلد باشید میتوانید قالب های ِ را به طور کامل زیبا و جذابی برای وبسایت ها طراحی کنید که این خود اولین مرحله از به ثمر رسیدن تلاش های  شما در آموزش طراحی سایت است. یادگیری زبان CSS چه مقدار زمان نیاز دارد؟ آموزش زبان CSS زمانبرتر از زبان HTML است، زیرا در CSS ما با امکانات متنوع تری سرو کار داریم. زبان سی اس اس به خلاقیت و مهارت ما در استفاده از ان وابسته است، لذا باید بسیار تمرین و تکرار کنید و سایت هایی را با HTML و CSS طراحی کنید تا حسابی دست شما به کدنویسی عادت کند.زمان لازم برای آموزش زبان CSS در حد قابل قبول به طور 40 ساعت است که این جدا از زمانی است که شما صرف تمرین و انجام پروژه می تقریبی حدود  کنید.  قدم چهارم بعد از CSS باید سمت کدام زبان برویم؟زمانی که شما کاملا به HTML و CSS مسلط شدید تقریبا ظاهر هر نوع وبسایتی را میتواند بسازید ولی کمی که بیشتر و عمیق تر کار کنید با مشکلاتی روبرو میشوید؛ مثلا وبسایتی که در لپ تاپ یا کامپیوتر خود طراحی کردید در تلفن همراتان یا نمایشگر های دیگر با ابعاد مختلف وبسایت شما کامل به هم میریزد و اصلا شبیه آنچه که طراحی کردید نیست.(البته اگر بتوانید در سی اس اس متخصصی حرفه ای شوید این مشکل برای شما پیش نمی آید). برای حل این موضوع شما باید اولین فریم ورک را یاد بگیرید! فریم ورک چیست و چه کاربردی دارد؟فریم ورک یه چارچوب از پیش تعریف شده است که کد نویسی طبق فریم ورک ها بسیار ساده تر است اما همیشه محدود به امکانات آن فریم ورک هستید. یادگیری فریم ورک ها اجتناب ناپذیر است و تقریبا بدون وجود آنها کدنویسی بسیار زمان بر و دشوار میتواند باشد اما لازم است به این توصیه گوش کنید که قبل از یادگیری فریم ورک های یک زبان برنامه نویسی حتما در حد آشنایی آن زبان را  یاد بگیرید و بدون داشتن مقدمه از زبان خاصی آموزش فریم ورک آن زبان را شروع نکنید. حالا باید از کدام فریم ورک استفاده کنیم؟طبق توصیه ای که بالا به شما گفتم بهترین فریم ورک، فریم ورکی است که ساخته شده توسط HTML و CSS باشد. فریم ورک های زیادی متناسب با این زبان ها ساخته و ارائه شده که Bulma و... هستند. تعداد  ،پیور ،یو آی کیت ،فوندیشن ، معروف ترین فریم ورک های آن Bootstrap این فریم ورک ها بسیار زیاد هستند اما پیشنهاد ما به شما آموزش فریم ورک بوت استرپ است.  بوت استرپ چیست؟ همان گونه که در بالا گفته شد بوت استرپ یک فریم ورک از HTML و CSS است که در ابتدا برای منعطف کردن صفحات وب برای نمایشگرهای مختلف عرضه شد؛ اما الان با آپدیت هایی که از این فریم ورک ارائه شد امکانات بسیار زیادی برای زیبا سازی رابط کاربری (UI) صفحات وب  در اختیار ما قرار میدهد.چرا باید فریم ورک Bootstrap را یاد بگیریم؟ در پاسخ به این سوال که چرا باید بوت استرپ را یاد بگیریم دلایل زیر حائز اهمیت هستند:تعداد کاربرانی که از فریم ورک Bootstrap  استفاده میکنند بسیار زیاد هستند؛ همین موضوع باعث شده تا بیشترین منابع و قالب ها با این فریم ورک ساخته شوند.اکثر منابع آموزشی فارسی و انگلیسی برای این فریم ورک تهیه شده است و توسعه دهندگان وبسایت ها تمرکز ویژه ای روی بوت استرپ دارند.طراحی سایت معمولا به صورت تیمی انجام می شود. زمانی که همه ی هم تیمی های شما از این فریم ورک استفاده میکنند بلد نبودن Bootstrap برای شما یک ضعف محسوب میشود. یک توصیه ...به این نکته توجه کنید که هنگامی که همه از یک فریم ورک خاص استفاده میکنند و روی آن تمرکز میکنند شما علاوه بر آن فریم ورک فریم ورک های دیگر را تست کنید و از امکانات آنها بهره ببرید تا تفاوت در پروژه های شما با پروژه های دیگران مشخص باشد. به عنوان تجربه ی شخصی ای که داشتم فریم ورک بولما امکانات ظاهری فوق العاده ای داشت و وقتی از آن استفاده می کردم سایت  هایی کاملا متفاوت تر در ظاهر طراحی میکردم.شما هم فریم ورک های دیگر را تجربه کنید! یادگیری بوت استرپ چه مقدار زمان میبرد؟اگر شما به CSS مسلط باشد یادگیری Bootstrap زمان زیادی نمیبرد زیرا بسیار ساده است. ساعت نیاز داشته باشد اما تمرین مکرر 15شاید یادگیری این فرم ورک در حد خوب زمانی در حدود CSS، و Bootstrap، آن را فراموش نکنید و حتما چندین صفحه ی وب را با HTML طراحی کنید تا در ساخت قالب وبسایت حرفه ای شوید.شما اگر هر سه مبحث بالا را به طور کامل یاد بگیرید میتوانید قالب های زیبایی طراحی کنید و اولین قدم را برای ورود به بازار کار بردارید.مطالبی که شما در این سه موضوع یاد میگیرید را اگر تمرین و  تکرار نکنید به سرعت فراموش میکنید و همه ی زحمت و وقتتان هدر میرود.  قدم پنجم بعد از یادگرفتن ساخت قالب باید چه چیزی یاد بگیریم؟در این مرحله از آموزش طراحی سایت شما بین یک دوراهی قرار میگیرید. شما باید یک زبان برنامه نویسی را مکمل کار خود کنید تا وارد سطح حرفه ای تری شوید. زبان های برنامه نویسی وب به دو  دسته زیر تقسیم میشوند:دسته ی اول : زبان های سمت کاربر (Client-Side) دسته دوم : زبان های سمت سرور ( Server-Side)شما برای این که یک فول استک شوید باید تجربه ی کار با هر دو دسته از زبان های بالا را داشته باشید. اما برای شروع با توجه به نیازتان یک مسیر را شروع کنید، آنرا تا انتها پیش بروید و بعد وارد  راه بعدی شوید. زبان کلاینت ساید چیست؟زبان های سمت کاربر یا کلاینت ساید زبانهایی هستند که پردازش آنها سمت کاربر و در مرورگر خود کاربر صورت میگیرد. از زبان های برنامه نویسی سمت کاربر معمولا برای ساخت صفحات متحرک و ایجاد حالات گرافیکی زیبا استفاده میشود. زبان جاوا اسکریپت که یک زبان برنامه نویسی کلاینت  یکی از مهم ترین زبانهایی است که یک طراح وبسایت باید آنرا بلد باشد. همینطور زبان ، ساید است ِ های نشانه گذاری HTML و CSS هم زبان کلاینت ساید محسوب میشوند و پردازش آنها توسط مرورگر کاربر صورت میگیرد. زبان سرور ساید چیست؟ تصور کنید شما میخواهید در یک وبسایت که قبلا ثبت نام کرده اید با وارد کردن نام کاربری و رمز عبور وارد شوید. پس از اینکه شما نام کاربری و رمز عبور خود را وارد میکنید، این اطلاعات به سرور ارسال میشود و مورد پردازش قرار میگیرد که آیا این نام کاربری وجود دارد؟ اگر این نام کاربری وجود  دارد رمز عبور ارسال شده با نام کاربری ای که کاربر موقع ثبت نام وارد کرده است مطابقت دارد؟ اگر نام کاربری وجود داشت و رمز عبور باهم مطابقت داشت کاربر به صفحه ی مورد نظر هدایت شود. این پردازش ها همه در سرور صورت میگیرد و از چشم کاربران مخفی است. در حقیقت زبان سرور ساید برای ایجاد تعامل دو طرفه ما با کاربر است ولی زبان کلاینت ساید فقط برای تعامل یک طرفه  است.در ادامه ی مقاله ابتدا با زبان های کلاینت ساید و سپس با زبان های سرور ساید بیشتر آشنا خواهیم  شد...   زبان های Client-Side قدم ششم جاوا اسکریپت زبان برنامه نویسی سمت کاربر... جاوااسکریپت چیست؟جاوا اسکریپت زبان برنامه نویسی سمت کاربر است و جزو محبوب ترین زبان های برنامه نویسی به شمار میرود. این زبان برنامه نویسی با توجه به امکاناتی که در دسترس کاربران قرار میدهد زمینه ی توسعه و طراحی وبسایت های پویا با امکانات بالا و خوب را افزایش میدهد. یادگیری جاوااسکریپت ممکن است مقداری زمانبر باشد اما به از هر نظر ارزش دارد. طبق گفته ی افراد بسیار زیادی   در حوزه ی برنامه نویسی زبان جاوا اسکریپت زبان برنامه نویسی آینده خواهد بود.آموزش رایگان جاوااسکریپت مگا جی اس آیا زبان جاوا اسکریپت سخت است؟ آموزش زبان جاوا اسکریپت در مقایسه با زبان های دیگر و زبان های سرور ساید به دلیل امکانات بالایی که در اختیار ما قرار میدهد کمی پیچیده است، اما سخت و عجیب غریب نیست به شکلی که نتوان آنرا یاد گرفت. حال چرا این جمله که زبان &quot;جاوااسکریپت سخت است&quot; در بین طراحان سایت زیاد شنیده میشود؟ بسیاری از افراد یادگیر ی برنامه نویسی را از زبان جاوا اسکریپت شروع میکنند این باعث میشود تا حس کنند زبان جاوا اسکریپت بسیار سخت است در حالی که شروع یادگیری برنامه نویسی با هر زبانی کمی سخت است و آشنا شدن با منطق کامپیوتر زمانبر است.یادگیری فریم ورک های زبان جاوا اسکریپت ساده تر است! همانطور که در مورد فرم ورک های زبان سی اس اس در بالا گفته شده، استفاده از فریم ورک برای آسان تر شدن کار برنامه نویس است. در مورد زبان جاوا اسکریپت هم این موضوع صدق میکند و برای اینکه کار شما ساده تر شود میتوانید یکی از فریم ورک های جاوا اسکریپت را یاد بگیرید و از آن  استفاده کنید اما این نکته را فراموش نکنید:پیش از اینکه آموزش فریم ورک های جاوا اسکریپت را شروع کنید، حداقل در حد مقدماتی برنامه نویسی با جاوا اسکریپت را یاد بگیرید و با دستورات پایه ی جاوا اسکریپت و سینتکس آن آشنا  شوید. کدام فریم ورک جاوا اسکریپت را اول از همه یاد بگیریم؟ تعداد فریم ورک های زبان جاوا اسکریپت خیلی زیاد است و یاد گیری همه ی آنها کار بسیار بسیار دشواری است.آموزش جی کوئری باید برای شما در الویت باشد.ابتدا این کتابخانه از جاوا اسکریپت را یاد بگیرید؛ زیرا اگر شما مقدار خیلی کمی جاوا اسکریپت بلد باشید (در حد آشنایی) یاد گرفتن این فریم ورک برای شما بسیار ساده خواهد بود. آموزش جی کوئری زیاد زمانبر نیست و به سرعت میتوانید آنرا یاد بگیرید پس یادگیری آنرا در الویت قرار دهید و سپس فریم ورک دیگری را شروع کنید!  در وبسایت MEGAJS هر سه فریمورک به طور جداگانه و تخصصی بررسی شده اند و در یک مقاله جداگانه هر سه فریمورک با هم مقایسه و بررسی شدند. فریم ورک های محبوب جاوا اسکریپت فریم ورک های جاوا اسکریپت به سرعت در حال توسعه و سبقت گرفتن از یکدیگر هستند. فریم ورک های محبوب این زبان برای طراحی سایت عبارتند از :Reactjs , Angularjs , Vuejs که React, Vue و Angular بسیار داغ است. بررسی و مقایسه – بازار رقابت بین سه فریم ورک اول یعنی React , Vue , Angular این سه فریم ورک محبوب با توجه به وسعت و گستره ی بالایی که دارند بحثی طولانی در عین  حال جذاب است که در مقاله ای جداگانه به بررسی این سه فریم ورک میپردازیم...مقایسه فریمورک React و Angular و Vue نکته ی اساسی در مورد آموزش زبان جاوا اسکریپت اگر قصد دارید که زبان جاوا اسکریپت را بصورت کامل یاد بگیرید باید این نکته را در نظر داشته  مانند زبان HTML و CSS ،باشید که زبان برنامه نویسی جاوا اسکریپت در طراحی سایت نیست که بتوان مدت زمان معلومی را حتی به طور تقریبی برای یادگیری و آموزش آن تعیین کرد. لذا  به این توصیه که بسیار به آن تاکید شد، در مورد جاوااسکریپت جور دیگر عمل کنید: تمرین و تکرار.مرجع تخصصی جاوااسکریپت مگا جی اسبرای یادگیری هر چه بهتر جاوااسکریپت و فریم ورک های جاوا اسکریپت بهتر است سراغ وبسایت تخصصی و مرجع برید تا به بهترین شکل و آسون ترین راه جاوااسکریپت را یاد بگیرید. وبسایت مگا جی اس مرجع تخصصی آموزش جاوااسکریپت است. زبان های سرور ساید قدم هفتم زبانهای Server-Side و کاربرد آنها زبان های سرور ساید زبانهایی هستند که سمت سرور پردازش میشوند و از دید کاربران مخفی هستند. یاد گیری زبان سرور ساید به ما این کمک را میکند تا هم طراح سایت بتواند برای اهداف خاص خود با کاربر تعامل ایجاد کند و هم کاربر بتواند با طراح سایت ارتباط برقرار کند. با یک مثال  این موضوع را شما ساده تر درک خواهید کرد... مثالی ساده در مورد عملکرد زبان های Server-sideقسمت تهیه بلیت وبسایت یک شرکت هواپیمایی را در نظر بگیرید.شما به عنوان مسافر برای خرید بلیت سایت را باز میکنید و به پنل &quot;خرید بلیت&quot; وبسایت میروید. این وبسایت در اولین مرحله از شما میخواهد که مبدا و مقصد خود را همراه تاریخ حرکت وارد کنید. پس از اینکه شما تاریخ حرکت، مبدا و مقصد خود را وارد میکنید این اطلاعات به سرور فرستاده می شود و در پایگاه داده ذخیره میشود.( در ادامه ی مقاله با پایگاه داده بیشتر آشنا خواهید شد.) سپس زبان برنامه نویسی سمت سرور مبدا و مقصد را از پایگاه داده دریافت میکند و مورد پردازش قرار میدهد و لیستی از پرواز ها را در آن تاریخ برای شما ارسال میکند. فرآیند ارسال اطلاعات توسط شما، ذخیره سازی آنها در پایگاه داده، پردازش آنها در سرور توسط زبان سرور ساید و ارسال نتیجه برای شما همگی بر عهده ی زبان  برنامه نویسی سرور ساید است.   پایگاه داده یا Database چیست؟پایگاه داده یا دیتابیس محلی است که اطلاعات خاصی را بصورت دسته بندی شده ذخیره سازی میکند.هنگامی که شما در وبسایتی ثبت نام میکنید اطلاعات وارد شده توسط شما به دیتابیس وبسایت ارسال میشود و در آنجا ذخیره میشود. هر زبان برنامه نویسی با دیتا بیس خاصی سازگارتر  است که در مقاله ی زیر در مورد دیتابیس ها و نحوه ی عملکرد آنها بیشتر آشنا میشوید.  کدام زبان سرور ساید را یاد بگیریم؟زبانهای سرور ساید تنوع بالایی دارند و تعداد آنها بسیار زیاد است. در این قسمت از مقاله به معرفی  مورد از مهم ترین این زبانها میپردازیم و در مقاله ای جداگانه بصورت کامل و تخصصی هر کدام را زیر ذره بین خواهیم گذاشت و با هم مقایسه خواهیم کرد. بهترین و محبوب ترین زبان های سرور ساید به ترتیب عبارتند از : PHP , Python , Ruby ,... زبان PHPزبان پی اچ پی که جزء محبوب ترین زبان های برنامه نویسی سمت سرور است برای طراحی سایت  ساخته شد و مورد استفاده قرار گرفت. این زبان توسط تیم پی اچ پی ساخته شده و در 1995در سال حال توسعه و پیشرفت است. زبان پی اچ پی با دیتابیس MySQL بیشترین سازگاری را دارد.  این زبان برنامه نویسی بنا به دلایل زیر مخاطبان زیادی را جذب کرده است: آموزش و یادگیری ساده نسبت به دیگر زبانها بازار کار عالی در ایران وسایر کشورهای دنیااستفاده ی معروف ترین سیستم های مدیریت محتوا از این زبان برنامه نویسی(در پایان مقاله با این  موضوع بیشتر آشنا خواهیم شد) قدرتمند بودن و سرعت بالا در پردازش  سطح بالایی از امنیت و... از این زبان قدرتمند استفاده میکنند ، سایت هایی همچون فیس بوک و ویکیپدیا و.. زبان ASP.netASP.net ِزبان توسط شرکت مایکروسافت برای طراحی سایت و برنامه های زبان سمت سرورAsp.net به دلیل پشتیبان قدرتمند و امنیت تحت وب طراحی و پشتیبانی میشود. زبان خیلی بالا در سراسر جهان طرفداران بسیار زیادی را دارد و توسعه دهندگان و طراحان وبسایت زیادی از آن استفاده میکنند. این زبان با دیتابیس MySQL بیشترین سازگاری را دارد. این زبان در  جزء پرکاربرد ترین و پردوام ترین زبانهای برنامه نویسی قرار گرفت. 2017 سال  زبان پایتون طراحی و توسعه 1991 زبان برنامه نویسی پایتون که بسیار بسیار محبوب و پر طرفدار است درسال پیدا کرد. این زبان بسیار قدرتمند است بطوری که اکثر شرکت های بزرگ مانند گوگل و ناسا از این زبان برنامه نویسی استفاده میکنند. زبان برنامه نویسی پایتون قابلیت برنامه نویسی وب، ویندوز، اندروید و ... را دارد. زبان برنامه نویسی پایتون بسیار ساده است و برنامه نویسی با این زبان بسیار ساده و لذت بخش است. این زبان برنامه نویسی در زمینه ی طراحی سایت فرصت های شغلی مطلوبی را داخل ایران دارد. وبسایت های معروفی همچون گوگل، پی پال، یاهو و بسیاری وبسایت  پر مخاطب دیگر از این زبان استفاده میکنند. زبان Ruby توسط یک فرد ژاپنی اختراع شد. این زبان برنامه نویسی که تا 1990زبان برنامه نویسی روبی در سال حد کمی به زبان پایتون شبیه است طرفداران خاص خود را در سراسر دنیا دارد. زبان روبی، جز زبان های برنامه نویسی چند منظوره حساب می شود. این زبان برنامه نویسی علاوه براینکه در طراحی سایت کاربرد دارد بلکه در شبکه بندی، علم تلفن، رباتیک و ...نیز کاربرد دارد.وبسایت هایی همچون  گیت هاب، گیت لب ، استک اور فلو و... از این زبان بهره میبرند. یک نکته ی مهم:هنگامی که شما زبان های سرور ساید را برای طراحی سایت در سطح حرفه ای یاد میگیرید باید به  این نکته دقت کنید که یادگیری این زبان ها کمی زبمانبر است و تا چندین ماه به طول می انجامد.پس از اینکه شما این زبان ها را کامل فرا گرفتید باید در یکی از فریم ورک های مربوط به آن زبان هم مسلط شوید.نوع بازار کار در ایران طوری است که در طراحی سایت بیشتر کدنویسی های سمت سرور را با فریم ورک ها انجام میدهند و این فریم ورک ها جایگاه ویژه ای دارند. به این نکته هم دقت کنید که قبل از شروع آموزش فریم ورک ها حتما در یادگیری آن زبان برنامه نویسی به تسلط  نسبی برسید؛ زیرا یادگیری فریم ورک بدون مقدمه باعث شکست شما میشود. طراحی سایت با استفاده از سیستم های مدیریت محتوایکی از روش های طراحی سایت که امروزه مرسوم به &quot; طراحی سایت بدون کدنویسی&quot; است، استفاده از سیستم های مدیریت محتوا است. سیستم های مدیریت محتوا این قابلیت را دارند  که شما بدون کدنویسی سایت خود را بسازید. سیستم های مدیریت محتوا در حقیقت به شما این امکان را میدهد که بدون دانش برنامه نویسی سایت هایی را طراحی کنید آنها را ارقا دهید و استفاده کنید. سیستم  های مدیریت محتوا مزایایی را دارند که در ادامه مشاهده میکنید: روند طراحی ساده انسجام بیشتر  بهبود هدایت سایت  افزایش امنیت  کاهش هزینه های نگهداری سایت  استفاده از این سیستم ها امروزه به شدت رواج پیدا کرده است و افراد زیادی از این روش وبسایت  هایی را راه اندازی میکنند. اما این سیستم های مدیریت محتوا دارای معایبی هم هستند: نیاز به یک توسعه دهنده برای افزودن قابلیت خاص محدودیت در تغییر کدهای قالب انواع سیستم های مدیریت محتوا سیستم های مدیریت محتوای مختلفی وجود دارند از جمله: وردپرس، جوملا، دروپال و... که ورد پرس بیشترین مخاطب را در بین دیگر سیستم های مدیریت محتوا دارد و پس از آن جوملا مورد استفاده قرار میگیرد. یادگرفتن ساخت قالب برای وردپرس و ایجاد پلاگین برای این سیستم مدیریت  محتوا یک تخصص در طراحی سایت محسوب میشود.  نکته ای درمورد سیستم های مدیریت محتواطراحی سایت با استفاده از سیستم های مدیریت محتوا از جهات مختلفی بهتر است اما به این نکته دقت کنید که اگر شما به طراحی سایت به عنوان یک شغل میخواهید نگاه کنید باید حتما کدنویسی کنید تا حتی در مواقع لازم بتوانید امکاناتی را به سیستم های مدیریت محتوا اضافه کنید، قالب هایی  را برای آنها طراحی کنید و از هر نظر شخصی سازی هایی را روی آنها انجام دهید. سخن آخردر این مقاله تمامی مسیر را از صفر تا صد برای تبدیل شدن به یک طراح سایت حرفه ای را برای شما ترسیم کردیم ولی باید در نظر داشته باشید برای اینکه در این زمینه حرفه ای شوید لازم است که صبر و حوصله و پشتکار را چاشنی کار کنید. ممکن است بار ها و بارها با مشکلات مختلفی برخورد کنید که باعث از بین رفتن انگیزه ی شما شود. سعی کنید که زمان بگذارید و تمرین کنید تا سرعت شما به عنوان یک برنامه نویس حرفه ای بالا برود. پروژه های مختلفی را آماده کنید و سعی کنید  خود را با  ساخت پروژه های بزرگ به چالش بکشید تا تمام مسائل را مسلط شوید. در تمامی این مسیر همراه شما هستیم در وبسایت megajs.com </description>
                <category>محمدرضا حاجی مقصودی</category>
                <author>محمدرضا حاجی مقصودی</author>
                <pubDate>Tue, 06 Aug 2019 11:41:58 +0430</pubDate>
            </item>
            </channel>
</rss>