معرفی پروژه Orchard
اندازه‌ی قلم متن
تخمین مدت زمان مطالعه‌ی مطلب: سه دقیقه

معرفی پروژه Orchard:
 سیستم مدیریت محتوای Orchard توسط مایکروسافت در ژانویه سال 2011 همراه با ASP.NET MVC 3, IIS Express, SQL CE 4 ,فریم ورک Web Farm و WebMatrix ارائه شد. هدف تمامی این پروژه‌ها ایجاد قابلیتی برای توسعه آسان برنامه‌های تحت وب در محیط ویندوز بود. همانطور که PHP دارای ابزارهای مناسبی برای این منظور است. با ارائه این ابزارها مایکروسافت درخواست برنامه نویسان را برای ساده سازی تجربه توسعه وب اجابت کرد. پروژه Orchard متعلق به Outercurve Foundation (به ندرت CodePlex Foundation نیز شناخته می‌شود) است که توسط مایکروسافت پشتیبانی می‌شود. Outercurve Foundation یک سازمان غیر انتفاعی است که هدف آن تشویق و حمایت از پروژه‌های متنی بازی نظیر Orchad و یا toolkit معروف ASP.NET MVC یعنی MVC Contrib است. مایکروسافت به صورت رسمی از Orchad پشتیبانی نمی‌کند اما در حال حاضر برنامه نویسانی را جهت توسعه این سیستم استخدام کرده است.

برای پروژه Orchad سه هدف تعیین شده است :
1)فراهم نمودن و به اشتراک گذاری یک مجموعه کامپوننت جهت استفاده در برنامه‌های ASP.NET
2)ساخت تعدادی برنامه‌ی مرجع با استفاده از کامپوننت‌های فوق
3)ساخت انجمن هایی برای پشتیبانی از این کامپوننت‌ها و یا برنامه‌های مرجع

 در حال حاضر Orchard بیشتر به عنوان یک سکو (platform) برای ساخت وب سایت‌های ایجاد محتوی استفاده می‌شود آنچه در Orchard حائز اهمیت است ذکر این نکته است که این سیستم به طور کامل با استفاده از ابزار‌های متن باز نوشته شده است. Orchard از ASP.NET MVC 3.0 به همراه View engine جدید و فوق العاده آن یعنی Razor بهره می‌برد. همچنین این پروژه وابستگی زیادی به دیگر ابزارهای متن باز نظیر NHibernate برای دسترسی به داده‌ها و همچنین Autofac برای dependency injection دارد شایان ذکر است که مجوز استفاده از Orchard تحت لیسانس BSD است.

طبق اعلام وب سایت رسمی این پروژه در عرض حدود یک سالی که از ارائه این CMS می‌گذرد بیش از یک میلیون بار دانلود  و بیش از 300 ماژول و تم برای آن ساخته شده است که در گالری آن در دسترس می‌باشد. Orchard به صورت ریلیز‌های جزئی ارائه می‌شود و جدیدترن نسخه آن در هنگام نوشتن این متن 1.5.1 می‌باشد.

اما چرا به یک CMS دات نتی دیگر نیاز است ؟

تعداد زیادی سیستم‌های مدیریت محتوای تجاری و یا متن باز در طول این سال‌ها با استفاده از دات نت ارائه شده اند. (DotNetNuke (DNN بدون تردید یک از معروفترین و قدرتمندترین آن‌ها است. این CMS در ابتدا با VB.NET نوشته شد و این رویه تا مدت‌ها ادامه داشت تا اینکه در نسخه اخیر به #C تغییر کرد. اگرچه DNN و همچنین پروژه متن باز دیگری به نام Umbraco هر دو محبوب هستند اما با استفاده از WebForm‌ها پیاده سازی شده اند( البته Umbraco در نسخه 5 قصد داشت که از ASP.NET MVC استفاده کند اما علی رغم در دسترس قرار گرفتن این نسخه ظاهرا تیم Umbraco برای تمرکز بیشتر روی نسخه وب فرمی, تصمیم ندارند این پروژه را ادامه دهند.) امروزه وب فرم‌ها همانند گذشته محبوب نیستند به همین دلیل رغبت کمتری برای استفاده از این CMS‌ها  نسبت به قبل وجود دارد. با توجه به شواهد موجود بسیاری از برنامه نویسان دات نتی به سمت ASP.NET MVC مهاجرت کرده اند به همین دلیل سیستم Orchard بر مبنای این تکنولوژی نسبتا جدید دات نت پیاده شده است. با استفاده از Orchard می‌توان یک وب سایت با عملکرد بسیار بالا بدون نوشتن حتی یک خط کد ایجاد نمود. اما مانند هر سیستم مدیریت محتوی دیگری اگر بخواهیم به آن قابلیت هایی را اضافه کنیم که به صورت پیش فرض در آن نیست باید با ساختار آن به خوبی آشنا شویم و همچنین بر ابزارهای مورد نیاز این کار نیز احاطه داشته باشیم. برای دریافت اطلاعات بیشتر می‌توانید به وب سایت رسمی این پروژه در اینجا مراجعه کنید
  • #
    ‫۱۲ سال و ۲ ماه قبل، شنبه ۷ مرداد ۱۳۹۱، ساعت ۱۲:۲۸

    سپاس

    در صورت امکان مقایسه ای بین این پروژه و kooboo که آن هم پروژه cms با asp.net mvc3  هست داشته باشید

    • #
      ‫۱۲ سال و ۲ ماه قبل، شنبه ۷ مرداد ۱۳۹۱، ساعت ۱۷:۱۹
      kooboo حدود 5 سال هست که داره فعالیت میکنه اما به شخصه فکر میکنم مستندات اون در این سال‌ها در مقایسه با Orchard بسیار کمتر و محدود‌تر است و به طور کلی در حال حاضر جز CMS‌های مطرح در سطح اول نیست علاوه بر اون من تجربه ای روی این CMS ندارم شاید دوستان دیگر بهتر بتونند کمک کنند
  • #
    ‫۱۲ سال و ۲ ماه قبل، سه‌شنبه ۱۷ مرداد ۱۳۹۱، ساعت ۱۳:۳۱
    خواهشمندم در صورت امکان راجع به معماری پروژه فوق مطلب بنویسید .
    • #
      ‫۱۲ سال و ۲ ماه قبل، سه‌شنبه ۱۷ مرداد ۱۳۹۱، ساعت ۱۷:۲۹
      با سلام
      اتفاقا من قصد داشتم آموزش کاملی درباره این CMS قرار بدم اما نسخه جدید اون منتشر شد و من متاسفانه الان یک مقدار گرفتار هستم و بررسی این نسخه مقداری طول می‏کشه اما حتما بعد از پایان آموزش Git (شاید حدود 3 هفته دیگه) تمام جزئیات Orchard به همراه نحوه ساخت ماژول و تم رو آموزش می‏دهم 
  • #
    ‫۱۲ سال و ۲ ماه قبل، چهارشنبه ۱۸ مرداد ۱۳۹۱، ساعت ۱۵:۵۳
    آیا مقاله ای هست که راجع به معماری این نرم افزار نوشته شده باشد ؟ و اگر نیست میتوان با مهندسی معکوس به معماری این نرم افزار دست یافت ؟
    • #
      ‫۱۲ سال و ۲ ماه قبل، چهارشنبه ۱۸ مرداد ۱۳۹۱، ساعت ۱۵:۵۷
      این پروژه سورس باز است؛ نیازی به مهندسی معکوس ندارد.
  • #
    ‫۱۲ سال و ۲ ماه قبل، یکشنبه ۲۲ مرداد ۱۳۹۱، ساعت ۰۲:۲۱
    ممکن است چند سایت را که توسط orchard  ساخته شده است اعلام کنید
      • #
        ‫۱۲ سال و ۲ ماه قبل، چهارشنبه ۲۵ مرداد ۱۳۹۱، ساعت ۱۶:۲۵
        از لطف شما ممنون هستم. سایتهای معرفی را چک کردم بدون استثنا همه آنها برای لود شده زمان زیادی را صرف میکنند .آیا هسته  orchard کند عمل میکند ؟
        • #
          ‫۱۲ سال و ۲ ماه قبل، چهارشنبه ۲۵ مرداد ۱۳۹۱، ساعت ۱۷:۵۱
          خیر. این CMS امکان استفاده از بانک اطلاعاتی SQL Server CE را دارد. به عبارتی روی یک سرور بسیار ضعیف هم قابل نصب است. به همین جهت اکثر کسانی که از آن استفاده می‌کنند هزینه کمتری کرده و سرورهای ساده‌ای را تهیه خواهند کرد. به علاوه SQL Server CE نسخه رایگان و کم حجم SQL Server است (4 مگ حجم دارد). نیازی به نصب ندارد و این مورد یک مزیت مهم برای استفاده کنندگان عادی است که نمی‌توانند با SQL Server اصلی تعامل داشته‌باشند و از آن سر در بیاورند. بک آپ گرفتن از آن هم در حد کپی کردن فایل دیتابیس است و نیاز به عملیات و یا دانش خاصی ندارد.

        • #
          ‫۱۱ سال و ۱۱ ماه قبل، سه‌شنبه ۱۶ آبان ۱۳۹۱، ساعت ۲۳:۱۱
          برای نمونه سایت زیر را مشاهده کنید،  سرعت بسیار بالایی دارد
  • #
    ‫۱۲ سال و ۲ ماه قبل، چهارشنبه ۲۵ مرداد ۱۳۹۱، ساعت ۲۳:۵۴
    مستندات orchard را از وب سایتش خواندم  . برای مطالعه سورس آن هم وقت گذاشتم. گیج کننده است . نقطه آغاز و نقشه راه آن برایم روشن نشده است . نتوانستم بفهمم در زمان اجرا چه اتفاقی می‌افتد . dashboard آن چگونه فراخوانی میشود و چگونه می‌توان رابط کاربری dashboard را مطابق میل خود طراحی مجدد کرد. در این زمینه میتوانید مرا کمک کنید و یا منابعی را که راجع به سورس کد آن توزیع میدهد معرفی کنید ؟
    • #
      ‫۱۲ سال و ۲ ماه قبل، پنجشنبه ۲۶ مرداد ۱۳۹۱، ساعت ۰۰:۱۷
      پشنیاز درک کدهای آن مطالعه قسمت‌های MVC و NHibernate سایت است (به علاوه مباحث تزریق وابستگی‌ها). هر کدام یک 30 قسمتی هستند. مطالعه و تمرین آن‌ها حدودا نیمی از سال را به خود اختصاص خواهند داد (البته فرض بر این است که حداقل دو سال سابقه کار دات نت دارید و با خیلی از مباحث پایه‌ای آشنا هستید).
      • #
        ‫۱۲ سال و ۲ ماه قبل، پنجشنبه ۲۶ مرداد ۱۳۹۱، ساعت ۰۰:۲۹
        هر سه مورد فوق را میدانم و نزدیک به 15 سال است که برنامه نویس هستم. اما مطالعه کدی که هیچ راهنمایی نداشته باشد شاید دور از ذهن باشد بویژه آنکه نسخه بعدی آن asp.net mvc4 خواهد بود . به هر حال ازتوجه شما سپاسگزارم
        • #
          ‫۱۲ سال و ۲ ماه قبل، پنجشنبه ۲۶ مرداد ۱۳۹۱، ساعت ۰۱:۰۰
          یافتن مستندات درباره طرز کار یک CMS در یک جا عملا غیر ممکن است حتی CMS‌های قدیمی‌تر نیز چنین داکیومنت هایی ندارند حال سوال من این است که هدف شما از یادگیری نحوه عملکرد orchad چیست ؟
          اگر هدف ساخت ماژول و سفارشی کردن آن است (البته منظور سفارشی کردن ماژول‌ها و UI است نه core برنامه) این کار نیازی به دانستن عملکرد کامل آن نیست و مستندات هم در وب سایت آن و هم در فروم codeplex  موجود است فیلم‌های آموزشی pluralsight نیز می‌تواند شروع خوبی باشد در این منابع تمام آنچه شما نیاز دارید موجود است
          اگر هدف شما تغییر core برنامه است این کار به هیچ وجه توصیه نمی‌شود چون باعث بروز مشکلاتی فراوان از جمله عدم امکان به نسخه‌های بالاتر خواهد شد
          اگر هم هدف آموزشی است  قطعا orchard شروع خوبی نیست
  • #
    ‫۱۰ سال و ۹ ماه قبل، جمعه ۶ دی ۱۳۹۲، ساعت ۰۸:۰۵
    از نظر مفاهیم و اصطلاحات به شیرپوینت خیلی نزدیک هست میشه گفت قسمت CMS شیرپوینت که با MVC نوشته شده.
    همه چی عالی فقط حیف که NHibernate هست. البته در نتیجه تفاوتی زیادی نمیکنه ولی در توسعه میکنه، الان دات نتی‌ها بیشتر سمت EF هستند. از نظر لایسنس هم که عالی هست حتی میشه Badge of Honor رو هم تغییر داد.