منشاء App Router – A Next.Js Rewind

پیشگفتار
نظرات ضد و نقیض زیادی در مورد Next.js 13 App Router وجود دارد، برخی از آنها می گویند که این روش مسیریابی کند است و وزن غیر ضروری زیادی در پروژه ایجاد می کند، اما از طرف دیگر بسیاری از افراد می گویند که مدیریت مسیرهای خود با استفاده از برنامه روتر بهترین راه برای بهبود بهره وری در حین ساخت با Next.js خود Vercel است
چرا Next ایجاد شد؟
در یکی از ویدیوهای لوکاس مونتانو – این ویدیوی خاص ماریو سوتو را نشان میدهد، آنها لحظهای به گذشته نگر در مورد هدف وجود Next.js صحبت کردند.
چه زمانی گیلرمو راخمدیر عامل Vercel، اولین بار Next.js را در سال 2017 راه اندازی کرد، او اشاره کرد که Next در تلاش برای ساختن چارچوبی ساخته شده است که برنامه را با ادغام PHP با جاوا اسکریپت بسازد.
به نحوه ایجاد برنامه های وب با PHP فکر کنید. شما چند فایل ایجاد می کنید، کد PHP را می نویسید، سپس به سادگی آن را مستقر می کنید. نیازی نیست که زیاد نگران مسیریابی باشیم و برنامه به صورت پیش فرض بر روی سرور رندر می شود.
ویدیو را اینجا ببینید
مقایسه AppRouter با روتر PHP
شروع با PHP، جایی که ایده Next از آنجا شروع شد.
در PHP، راههای زیادی برای مسیریابی برنامهتان وجود دارد، همانطور که در React کار میکند، میتوانید تعدادی کتابخانه مسیریابی نصب کنید و با یک سفارشی کار کنید. routes.php یا می توانید برای ساختن یک ساختار پوشه ای انتخاب کنید که مسئول مسیریابی کل برنامه شما باشد

همانطور که می بینید، هر یک از فایل های داخل این فهرست منبع به یک مسیر اختصاص داده شده است، بنابراین 404.php خواهد بود /404 مسیر، به همین ترتیب home.php خواهد بود / مسیر
خیلی ساده، درست است؟ Next از یک ساختار پوشه تقریباً یکسان برای مسیریابی برنامه ها استفاده می کند.

در بالا، مسیریابی اصلی Next.js وجود دارد که بر اساس آن بود pages پوشه آ pages پوشه مورد نیاز برای ایجاد مسیرها در برنامه وجود دارد.
ساختار شامل یک صفحه در داخل پوشه pages و a index.tsx فایل داخل زیر پوشه
به عنوان مثال: دایرکتوری pages/users/duca.tsx مسیر را ایجاد می کند users/duca.
روش جدید مسیریابی: AppRouter
ورسل برای اینکه مسیر بعدی را مختصرتر کند، App Router را توسعه داد.
اکنون مسیرها به شکل زیر هستند:

برنامه دیگر به پوشه نیاز ندارد pages برای کار. حال از این ساختار پیروی می کند: app/users/duca/page.tsx برای تولید /users/duca مسیر در این مثال، به نظر می رسد مسیریابی ثابت است، زمانی که همیشه فقط یکی وجود خواهد داشت /duca مسیر و بدون ایجاد یا تغییر نام پوشه موجود نمی توانید کاربر را تغییر دهید.
اما، بیایید دیدگاه جدیدی را امتحان کنیم: اگر میخواهید یک مسیر پویا ایجاد کنید که نام کاربر را با آدرس اینترنتی آن بخواند و سپس آن را روی صفحه نمایش دهد، میتوانید کاری شبیه به این انجام دهید:

ملاحظات نهایی
گیلرمو با موفقیت یک سیستم مسیریابی مبتنی بر فایل ایجاد کرده بود که می ترسم بگویم بهتر از سیستم PHP کار می کند.
حالا به شما بستگی دارد. بر اساس برنامه شما، کدام سیستم مسیریابی بهتر به شما خدمات می دهد؟ مسیریابی صفحه (منسوخ شده) یا روتر برنامه جدیدتر؟
آیا تحت تأثیر سیستمی قرار می گیرید که بیشتر به پوشه ها نیاز دارد اما نامگذاری مختصری دارد یا ترجیح می دهید به استفاده از pages پوشه در حال تبادل از پوشه های کمتری برای مسیریابی برنامه خود استفاده می کنید؟
کدگذاری Sig
Sig اولین استارتآپ DAO در جامعه است که برنامههای SaaS را با پشتیبانی از جامعه خود تولید میکند. ما وقت خود را صرف فکر کردن در مورد اینکه چگونه همه چیز را بهتر کنیم و چگونه فناوری را دوستدار محیط زیست کنیم، صرف می کنیم.



