خانه / آموزش

آموزش

فایل نمرات (تا پایان جلسه ۱۶ام)

سطح سوال: ساده می‌خواهیم برنامه‌ای بنویسیم تا بتوانیم با فایل نمرات دانشجویان کار کرده و کارهایی که پیش از این توسط مسوولین آموزش به صورت دستی بر روی این فایل‌ها انجام می‌شد را خودکار کنیم. هر سطر از این فایل دارای سه بخش است که با کاراکتر فاصله (” “) از هم جدا شده‌اند. این سه بخش به ترتیب عبارتند از: شماره دانشجویی کد درس نمره یعنی هر سطر از …

ادامه مطالب

فروشگاه اینترنتی (تا پایان جلسه ۲۰ام)

سطح سوال: ساده بسته‌ی ir.javacup.shop را دانلود کنید. این برنامه برای مدیریت سفارشات یک فروشگاه اینترتی نوشته شده است. در واسط OrderFunctionUtil تعدادی تابع (Function) برای مدیریت بهتر سفارشات تعریف شده است. شما باید در کلاس  OrderFunctionUtilImpl این واسط را مطابق با جدول زیر و با استفاده از عبارات لامبدا پیاده‌سازی کنید. رفتار متد اگر جمع قیمت محصولات سفارش‌داده‌شده برابر با ۱۰ میلیون ریال و یا بیشتر باشد، مقدار true برمی‌گرداند. …

ادامه مطالب

کپی با بازتاب (تا پایان جلسه ۱۹ام)

سطح سوال: متوسط بسته‌ی ir.javacup.reflection را دانلود کنید. داخل این بسته کلاس Copier.java وجود دارد. این کلاس تنها یک متد copy دارد که دو شی o1 و o2 از جنس Object را به عنوان پارامتر دریافت کرده و به صورتی که در ادامه توضیح داده می‌شود، شی o1 را داخل شی o2 کپی می‌کند (مقادیر ویژگی‌های شی o2 را برابر با مقادیر ویژگی‌های شی o1 قرار می‌دهد). باید یک سازنده …

ادامه مطالب

از تولید به مصرف (تا پایان جلسه ۱۷ام)

سطح سوال: متوسط بسته‌ی ir.javacup.thread را دانلود کنید. کلاس‌های Consumer  و Producer را ببینید. شما باید متدهای set و get در کلاس Resource را به گونه‌ای پیاده‌سازی کنید که با اجرای کد زیر: [crayon-5970f87933db9310534763/] خروجی دقیقا به صورت زیر: [۰, ۰, ۱, ۱, ۲, ۲, ۳, ۳, ۴, ۴, ۵, ۵, ۶, ۶, ۷, ۷, ۸, ۸, ۹, ۹] باشد. آنچه باید آپلود کنید: یک فایل زیپ شامل بسته‌ی ir.javacup.thread …

ادامه مطالب

مخزن اشیا (تا پایان جلسه ۱۵ام)

سطح سوال: ساده علی برای نگهداری کاربران در برنامه‎ی خود، از کلاس UserRepository استفاده می‎کند. پیاده‌سازی این کلاس به صورت زیر است: [crayon-5970f879342c0071166098/] که کاربر یک شی از نوع User است: [crayon-5970f879342cb894389273/] برای ذخیره‌ی کاربران از یک نگاشت map استفاده می‎کند که کلید آن شناسه id کاربر و مقدار آن شی کاربر است. هم‌چنین هنگام ذخیره‌ی کاربر، شناسه‎ی کاربر را به وسیله idGenerator تولید می‎کند: [crayon-5970f879342d2241893937/] مدیر پروژه در جلسه‎ای به علی می‎گوید …

ادامه مطالب

احیای سیستم بانکی (آزمون واحد)

سطح سوال: ساده برنامه‌نویسان خبره‌ی ایرانی در گذشته برای سیستم بانکی کشور یک برنامه‌ی بزرگ و جامع طراحی و پیاده‌سازی کرده بودند. اما در جنگ جهانی سوم و با حملات سایبری گسترده‌ای که بر روی سیستم‌های مالی و بانکی کشور انجام شد، بخش اعظمی از این پیاده‌سازی‌های از بین رفت. با پایان جنگ، سعی داریم با استفاده از بقایای کدها، سیستم بانکی رو مانند روز اول تکمیل و پیاده‌سازی کنیم. …

ادامه مطالب

شبیه‌سازی آسانسور (آزمون واحد)

سطح سوال: ساده بسته‌ی ir.javacup.test را دانلود کرده و محتوای آن را ببینید. این بسته شامل یک کلاس تست (Unit Test) است که با فناوری JUnit نوشته شده است. فایل ElevatorTest.javaa، در واقع فایل تست یک برنامه‌ی شبیه‌سازی آسانسور است. برای ما مهم این است که آسانسور شبیه‌سازی‌شده، تمامی این تست‌ها را بتواند با موفقیت پاس کند. پس تا زمانی که این تست‌ها بتوانند پاس بشوند، نحوه‌ی پیاده‌سازی برای ما …

ادامه مطالب

آش مامان‌جون (تا پایان جلسه ۱۴ام)

سطح سوال: متوسط مغازه‌ی آش‌فروشی مامان‌جون یک مغازه‌ی قدیمی و صاحب نام در محدوده انقلاب است. به مرور زمان شهرت و محبوبیت آش‌های مامان‌جون بیشتر و بیشتر شده و تعداد تقاضا و سفارشات روزانه نیز رو به افزایش است. آن‌ها محدودیتی در میزان پخت آش ندارند و تنها چالشی که با آن روبرو هستند، کوچک بودن فضای مغازه برای سرویس‌دهی و فروش آش به مشتریان است. مامان‌جون تصمیم می‌گیرد تا …

ادامه مطالب

کتابخانه (تا پایان جلسه ۱۳ام)

سطح سوال: ساده بسته‌ی ir.javacup.library را دانلود کنید. در این بسته دو کلاس با نام‌های Library و Member و یک واسط IdGenerator وجود دارد. هدف از این تمرین پیاده‌سازی چهار متد register و unregister و getMemberCount و isFull با رفتارهای زیر است: متد register: باید عضو (member) دریافتی را در کتابخانه ثبت‌نام کند، به عبارت دیگر باید آن را به آرایه‌ی members اضافه کند. هنگام ثبت‌نام باید به کمک متد …

ادامه مطالب

فروشگاه لباس (تا پایان جلسه ۱۲ام)

سطح سوال: سخت یک فروشگاه لباس برای نگهداری اطلاعات لباس‌های خود از یک برنامه‌ی جاوا استفاده می‌کند. این فروشگاه چهار نوع لباس (Clothing) دارد که برای هر یک، یک کلاس درنظر گرفته شده است: جوراب (Socks) پیراهن (Shirt) شلوار (Pants) ژاکت (Jacket) برای هر لباس نیز سه ویژگی مشترک نگهداری می‌شود: نام: name فصل مناسب برای پوشیدن لباس: season (بهار، تابستان، پاییز و زمستان) قیمت پایه: basePrice یک رفتار مهم …

ادامه مطالب