در این ماژول، رقابتکننده موظف است با بهرهگیری از قابلیتهای فریمورک تعیینشده، سرویس سمت سرور را بهطور کامل طراحی و پیادهسازی نماید. تمرکز اصلی این ماژول بر طراحی ساختار پایگاه داده، توسعهی منطقی لایهی بکاند، و ایجاد تعامل مؤثر میان سرور و پایگاه داده است.
ممکن است مدلهای اولیهی طراحی (Wireframe) یا رابطهای کاربری (UI) از پیش تعریفشده در اختیار رقابتکننده قرار گیرد که لازم است بخشهایی از آنها ـ مانند پنل مدیریت محصولات یا رابط کاربری عمومی ـ بهصورت محدود پیادهسازی شود. با این حال، این بخشهای ظاهری تنها سهم اندکی از مجموع امتیازات را به خود اختصاص میدهند.
آنچه در این ماژول اهمیت اساسی دارد، پیادهسازی اصولی منطقهای بکاند و تضمین کارکرد صحیح و بهینهی ارتباط با پایگاه داده است. مدیریت خطاها و ساختاردهی مناسب پروژه از دیگر معیارهای کلیدی در ارزیابی این بخش بهشمار میرود.
پروژههای جهانی
سال ۲۰۲۲
در مسابقات جهانی سال ۲۰۲۲، از رقابتکنندگان خواسته شد تا یک RESTful API برای مدیریت یک سرویس گیمینگ طراحی و پیادهسازی کنند. این پروژه شامل پیادهسازی Routeهای مشخص و توسعهی یک پنل مدیریتی برای کنترل و نظارت بر عملکرد سیستم بود.
در این پروژه، شرکتکنندگان باید با بهرهگیری از معماری REST، ساختاری دقیق برای ارتباط میان کلاینت و سرور ایجاد کرده و قابلیتهایی مانند ثبتنام و ورود کاربران، مشاهدهی لیست بازیها، مدیریت کاربران و تنظیمات سرویس را بهطور کامل پیادهسازی کنند. طراحی پایگاه داده، پیادهسازی اعتبارسنجی دادهها، امکان آپلود نسخههای مختلف بازی توسط ناشران، مدیریت آنها در سمت سرور و نمایش مناسب به بازیکنان، به همراه تولید پاسخهای استاندارد، از جمله بخشهای کلیدی این پروژه بهشمار میروند.
سال ۲۰۲۴
در مسابقات جهانی سال ۲۰۲۴، رقابتکنندگان موظف بودند یک سیستم مدیریت محصول را بهصورت کامل طراحی و پیادهسازی کنند. این پروژه شامل طراحی پایگاه داده (Database Design)، توسعهی یک RESTful API جامع و همچنین ساخت چند صفحهی سمت کاربر (Client-side Interface) بود.
شرکتکنندگان باید با در نظر گرفتن اصول طراحی پایگاه داده، جداول مرتبط با محصولات، کاربران، سفارشات و موجودی را تعریف کرده و سپس با استفاده از یک فریمورک مناسب، API مورد نیاز را برای انجام عملیات CRUD (ساخت، خواندن، بهروزرسانی و حذف) پیادهسازی میکردند.
زبانها و Framework های مجاز
PHP
میتوانید از زبان PHP و Framework های زیر استفاده کنید:
- Laravel
- Yii
- CakePHP
- CodeIgniter
JavaScript (Node JS)
میتوانید از زبان JavaScript و تنها Framework ExpressJs استفاده کنید:
- ExpressJS
- ejs
- hbs
- pug view engine
- and express-generator
- Prisma
دیتابیس
در این ماژول برای پیادهسازی دیتابیس مجاز به استفاده از MariaDB هستیم.
طراحی
برای پیادهسازی طراحی در این ماژول، مجاز به استفاده از Bootstrap هستیم.
نرمافزارهای موجود در سیستم مسابقه
- Visual Studio Code
- PHPStorm
- MySQL Workbench
- Composer
- Node.js (with npm)
- PHPmyAdmin
- FileZilla Client
- Firefox Developer Edition
- WinSCP
- Eclipse PHP incl
- Sublime Text
- PuTTY utilities
- Gimp
- PHPUnit
- Zeal Doc
- Postman
- DevDocs
- Vue-cli
- Git
نرمافزارهای موجود در سرور مسابقه
- Git
- PHPUnit
- Node.js with npm
- Composer
- Vue Cli
افزونههای Visual Studio Code
- Prettier – Code Formatter
- PHP Intelephense
- Laravel Blade Snippets
- Laravel Extra Intellisense
- Vue – Official
- ES7 + React/Redux/React-Native snippets
- Angular Language Service
افزونههای مرورگر (Firefox و Chrome)
- aXe by Deque
- Angular DevTools
- React Developer Tools
- Vue.js devtools