قراره تو این رشته مقالهها بگم چیا یاد میگیرم تو مسیر شغلیم و کجاها استفادش میکنم.
خیلی وقت پیش بود کتاب Real word next.js رو خریده بودم اما هر از گاهی اگه به چالشی برمیخوردم سراغش میرفتم.
تا اینکه تصمیم گرفتم شروع کنم به خوندن اساسی کتاب.
صحبت امروزم درباره authentication توی next.js هست. authentication یک جنبه حیاتی از برنامه های کاربردی وبه که یوزر را ملزم به ورود به سیستم و دسترسی به داده های شخصی خود میکند. Next.js چندین استراتژی احراز هویت ارائه می دهد که میتونیم از اونها برای ایمن سازی برنامه خود استفاده کنیم. یکی از رایج ترین روش ها استفاده از کوکیها برای ذخیره توکنهای احراز هویت است. ما از کتابخانه nookies برای تنظیم کوکی به نام auth_token با حداکثر زمان اکسپایر 30 روز استفاده می کنیم که به هر دو روش client side و serverside قابل استفاست. هنگامی که کاربر احراز هویت شد، او را به صفحه داشبورد هدایت میکنیم. همچنین، می توان از NextAuth.js برای اهداف امنیتی بهتر استفاده کرد.
مطلب بعدی درباره تایپوگرافیه که تو کتاب refactoring ui بهش سر زدم.
تایپوگرافی تو انتقال حس به یوزر نقش مهمی دارد. فکر کن وارد سایتی بشی که نه فونت زیبایی داره نه اندازه درستی؛ قطعا حس قشنگ و حرفهای از اون پروداکت نمیگیرید شکل کلمات میتوانند به درک مطلب و درک معنا و حسی که یک متن دارد کمک کند.
بسیاری از طراحان از اصطلاحات Typeface و font بهجای یکدیگر استفاده میکنند. بااینحال، اینها یک چیز نیستند typeface طرحی برای نوع حروف است. درحالیکه Font اندازه و وزن خاصی است که آن حروف نوشته میشوند. به طور خلاصه بخوام بگم Typeface چیزی شبیه به خانواده است و font ها بخشی از آن هستند. درواقع Typeface نمایش گرافیکی برای یک متنه.
نکته دیگهای که یاد گرفتم iterator هاست.
معمولا برای انجام یک عمل بر روی یک آرایه باید بر اساس index آرایه track کنیم.نکته ای که وجود داره اینه که اگر چند حلقه تودرتو داشته باشیم.پیچیدگی زمانی افزایش پیدا میکنه و متغیر های داخل for ما ممکنه دچار خطا بشه
چیزی که آشنا شدم باهاش iterator که صرفا فقط برای آرایه نیست. درواقع بهمون دو تا نکته رو میگه که آیا الان ایتمی هست که track نشده باشه(done)؟ اگر هست اون چیه(value)؟
از لحاظ فنی ، زمانی که یک object زمانی iterator است که() next یک object با دو properties بر گردونه done: یک مقدار boolean که نشان می دهد، آیا عناصر دیگری وجود دارد که می توان آنها را تکرار کرد یا خیر. value: عنصر فعلی
هر دفعه که ()next را صداکنیم ،مقدار بعدی رو بهمون میده.