تور لحظه آخری
امروز : شنبه ، 19 آبان 1403    احادیث و روایات:  امام علی (ع):شمار قطره هاى آبها و ستارگان آسمان و ذرات گردوغبار پراكنده در هوا وحركت مورچه برسنگ ب...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

لوله بازکنی تهران

آراد برندینگ

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

قیمت پنجره دوجداره

بازسازی ساختمان

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

اوزمپیک چیست

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

نگهداری از سالمند شبانه روزی در منزل

بی متال زیمنس

ساختمان پزشکان

ویزای چک

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

 






آمار وبسایت

 تعداد کل بازدیدها : 1827646343




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

مقدمه اي بر برنامه نويسي تحت وب -


واضح آرشیو وب فارسی:سایت ریسک: t=33407">مقدمه اي بر برنامه نويسي تحت وب Mikhak 09 تير 1384, 00:47اينترنت شبکه ای از شبکه های مرتبط به يکديگر بوده که بر روی آن سرويس های متعددی بمنظور ارائه خدمات فعال می باشند. بدون شک سرويس وب يکی از مهمترين سرويس های موجود بر روی اينترنت است که بيشترين تاثير را در عموميت يافتن اينترنت در سطح جوامع بشری برعهده داشته است. وب در نگاه اول مانند يک سيستم اطلاعاتی توزيع شده است . در سيستم فوق اطلاعات ( با اشکال متفاوت ) بر اساس استانداردهای مربوطه و با يک ساختار مشخص قرار گرفته و با استفاده از ارتباطات تعريف شده بين اطلاعات می توان بسرعت و بسادگی از اطلاعات موجود استفاده کرد. ارائه دهندگان اطلاعات با پيروی از اصول موجود اطلاعات خود را در سيستم فوق قرار داده و جستجو کنندگان اطلاعات با استفاده از ابزارهائی خاص قادر به جستجو و دستيابی به اين اطلاعات خواهند شد. وب در سال 1991 توسط " تيم - برنرز لی " ابداع گرديد. شكل 1: مراحل پردازش اطلاعات يك فرم HTML * اطلاعات موجود در وب در حريم های اطلاعاتی با نام " صفحات وب " ذخيره می گردند. اندازه ونوع محتويات اين نوع صفحات کاملا" متغير بوده و نمی بايست در اين راستا يک صفحه وب را با يک صفحه کتاب مقايسه کرد گرچه شباهت های اندکی نيز بين آنها وجود داشته باشد. * محتويات يک صفحه وب می تواند : متن گرافيک صدا تصوير انيميشن و ... باشد. گستردگی و تنوع نوع اطلاعاتی که می توان در صفحات وب قرار داد يکی از مهمترين ويژگی های قابل توجه وب از ديدگاه ارائه دهندگان اطلاعات از يک طرف و استفاده کنندگان از اطلاعات از طرف ديگر می باشد. * صفحات وب از لحاظ فيزيکی فايل هایي هستند که توسط نرم افزارهای مربوطه بوجود آمده و دارای انشعاب "htm" و يا "html"" می باشند. برای ايجاد اين نوع صفحات می توان از تمام نرم افزارهائی که بنوعی قادر به ايجاد و ذخيره سازی يک فايل هستند استفاده کرد.( Notepad نمونه ای از اين نوع نرم افزارها است ). امروزه نرم افزارهای کاملا" حرفه ای برای ايجاد و مديريت صفحات وب توسط شرکت های نرم افزاری ايجاد شده است . FrontPage,Hotmetal,... نمونه هائی در اين زمينه می باشند. * پس از ايجاد صفحات وب در صورت نياز و استفاده عموم ( داخلی ، خارجی ) می بايست آنها را بر روی يک سايت ذخيره نمود. يک وب سايت مجموعه ای از صفحات وب را شامل می گردد. * ارائه دهندگان اطلاعات پس از آماده سازی صفحات وب و استقرار آنها بر روی يک وب سايت زمينه استفاده از اطلاعات فوق را برای استفاده کنندگان فراهم می نمايند. استفاده کنندگان با استفاده از نرم افزارهائی موسوم به " مرورگر" قادر به دستيابی به يک وب سايت و درخواست اطلاعات مورد نياز خود می باشند. * تمام صفحات وب دارای مجموعه دستورالعمل هائی هستند که نحوه نمايش اطلاعات مورد نظر را مشخص خواهد کرد. رايج ترين مجموعه دستورالعمل های نمايش در صفحات وب تگ های Html می باشند. معماري عمومي وب: براي تشريح بهتر برنامه هاي كاربردي تحت وب (Web based applications) مدرن و امروزي، معمولا آنها را به 4 لايه مستقل تقسيم مي كنند. لايه مشتري يا Client، لايه هاي مياني كه عبارتند از presentation و Business و در نهايت آخرين لايه كه عبارت است از لايه داده يا Database. معمولا لايه هاي مياني در يك لايه مجتمع شده و در نتيجه يك مدل ساده شده 3 لايه اي به دست مي دهند. لايه مشتري يا Client بخشي از اين معماري است كه توسط كاربر وب مشاهده مي شود. بقيه لايه ها بر روي كامپيوترهايي قرار دارند كه ممكن است صدها كيلومتر از مشتري فاصله داشته باشند. لايه مشتري در اين مدل همان مرورگر وب است كه بر روي كامپيوتر كاربر صفحات وب را نمايش مي دهد. در اين لايه علاوه بر امكان نمايش اطلاعات، امكان ورود و برخي پردازشهاي اطلاعاتي نيز وجود دارد. معمولا دو گونه پياده سازي از لايه مشتري وجود دارد. در روش اول از هوشمند بودن كامپيوتر كاربر و قابليتهاي پردازشي آن استفاده اي نمي شود. هنگامي كه كاربر اطلاعات يك فرم را تكميل مي كند و يا درخواست صفحه خاصي را دارد، كليه عملياتهاي پردازشي در لايه هاي مياني انجام مي گيردو صفحه هاي جديدي كه حاوي نتايج اين پردازشها هستند براي او ارسال مي گردند. اين روش را اصطلاحا Dump HTML Client مي نامند. اما در روش دوم از هوشمندي كامپيوتر كاربر به خوبي استفاده مي شود. در اين روش برخي پردازشهاي خاص توسط كامپيوتر مشتري و مرورگر موجود بر روي آن صورت مي گيرد. در اين حالت كامپيوتر مشتري را Semi Intelligent Client مي نامند. براي انجام اين پردازشها معمولا از زبانهاي اسكريپت نويسي نظير vbscript و يا javascript استفاده مي شود. توانايي مرورگها در اينجا اهميت مي يابد. شكل 2: معماري سه لايه برنامه هاي كاربردي تحت وب لايه presentation وظيفه ارائه محتويات ديناميك صفحات وب را بر عهده دارد. روشهاي پياده سازي اين عمليات بر روي كامپيوترها (web server) متنوع است. تكنولوژيهاي مختلف نظير CGI, PHP, ASP, JSP, Servlet, .... لايه presentation معمولا درون برنامه هاي وب سرور نظير Apache web server و يا Microsoft IISو ... پياده سازي مي شود. وب سرورها توانايي دريافت و اجراي چندين درخواست از سوي برنامه هاي كاربردي لايه هاي ديگر و همچنين كاربران را به طور همزمان دارند. اين نرم افزارها بر اساس يك پيكربندي اوليه مي دانند كه درخواستهاي كاربر را بايد به كدام برنامه كاربردي ارجاع دهند. لايه Business بيشترين حجم عمليات يك سايت مدرن امروزي را انجام مي دهد. عملياتهاي نظير مديريت نشستها، مديريت دستيابي به بانكهاي اطلاعاتي و... از جمله اين عملياتها هستند. روشهاي گوناگوني براي پياده سازي اين لايه وجود دارد نظير استفاده از اشياي COM متعلق به شركت ميكروسافت و يا استفاده از متناظرهاي آن متعلق به شركت SUN. راه حلهاي قديمي نيز براي پياده سازي اين لايه وجود دارد نظير استفاده از CORBA Objects.برنامه هاي لايه Business معمولا درون برنامه هايي موسوم به Application Server پياده سازي مي شوند نظير Microsoft MTS, Oracle Application Server لايه Database يا لايه داده مسئول نگهداري اطلاعات است و مي تواند شامل مجموعه اي از اطلاعات به صورت بانكهاي اطلاعاتي مدرن يا فايلهاي ساده و ... باشد تكنولوژيهاي مختلف طراحي اسناد وب: در حالت كلي سايتهاي اينترنتي را مي توان به دوگروه ثابت (static) و پويا (dynamic) تقسيم كرد. براي طراحي هر كدام نيز ابزارهاي مختلفي وجود دارد. شكل3: مراحل پردازش درخواست سرويس گيرنده توسط سايت با ساختار ثابت در سايتهاي با ساختار ثابت همانگونه كه قبلا نيز گفتيم، محتويات به صورت يك سري صفحات وب HTML طراحي و روي سايت قرار مي گيرند.با هر درخواست براي يك صفحه مشخص، صفحه موردنظر براي سرويس گيرنده ارسال مي شود (شكل 3) اما در سايتهاي با ساختار پويا با هر درخواست سرويس گيرنده بر روي سرويس دهنده پردازشي به منظور ساخت صفحه مورد نظر صورت مي گيرد و نتيجه پردازش به صورت يك صفحه حاوي كدهاي HTML براي سرويس گيرنده ارسال مي شود. (شكل 4). شكل4: مراحل پردازش درخواست سرويس گيرنده توسط سايت با ساختار پوي در نهايت همانگونه كه در شكلهاي 4 و 3 نيز مشاهده مي شود آنچه كه براي سرويس گيرنده ارسال مي شود چيزي جز صفحه حاوي تگهاي HTML نيست. در ميان تكنولوژيهاي مختلفي كه وجود دارد مهمترين ها و پراستفاده ترين تكنولوژيها به شرح زير هستند: 1-HTML اين تكنولوژي ساده ترين فرم انتشار اسناد در وب است.در اين تكنولوژي صفحات يك وب سايت به صورت ايستا كدگذاري شده و سپس انتشار مي يابند. اين روشي است که در بسياري از وب سايت‌هاي شخصي که در ابتداي پيدايش وب ساخته شده اند بکار رفته است. در اينجا توليد کننده با دانستن html و يا با استفاده از ابزاري که چنين کدهايي را توليد مي کنند، صفحات خود را مي سازد. براي يک وب سايت ساده با تعداد محدودي از صفحات ايستا شايد اين يک روش قابل قبول باشد. از مزاياي اين تكنولوژي مي توان به سادگي و عدم نياز به برنامه نويسي و آشنايي با زبان خاص كدنويسي اشاره كرد. علاوه بر اين پشتيباني گسترده اين روش توسط نرم افزارهايي كه قادر به توليد اينگونه صفحات از طريق تكنيكهاي Visual هستند نيز از ديگر مزيتهاي اين روش محسوب مي گردد. اسنادي كه به اين روش توليد مي گردند معمولا از سرعت بارگذاري خوبي برخوردار هستند (به دليل عدم نياز به انجام پردازش در سمت Server). اما عليرغم تمامي ويژگيهاي ذكر شده اين روش مشكلاتي نيز دارد. نخست اينكه اين شيوه قادر به توليد صفحات ديناميك نيست. ديگر اينكه با تركيب محتوا (content) و قالب (Style) باعث بروز مشكل در ايجاد تغييرات در صفحات مي گردد. به بيان معادل، هزينه ايجاد و اعمال تغييرات در صفحات بالاست. به همراه اين تكنولوژي ابزارهاي ديگري براي برنامه سازي Client-Side نيز وجود دارد. برخي از اين ابزارها كه بيشتر مورد استفاده قرار مي گيرند عبارتند از Java Script، VBScript. البته به كمك تلفيق اين تكنولوژي با زبانهاي اسكريپت نويسي مذكور و نيز استفاده از مفاهيم CSS مي توان صفحاتي طراحي كرد كه محتويات ديناميك داشته باشند ليكن اين قدرت به Client محدود مي گردد و علاوه بر آن مشكل تركيب محتوا و قالب همچنان پابرجاست. 2-تكنولوژي CGI (تكنولوژي مرتبط با طرف سرويس دهنده) يك برنامه CGI بوسيله سرويس دهنده وب در پاسخ به درخواست ايجاد شده توسط مرورگر وب، اجرا ميشود. سرويس دهنده وب به عنوان واسط ميان مرورگر و برنامه CGI، درخواست مرورگر را به برنامه و خروجي برنامه CGI را براي پردازش به مرورگر وب ارسال ميكند. براي مثال ممكن است برنامهاي نقطه نظرات كاربر را دريافت نموده و آن را به شكل يك پيام الكترونيكي براي مسئول سايت ارسال كند. تقريبا هرنوع زبان برنامه نويسي را ميتوان براي نوشتن يك برنامه CGI بكار برد. CGI واسط تعريف شده مابين سرويس دهنده وب و برنامه خارجي است كه مايليد آن را بنويسيد. حال سوال اين است كه يك برنامه CGI چه كاري نميتواند انجام دهد. اين برنامه نميتواند به طور مستقيم با كاربر ارتباط برقرار كند. همچنين نميتواند اطلاعات را از خط اعلان، منوها يا ساير بخشهاي تعاملي دريافت يا نمايش دهد. اين برنامه ها تصاوير گرافيكي را نيز نمايش نميدهند؛ اگر چه مي توانند داده هاي باينري ، كه در حقيقت تصوير هستند را توليد كنند، اما هيچ نوع واسط گرافيكي براي ارتباط با كاربر در اختيار برنامه ساز نمي گذارند. يك برنامه CGI براي عملكرد صحيح و مناسب نيازمند شرايط زير است: 1- برنامه با وارد كردن نام آن در خط فرمان (Command Line) قابل اجرا باشد. 2- برنامه بايد يك سرآيند (Header) مناسب و معتبر از نوع محتويات (Content)توليد كند. محتويات خروجي يك برنامه CGI ميتواند كد HTML، تصاوير GIF، فايلهاي متني، مستندات مايكروسافت Word و يا فايلهاي صوتي باشد. سرآيند نوع محتويات كه توسط برنامه CGI توليد ميشود، نوع محتويات بازگشتي را مشخص ميكند و مرورگر ميتواند عمليات مناسب را بر اساس آن انجام دهد. ماداميكه يك برنامه توسط سرويس دهنده وب قابل اجرا باشد و اين برنامه خروجي معتبري نيز توليد كند، كاربرد آن به عنوان يك برنامه CGI قابل قبول است. 3- تكنولوژيهاي مرتبط با طرف سرويس دهنده: ASP,PHP,JSP اين سه نمونه از معروفترين تكنولوژي هايي است كه در انتشار صفحات وب ديناميك در طرف سرويس دهنده به كار گرفته مي شوند. جداي از اختلاف هاي موجود ميان آنها، هر سه امكاناتي را براي اجراي يك برنامه در Server و توليد خروجي HTML به صورت ديناميك فراهم مي كنند. در اين تكنولوژيها كد برنامه و كدهاي HTML با هم تركيب مي شوند. توليد ديناميك صفحات وب و برنامه نويسي به فرم Scripting از مزاياي اين تكنولوژيها به صورت عام مي باشند. اما در نهايت تركيب محتوا (Content)، قالب بندي (Format) و منطق برنامه(Logic) پيچيدگي بيشتري را نسبت به HTML سبب مي گردند الف) PHP PHP مخفف Hypertext Preprocessor يك زبان Scripting و Server-Side مي باشد. يك Script به كدي از برنامه ميگويند كه بصورت ابتدايي Compile نميشود و فقط در صورت فراخواني و يا درخواستي براي اجرا توسط مفسّر زبان مورد نظر ترجمه مي شود و به خروجي فرستاده مي شود. اين به اين معني ميباشد كه شما دقيقاً كد برنامه خود را در جاي مورد نياز به كار ميبريد و رابط اجرايي برنامه آنرا به مفسّر مورد نظر ارجاع ميدهد. بعد از نصب مفسّر PHP شما قادر خواهيد بود كه از كدهاي PHP به همراه كدهاي HTML خود در صفحات Web استفاده كنيد و همچنين ميتوانيد Script هاي صرفاً PHP خود را به عنوان ترمينالهاي تفسير كننده داده ها و رابطهاي ورودي و خروجي بر روي سرور خود قرار دهيد. شكل 5: چگونگي پردازش درخواستهاي وب با/بدون PHP-خطوط قرمز رنگ حالت استاتيك سايت و خطوط آبي رنگ پردازشهاي اضافي موردنياز در حالت ديناميك را نشان مي دهند فكر اوليهPHP در پاييز سال 1994 توسط Rasmus Lerdorf ([email protected])شكل گرفت .در ابتدا نگارشي از PHP در صفحه شخصي وي به كار گرفته شد ، تا اطلاعاتي از كساني كه رزومه وي را مي بينند ، نگاه داشته شود. اولين نگارش عمومي آن در اوايل سال 95 ارايه شد و با نام ” Personal Home Page Tools “ معرفي گرديد . كه البته شامل پارسري بسيار ساده بود كه ماكروهاي خاصي را مي شناخت و نيز برخي كاربردهاي مشترك در صفحات شخصـي مانند شمـارنده يا Guestbook وبرخـي ابزار هاي ديگر را شامل مي شد. پارســر در نيمه سال 95 بازنويســي شد و با نام “ PHP/FI نگارش 2 “ ارايه گرديد . FI نام بسـته نرم افزاري ديگري از Rasmus بود كه فرم هاي داده HTML را تفسير مي كرد . پس از آن بسياري از PHP در كــد هاي خود استفاده كردند . در ميانه سال 96 ميزان استــفاده كنندگان به حـــدود 15 هـزار سايت رسيد . اين ميــزان در نيمه سال 97 در حدود 50 هزار سايت مختلف بود. در هـمين زمان PHP از حالت يك پروژه شخصي درآمد و توســط تيمي توسـعه يافت . اين گروه نگارش جديدي از PHP را ارايه دادند و پارسر آن را بازنويسي نمودند. PHP3 به سرعت مورد استفاده قرار گرفـت . هم اكنـون نيز PHP4 آخرين نگارش اين محصول است كه در آن از موتور اسكريپت Zend براي بدست آوردن قابليت هاي بيشتر استفاده شده است . امروزه ، PHP3 و PHP4 بر روي بسياري از محصولات تجاري مانند “RedHat’s Stronghold web Server” ارايه مي گردد. هم اكنون برآورد مي شود بيش 5.100.000 سايت از PHPدر طراحي استفاده كرده اند. دلايل زيادي در محبوبيت و استفاده از اين زبان در حال حاضر وجو دارد برخي از اين دلايل عبارتند از: * سرعت: در مقايسه با تكنولوژي نظير ASP به دليل عدم استفاده PHP از Engine هاي مختلف و متفاوت كدهاي PHP از سرعت بالايي برخوردارند. * نزديك بودن Syntax به ++C/C و Java:از آنجاﺋيكه اكثر برنامه نويسان از ++C/C استفاده كرده اند و بخاطر محبوب بودن بي حد Java معمولا با Syntax هاي اين دو زبان اكثرا آشنا هستند . PHP هم اكثر Syntax هاي خود را شبيه به اين زبانها انتخاب كرده است * OpenSource بودن PHP * اجرا بر روي Platform هاي مختلف: به دليل آنكه توسط GNU C Compiler در همه Platform ها قابل Compile شدن است و از Engine هاي خاص هيچ سيستم عاملي براي اجراي كدها استفاده نمي كند قابليت اجرا بر روي تعداد زيادي از سيستم عامل ها را داراست كه اين يك مزيت براي توسعه دهندگان سيستم محسوب مي شود . ب) Servlet: يك كلاس در زبان جاوا است كه در سرويس دهنده اجرا مي شود. در اين كلاس از دستورات Printh براي توليد يك خروجي HTML استفاده مي شود. توليد ديناميك صفحات وب از مزيتهاي اين روش است اما پيچيدگي توليد كدهاي HTML به كمك دستورات Printh و در حقيقت تركيب محتوا قالب و منطق بازهم از معضلات اين روش محسوب مي گردد. امروزه نقطه تمركز بسياري از تلاشها جداسازي سه عنصر محتوا، قالب و منطق برنامه از يكديگر در طراحيهاي مبتني بر وب است. XML به عنوان يكي از اجزا بسياري از اين تكنولوژيها مطرح است. ج) XML يک markup language است که در آن مي توان از متون و Tagها براي ارايه يک سند استفاده نمود. برخلاف html که داراي Tagهاي ثابت و استانداردي است، درxml مي توان Tagهاي دلخواه را استفاده نمود. همچنين در اينجا هر Tag بايستي با يک Tag متناظر بسته شود. به همين خاطر xml يک فرم خوش ساخت دارد. مثالي از يک سند xml که براي يک کتاب ايجاد شده در زير آورده شده است: <?xml version=”1.0”> <book id=”123”> <author name=”xyz”/> <title>XML publishing with xml</title> <publish-date><year>2002</year><month>7</month><day>15</day></publish-date> </book> امروزه استفاده از xml بسيار متداول و متنوع است. در هر حال بيشترين استفاده از آن در يکپارچه سازي سيستم ها و خصوصا در توليد سيستم هاي کاربردي مبتني بر وب است. ------------------------------------ سينا parsit 22 آبان 1384, 05:41بسیار عالی بود... بینهایت متشکرم.... mahdyonline 14 مرداد 1385, 10:38آفرین عالی بود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 767]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن