<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>farshidev - وبلاگ فرشید کریمی</title>
        <description>آخرین مقالات و آموزش‌های برنامه نویسی - React, .NET, TypeScript و فناوری‌های مدرن</description>
        <link>http://farshidev.ir</link>
        <language>fa-IR</language>
        <pubDate>Sat, 29 Aug 2026 14:19:43 GMT</pubDate>
        <lastBuildDate>Sat, 29 Aug 2026 14:19:43 GMT</lastBuildDate>
        <atom:link href="http://farshidev.ir/feed.xml" rel="self" type="application/rss+xml" />
        <image>
            <url>http://farshidev.ir/images/farshid.webp</url>
            <title>farshidev</title>
            <link>http://farshidev.ir</link>
        </image>
        <item>
            <title>چرا باید به جای JSON.stringify و {...obj} از structuredClone استفاده کنیم؟</title>
            <description>یک تابع سراسری (Global Function) است که در سال ۲۰۲۲ معرفی شد و امکان کلونینگ عمیق (Deep Cloning) اشیاء در جاوااسکریپت را فراهم می‌کند. برخلاف روش‌های سنتی مانند و که با ساختارهای پیچیده و مراجع...</description>
            <link>http://farshidev.ir/Post/bye-bye-json-stringify-and-object-spread-hello-structured-clone</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/bye-bye-json-stringify-and-object-spread-hello-structured-clone</guid>
            <pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <enclosure url="http://farshidev.ir/images/blog/struct.webp" type="image/webp" />
        </item>
        <item>
            <title>تست‌نویسی در javascript/typescript — بخش ۸: Snapshot، Coverage و CI</title>
            <description>این سری تست‌نویسی ماست. از بخش ۱ تا ۷ این مسیر رو رفتیم: unit test، matchers، E2E، DOM، mock، MSW. حالا سه موضوع آخر از دوره : 1. — ذخیره خروجی و مقایسه 2. — ببین چقدر کدت تست شده 3. — تست خودکار روی...</description>
            <link>http://farshidev.ir/Post/تست-نویسی-javascript-typescript-snapshot-coverage-ci</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/تست-نویسی-javascript-typescript-snapshot-coverage-ci</guid>
            <pubDate>Fri, 23 Jan 2026 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <category>تست‌نویسی در Javascript/Typescript</category>
            <enclosure url="http://farshidev.ir/images/blog/testing-title.webp" type="image/webp" />
        </item>
        <item>
            <title>تست‌نویسی در javascript/typescript — بخش ۷: MSW و پروژه Todo List</title>
            <description>توی بخش ۶ یاد گرفتیم با و شبکه رو mock کنیم. کار می‌کنه — ولی وقتی API زیاد بشه، هر تست پر می‌شه از کد تکراری mock. راه‌حل بهتر این است: . MSW درخواست‌های شبکه رو می‌گیره و جواب fake برمی‌گردونه. کد...</description>
            <link>http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-msw-todo-list</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-msw-todo-list</guid>
            <pubDate>Fri, 16 Jan 2026 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <category>تست‌نویسی در Javascript/Typescript</category>
            <enclosure url="http://farshidev.ir/images/blog/testing-title.webp" type="image/webp" />
        </item>
        <item>
            <title>تست‌نویسی در javascript/typescript — بخش ۶: Mock و Test Doubles</title>
            <description>تا اینجا یاد گرفتیم unit test بنویسیم، DOM تست کنیم، و با Playwright E2E بزنیم. حالا یه موضوع مهم مونده: مثلاً کد شما می‌زنه به API، یا به دسترسی داره، یا صدا می‌زنه. توی unit test نمی‌خوایم هر بار...</description>
            <link>http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-mocking-test-doubles</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-mocking-test-doubles</guid>
            <pubDate>Fri, 09 Jan 2026 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <category>تست‌نویسی در Javascript/Typescript</category>
            <enclosure url="http://farshidev.ir/images/blog/testing-title.webp" type="image/webp" />
        </item>
        <item>
            <title>Layers و Stacking Context چی هستند و چجوری می‌تونن Performance سایت‌مون رو بهتر کنند؟</title>
            <description>دو مفهوم Stacking context و Layers در فرآیند تبدیل کدهای ما به صفحات وب در مرورگر معنا پیدا می‌کنند. این دو مفهوم خیلی شبیه هم هستند و حتی بعضی جاها اشتباها به جای هم به کار میرن اما تفاوت دارند....</description>
            <link>http://farshidev.ir/Post/layers-and-stacking-context</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/layers-and-stacking-context</guid>
            <pubDate>Sat, 03 Jan 2026 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <enclosure url="http://farshidev.ir/images/blog/stack.webp" type="image/webp" />
        </item>
        <item>
            <title>تست‌نویسی در javascript/typescript — بخش ۵: تست DOM و Testing Library</title>
            <description>توی بخش ۴، با یاد گرفتیم چطور کل برنامه رو توی تست کنیم. E2E عالیه — ولی کنده. نمی‌شه برای هر کلیک و هر input یه تست Playwright نوشت. پس لایه کجاست؟ جواب در تست‌نویسی اینه: — با (یا Happy DOM) و ....</description>
            <link>http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-dom-testing-library</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-dom-testing-library</guid>
            <pubDate>Fri, 02 Jan 2026 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <category>تست‌نویسی در Javascript/Typescript</category>
            <enclosure url="http://farshidev.ir/images/blog/testing-title.webp" type="image/webp" />
        </item>
        <item>
            <title>تست‌نویسی در javascript/typescript — بخش ۴: تست نهایی (E2E) با Playwright</title>
            <description>در بخش‌های قبلی این سری، با و تکنیک‌های پیشرفته‌اش آشنا شدیم. یاد گرفتیم چطور توابع رو ایزوله تست کنیم، از و درست استفاده کنیم، با تست‌های انعطاف‌پذیر بنویسیم و با تست‌هامون رو تمیز نگه داریم. اما یه...</description>
            <link>http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-e2e-playwright</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-e2e-playwright</guid>
            <pubDate>Fri, 26 Dec 2025 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <category>تست‌نویسی در Javascript/Typescript</category>
            <enclosure url="http://farshidev.ir/images/blog/testing-title.webp" type="image/webp" />
        </item>
        <item>
            <title>تست‌نویسی در javascript/typescript — بخش ۳: تکنیک‌های پیشرفته تست واحد</title>
            <description>در مقاله قبلی، با مبانی تست واحد و TDD آشنا شدیم. در این مقاله رو با هم بررسی می‌کنیم. در این مقاله، ابزارهای قدرتمندی رو یاد می‌گیریم که به ما کمک می‌کنن تست‌های حرفه‌ای‌تر و انعطاف‌پذیر‌تری...</description>
            <link>http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-unit-test-advanced</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-unit-test-advanced</guid>
            <pubDate>Thu, 18 Dec 2025 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <category>تست‌نویسی در Javascript/Typescript</category>
            <enclosure url="http://farshidev.ir/images/blog/testing-title.webp" type="image/webp" />
        </item>
        <item>
            <title>تست‌نویسی در javascript/typescript — بخش ۲: تست واحد یا unit test</title>
            <description>در این مقاله، قصد داریم وارد دنیای بشیم. تست واحد یکی از پایه‌ای‌ترین و مهم‌ترین انواع تست‌های نرم‌افزاریه که در اون فقط یک واحد کوچیک از کد (معمولاً یک تابع یا متد) به صورت ایزوله تست می‌شه. تست...</description>
            <link>http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-unit-test</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-unit-test</guid>
            <pubDate>Thu, 11 Dec 2025 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <category>تست‌نویسی در Javascript/Typescript</category>
            <enclosure url="http://farshidev.ir/images/blog/testing-title.webp" type="image/webp" />
        </item>
        <item>
            <title>تست‌نویسی در javascript/typescript — بخش ۱: مقدمات</title>
            <description>لازمه یه توسعه مسئولیت پذیرانه، نوشتن تسته. تست کردن، اعتماد به نفس ما رو در مورد عملکرد مورد انتظار برنامه‌مون افزایش می‌ده. توی این سری قصد داریم راجع به اصول نوشتن تست کارآمد و لایه های مختلفش...</description>
            <link>http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-مقدمات</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/تست‌نویسی-javascript-typescript-مقدمات</guid>
            <pubDate>Sat, 06 Dec 2025 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <category>تست‌نویسی در Javascript/Typescript</category>
            <enclosure url="http://farshidev.ir/images/blog/testing-title.webp" type="image/webp" />
        </item>
        <item>
            <title>استفاده از zustand برای بهبود مدیریت state ها</title>
            <description>وقتی صحبت از مدیریت stateها در اپلیکیشن‌های react ای میشه نمیشه یه نسخه برای همه اپلیکیشن‌ها پیچید، بعضی وقت ها stick شدن به همون امکانات react مثل Context API جوابه و بعضی وقتها نیاز به کتابخونه...</description>
            <link>http://farshidev.ir/Post/‌zustand-react-smart-state-managment</link>
            <guid isPermaLink="true">http://farshidev.ir/Post/‌zustand-react-smart-state-managment</guid>
            <pubDate>Fri, 07 Nov 2025 00:00:00 GMT</pubDate>
            <author>فرشید</author>
            <enclosure url="http://farshidev.ir/images/blog/zustand.webp" type="image/webp" />
        </item>
    </channel>
</rss>

