<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های Ryan Tafakori</title>
        <link>https://virgool.io/feed/@ryantafakori</link>
        <description></description>
        <language>fa</language>
        <pubDate>2026-06-07 14:05:50</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/559804/avatar/avatar.png?height=120&amp;width=120</url>
            <title>Ryan Tafakori</title>
            <link>https://virgool.io/@ryantafakori</link>
        </image>

                    <item>
                <title>مطلبک! let, const, var در جاوا اسکریپت چه تفاوتی دارند؟</title>
                <link>https://virgool.io/@ryantafakori/%D9%85%D8%B7%D9%84%D8%A8%DA%A9-let-const-var-%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-%DA%86%D9%87-%D8%AA%D9%81%D8%A7%D9%88%D8%AA%DB%8C-%D8%AF%D8%A7%D8%B1%D9%86%D8%AF-ityv0tnnncwt</link>
                <description>تفاوت var و letتفاوت این دو در نوع scope آنها است. مثال زیرنشان دهنده تفاوت این دونوع متغیر است که var در خارج از بلوک هم قابل دسترسی است، اما let فقط در درون بلوک قابل دسترسی خواهد بود.متغییر constاین متغییر مقداری را که به صورت اولیه می‌گیرد دیگر قابل تغییر نیست و زمانی باید از این نوع متغیر استفاده کنیم که قصد تغییر مقدار آن را نداشته باشیم. سایر ویژگی هایconst  مشابه با let است.نکته: اگر const به صورت شی تعریف شود، فرزندان آن قابل تغییر خواهند بود.</description>
                <category>Ryan Tafakori</category>
                <author>Ryan Tafakori</author>
                <pubDate>Thu, 28 Jan 2021 02:38:03 +0330</pubDate>
            </item>
                    <item>
                <title>تفاوت بین undefined و null در جاوااسکریپت</title>
                <link>https://virgool.io/CodeLovers/%D8%AA%D9%81%D8%A7%D9%88%D8%AA-%D8%A8%DB%8C%D9%86-undefined-%D9%88-null-%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-c8vxuvj3tycl</link>
                <description>اگر شما هم با جاوااسکریپت کار کرده باشید، باید دو کلمه کلیدی (keyword) تحت عنوان null و undefined را بشناسید.undefined vs nullاگر چه ما هردوی اینها را می‌شناسیم، اما پاسخ صریح به این سوال قدری دشوار به نظر می‌رسد. بنابراین در این مقاله تصمیم گرفتم که این سوال را بررسی کنیم و پاسخ صریحی به آن بدهیم.هردوی null و undefined از نوع false values و همچنین از انواع داده جاوااسکریپت نظیر (&#x27;string&#x27;, &#x27;number&#x27;, &#x27;null&#x27;, &#x27;undefined&#x27;, &#x27;boolean&#x27;, &#x27;symbol&#x27;, &#x27;bigint&#x27;) هستند.تفاوت null و undefinedکلمه کلیدی undefined آنچنان که می‌نماید و از معنی آن برمی‌آید به معنی تعریف نشده یا not defined است. برای مثال اگر شما var a را تعریف کنید و به آن مقداری ندهید، معنی این را می‌دهد که این متغیر تعریف نشده است؛ بنابراین باید مقدار undefined را برگرداند.هر بار که شما تابع یا متغیری را که جاوا اسکریپت مقدار آن را نمی‌داند، صدا بزنید؛ مقدار undefined را برمی‌گرداند.نمونه کد زیر را استفاده کنید تا به معنی حرف من پی ببرید:var num;
console.log(num);علت این که قطعه کد بالا مقدار undefined را برمی‌گرداند، این است که کامپایلر(مرورگر) نمی داند که مقدار این متغیر (‌num) چیست و این متغییر مقداری را در خود ندارد.پس متوجه شدیم که هرگاه متغییر را تابعی دربردارنده مقداری نباشید، مقدار بازگشتی از آن undefined خواهد بود.اما null چه چیزی است؟ null مقدار متغیری است که تعریف شده است، اما « هیچ » یا « خنثی » تعریف شده است، در واقع این هیچ یا خنثی مقدار آن متغیر خاص است.اگر مقداری شفاف تر بخواهم بگویم؛ شما یک متغییر دارید که می‌خواهید به جای آنکه در آن مقداری بریزید یا مقدار آن را تعریف نشده رها کنید، ترجیح داده‌اید که مقدار null که ارزش خاصی ندارد را در آن قرار بدهید.نوع null هم object اس که یکی از انواع داده است که MDN documentation آن را در انواع چند گانه جاوااسکریپت دسته بندی کرده است.نتیجه گیریاگر چه null و undefined در کل مشابه هستند اما تفاوتی در نوع دارند. بنابراین با مقایسه == مقدار true و با مقایسه به کمک === مقدار false را بازخواهند گرداند.اگر چه موضوع این مقاله درکل ساده و پیش پا افتاده بود، اما یک سوال زیرکانه در مصاحبه های کاری Frontend می‌تواند باشد.</description>
                <category>Ryan Tafakori</category>
                <author>Ryan Tafakori</author>
                <pubDate>Tue, 26 Jan 2021 21:06:30 +0330</pubDate>
            </item>
                    <item>
                <title>پیش از انتشار ریکت اپ خود index.html را ویرایش کنید!</title>
                <link>https://virgool.io/CodeLovers/%D9%BE%DB%8C%D8%B4-%D8%A7%D8%B2-%D8%A7%D9%86%D8%AA%D8%B4%D8%A7%D8%B1-%D8%B1%DB%8C%DA%A9%D8%AA-%D8%A7%D9%BE-%D8%AE%D9%88%D8%AF-indexhtml-%D8%B1%D8%A7-%D9%88%DB%8C%D8%B1%D8%A7%DB%8C%D8%B4-%DA%A9%D9%86%DB%8C%D8%AF-wxwrsn0yqi5w</link>
                <description>ریکت جی اس یکی از بی نظرین ترین فریم ورک ها برای توسعه سریع پروژه هاست. دستور npx create-react-app Myproject در چند ثانیه یک وب سایت خوب در اختیار شما می‌گذارد. چیزی که من می‌خواهم به شما بگویم این است که ایده خوبی به نظر می‌رسد اگر meta data پروژه خود را پیش از انتشار ویرایش کنید.این مقاله برای تازه کارها نگاشته شده است.تغییر در meta dataتصویر ۱به index.html در پوشه public بروید و تگ head را در آن پیدا کنید.متنی مشابه تصویر ۱ می‌بینید که در مقابل content نوشته شده است؛ content=&amp;quotWeb site created using create-react-app&amp;quotمتن داخل &quot; &quot; را با توضیح یک خطی و کوتاهی درباره وب‌سایت خود جایگزین کنید. این نوع از اطلاعات در هرجایی که وب‌سایت شما به صورت embed به اشتراک گذاشته شود، نمایش داده خواهد شد.پس یک متن کوتاه و جذاب در آن بنویسید که به زیبایی معرف وب سایت شما باشد.تغییر عنوان تصویر۲مطابق تصویر۲ نیز عنوان صفحه شما React App معرفی می‌شود و بدیهی است که نام وب‌سایت خود را جایگزین آن کنید.تغییر در faviconدر نهایت تصویری با نام favicon در همان پوشه موجود است؛ آن را با تصویری که نماد وب‌سایت خودتان است جایگزین کنید.سایز این عکس 16 ‍* 16 است و به نوعی با لوگوی وب سایت شما باید یکسان باشد.نتیجه گیریاین تغییرات سریع باعث می‌شود که وب سایت شما بهتر نمایش داده شود و حرفه ای تر به نظر برسد.</description>
                <category>Ryan Tafakori</category>
                <author>Ryan Tafakori</author>
                <pubDate>Thu, 14 Jan 2021 02:48:43 +0330</pubDate>
            </item>
                    <item>
                <title>۳ زبان برنامه نویسی برتر برای یادگیری و امنیت شغلی</title>
                <link>https://virgool.io/CodeLovers/%DB%B4-%D8%B2%D8%A8%D8%A7%D9%86-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%A8%D8%B1%D8%AA%D8%B1-%D8%A8%D8%B1%D8%A7%DB%8C-%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%88-%D8%A7%D9%85%D9%86%DB%8C%D8%AA-%D8%B4%D8%BA%D9%84%DB%8C-orwml2k98ddl</link>
                <description>اینکه تسلط به یک زبان برنامه نویسی یک بلیط برای موفقیت در دنیای پیش رونده‌ی دیجیتال محسوب می‌شود؛ یک راز نیست.بدون آنها ( زبان‌های برنامه نویسی ) ما قادر نخواهیم بود که نرم افزارهای کاربردی و مروگرهای اینترنت و سایر چیز‌هایی که برای کارمان، سرگرمی و... نیاز داریم، را داشته باشیم.پس آری، تقاضا به طور مطلقی بالاست و خبر خوب این است که برای بهتر شدن در کدنویسی نیاز به گذراندن دوره ی ۴ ساله ندارید!برای یادگیری یک زبان برنامه نویسی خاص، شما می‌توانید در یک دوره آنلاین برنامه نویسی شرکت کنید یا اینکه برنامه نویس با سابقه را معلم خصوصی خود بکنید؛ مطمئن باشید نتیجه ی آن فراتر از هزینه‌ای خواهد بود که برای یادگیری می کنید.برای مشاوره رایگان و شروع یادگیری برنامه نویسی همین الان با ما تماس بگیرید.هنوز در تصمیم خود برای برنامه نویس شدن متزلزل هستید؟ پس در ادامه این مقاله با ما همراه باشد.‍۱- پایتونبنابر یک تحقیق که براساس داده‌های سایت stackoverflow در سال ۲۰۱۹ میلادی انجام شد، رتبه زبان برنامه نویسی پایتون بر اساس «بیشترین درخواست» بالاتر از سایر زبان‌ها قرار گرفت؛ دلیل امر هم بر هیچ اهل فنی پوشیده نیست. سادگی و نظم در نوشتار این زبان در مقایسه با سایر زبان‌ها در وضعیت مطلوبی قرار دارد. این زبان برنامه نویسی خوب، مبتدی پسند و حتی مناسب برای کسانی است که در زمینه آی تی اشتغال ندارند. نمونه این امر دوره برنامه نویسی پایتون در سال ۹۹ شمسی بود که شرکت برق منطقه ای کارمندان خود را ملزم به گذراندن آن نمود.پایتون همچنین در بین متخصصانی که به یادگیری ماشین، هوش مصنوعی و همچنین کارهای پژوهشی اشتغال دارند، نیز دارای محبوبیت است.پایتون در دست برنامه نویسان سمت سرور ( Back-End) نیز با فریم ورک محبوب جانگو ( Django ) حضور دارد.اگر شما هم آرزوی تسلط به زبان برنامه نویسی پایتون و تغییر چشم انداز شغلی خود را در سر می‌پرورانید و نیاز به مدرس خصوصی برنامه نویسی برای پیشبرد این هدف دارید با ما در تماس باشید.این زبان نیازمند پیشینه ی کدنویسی شما ندارد و از مبتدی ترین حالت تا پیشرفته ترین های یادگیری ماشین را در بر می‌گیرد.بر اساس هدف شما از یادگیری این زبان، دوره‌ی تخصصی برای شما طراحی می‌شود و به صورت کاملا پروژه محور به یادگیری این زبان  برنامه نویسی در کنار مدرس خصوصی اقدام خواهید کرد.۲- جاواجاوا نیز در میان زبان‌های برنامه نویسی دارای محبوبیت قرار دارد، تنها در آمریکا ۲۹۰۰۰ شغل برای برنامه نویسان جاوا وجود دارد.این باعث شگفتی نیست؛ چرا که ده ها هزار پروژه به این زبان نوشته شده است، دامنه این پروژه‌ها از برنامه های بزرگ سازمانی گرفته تا برنامه‌های کاربردی تلفن همراه را شامل می‌شود.به علاوه، جاوا دارای انجمن  پشتیبانی بسیار گسترده است؛ زمانی که شما شروع به یادگیری جاوا می‌کنید، در این انجمن‌ها منابع، تالارهای گفتگو و کتاب‌هایی هست که به شما در این مسیر یاری می‌رساند.همانند پایتون؛ اگر به دنبال مدرس خصوصی برنامه نویسی جاوا هستید، به همان شیوه پروژه محور آمادگی دارم که به شما برای رسیدن به این دستاورد کمک کنم.اطلاعات تماس و راه‌های ارتباطی با ما به طرز کسل‌کننده‌ای!!! در همه جای این سایت در دسترس شماست :)۳- جاوا اسکریپتReact.js Exampleبرای هفتمین سال پیاپی، جاوا اسکریپت در میان محبوب ترین زبان‌های برنامه نویسی دیده می‌شود. ریکت جی اس، انگولار، ویو جی اس، جی کوئری و سایر تکنولوژی های از این دست همگی فرزندان این زبان هستند.این زبان در برنامه نویسی وب، موبایل و دسکتاپ کاربرد دارد و قدرت نفوذ خود را به اثبات رسانده است.اگر چه جاوااسکریپت بیشتر در طراحی وب و برنامه نویسی موبایل درخشش بیشتری دارد، اما به شما می‌گویم که باید ساده انگاری را کنار گذاشته و کاربردهای بیشتری برای این زبان متصور باشید.</description>
                <category>Ryan Tafakori</category>
                <author>Ryan Tafakori</author>
                <pubDate>Thu, 14 Jan 2021 02:26:27 +0330</pubDate>
            </item>
                    <item>
                <title>برنامه نویسی شی گرا؛ سرآغاز و تاریخچه پیدایش</title>
                <link>https://virgool.io/CodeLovers/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%B4%DB%8C-%DA%AF%D8%B1%D8%A7-%D8%B3%D8%B1%D8%A2%D8%BA%D8%A7%D8%B2-%D9%88-%D8%AA%D8%A7%D8%B1%DB%8C%D8%AE%DA%86%D9%87-%D9%BE%DB%8C%D8%AF%D8%A7%DB%8C%D8%B4-mvyaj0zatqsu</link>
                <description>زبان های شی گرا از دهه‌ی ۶۰ میلادی ( دهه ۱۳۴۰ شمسی ) پدید آمدند. اما این روش به سرعت به جایگاه فعلی خود نرسیده است.شی گرایی با دیده شدن موفقیت های C++ و Javaبود؛ که جای خود را در صنعت نرم افزار باز کرد.برنامه نویسی شی گرا و پیچ خم های این ۶۰ سالبرای درک بهتر و فهم OOP به نظر می‌رسد که باید تاریخچه‌ای از برنامه نویسی را بدانید. OO خلاصه شده‌ی Object-Oriented به معنی شی گرا است.شی گرایی یک تفکر و شیوه‌ای برای نگرش به دنیا است. شی گرایی مانند چتری است که تمام شیوه‌های توسعه مبتنی بر شی را در برمی‌گیرد. شی چیزی است که از خود مشخصه و رفتار بروز می‌دهد.گذر زمان به درازای ۶۰ سال موجب شد که کامپیوترها، اینگونه که در اختیار شما هستند؛ به نظر برسند.برنامه نویسی در سال‌های ابتدایی نیاز به تبحر خاصی داشت و به گونه‌ای بود که برنامه نویسان از طریق سوییچ‌هایی برنامه را به زبان ماشین وارد کامپیوتر می‌کردند؛زبان ماشین به این شکل مولد خطاهای بسیاری بود. و به علت نبود یک ساختار نگهداری و پشتیبانی از برنامه‌ها عملا غیرممکن می‌نمود.با عمومی شدن کامپیوتر، سر و کله زبان‌های سطح بالاتر و ماژولار پیدا شد. اگر بخواهیم سلسله‌ی تاریخی زبان‌های برنامه نویسی را بازگو کنیم: فورترن‌( Fortran ) و الگول( ALGOL ) اولین زبان‌های رویه ای بودند که بیشترین تاثیر را بر شی گرایی ( OOP ) گذاشتند.تفاوتی که این الگو با زبان ماشین از خود به نمایش گذاشت، ساختار مندی بود.توابع کوچکتر نه تنها به فهم ساده‌تر کمک می‌کنند، بلکه اشکال‌زدایی ساده‌تر را نیز در اختیارمان می‌گذراند.البته برنامه نویسی رویه ای نیز استفاده مجدد از کد را محدود می‌کرد، برنامه‌های نوشته شده با این روش مانند ظرف اسپاگتی بودند؛ شامل کدهای در هم تنیده‌ی غیرقابل تفکیک!در واقع در برنامه نویسی رویه‌ای کپسوله‌سازی وجود نداشت. باید بدانیم که کپسوله‌سازی مشخصه‌ی شی گرایی است.برنامه نویسی رویه‌ای کابوسی برای نگهداری و پشتیبانی از برنامه بود، چرا که اصلاح یک قسمت از برنامه منجر به برهم خوردن ساختار برنامه می‌شد.برنامه نویسی ماژولار با زبان برنامه نویسی modula2 پا به عرصه گذاشت. این زبان و این روش کپسوله سازی را ارائه می‌کردند؛ اما از چندریختی و وراثت که مشخصه‌ها و تابلوهای شی گرایی هستند را در خود نداشتند.زبان‌های برنامه نویسی شی گرا با افزوده شدن این دو ویژگی به زبان‌های ماژولار به وجود آمدند.</description>
                <category>Ryan Tafakori</category>
                <author>Ryan Tafakori</author>
                <pubDate>Thu, 14 Jan 2021 02:24:33 +0330</pubDate>
            </item>
            </channel>
</rss>