کاهش زمان و هزینه تولید پروژه های تحت وب با CMSهای اوپن سورس دات نت

CMS یا سیستم مدیریت محتوا، نرم افزاری است که برای ایجاد، ویرایش، مدیریت و جستجوی محتوای دیجیتالی بر روی وب به کار گرفته می شود. اگر بگوییم نرم افزارهای مدیریت محتوا، وب را متحول کردند، حرف اشتباهی نزده ایم. هم اکنون تعداد بسیار زیادی CMS برای ایجاد وب سایت های پویا در دنیا وجود دارد. بسیاری از این CMSها به صورت اوپن سورس و آزاد در اختیار کاربران قرار می گیرند. نمونه ی بارز یک CMS خوب و اوپن سورس را می توان همین نرم افزار وردپرس عنوان کرد، که به شما اجازه مدیرت محتوای وبلاگتان را می دهد.
اهمیت CMS به حدی است که ارزش یک زبان برنامه نویسی تحت وب مثل PHP را با تعداد، قدرت و نفوذ CMSهایی که با آن توسعه داده شده اند، می سنجند. البته امروزه تعداد CMSهای کاربردی تحت وب به حد انفجار رسیده است و تقریباً برای رفع هر نیازی در وب یک CMS خوب وجود دارد. به همین علت توصیه می شود به جای ایجاد یک CMS جدید، CMSهای اوپن سورس را توسعه دهید.
پلفت فرم ASP.NET مایکروسافت هم دارای چندین CMS قدرتمند و اوپن سورس است که شما می توانید از آن ها در پروژه های خودتان استفاده کنید و با کمی تغییر و کدنویسی به نتیجه دلخواهتان برسید.

ASP.NET


DotNetNuke

CMS معروف دنیای دات نت، فریم ورک کاربردی و قدرتمند برای ایجاد و مدیریت محتوای پرتال ها و وب سایت های پویا که توسط مایکروسافت پشتیبانی می شود. DotNetNuke انتخاب مناسبی برای وب سایت های بزرگ و سازمانی است و امکان اداره چندین پرتال را در یک پایگاه داده واحد به شما می دهد. دات نت نیوک دارای اجتماع کاربری بسیار بزرگی است و از آن در بسیاری از وب سایت های بزرگ و دولتی استفاده می شود، فقط کافیست نگاهی به مشتریان آن بیندازید تا عظمت آن را درک کنید. دات نت نیوک امکانات خوبی برای سفارشی کردن و محلی کردن پورتال ها در اخیتار شما قرار می دهد و زبان فارسی هم برای آن در دسترس است. هر چند دات نت نیوک قدرت ایجاد هر نوع وب سایتی را دارد اما برای ایجاد و مدیریت وب سایت های کوچک توصیه نمی شود.

DotNetNuke

umbraco
شعار umbraco سادگی، زیبایی و انعطاف است. این CMS قدرتمند بوسیله سی شارپ توسعه داده شده و در عمل کارایی خوبی را از خودش نشان داده است. هر چند برخی از برنامه نویسان توسعه این CMS را مشکل می دانند اما در واقع این طور نیست. اجتماع کاربری این CMS به گستردگی DNN نیست، اما مطمئن باشید کسی پیدا می شود که جواب سئوال ها و مشکلات شما را بدهد.

Rainbow
این CMS یک موتور ایجاد وب سایت و پرتال های پویا است که امکانات خوبی را به کاربران خود ارائه می کند. Rainbow با استفاده از سی شارپ توسعه داده می شود، هر چند به اندازه دان نت نیوک قدرتمند نیست اما دارای اجتماع کاربری مناسبی است. ماژول های زیادی برای این CMS نوشته شده و دارای پشتیبانی تقریباً مناسبی است.

mojoPortal
موجوپرتال CMS قدرتمند دیگری است که شما را در مدیریت وب سایت ها و پرتال های بزرگ یاری می کند. با استفاده از موجوپرتال ایجاد وب سایت های پیشرفته ساده خواهد بود. امکاناتی که این CMS در اختیار کاربران نهایی میگذارد شامل وبلاگ، فاروم، گالری عکس، تجارت الکترونیکی، سرویس نقشه گوگل، نظرسنجی، خبرنامه و امکانات متنوع دیگر است. موجوپرتال اجتماع کاربری بزرگ و مناسبی هم دارد. زبان فارسی در موجوپرتال به صورت رسمی پشتیبانی می شود. در ضمن این CMS برنده جایزه بهترین CMS غیر PHP در سال 2007 شده است.

Cuyahoga
این CMS برخلاف دیگر CMSها که فقط در هاست ویندوز قابل اجرا هستند و اغلب از SQL Server به عنوان پایگاه داده استفاده می کنند، قادر است روی پلت فرم مونو اجرا شود و در نتیجه با هاست لینوکس و پایگاه داده MySQL و PostgreSQL هم کار می کند. قابلیت مدیریت چندین وب سایت با یک پایگاه داده، موتور جستجوی قدرتمند و ایجاد آدرس های SEO از ویژگی های بارز این CMS است. در ایجاد این نرم افزار از NHibernate استفاده شده، و به همین علت به پایگاه داده خاصی وابستگی ندارد.

N2 CMS
N2 یک CMS سبک، ساده و در عین حال قدرتمند برای ایجاد وب سایت های پویا است. به گفته سازندگانش، توسعه این CMS بسیار آسان است و استفاده از آن در عمل برای کاربران نهایی بسیار آسان تر. به علت استفاده از NHibernate در این پروژه، کاربر می تواند از هر پایگاه داده ای شامل SQL Server و MySQL برای نصب N2 بهره ببرد. استفاده از کتابخانه jQuery و AJAX و داشتن رابط کاربری دوستانه N2 را به یکی از انتخاب های مناسب برای راه اندازی وب سایت های بزرگ تبدیل نموده است.

نتیجه
در این مطلب با 6 CMS اوپن سورس و قدرتمند که با استفاده از فریم ورک ASP.NET مایکروسافت توسعه داده می شوند، آشنا شدیم. البته تعداد CMSهای اوپن سورس دات نت بیش از این هاست، CMSهایی مثل XMLNuke، nkCMS، JMDCMS، VWD-CMS و GO.Kryo یا سیستم های مدیریت محتوای وبلاگ مثل BlogEngine.NET یا Subtext. امروزه دیگر کسی وقتش را صرف ایجاد سیستمی که از قبل اوپن سورس آن وجود دارد نمی کند. در کشور خودمان هم خیلی از شرکت های نرم افزاری، نرم افزارهای اوپن سورس را به صورت سفارشی شده به مشتریان شان می فروشند. حالا بگذریم که بعضی ها بدون در نظر گرفتن موارد مجوزنامه های اوپن سورس، از این نرم افزارها سوء استفاده می کنند، اما در کل استفاده از نرم افزارهای اوپن سورس در راه درست خیلی بهتر و به صرفه تر از نوشتن یک نرم افزار از ابتدا است. مثلاً تا نرم افزاری مثل دات نت نیوک وجود دارد، عاقلانه نیست که شما یک وب سایت بزرگ را از ابتدا تولید کنید. بلکه می توانید از مثلاً دات نت نیوک استفاده کنید و ویژگی هایی که لازم دارید یا مشتری سفارش داده است را به آن اضافه کنید.

farasun.wordpress.com
شاید این مطالب هم برای شما خواندنی باشند :

  • انواع فایل ها و دایرکتوری ها در ASP.NET
  • آشنایی با وب فرم ها در ASP.NET
  • سیلورلایت 3.0 ارائه شد
    farasun.wordpress.com
    اگر تمايل به دنبال کردن مطالب اين وبلاگ داريد، مي توانيد مشترک فيد فراسان شويد.

    چطور مشترک شويم؟

  • انواع فایل ها و دایرکتوری ها در ASP.NET

    وب سایت های مبتنی بر ASP.NET شامل فایل ها و دایرکتوری های خاصی هستند که هر برنامه نویسی باید با آن ها آشنایی داشته باشد. پسوند هر فایل در ASP.NET معرف نحوه عملکرد و اجزای داخلی آن است. همچنین ASP.NET دایرکتوری هایی با نام های مشخص برای منظور های مختلف در نظر گرفته است. در این مطلب قصد دارم علاقه مندان به یادگیری ASP.NET را با انواع فایل ها و دایرکتوری های یک وب اپلیکیشن در ASP.NET آشنا کنم. البته در این مطلب با تمام فایل ها و دایرکتوری های ASP.NET آشنا نخواهید شد. به مرور و در مطالب بعدی بیشتر در مورد ASP.NET خواهید خواند. پیشنهاد میکنم برای آشنایی با ASP.NET ابتدا این مطلب را مطالعه کنید.

    انواع فایل ها در یک وب اپلیکیشن ASP.NET

    فايل هاي aspx
    صفحات وبي که رابط کاربري اپليکيشن شما را شکل مي دهند. در واقع جايگزين فايل هاي asp کلاسيک در دات نت فريم ورک هستند. کاربران براي ارتباط با برنامه شما به صورت مستقيم از اين فايل ها استفاده خواهند کرد.

    فايل هاي ascx
    اين ها فايل هاي User Control هستند. User Controlها شبيه به صفحات وب aspx هستند با اين تفاوت که کاربران نمي توانند به صورت مستقيم به اين نوع فايل ها دستيابي داشته باشند. User Controlها بايد در صفحات وب aspx قرار بگيرند تا کاربران بتوانند از آن ها استفاده کنند. User Controlها به شما اجازه مي دهند تا قسمتي از رابط کاربري را بسازيد و آن را چند بار در صفحات مختلف به کار ببريد. با اين کار ديگر احتياجي به تکرار يک مجموعه کد نخواهيد داشت.

    فايل هاي asmx
    وب سرويس هاي ASP.NET داراي اين پسوند هستند. وب سرويس ها مجموعه اي از متدها هستند که اين متدها مي توانند در سراسر اينترنت صدا زده شوند. وب سرويس ها متفاوت از صفحات وب کار می کنند، ولی از منابع، تنظیمات و حافظه ی همان اپلیکیشن وب استفاده می کنند.

    فایل web.config
    فایل تنظیمات اپلیکیشن های ASP.NET که به زبان نشانه گذاری XML هستند. این فایل شامل تنظیمات امنیتی، مدیریت حافظه، مدیریت حالت و بسیاری تنظیمات دیگر است. وقتی این فایل را تغییر دهید، در حقیقت رفتار وب اپلیکیشن را در برابر موقعیت های مختلف تغییر داده اید.

    فایل Global.asx
    متغیرها و رویدادهای سراسری یک وب اپلیکیشن ASP.NET در این فایل قرار می گیرند. متغیرهایی که در این فایل تعریف می شوند می توانند در سراسر برنامه و هر یک از صفحات وب اپلیکیشن شما دستیابی شوند. در این فایل می توانید رویدادهایی همچون Application_Start (وقتی اپلیکیشن شما شروع به کار می کند) را Handle کنید.

    فایل های سورس cs, vb
    این فایل ها شامل کدهای C# و Visual Basic هستند و به اصطلاح Code-behinde اپلیکیشن شما را تشکیل می دهند. این فایل ها به شما اجازه می دهند تا منطق یک صفحه وب را از رابط کاربری آن جدا کنید. Code-behind مدلی است که مایکروسافت آن را برای توسعه تحت وب به شما پیشنهاد می کند.

    learn-about-aspnet-logo

    انواع دایرکتوری در یک وب اپلیکیشن ASP.NET

    هر وب اپلیکیشن در ASP.NET باید ساختار دایرکتوری مناسب و مشخصی داشته باشد. برای مثال، شاید شما بخواهید تصاویر به کار رفته در صفحات را در یک دایرکتوری جدا قرار دهید یا بخواهید صفحات عمومی را در یک دایرکتوری قرار دهید و تنظیمات امنیتی آن را متفاوت از دایرکتوری های دیگر مشخص کنید تا کاربران مهمان سایت بتوانند به آن ها دسترسی پیدا کنند. این دایرکتوری هایی که خودتان با منطق خودتان ایجاد می کنید، دایرکتوری های سفارشی شما هستند. ASP.NET در کنار دایرکتوری هایی که شما ایجاد می کنید، از یکسری دایرکتوری مخصوص به خود استفاده می کند که با نام های خاص مشخص می شوند. البته به صورت پیش فرض وقتی شما یک پروژه وب جدید در ویژوال استادیو ایجاد می کنید، این دایرکتوری های خاص ایجاد نخواهند شد. ویژوال استادیو هنگام نیاز از شما برای ایجاد این دایرکتوری ها اجازه می گیرد.

    دایرکتوری Bin
    شامل تمام کامپوننت های کامپایل شده (DLLها) دات نت که وب اپلیکیشن شما از آن ها استفاده می کند. به طور مثال، اگر شما یک کامپوننت خاص برای دستیابی به دیتابیس توسعه داده اید، بایستی آن را در این دایرکتوری قرار دهید. سپس ASP.NET به صورت خودکار اسمبلی را شناسایی کرده و هر یک از صفحات وب موجود در وب اپلیکیشن شما قادر به استفاده از آن کامپوننت خواهند بود. استفاده از این مدل توزیع بسیار آسان تر از مدل قدیمی کامپوننت های COM است. کامپوننت های COM را باید قبل از استفاده رجیستر کرد و اغلب وقتی تغییر هم می کنند باید دوباره آن ها را رجیستر نمود.
    دایرکتوری App_Data
    داده های وب اپلیکیشن شامل فایل های دیتابیس و فایل های XML در این دایرکتوری قرار می گیرند. البته شما می توانید دیتابیس خود را در هرجایی جز این دایرکتوری هم قرار دهید.

    دایرکتوری App_GlobalResources
    منابع سراسری که قابل دسترسی در تمامی صفحات وب شما هستند، در این دایرکتوری قرار می گیرند. اغلب از این دایرکتوری برای اپلیکیشن های وبی که چندین زبان را پشتیبانی می کنند، استفاده می شود.

    دایرکتوری App_LocalResources
    دقیقاً شبیه به دایرکتوری App_GlobalResources عمل می کند با این تفاوت که منابع تنها برای یک صفحه مشخص قابل دسترسی اند.

    دایرکتوری App_WebReferences
    ارجاع های مختلف به وب سرویس هایی که وب اپلیکیشن شما از آن ها استفاده می کند در این دایرکتوری قرار می گیرند.

    دایرکتوری App_Themes
    تم هایی که صفحات وب اپلیکیشن از آن ها استفاده می کند در این دایرکتوری نگهداری می شوند.

    farasun.wordpress.com

    شاید این مطالب هم برای شما خواندنی باشند :

    اگر تمايل به دنبال کردن مطالب اين وبلاگ داريد، مي توانيد مشترک فيد فراسان شويد.

    چطور مشترک شويم؟