Bu [Modern Backend] kursining 1-qismidagi yettinchi sessiyaning “Kontekstni uzatishni refaktorlash (1)” nomli birinchi ma’ruzasi.
Ushbu ma’ruzada biz maqsadlarni tahlil qilamiz va bulletin board loyihasining mavjud ThreadLocal asosidagi kontekstni uzatish mantiqini Java 25 ScopedValue asosidagi arxitekturaga o‘tkazish uchun dizayn refaktorligini amalga oshiramiz.
📌 Ko‘rib chiqiladigan asosiy mavzular:
-
Refaktorlash uchun mo‘ljallangan to‘rtta faylni ko‘rib chiqish (RequestContext, RequestContextFilter, PostCreationCoordinator va boshqalar)
-
Refaktorlashning besh bosqichli ketma-ketligi va kompilyator xatolariga asoslangan yondashuv
-
Mavjud ThreadLocal kod tuzilmasini tahlil qilish va dasturchi kelishuvlariga (set/clear) bog‘liq bo‘lgan qo‘lda boshqarishning to‘rtta nuqtasini aniqlash
-
RequestContext holder ichki qismini ScopedValue dan foydalanishga o‘tkazish va uning API metodlarini kengaytirish
runWith,callWith,getOrSystemva hokazo.) -
Veb-so‘rovning kirish nuqtasini (Servlet Filter) Scoped Value doirasini bog‘lash tuzilmasi bilan almashtirish
-
Servlet Filter ichida,
runWith/callWithFoydalanishda yuzaga kelishi mumkin bo‘lgan tekshiriladigan istisnolar va Java turini avtomatik aniqlash bilan bog‘liq kompilyatsiya xatolarini hal qilish tamoyillari
Mavjud ThreadLocal ning tuzilmaviy cheklovlaridan tashqariga chiqib, kontekstni xavfsiz uzatish uchun Modern Java arxitekturasini refaktorlash jarayonini o‘rganing.