مقدمه،

1. اوپن سورس چیست؟

قبل از اینکه وارد بحث اصلی و آموزش یکی از سیستمهای مدیریت محتوا بشویم باید اندکی با سیستم های کد باز آشنا شویم و ببینیم کد باز و کد بسته یعنی چه و چه تفاوتهایی با هم دارند.

در دنیای نرم افزار دو نوع مختلف از نرم افزار ها وجود دارند. دسته اول نرم افزار هایی هستند که برنامه نویس کد های نوشته شده را در معرض دسترس عموم قرار نمی دهد و آنرا بعنوان یک راز برای خود حفظ می نماید، اینطور نرم افزار ها معمولا رایگان نیستند و برای استفاده از آنها باید مبالغی پرداخت شود و علاوه بر آن توسعه و بروز رسانی آنها فقط برای برنامه نویس اصلی و شرکت سازنده آن امکان پذیر میباشد، اگر از نرم افزار جستجو گر اینترنت مایکروسافت (Internet Explorer) استفاده می کنید، نمونه ای از برنامه کد بسته را پیش رو دارید.

دسته دوم نرم افزار هایی هستند که برنامه نویس اولیه کد های برنامه نوشته شده را در اختیار عموم قرار داده است و هر کسی می تواند به این کد ها به رایگان دسترسی پیدا کند، تغییرات مورد نظر خود را در آن بوجود آورد و نرم افزاری مطابق علاقه و نیازمندی های خود ایجاد کند، و مجددا آنرا در دسترس عموم قرار دهد، مرورگر محبوب روباه آتشین (Fire Fox) و سیستم عامل لینوکس نمونه های نرم افزار های کد باز هستند.

در دنیای برنامه نویسی وب هم هر دو نوع این برنامه هارا می توان دید. ASP، .NET و SQL نمونه های برنامه های کد بسته و php و mySQL نمونه های نرم افزار های کد بازی هستند که بر روی سر ورهای مختلف ممکن است نصب باشد. از طرف دیگر هم ASP و هم php هر دو بعنوان زبان برنامه نویسی تحت وب هم شناخته می شوند.

2. صفحات پویا (Dynamic) – صفحات ایستا (Static)

دنیای باستانی اینترنت شامل صفحاتی میشد که بر روی کامپیوتر طراح طراحی می شد و سپس بر روی سرور قرار می گرفت (صفحات ایستا یا Static). هر تغییر کوچک مستلزم آن بود که شخص طراح بر روی کامپیوتر خود تغییرات را ایجاد نماید و سپس صفحات جدید را بر روی سرور مجددا بار گذاری نماید که کاری پر هزینه و کسل کننده است. نرم افزارهای مختلفی برای طراحی اینگونه صفحات وجود دارد که ساده ترین آنها Notepad ویندوز است، و در میان برنامه های پیشرفته تر میتوان به Front Page و GoLive اشاره کرد. و زبان برنامه نویسی تمام آنها هم مشترک است HTML. (زبان HTML زبان مشترک تمام مرورگر های وب است که دنیای اینترنت را برای همه قابل فهم میکند و بر فرامین ساده ای استوار است که معرفی آنها در حوصله این مقاله نیست اما کتابهای کاملا مفصلی راجع به آن نوشته شده است و هر شخصی که بخواهد در زمینه طراحی و مدیریت سایت حرفی برای گفتن داشته باشد باید با قواعد و فرامین آن آشنا باشد.) یک صفحه ایستا شامل کدهای از پیش آماده شده HTML میباشد. از معایب دیگر سیستمهای ایستا بجز وقتگیر بودن طراحی و به روز کردن صفحات آن، کند بودن آن بر روی سیستم بازدیدکننده میباشد چرا که مستلزم آن است که تمامی کدها ابتدا بر روی رایانه بازدید کننده بارگذاری شده و بعد اجرا گردد.

اما دنیای مدرن اینترنت کم کم با صفخات ایستا خداحافظی میکند و دیگر تقریبا اکثر سایتها و وبلاگها از سیستمهای جدید پویا استفاده میکنند. و اما سیستمهای پویا چگونه اند؟ یک وبسایت پویا بر روی سروری قرار گرفته است که یکی از برنامه های ASP یا php بر روی آن نصب باشد و برنامه نویس بجای نوشتن کد های HTML این کار را به برنامه ای که خود می نویسد واگذار مینماید، او می تواند گزینه های مختلفی را در نظر بگیرد و حتی بازدید کننده را قادر سازد که صفحات را به میل خودش تغییر دهد. وقتی شما وارد یک صفحه پویا می شوید، کدهای برنامه بر روی سرویس دهنده (Server) اجرا می شود و صفحه وب را ایجاد مینماید، در بعضی از سایتها شما قادر هستید که برای خود شناسه کاربری ایجاد نمائید و تغییراتی را بر روی صفحات ایجاد نمائید و آنرا ذخیره کنید. دفعه بعد که مجدد وارد آن سایت میشوید تنظیمات شما دست نخورده باقی مانده است. در این سیستم تمامی کدها بر روی سرویس دهنده اجرا میشود و نیازی به بارگذاری آنها بر روی رایانه بازدید کننده وجود ندارد و به همین دلیل سرعت این صفحات به مراتب بیشتر است و به همین دلیل می توان امکانات بسیار زیادی را از طریق این صفحات در اختیار کابر نهاد.

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

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

خوب تا اینجا با بعضی مسائل آشنا شدیم در مباحث بعدی سعی خواهم کرد مفاهیم اولیه دیگری را ارائه دهم و راه را برای مبحث اصلی هموار کنم. اما باید بدانید که تا رسیدن به مبحث اصلی هنوز راه درازی را در پیش داریم، زیرا که باید با قسمت مدیریت سایت (Control Panel) و مخزن اطلاعات (Data Base) هم آشنا شویم.