📖 واژهنامه، استانداردها و قراردادهای کد
اصطلاحات فارسی/انگلیسی، الگوهای نامگذاری و استانداردهای حرفهای
آخرین بروزرسانی: اسفند ۱۴۰۴ (بروزرسانی: Magic Wallet)
۱. واژهنامه اصلی (فارسی ↔ انگلیسی)
۱.۱ مفاهیم بیزینسی
| فارسی |
انگلیسی |
توضیح |
| کارا بازار سلامت |
FourSat |
نام تجاری پلتفرم |
| باشگاه مشتریان |
Club Membership |
عضویت ویژه با پکیج طلایی |
| پکیج طلایی |
Golden Package |
بسته ۵۶M تومان برای ورود به باشگاه |
| درخت باینری |
Binary Tree |
ساختار شبکهای ۲ شاخهای |
| پای چپ / راست |
Left Leg / Right Leg |
دو شاخه هر نود در درخت |
| کمیسیون هفتگی |
Weekly Commission |
سهم از Pool بر اساس بالانس |
| بالانس هفتگی |
Weekly Balance |
MIN(فروشچپ, فروشراست) |
| سقف هفتگی |
Weekly Cap |
حداکثر ۳۰۰ واحد هر پا |
| باقیمانده |
Carryover |
فروش مازاد قابلانتقال به هفته بعد |
| Pool هفتگی |
Weekly Commission Pool |
مخزن کمیسیون قابلتوزیع |
| هزینه فعالسازی |
Activation Fee |
۲۵M تومان از Balance |
| واریز هدیه |
Gift Value |
۲۵.۲M واریز به Pool |
| فروشگاه اعتباری |
Discount Store |
فروشگاه اعتباری per-product برای اعضا |
| پرداخت ترکیبی |
Hybrid Payment |
DiscountBalance + IPG |
| وام دایا |
Daya Loan |
وام آنلاین برای خرید پکیج |
| کد معرف |
Referral Code |
کد یکتا هر عضو برای دعوت |
| موجودی |
Inventory |
تعداد محصول در انبار |
| کیفپول جادویی |
Magic Wallet |
حالت ویژه: Balance=0 → شارژ ×2.5 از درگاه |
| حالت جادویی |
Magic Mode |
WalletMode=1 — کمیسیون غیرفعال |
| ضریب شارژ |
Magic Multiplier |
واریز × 2.5 = اعتبار Balance |
| سقف دور |
Per-Cycle Cap |
100M تومان واریز → 250M اعتبار |
| دوره عضویت |
Membership Cycle |
ClubMembershipCycle — هر خرید پکیج = یک دور |
۱.۲ مفاهیم فنی
| فارسی |
انگلیسی |
توضیح |
| سامانه مدیریت محتوا |
CMS Microservice |
هسته اصلی backend |
| پنل مدیریت |
BackOffice |
رابط ادمین (Blazor WASM) |
| سایت کاربران |
FrontOffice |
رابط مشتری (Blazor Server) |
| درگاه پرداخت |
Payment Gateway (IPG) |
ZarinPal |
| سرویس پرداخت |
PYMS |
Payment Management Service |
| کیفپول نقدی |
Balance Wallet |
موجودی قابلخرج |
| کیفپول طلایی |
Network Balance |
برای محاسبه کمیسیون (شارژ نمیشود) |
| کیفپول اعتباری |
Discount Balance |
برای فروشگاه اعتباری (IPG و Daya: 112M — دو برابر BasePackageAmount) |
| بارگذاری تنبل |
Lazy Loading |
لود محصولات 12تایی (FO) / 10تایی (CMS default) |
| صفحات سایت |
Site Pages |
صفحات قابلویرایش (Shopify-style) |
| ثوابت سیستمی |
System Constants |
تنظیمات key-value |
| پردازش پسزمینه |
Background Job |
Hangfire recurring/fire-and-forget |
۲. مخففها (Abbreviations)
| مخفف |
کامل |
توضیح |
| CMS |
Content Management System |
مایکروسرویس اصلی |
| BO |
BackOffice |
پنل مدیریت |
| FO |
FrontOffice |
سایت کاربران |
| BFF |
Backend-for-Frontend |
حذفشده |
| CQRS |
Command Query Responsibility Segregation |
الگوی معماری |
| gRPC |
Google Remote Procedure Call |
پروتکل ارتباطی |
| EF |
Entity Framework |
ORM |
| JWT |
JSON Web Token |
احراز هویت |
| IPG |
Internet Payment Gateway |
درگاه پرداخت آنلاین |
| PYMS |
Payment Management Service |
سرویس مالی |
| SP |
Stored Procedure |
رویه ذخیرهشده SQL |
| OTP |
One-Time Password |
رمز یکبار مصرف |
| K8s |
Kubernetes |
ارکستراسیون کانتینر |
| CI/CD |
Continuous Integration/Deployment |
خط لوله خودکار |
| RTL |
Right-to-Left |
راستبهچپ (فارسی) |
| WASM |
WebAssembly |
فرمت اجرایی مرورگر |
| PWA |
Progressive Web App |
وباپ پیشرفته |
۳. استانداردهای نامگذاری
۳.۱ C# / .NET
| نوع |
الگو |
مثال |
| Class |
PascalCase |
ProductService, CreateProductCommand |
| Interface |
I + PascalCase |
IProductService, ICurrentUserService |
| Method |
PascalCase + Async |
GetProductsAsync(), CreateOrderAsync() |
| Property |
PascalCase |
ProductName, IsActive |
| Private field |
_camelCase |
_dbContext, _logger |
| Parameter |
camelCase |
productId, userId |
| Constant |
PascalCase |
MaxNetworkLevel, ActivationFee |
| Enum |
PascalCase (singular) |
OrderStatus, PaymentType |
| Namespace |
Company.Project.Feature |
CMSMicroservice.Features.Products |
۳.۲ Protobuf
| نوع |
الگو |
مثال |
| Service |
PascalCase + Service |
ProductService |
| Method |
PascalCase |
GetProducts, CreateOrder |
| Message |
PascalCase + Message/Request/Response |
ProductMessage, GetProductsRequest |
| Field |
snake_case |
product_name, is_active |
| Enum |
PascalCase |
ORDER_STATUS_PENDING |
۳.۳ Blazor / UI
| نوع |
الگو |
مثال |
| Page |
PascalCase.razor + .razor.cs |
Products.razor, Products.razor.cs |
| Component |
PascalCase.razor |
AppImage.razor, ProductCard.razor |
| Parameter |
[Parameter] PascalCase |
[Parameter] public string Title |
| CSS class |
kebab-case |
product-card, hero-section |
۳.۴ Database
| نوع |
الگو |
مثال |
| Table |
PascalCase (plural) |
Products, Users, Orders |
| Column |
PascalCase |
ProductName, CreatedAt |
| FK |
{Entity}Id |
ProductId, UserId |
| SP |
SP_ / sp_ + PascalCase |
SP_GetNetworkTree |
| Schema |
[CMS] |
[CMS].Products |
۴. الگوهای معماری
۴.۱ CQRS Pattern
۴.۲ gRPC Client Pattern (FrontOffice/BackOffice)
۴.۳ Hangfire Job Pattern
۵. Git Workflow
۵.۱ شاخهها
| شاخه |
کاربرد |
Deploy Target |
kub-stage |
توسعه فعال |
Staging server |
production |
محیط نهایی |
Production server |
main |
مستندات (totalDoc) |
— |
۵.۲ مخازن
| مخزن |
Remote |
شاخه اصلی |
| CMS |
gitea → git.se.kbs1.ir |
kub-stage |
| BackOffice |
kub-stage → git.se.kbs1.ir |
kub-stage |
| FrontOffice |
kub-stage → git.se.kbs1.ir |
kub-stage |
| Docs (totalDoc) |
foursatDocs → git.se.kbs1.ir/admin/docs |
main |
۵.۳ Commit Convention
۶. ساختار پروژه
۷. Definition of Done (DoD)
هر فیچر قبل از merge باید: