انواع صفحات وب؟؟؟
|
¨ صفحات وب ایستا ، امروزه بر روی اینترنت و وب ، با سایت های متعددی که شامل تعداد بیشماری از صفحات وب ایستا می باشند ، برخورد می نمائیم. واژه " ایستا " ، در رابطه با یک صفحه وب دارای چه تعریفی است ؟ این نوع صفحات ، صفحاتی هستند که شامل کدهای Html بوده و در یک محیط ادیتور تایپ و با انشعاب Htm و یا Html ذخیره می گردد. مولف صفحه وب قبل از اینکه هر نوع درخواستی برای آن وجود داشته باشد ، بطور کامل محتوی صفحه را مشخص کرده است . محتویات این نوع از صفحات ( متن ،تصویر ، لینک ها و ... ) و شکل ظاهری آنها همواره یکسان خواهد بود ، صرفنظر از اینکه چه کسی ، در چه زمانی و یا چگونه صفحه را مشاهده خواهد کرد. بنابراین می توان گفت ، محتویات این قبیل از صفحات قبل از اینکه درخواستی ایجاد گردد ، توسط مدیریت سایت ایجاد و مشخص شده اند. مراحل آماده سازی صفحات وب ایستا 1 - یک مو.لف ، صفحه ای را که شامل کدهای Html است را ایجاد و آن را با انشعاب Htm و یا Html بر روی سرویس دهنده وب ذخیره می نماید. 2 - کاربری از طریق برنامه مرورگر خود ، در خواست استفاده از یک صفحه را می نماید، درخواست فوق از مرورگر برای سرویس دهنده ارسال می گردد. 3 - سرویس دهنده وب ، فایل درخواستی با انشعاب Htm و یا Html را پیدا خواهد کرد. 4 - سرویس دهنده وب ، کدهای Html فایل مزبور را از طریق شبکه برای مرورگر ارسال میدارد. 5 - مرورگر کدهای Html را پردازش و صفحه فوق را نمایش خواهد داد. محدودیت های صفحات وب ایستا فرض کنید می خواهیم یک صفحه وب را بگونه ای طراحی نمائیم ، که بمحض ورود هر کاربر زمان جاری سیستم بهراه یک پیام مناسب نمایش داده شود.. در این زمینه با چندین محدودیت مواجه خواهیم بود که بکمک تگ های Html قادر به برطرف کردن آنها نخواهیم بود. ما میدانیم که یک کاربر در یک زمان خاص به ملاقات صفحه خواهد آمد ولی قطعا؛ زمان آن را نمی دانیم .اگر بخواهیم زمان را بصورت کد در صفحه Html خود داشته باشیم ، نتیجه همواره یکسان بوده و همیشه یک زمان ثابت و یکسان برای تمامی ملاقات کنندگان صفحه ، نمایش داده خواهد شد. تگ های Html امکاناتی بمنظور ایجاد صفحات وب سفارشی و بر اساس شرایط خاص در اختیار قرار نمی دهد. صفحات وب ایستا همواره بصورت مشابه و یکسان برای تمامی کاربران نمایش داده خواهند شد. ( نظیر رستورانی که همواره و صرفنظر از ذائقه مشتریان خود ، یک غذای ثابت و از قبل آماده شده را برای همه آماده و در اختیار قرار می دهد!) Html دارای هیچگونه امنیتی نیز نبوده و کدهای آن را همه می توانند مشاهده و حتی تکثیر گردد. شاید تنها مزیت این نوع از صفحات طراحی آسان و بکارگیری سریع آنان در یک شبکه باشد.این نوع صفحات دارای امکانات لازم بمنظور آفرینش صفحات پویا نیستند، چون نمی توان کدهای مورد نظر خود را بعد از درخواست یک صفحه به آن اضافه کرد . می بایست بدنبال روشی و یا روش هائی بود که بکمک آنها بتوان صفحات وب پویا را ایجاد کرد. بمنظور نیل به هدف فوق از دو روش عمده استفاده می گردد:
قبل از پرداختن به هر یک از موارد فوق، لازم است در ابتدا با مفهوم و جایگاه یک سرویس دهنده وب بیشتر آشنا شویم . یک سرویس دهنده وب ، نرم افزاری است که مدیریت صفحات وب را برعهده گرفته و آنها را برای سرویس گیرندگان مجهز به مرورگرها، قابل دستیابی و استفاده می نماید. تاکنون سرویس دهنده های وب متعددی طراحی و به بازار عرضه شده است . Apache ، IIS ... نمونه هائی از این نوع نرم افزارها هستند. IIS محصول شرکت مایکروسافت بوده و می توان در زمان نصب ویندوز ( 2000 و یا XP) آن را نیز نصب نمود.نسخه 5 بهمراه ویندوز 2000 و نسخه 5.1 بهمراه XP ارائه شده است . بهرحال جایگاه یک سرویس دهنده وب در ارائه امکانات و زیرساخت های مناسب برای طراحی صفحات وب پویا و بالطبع سایت های پویا یک امر برجسته است. همانگونه که اشاره گردید، برای خلق صفحات وب پویا از دو رویکرد متفاوت استفاده می گردد. استفاده همزمان از دو روش فوق هیچگونه تعارضی با هم نداشته بلکه بالعکس توانائی یک صفحه وب پویا را افزایش خواهد داد. در ادامه به بررسی دو رویکرد فوق خواهیم پرداخت . Client-side dynamic page . در مدل فوق ماژول هائی ( Plug -in ) که به مرورگر ملحق شده اند، تمامی عملیات لازم جهت ایجاد صفحات پویا را انجام خواهند داد. کدهای Html از طریق فایل مربوطه که شامل مجموعه ای از دستورالعمل ها است برای مرورگر ارسال خواهد شد.مرورگرها دستورات فوق را جهت تولید کدهای Html و در زمان درخواست یک صفحه توسط کاربر ، استفاده خواهند کرد. بنابراین محتویات یک صفحه بر اساس درخواست کاربران و بصورت پویا ایجاد خواهد شد. مراحل آماده شدن یک صفحه وب پویا با تاکید بر روش های Client-Side 1 - یک مولف صفحه وب مجموعه ای از دستورالعمل را برای ایجاد کدهای Html نوشته و آنها را در فایلی با انشعاب Html ذخیره می نماید. 2 - کاربران درخواست یک صفحه را از طریق مرورگر خود برای سرویس دهنده وب ارسال خواهند کرد. 3 - سرویس دهنده فایل درخواستی ( در صورت نیاز فایل دیگری که شامل دستورالعمل ها باشد) را پیدا خواهد کرد. 4 - سرویس دهنده وب فایل حاوی کدهای Html و در صورت وجود دستورالعمل های مربوطه را برای متقاضی ارسال خواهد کرد. 5 - یک ماژول همراه مرورگر ، دستورالعمل ها را پردازش و کدهای Html را در همان صفحه Html برمی گرداند. 6 - در نهایت کدهای Html توسط مرورگر نمایش داده می شوند. تاکنون تکنولوژیهای متعددی بر اساس رویکرد فوق مطرح و در اختیار طراحان و مولفان صفحات وب پویا قرار گرفته شده است . جاوا اسکریپت ، Vbscript ، کنترل های ActiveX و اپلت های جاوا نمونه هائی از این نوع تکنولوژی ها بوده که برای شناخت خوانندگان در این بخش بصورت خیلی مختصر در رابطه با هر یک توضیحاتی ارائه خواهد شد. جاوااسکریپت (JavaScript) ،اولین زبان اسکریپت در رابطه با مرورگرها است . زبانهای اسکریپت بعنوان حد میانه بین کدهای Html و زبانهای معمولی برنامه نویسی قرار داشته و بصورت مفسر عمل می نمایند. جاوااسکریپت را نباید با زبان برنامه نویسی جاوا اشتباه گرفت . شرکت نت اسکیپ در ابتدا زبان اسکریپتی با نام LiveScript پیاده سازی و بهمراه مرورگر NetScape 2.0 در اختیار علاقه مندان قرار گرفت . زمانیکه شرکت نت اسکیپ با شرکت Sun متحد گردید ، نام آن را جاوااسکریپت گذاشتند. Vbscript . شرکت ماکروسافت همزمان با عرضه مرورگر IE 3.0 زبان اسکریپت اختصاصی خود یعنی Vbscript را مطرح نمود. زبان اسکریپت فوق بر اساس زبان برنامه نویسی ویژوال بیسیک و با هدف رقابت با جاوااسکریپت در اختیار علاقه مندان قرار گرفت . شاید از معدود امتیازات این زبان نسبت به جاواسکریپت بتوان به عدم حساسیت آن در رابطه با حروف بزرگ و کوچک (Case Sensitive) نام برد. کنترل های ActiveX ، یک کنترل اکتیوایکس عنصری است که توسط یکی از زبانهای برنامه نویسی نظیر C++ و یا جاوا پیاده سازی می گردند. در زمانیکه این نوع اکتیوایکس ها را بهمراه صفحات خود استفاده نمائیم ، امکان انجام بخشی از عملیات متکی بر سرویس گیرنده نظیر ایجاد یک Bar Chart ، Timer ، تایید کاربر و یا دستیابی به بانک اطلاعاتی فراهم می گردد.کنترل های اکتیوایکس از طریق تگ Java
Applet ، جاوا یک زبان برنامه نویسی مستقل از Platform است . جاوا نسبت به
زبانهای اسکریپت دارای قابلیت های بمراتب بیشتری است . هدف ، استفاده از کدهای
جاوا به شکل اپلت است . عناصر فوق بسادگی و توسط تگ به صفحات وب ملحق خواهند شد.
خوشبختانه مرورگرهای ماکروسافت و نت اسکیپ هر دو از طریق ایجاد یک ماشین مجازی جاوا
(JVM) از اپلت های جاوا حمایت می کنند. Server Side Dynamic Pages . در این مدل کدهای Html بهمراه مجموعه ای از دستورالعمل ها برای سرویس دهنده ارسال و مجددا" از دستورالعمل های فوق برای تولید کدهای Html برای صفحه ای که کاربر درخواست کرده ، استفاده شده و در نهایت صفحه بصورت پویا بر اساس درخواست کاربر ایجاد خواهد شد. مراحل آماده شدن یک صفحه وب پویا با تاکید بر روش های Server-Side 1 - یک مولف صفحه وب ، مجموعه ای از دستورالعمل ها را برای ایجاد کدهای Html نوشته و دستورالعمل ها را در یک فایل ذخیره می کند. 2 - کاربران از طریق مرورگر خود ، درخواست یک صفحه وب را نموده و این درخواست برای سرویس دهنده وب ارسال خواهد شد. 3 - سرویس دهنده وب محل فایل حاوی دستورالعمل را پیدا خواهد کرد. 4 - سرویس دهنده وب دستورات موجود در فایل را بمنظور تولید کد Html اجراء خواهد کرد. 5 - سرویس دهنده وب کدهای تولید شده جدید را از طریق شبکه برای مرورگر ارسال می نماید. 6 - مرورگر کدهای Html را پردازش و در نهایت صفحه وب نمایش داده خواهد شد. یکته مهم در سناریوی فوق ، اجرای تمامی پردازش ها بر روی سرویس دهنده، قبل از ارسال صفحه برای مرورگر است . یکی از مزایای عمده مدل فوق نسبت به مدل Client-Side ، این مورد است که : در یک صفحه وب صرفا" شاهد کدهای Html خواهیم بود. این بدان معنی است که منطق صفحات وب در نزد سرویس دهنده وب مخفی نگهداری خواهد شد و می توان این اطمینان را داشت که اکثر مرورگرها قادر به نمایش نتایج پردازش ها ی اجراء شده بر روی سرویس دهنده باشند. ASP.NET از مدل فوق تبعیت می کند. یکی دیگر از نکات مهم در رابطه با مدل فوق، این است که یک صفحه تا زمانیکه درخواستی برای آن دریافت نشده باشد ، محتویات آن بوجود نخواهد آمد. در ادامه به بررسی برخی تکنولوژیهای متداول دراین مدل خواهیم پرداخت . CGI(Common Gateway Interface) . مکانیزمی برای ایجاد اسکریپت بر روی سرویس دهنده بوده تا بدین طریق امکان ایجاد برنامه ها ی متکی بر وب فراهم گردد. CGI ماژولی است که می بایست به سرویس دهنده وب اضافه گردد. قدمت استفاده از تکنولوژی فوق بمراتب بیشتر از ASP است و تا کنون تعداد بیشماری از صفحات وب پویا با استفاده از تکنولوژی فوق و بکمک یک زبان اسکریپت ایجاد شده اند. CGI این امکان را فراهم خواهد کرد که کاربر، یک برنامه دیگر ( نظیر یک اسکریپت Perl ) را بر روی سرویس دهنده برای ایجاد صفحات وب پویا استفاده نماید. استفاده از زبانهائی نظیر Perl , C ,C++ بهمراه تکنولوژی فوق بسیار رایج است . بهرحال تکنولوژی فوق امروزه در خیلی از سایت های بزرگ خصوصا" سایت های متکی بر یونیکیس رایج بوده و قابلیت اجراء بر روی چندین Platform را دارا می باشند. ASP(Active Server Page) ، تکنولوژب فوق که پس از عرضه ASP.NET با نام ASP کلاسیک نامیده می شود، یکب از متدوالترین روش هاب موجود و استفاده شده براب ایجاد صفحات وب پویا است . تکنولوژب فوق با بهره گیری از توان زبانهای اسکریپت نظیر جاوااسکریپت و Vbscript توانسته است پاسخب شایسته به طراحب صفحات وب پویا را ارائه نماید. ASP یک ماژول جداگانه است که در کنار سرویس دهنده وب قرار می گیرد( ASP.dll ) . تکنولوژب فوق نسبت به برخب از تکنولوژیهاب همگروه از کارآئب پایین ترب برخوردار بوده و در زمینه استفاده از زبانهاب اسکریپت در کنار خود ، نیز داراب محدودیت جدب است . بهرحال تکنولوژب فوق با سابقه شش ساله تاکنون توانسته است به خیل عظیم درخواست ها براب ایجاد صفحات پویا درست پاسخ دهد ، ولب با ظهور خواسته ها و انتظارات جدید به چالش جدب کشیده شده است و شاید ظهور و تولد ASP.NET دلیلب و پاسخی به برخب از انتقادات مطروحه در این زمینه باشد. JSP (JavaServer page ) ، تکنولوژی فوق امکان ترکیب Html ویا Xml را با کدهای جاوا فراهم می نماید. این فناوری برخلاف ASP که صرفا" توسط سرویس دهنده وب ماکروسافت ( IIS) حمایت می گردد ، توسط سرویس دهندگان متعددی حمایت شده است . JSP در مقایسه با ASP بمراتب دارای قدرت و سرعت بیشتری بوده و برنامه نویسان جاوا بخوبی با قابلیت های متعدد آن آشنائی دارند. JSP این امکان را فراهم می کند که برنامه های جاوا از ویژگی محیط های متکی بر Java2 نظیر JavaBeans و Java2 Libraries بخوبی استفاده نمایند. ColdFusion . با استفاده از تکنولوژی فوق ، امکان ساخت صفحات وب پویا فراهم می گردد.این تکنولوژی بصورت یک ماژول جداگانه است که می بایست بر روی سرویس دهنده وب نصب گردد. صفحاتی که توسط تکنولوژی فوق بوجود می آیند، توسط هر نوع مرورگری قابل خواندن و نمایش خواهند بود. تکنولوژی فوق از مجموعه زیادی تگ که توسط نرم افزار ColdFusion ارائه شده است ، استفاده می کند. نرم افزار فوق بر روی سرویس دهندگان متعددی حتی IIS نصب و قابل استفاده است . مهمترین مسئله در رابطه با تکنولوژی فوق در این است که از تگ های Html-Like استفاده می گردد ( در ASP.NET از زبانهای برنامه نویسی و اشیاء استفاده می گردد). یکی دیگر از نکات مهم در رابطه با تکنولوژی فوق در این است که تهیه آن رایگان نبوده و می بایست بیش از هزار دلار برای تهیه آن هزینه نمود! PHP ، تکنولوژی فوق که در ابتدا Personal Home Page نامیده می شد و اخیرا؛ PHP Hypertext Preprocessor نامیده می شود ، یکی دیگر از تکنولوژیهای رایج برای ایجاد صفحات وب پویا است . تکنولوژی فوق بر خلاف ASP.NET . بصورت Cross-Platform بوده و بر روی اغلب سیستم ها نظیر ویندوز NT و اغلب نسخه های یونیکس قابل استفاده است . گرامر زبان فوق نظیر C و Perl است.تکنولوژی فوق دارای برخی از ویژگی های برنامه نویسی شی گراء بوده که امکان سازماندهی و کپسوله نمودن کدها را فراهم می آورد. ASP.NET ، پس از معرفی تکنولوژیهای رایج در این گروه ، زمینه مناسب برای آشنائی با تکنولوژی ASP.NET بوجود آمده است . ASP.NET نیز بعنوان یک ماژول بر روی سرویس دهنده قرار می گیرد ( aspnetIsapi.dll) . در کنار تکنولوژی فوق مجموعه عظیم دات نت قرار دارد . ASP کلاسیک دررابطه با استفاده از زبانهای اسکریپت محدود بوده و صرفا؛ به جاوااسکریپت و Vbscript ختم می گردد ( Vbscript هم صرفا" توسط سیستم های متکی بر ویندوز قابل استفاده خواهد بود ) .ASP.NET امکان استفاده از مجموعه وسیعی از زبانهای برنامه نویسی را فراهم می کند. زبانهائی نظیر VB.NET ، C# ، Jscript.NET ، Perl Python, نمونه هائی از زبانهائی می باشند که می توان از آنها بهمراه ASP.NET استفاده کرد. نوشته شده در چهارشنبه 1392/01/28ساعت 1:7 بعد از ظهر توسط زهرام.| GetBC(83); آخرين مطالب
صفحات وب ایستا(Static) و پویا(Dynamic) | ||||
امروزه در دنیای وب مسائل فراوانی مطرح است یکی از این مسائل صفحات وب ایستا(Static) و پویا(Dynamic) می باشد. در این متن سعی شده است به بررسی نکاتی قابل استفاده پیرامون این صفحات پرداخته شود.- صفحات وب ایستا(Static) صفحات وب ایستا به بیان ساده صفحاتی هستند که بر اساس یک نیاز طراحی می شوند، اطلاعاتی(از جمله متن، لینک، تصویر و انیمیشن) در داخل آنها قرار می گیرد و در نهایت صفحه به نمایش در می آید. برای انجام این مراحل نیاز به شخصی است که حداقل توانایی کار با زبان HTML(Hyper Text Markup Language) را داشته باشد یا مسلط به طراحی وب باشد. این صفحات ایستا با همان ظاهر و اطلاعات تا انتهای عمرشان به کاربران نمایش داده می شوند مگر اینکه دوباره شخصی با همان دانش دست به کار شود و دوباره اطلاعات و ظاهر این صفحات را تغییر دهد. هزینه طراحی این صفحات معمولا از 8 هزار تومان شروع می شود. توجه داشته باشید کلیه تصاویر، انیمیشن ها و کدهای سمت مشتری(JavaScript, VBScript) به کار رفته در این صفحات می تواند هزینه این صفحات را افزایش دهد. اینگونه صفحات به مانند تهیه یک کاتالوگ از فعالیت ها و یا محصولات شرکت و یا سازمان می باشد. یعنی مانند همان کاتالوگ ها باید ابتدا اطلاعات آن مشخص باشد، در مرحله بعد طراحی شود و پس از طراحی چاپ شود و پس از چاپ دیگر نمی توان آن را تغییر داد مگر اینگه دوبار دست به کار شد و کلیه مراحل ذکر شده را از نو انجام داد. - صفحات وب پویا(Dynamic) صفحات وب پویا نیز مانند صفحات وب ایستا نیاز به یک بار طراحی اولیه دارند. هزینه این طراحی اولیه معمولا چند برابر هزینه طراحی صفحات وب ایستا می باشد. اما تفاوت اصلی این صفحات معمولا از این زمان به بعد ملموس خواهد بود. پس از یک طراحی صحیح برای به روز رسانی دیگر نیازی به طراح وب سایت نیست و شخصی که دارای دانشی در سطح اپراتوری کامپیوتر باشد می تواند این کار را انجام دهد. با توجه به این گفته می توان نتیجه گرفت زمان به روز رسانی بسیار سریع تر از روش استاتیک و هزینه آن صفر شده است. تکنولوژی و زبان هایی که در ساخت صفحات پویای وب استفاده می شوند علاوه بر زبان HTML(البته می توان یک صفحه وب پویا بدون HTML ایجاد کرد اما همین صفحه نیز پس از پردازش توسط سرور در نهایت تبدیل به دستورات HTML می شودند) عبارتند از ASP, ASP.NET, PHP, JSP, ….
در طراحی صفحات وب پویا معمولا بحث محلی جهت ذخیره سازی داده ها که همان پایگاه اطلاعات می باشد نیز به وجود می آید. که این خود نیاز به طراحی و پیاده سازی دارد. - در ادامه نکاتی که ذکر آن ها در این متن خالی از لطف نیست در زیر آورده شده است. منظور از ایستا و پویا بودن صفحات وجود حرکت، انیمیشن و صدا در صفحات وب نمی باشد. بلکه منظور نحوه تغییر اطلاعات و ارتباط صفحه با کاربر است. اصطلاحا اطلاعات یک صفحه ایستا برای تمام کاربران به یک شکل است، اما اطلاعات یک صفحه پویا بسته به عواملی از جمله اطلاعات موجود در پایگاه اطلاعات، مشخصات بازدید کننده، زمان بازدید، کشور بازدید کننده و ... می تواند تغییر کند. در صفحات وب ایستا معمولا از اسکریپت(مجموعه کدهای قابل اجرا) نویسی سمت مشتری(Client Side Scripting) و در صفحات وب پویا هم از اسکریپت نویسی سمت مشتری و هم از اسکریپت نویسی سمت سرور(Server Side Scripting) استفاده می شود. و به همین دلیل صفحات پویا نیاز به پردازش سمت سرور دارد و اصطلاحا صفحه سفارشی می شود. یکی از مهمترین مسائلی که امروزه در وب سایت های اینترنتی مطرح است مسئله به روز رسانی اطلاعات می باشد که در صفحات ایستا نیاز به عواملی از جمله نیروی متخصص، مدت زمان لازم جهت تغییر صفحه و هزینه تغییرات همراه است اما در صفحات پویا با طراحی صحیح این عمل به راحتی و بدون وجود عواملی که در روش ایستا وجود داشت انجام می شود. امروزه طراحی صفحات پویا با توجه به هزینه های کم به روز رسانی اطلاعاتشان و زمان کم و راحتی آن بسیار بیشتر از صفحات ایستا شده است. اما اینها تنها دلایل این رشد نیستند بلکه از لحاظ تجارت در دنیای امروز که در آن مسائلی مانند فروش آن لاین خدمات و یا کالا ها مطرح است و یا با ظهور پدیده هایی در وب از جمله Web 2 که یکی از مهمترین ویژگی های آن تبادل اطلاعات به صورت فعال با کاربران سایت ها است که این کار را می توان با ایجاد بخش هایی مانند دریافت نظرات کاربران و یا سیستم رای گیری انجام داد بحث پویا بودن صفحات وب بسیار مهمتر از پیش شده است زیرا این گونه کارها را تنها با صفحات پویا می توان انجام داد. در نهایت پیشنهاد اینجانب به دوستان خواننده استفاده از صفحات وب پویا با یک طراحی و کدنویسی صحیح به جای صفحات وب ایستا می باشد. علت تاکید بر طراحی و کدنویسی صحیح در صفحات پویا میزان اهمیت آن در صفحه تولید شده و کارایی آن می باشد. | ||||



