این سند برنامه نویسان و توسعه دهندگان را به دست یابی راهکارهایی برای ساختار ناپ کامرس راهنمایی می کند. این سند برای توسعه دهندگان تازه کاری اختصاص دارد که میخواهند بتازگی پایگاه کدهای ناپ کامرس را بیاموزند. نکنه اول اینکه کدهای منبع ناپ کامرس بسیار ساده هستند. ناپ کامرس یک نرم افزار متن باز است در نتیجه تنها کاری که برای دست یابی به کدهای آن میبایست انجام دهید، دانلود آن از اینترنت است. پروژه ها و پوشه ها به ترتیب در محیط ویژوال استدیو نمایش داده می شوند. ما توصیه میکنیم که Solution ناپ کامرس را در ویژوال استدیو باز کرده و در حین مطالعه این خودآموز به فایل ها و پروژه ها دسترسی داشته باشید.
بسیاری از پروژه ها، پوشه ها و فایل ها به نحوی نامگذاری شده اند که شما از ایده کلی آن مطلع خواهید بود. مثلا لازم نیست تا پروژه Nop.Plugin.Payments.PayPalStandard را باز کنیم تا بفهمیم در چه رابطه ایست.
پروژه Nop.Core شامل دسته کلاس های هسته ناپ کامرس است. مثل caching، events، helpers و business objects (مثلا Order و Customer entity)
پروژه Nop.Data شامل دسته کلاس ها و توابع مربوط به خواندن و نوشتن در دیتابیس و دیگر باتک های اطلاعاتی است. این بخش به تفکیک منطق دسترسی به اطلاعات از business objects کمک میکند. ناپ کامرس از Entity Framework (EF) استفاده می کند و رویکرد Code-First دارد. این به شما اجازه میدهد تا entity در کدمنبع تعریف کنید. (همه entity های هسته در پروژه Nop.Core تعریف می شود) و سپس با دریافت ET بانک اطلاعاتی از آن ایجاد شود. به همین دلیل به این امکان Code-First گفته میشود. آنوقت میتوانید کوئری اشیا خود را از طریق LINQ بگیرید، که SQL را در پس زمینه ترجمه میکند و در دیتابیس به اجرا در میاورد. ناپ کامرس از کد API روان و ساده ای استفاده می کند تا بتواند نگاشت پایدار کاملا شخصی سازی شده ای داشته باشد. شما میتوانید در اینجا و اینجا اطلاعات بیشتری در مورد Code-First بیابید.
این پروژه شامل هسته سرویس ها، منطق تجارت، ارزیابی یا محاسبات مربوط به دیتا در صورت نیاز میباشد. برخی این بخش را لایه دسترسی تجارت (BAL) می نامند.
\Plugins یک پوشه solution در محیط ویژوال استدیو است که پروژه های مربوط به افزونه ها را در خود جای داده. این افزونه ها در مسیر اصلی solution قرار دارند. اما DLL های مرتبط با افزونه ها بصورت خودکار در مسیر \Presentation\Nop.Web\Plugins\ کپی میشوند، که افزونه های قبلی نیز در همین مکان قرار دارند چون مسیر ساخته شده همه افزونه ها به شکل زیر است. "..\..\Presentation\Nop.Web\Plugins\{Group}.{Name}\". این روش به افزونه ها این امکان را میدهد که شامل تعدادی فایل های استاتیک خارجی مثل CSS یا JS باشند بدون اینکه نیاز به کپی فایل ها بین پروژه ها باشیم.
Nop.Web یک پروژه اپلیکیشن تحت وب MVC است. لایه نمایش (presentation) برای فروشگاه عمومی شامل پنل مدیریت در همان محل است. اگر قبلا با ASP.NET MVC کار نکرده اید، اطلاعات بیشتری در اینجا .پیدا می کنید. این یک نرم افزار که شما آنرا اجرا کرده اید. این مرحله شروع پروژه نرم افزار است.
Nop.Web.Framework کتابخانه کلاس های پروژه شامل چیزهای عمومی نمایش برای پروژه Nop.Web است.
Nop.Core.Tests پروژه ای آزمایشی برای پروژه Nop.Core است.
Nop.Services.Tests پروژه ای آزمایشی برای پروژه Nop.Services است.
Nop.Tests یک کتابخانه کلاس ها شامل چیزهای عمومی کلاس های تست و کمک هایی برای دیگر پروژه های تست است. این شامل هیچ تستی نیست.
Nop.Web.MVC.Tests یک پروژه آزمایشی برای لایه نمایش پروژه هاست.
طراحی فروشگاه خود را با امکانات بیشمار و قالب اختصاصی به ما بسپارید. نمونه پروژه های اجرا شده ما را ببینید.
ناپ شاپ با برگزاری دوره های آموزشی در دانشگاهها، ارائه راهنمای فارسی، انجمن گفتگو، فیلم های آموشی، وبلاگ، طراحی انواع پلاگین ها و راه اندازی انواع فروشگاه اینترنتی، در توسعه ناپ کامرس در ایران تلاش میکند.