مصاحبه Architecture — سطح Mid
سؤالها بر اساس دفعات تکرار در مصاحبههای واقعی مرتب شدهاند.
چکلیست آمادگی مصاحبه
هنوز هیچ سؤالی را تمرین نکردهای. حالت تمرین را شروع کن.
0 از 16 سؤال «بلد بودم» · 0 سؤال مرور شده · این پیشرفت فقط روی همین مرورگر ذخیره میشود.
16 سؤال
- 1.اصل Single Responsibility چه میگوید؟هر کلاس فقط باید یک دلیل برای تغییر داشته باشد.تکرار در مصاحبهها: 75٪
- 2.Dependency Inversion Principle چه رابطهای با Dependency Injection دارد؟Dependency Inversion یک اصل طراحی است (وابستگی به Abstraction، نه پیادهسازی مشخص)؛ Dependency Injection یکی از تکنیکهای رایج برای پیادهسازی همان اصل است.تکرار در مصاحبهها: 68٪
- 3.اصل Open/Closed در SOLID یعنی چه؟کلاس باید برای توسعه باز و برای تغییر بسته باشد.تکرار در مصاحبهها: 62٪
- 4.تفاوت FluentValidation و Data Annotations چیست؟Data Annotations قوانین را مستقیم روی خود کلاس مدل میگذارد؛ FluentValidation قوانین را در یک کلاس کاملاً جدا نگه میدارد.تکرار در مصاحبهها: 58٪
- 5.MediatR چه مشکلی را در Controllerهای ASP.NET Core حل میکند؟بهجای تزریق و فراخوانی مستقیم چند Service مختلف داخل Controller، Controller فقط IMediator را تزریق و یک Request ارسال میکند.تکرار در مصاحبهها: 56٪
- 6.AutoMapper بر چه اساسی نگاشت بین دو Object را انجام میدهد؟بر اساس تطابق دقیق نام Propertyهای مبدأ و مقصد.تکرار در مصاحبهها: 54٪
- 7.Pipeline Behavior در MediatR چیست؟کدی که دور اجرای همه یا بخشی از Requestها میپیچد تا منطق مشترک (مثل Logging یا Validation) بدون تکرار در هر Handler اجرا شود.تکرار در مصاحبهها: 52٪
- 8.FluentValidation معمولاً در کجای Pipeline یک درخواست اجرا میشود؟پیش از رسیدن درخواست به منطق اصلی — معمولاً بهعنوان یک Pipeline Behavior در MediatR یا یک Filter در ASP.NET Core.تکرار در مصاحبهها: 50٪
- 9.چه زمانی نباید از AutoMapper استفاده کرد؟وقتی منطق تبدیل پیچیده (محاسبات شرطی، ترکیب چند Entity با قوانین کسبوکار) در میان باشد.تکرار در مصاحبهها: 50٪
- 10.تفاوت Vertical Slice Architecture با معماری لایهای سنتی چیست؟در معماری لایهای، کد هر Feature بین چند لایه مشترک (Controller/Service/Repository) پخش است؛ در Vertical Slice، هر Feature یک برش عمودی و مستقل کامل است.تکرار در مصاحبهها: 48٪
- 11.رابطه Request و Handler در MediatR چگونه است؟هر Request (Command یا Query) دقیقاً یک Handler مشخص دارد که آن را پردازش میکند.تکرار در مصاحبهها: 48٪
- 12.Vertical Slice Architecture معمولاً در .NET با کدام کتابخانه پیاده میشود؟معمولاً با MediatR، جایی که هر Slice یک Command/Query و یک Handler مستقل دارد.تکرار در مصاحبهها: 46٪
- 13.ForMember در AutoMapper چه کاربردی دارد؟برای تعریف صریح نگاشت یک Property که نامش با مقصد یکی نیست یا نیاز به تبدیل خاص دارد.تکرار در مصاحبهها: 46٪
- 14.چرا نباید منطق کسبوکار پیچیده داخل یک Validator نوشته شود؟چون مسئولیت Validator فقط بررسی شکل و صحت ورودی است، نه اجرای قوانین کسبوکار واقعی.تکرار در مصاحبهها: 45٪
- 15.چرا در Vertical Slice Architecture کمی تکرار کد بین Sliceها پذیرفته میشود؟چون استخراج زودهنگام یک انتزاع مشترک بین Featureهای مستقل، همان وابستگی متقاطعی را برمیگرداند که این معماری قصد حذفش را دارد.تکرار در مصاحبهها: 44٪
- 16.Coupling و Cohesion چه هستند و رابطهٔ ایدهآل بین آنها چیست؟Coupling میزان وابستگی بین ماژولهاست و Cohesion میزان یکپارچگی مسئولیت داخل یک ماژول؛ هدف Coupling کم و Cohesion بالاست.تکرار در مصاحبهها: 35٪
