هات ریلودینگ چیست؟ لایو ریلودینگ چیست؟

سلام خدمت تمامی دوستان کدفرندی عزیز ,‌ در این مقاله قصد داریم فرق بین live reloading و hot reloading و hot module replacement را بررسی کنیم.

لایو ریلودینگ (live reloading)

وقتی وب اپلیکیشنی یا وبسایت را توسعه میدهید به این قسمت از کار که باید هر موقع که چیزی را در کدادیتورتان نوشتید سیو (save) کنید و بعد مرورگر را رفرش refresh کنید توجه کرده اید؟؟

شاید برخی با این نوع از کار یا تجربه توسعه مخالف باشند شاید برای برخی آزار دهنده باشد شاید هرچیزی …

لایو ریلودینگ دقیقا همین مبحث است ولی کمی متفاوت تر با رفرش کردن دستی که با اقدام ما صورت میگیرد , منظور چیست؟ فرض کنید من یک برنامه را با react native مینویسم و قطعه ای از کد را تغییر میدهم و بعد از زدن ctrl + s یا همان فرایند save کردن بلا فاصله بدون اینکه من دکمه refresh را بزنم خود اپلیکیشن برنامه را ریلود میکند یا همان رفرش کردن . و این ویژگی تجربه توسعه خوبی را بوجود آورده ولی بعد از سیو کردن شما به نقطه اول کار هدایت میشوید .

نقطه اول کار کجاست؟ یعنی اگر از صفحه اول وبسایت یا اپلیکیشنتان به صفحه دیگری رفتید و در آنجا تغییری بوجود آوردید بعد از آن تغییر و زدن دکمه save اپلیکیشن شما خودکار reload میشود و یا همان refresh میشود و تغییرات شما اعمال شده است , اما شما در آن صفحه نخواهید بود و به صفحه اول میروید و باید دوباره به آن صفحه ای که قبلا بوده اید و برای آن تغییراتی انجام داده اید برگردید .

LR مخفف live reloading یا همان لایو ریلودینگ هم هست

ولی یک راه حل ساده تر و خیلی خیلی آسان تر وجود دارد و یک تجربه توسعه خیلی خوبی را به توسعه دهندگان داده است که اسمش hmr یا همان hot reloading است . و در ادامه آن را بررسی خواهیم کرد .

هات ریلودینگ چیست؟ (hot reloading)

هات ریلودینگ یا hmr یا هات ماژول ریپلیسمنت(hot module replacement) این سه نام یکی هستند و تعریف و مفهومشان به این صورت است که میتوان گفت راهیست بهتر و آسان تر از live reloading چرا که در این روش شما نیاز به ریفرش refresh کردن پیج اصلا ندارید و کافی است تغییرات را انجام دهید و دکمه save  را بزنید و بعد از آن تغییرات را بلا فاصله در اپلیکیشن یا وبسایت خواهید دید بدون هیچ reload یا refresh ای و بدون اینکه به صفحه اول یا نقطه استارت برنامه بروید .

hmr مخفف hot module replacement است و نام hot reloading نیز کوتاه تر شده و به نوعی مخفف hot module replacement است .

در آخر

هات ریلودینگ تجربه توسعه بسیار خوبی را دارد و حتما با آن کار کنید تا فرایند توسعه کاریتان آسان تر و سریع تر باشد و از زدن دکمه reload یا refresh مرورگر دست بکشید , و در آخر : یک تصویر یا یک ویدیو بهتر از هزاران کلمه است . برای دیدن تصویری فرق بین live reloading و hot reloading این ویدیو را ببینید .

دوره های کدفرند و مقالات آموزشی آن را دنبال کنید .