بخشی از پاورپوینت
اسلاید 1 :
طراحی صفحات وب
اسلاید 2 :
تاریخچه اینترنت
پیدایش اینترنت به دهه ۶۰ برمی گردد؛ یعنی زمانی که دولت ایالات متحده بر اساس طرحی موسوم به Arpa مخفف (آژانس تحقیق پروژه های پیشرفته) که هدفش تقویت کارکردهای دفاعی بود، این طرح را به اجرا گذاشت.
در آن زمان، چیزی به اسم کامپیوتر شخصی وجود نداشت و صرفاً سازمان های بزرگ، دانشگاه ها و مراکز دولتی بودند که از سیستم های کامپیوتری بزرگ موسوم به MainFrame استفاده می کردند که هر کدامش اطلاعات خاصی را ذخیره کرده بود و در صورت نیاز، با یکدیگر اتصال برقرار و اطلاعات را بین همدیگر منتقل می کردند یا در صورت ایجاد بستر مناسب، اطلاعات را در حالت اشتراک قرار می دادند.
سرانجام درسال 1961 میلادی تعداد ۴ کامپیوتر در ۲ ایالت مختلف با موفقیت ارتباط برقرار کردند و با اضافه شدن واژه نت به طرح اولیه، نام آرپانت ( ArpaNet) برای آن منظور شد.
اسلاید 3 :
تاریخچه اینترنت
در دهه 1970 میلادی با تعریف پروتکلهای جدیدتر از جمله TCP که تا به امروز رواج دارد و نیز مشارکت کامپیوترهای میزبان Host) )بیشتر به آرپانت و حتی گسترده شدن آن به برخی نواحی فراتر از مرزهای ایالات متحده، آرپانت شهرت بیشتری یافت و ایده اینترنت همراه با جزییات بیشتر راجع به شبکههای کامپیوتری مطرح گشت تا اینکه طی سالهای پایانی دهه ۱۹۷۰ شبکههای مختلف تصمیم گرفتند به صورت شبکهای با یکدیگر ارتباط برقرار نمایند و آرپانت را بعنوان هسته اصلی انتخاب کردند.
بعدها در سال 1993 میلادی نام اینترنت روی این شبکه بزرگ گذاشته شد. وب یا همان WWW که مخفف World Wide Web (به فارسی: تار جهانگستر) میباشد توسط آزمایشگاه اروپایی فیزیک ذرات CERN بخاطر نیاز آنها به دسترسی مرتبتر و آسانتر به اطلاعات موجود روی اینترنت ابداع گشت. در این روش اطلاعات به صورت مستنداتی صفحهای بر روی شبکه اینترنت قرار میگیرند و بوسیله یک مرورگر وب قابل مشاهده هستند و هم اکنون کارکردهای بسیاری دارند.
اسلاید 4 :
در روزهای نه چندان دور، وب سايتها چيزي بيش از مجموعه اي از لينكها و فايلهاي متني با گرافيك محدود نبودند(صفحات ایستا) .
با گذر زمان اچ. تي. ام. ال.( HTML: HyperText Markup Language ) با ابزارهاي توسعه و زبانهای برنامه سازی ديگري نظير ايكس. ام. ال. XML:Extensible Markup Language) )و JAVA ادغام شد و باعث شد كه عمليات محاسباتي نيز روي اطلاعات امكان پذير شود.
با ادغام سيستمهاي مبتني بر وب و نرمافزارهاي كاربردي،نرم افزارهاي مبتني بر وبWebApplications :WebAPP) )متولد شد. امروز "نرم افزارهاي مبتني بر وب" شامل ابزارهاي محاسباتي قدرتمندي هستند كه علاوه بر اينكه مي توانند به صورت توابع مستقل عمل كنند، قابليت ادغام با پايگاه داده ها و نرمافزارهاي كاربردي تجاري را نيز به خوبي دارا مي باشند.
در حقيقت امروزه "نرم افزارهاي مبتني بر وب" مي توانند از یک صفحه وب ساده تا وب سایتهاي بسيار پيچيده كه تمامي اطلاعات قابل نمايش خود را توسط واكشي اطلاعات از پايگاه داده هاي مختلف و اعمال محاسباتي بر روي آنها تهيه مي كنند.
اسلاید 5 :
خصوصیات نرم افزارهاي تحت وب
مستقل از شبکه : نرم افزارهاي مبتني بر وب" بر روي يك ساختار شبكه اي قرار مي گيرند و بايد به احتياجات اجتماعات و دسته های مختلفي از مشتريان پاسخگو باشند.يك"نرم افزارهاي مبتني بر وب" ممكن است بر روي اينترنت قرار بگيرد و قابل دسترسي براي سازمان خاصي باشد و يا بر روي اكسترانت قرار گرفته و در اختيار شبكه اي خاص از كاربران قرار گيرد..
همزمانی : ممكن است تعداد زيادي از كاربران در يك زمان به "نرم افزارهاي مبتني بر وب" دستيابي پيدا كنند.در اغلب موارد الگوي استفاده ميان كاربران مختلف بسيار متفاوت است.
بار غیر قابل پیش بینی: ممكن است تعداد كاربران يك "نرم افزارهاي مبتني بر وب"در روزهاي مختلف متفاوت باشد و اين مسئله به خوبي قابل پيش بيني نيست.به عنوان نمونه اين دوشنبه سيستم 100 كاربر داشته،5 شنبه 10000 كاربر و دوشنبه آينده 2000 كاربر
کارایی : در صورتيكه كاربر "نرم افزار مبتني بر وب" انتظار زيادي براي دستيابي به پردازشهاي سمت سرور و يا قالب بندي و نمايش سمت كلاينت بكشد، ممكن است براحتي از رجوع مجدد خود داري كند و سيستم مشتريان خود را از دست بدهد .
اسلاید 6 :
خصوصیات نرم افزارهاي تحت وب
دسترس بودن : هيچوقت نمي توان 100 درصد مواقع در دسترس بود . با اينحال بايد در نظر گرفت كه در هر زمان از 24 ساعت روز ممكن است كاربراني از يك نقطه جهان بخواهند از سيستم استفاده كنند. به همين علت يك "نرم افزار مبتني بر وب" بايد 24 ساعت شبانه روز، هفت روز هفته و 365 روز سال در دسترس باشد.
مبتنی بر داده :عملكرد اصلي بسياري از "نرم افزارهاي مبتني بر وب"استفاده از هايپرمدياHypermedia) )براي نمايش متون، گرافيكها، اصوات و تصاوير مي باشد. به عبارت ديگر عمده "نرم افزارهاي مبتني بر وب" از اطلاعاتي كه بر روي پايگاه داده هاي محلي و غير محلي وجود دارند به صورت مشترك استفاده مي كنند و محتواي خود را توسط اين اطلاعات تهيه مي كنند.
حساس به محتوا : يكي از معيارهاي مهم كيفيت يك "نرم افزار مبتني بر وب"،كيفيت و زيبايي محتواي آن مي باشد.
اسلاید 7 :
خصوصیات نرم افزارهاي تحت وب
تکامل تدریجی :تكامل در "نرم افزارهاي مبتني بر وب" امري عادي به حساب مي آيد."نرم افزارهاي مبتني بر وب" همانند يك باغ مدام در حال تغيير و رشد مي باشند و اطلاعات و محتواي آنها مي توانند دائماً تغيير يابند. به همين علت نگهداري و مراقبت مداوم امري مهم و حیاتی محسوب مي شود.
فوریت : منظور از فوريت، لزوم هر چه سريعتر در دسترس بودن سيستم در بازار مي باشد. اين خصوصيت مربوط به خيلي از سيستمها مي باشد. ولي در مورد بسياري از "نرم افزارهاي مبتني بر وب" زمان حضور در بازار چند روز و يا چند هفته است و در مقايسه با ديگر نرم افزارها اين زمان بسيار كوتاه است. براي همين بايد از روشهايي براي ايجاد "نرم افزارهاي مبتني بر وب" استفاده کنیم که این ویژگی را پوشش دهند. البته توسط ابزاهایی که امروزه وجود دارند مي توان يك "نرم افزار مبتني بر وب" ساده را در چند ساعت آماده كرد .
اسلاید 8 :
خصوصیات نرم افزارهاي تحت وب
امنیت : همانگونه كه گفته شد "نرم افزارهاي مبتني بر وب" توسط يك ساختار شبكه اي مي توانند در دسترس كاربران مختلف با مقاصد مختلف در هر سوي جهان باشند. بسيار دشوار و حتي غير ممكن است كه جمعيت كاربراني را كه به سيستم دسترسي دارند را محدود كرد. به همين علت به منظور محافظت از اطلاعات حساس و ايمن نمودن انتقال داده ها، از ساختارهاي امنيتي قدرتمندتری نسبت به دیگر نرم افزارها بايد استفاده كنيم.
زیبایی شناسی : يك جزء لاينفنك هر "نرم افزار مبتني بر وب" زيبايي ظاهري آن مي باشد. براي موفقيت يك "نرم افزار مبتني بر وب" طراحي زيبايي ظاهري نقش بيشتري نسبت به طراحي تكنيكي دارد. همه ويژگيهاي بالا به نحوي در "نرم افزارهاي مبتني بر وب" اثر گذارند.
اسلاید 9 :
دسته بندي نرم افزارهاي مبتني بر وب
اطلاعاتی: در اين نوع از "نرم افزارهاي مبتني بر وب" فقط امكان مشاهده و خواندن محتواي سايت به همراه امكان ناوبري ساده وجود دارد.
دانلود : در اين نوع از "نرم افزار مبتني بر وب" امكان دانلود داده ها و اطلاعات از سرورهايي خاص فراهم مي شود.
تعاملی : امكان ارتباط ميان اجتماعات مختلفي از كاربران توسط ابزارهايي مانند اتاقهاي گفتگو ( chatroom)،تابلو اعلاناتbulletin) )و يا پيام فوري (instant messaging ) توسط "نرم افزار مبتني بر وب" فراهم مي شود.
اسلاید 10 :
دسته بندي نرم افزارهاي مبتني بر وب
ورودی کاربر : امكان استفاده از وروديهاي فرم مانند براي مقاصد مختلفي همانند دريافت اطلاعات كابران ميسر است.
مبتنی بر تراکنش : در اين "نرم افزار مبتني بر وب" بر اساس در خواست كاربر، تراكشهايي براي پاسخ به آن توسط سيستم انجام مي شود.
مبتنی بر سرویس : در اين سيسمتها سرويس هاي خاصي براي كاربران مهيا مي شود.
پرتال : پورتال اطلاعات را از منابع مختلف جمع آوری و به کاربران خود ارائه می دهد تا آنها نیازهای خود حول محور فعالیت آن پورتال را بصورت مجتمع در یک پایگاه واحد بدست آورند.پرتالها به منابع و پایگاه های مختلف متصل هستند و دائما با آنها در حال تبادل اطلاعات بوده و در نهایت اطلاعات مورد نیاز کاربران خود را بصورت دسته بندی شده ارائه می دهند. البته این بدین معنا نیست که خود هیچ گونه اطلاعاتی منتشر نمی کنند، بلکه پورتال ها خود نیز قابلیت انتشار اطلاعات سازمان یا شرکت خود را دارند و در صورت لزوم با سایر پورتال ها به اشتراک می گذارند.
اسلاید 11 :
دسته بندي نرم افزارهاي مبتني بر وب
دسترسی به پایگاه داده :توسط اين سيستمها كاربران پرس و جوهایی (Query )را روي پايگاه داده بزرگي اجرا كرده و اطلاعات مورد نياز خود را استخراج كنند.
دسترسی به انباره داده : توسط اين "نرم افزارهاي مبتني بر وب كاربران مي توانند پرس و جوهایی را بر روي چند پايگاه داده بزرگ اجرا كنند و اطلاعاتي را از آنان استخراج كنند. البته خيلي از "نرم افزارهاي مبتني بر وب" از تركيب چند تايي اين گروهها ايجاد مي شوند و يك نرم افزار مبتني بر وب مي تواند جزء چندين دسته از اين گروهها قرار بگيرد.
قابل سفارشی سازی : اين نوع سيستمها امكان شخص سازي محتوا را به منظور برآورد نيازهاي خاصي فراهم مي كنند.
اسلاید 12 :
معماری شبکه اینترنت
اسلاید 13 :
پروتکل HTTP
هر پروتكل از يك ساختار خاص برای ارسال و دريافت اطلاعات (بسته های اطلاعاتی ) استفاده نموده و ترافيك مختص به خود را در شبكه ايجاد می نمايد . HTTP برگرفته از Hyper Text Transfer Protocol ، يكی از متداولترين پروتكل های لايه application است كه مسئوليت ارتباط بين سرويس گيرندگان و سرويس دهندگان وب را برعهده دارد .
پروتكل HTTP به عنوان زبان مشترك ارتباطی بين سرويس گيرنده و سرويس دهنده وب به رسميت شناخته شده و از آن استفاده می گردد . در واقع مرورگر وب صدای خود را با استفاده از پروتكل HTTP به گوش سرويس دهنده وب رسانده و از وی درخواست يك صفحه وب را می نمايد.
به منظور انجام يك تراكنش موفقيت آميز بين سرويس گيرندگان وب ( نظير IE ) و سرويس دهندگان وب ( نظير IIS)به اطلاعات زيادی نياز خواهد بود . پس از handshake پروتكل TCP/IP ، مرورگر اطلاعات گسترده ای را برای سرويس دهنده وب ارسال می نمايد .
اسلاید 14 :
پروتکل HTTP
سرويس گيرنده و سرويس دهنده وب برای ارسال يك درخواست و پاسخ به آن از پروتكل HTTP استفاده نموده و ارتباط ايجاد شده بين خود را صرفا" برای يك تراكنش نگهداری می نمايند ( HTTP يك پروتكل Stateless است ) . فرآيند ايجاد يك تراكنش بين سرويس گيرنده و سرويس دهنده وب را می توان در چهار مرحله زير خلاصه نمود:
مرحله اول ، برقراری ارتباط : در ابتدا می بايست يك ارتباط و يا اتصال مبتنی بر پروتكل TCP/IP بين يك سرويس دهنده و يك سرويس گيرنده وب ايجاد گردد . به منظور تشخيص نوع پروتكل استفاده شده ، برنامه ها از يك عدد منحصر بفرد با نام شماره پورت استفاده می نمايند .( پروتكل FTP از پورت 21 ، پروتكل Telnet از پورت 32 ، پروتكل SMTP از پورت 25 ، پروتكل HTTP از پورت 80 ) .
مرحله دوم : ايحاد و يا صدور يك درخواست توسط سرويس گيرنده
مرحله سوم : پاسخ سرويس دهنده به درخواست سرويس گيرنده
مرحله چهارم ، خاتمه و يا توقف ارتباط : سرويس دهنده مسئوليت خاتمه ارتباط TCP با سرويس گيرنده وب را پس از پاسخ به درخواست سرويس گيرنده برعهده دارد . به منظور برخورد با مسائل غيرقابل پيش بينی ، هم سرويس گيرنده و هم سرويس دهنده می بايست قادر به مديريت يك ارتباط باشند . مثلا" پس از فعال نمودن دكمه stop در مرورگر ، می بايست به ارتباط ايجاد شده توسط سرويس گيرنده خاتمه داده شود .
اسلاید 15 :
نمای کلی ارتباط کامپیوترها در مدل کلاینت / سرور
اسلاید 16 :
Peer to Peer Network
در این نوع شبکه هیچگونه centralized authority بین کامپیوتر های شبکه نمی توانیم ببینیم در واقع هیچ نوع مرکزیت بین آنها وجود ندارد. اگر یک کاربر بخواهد به منابع کامپیوتر دیگر دسترسی پیدا کند سیستم امنیتی کامپیوتر مقصد (کامپیوتری که منابع درخواست شده را در خودش دارد) بررسی می کند که آیا کامپیوتر درخواست دهنده اجازه دسترسی به منابع را دارد یا خیر. هر کامپیوتر در این نوع شبکه می تواند هم client باشد هم سرور. هر کاربر می بایست local back up را خودش بگیرد، ملاحظات امنیتی بسیار بسیار اندک است و کامپیوتر های محدودی هم در بر می گیرد.
اسلاید 17 :
Client/Server Network
بر خلاف شبکه peer to peer این نوع شبکه سیستم عاملی را استفاده می کند که برای این کار تخصص یافته است تا اطلاعات شبکه را از یک منطقه مرکزی یا centralized point مدیریت کند که این منطقه مرکزی همان سرور است . client ها از سرور تقاضای اطلاعات می کنند و سرور است که با دادن اطلاعات یا دسترسی به منابع به آنها پاسخ می دهد. شبکه های client/server نسبت به peer to peer مزایای مشخصی دارند و در یک کلام شبکه ای بسیار بسیار سازماندهی تر شده می باشند . بسیار آسان تر خواهد بود که فایل ها و منابع را پیدا کنیم چون آنها بر روی سرور ذخیره شده اند و از امنیت بسیار بالایی برخوردارند همه username و passwords ها در یک database یکسان که همان سرور است ذخیره می شوند و کاربران نمی توانند از سرور بعنوان workstation استفاده کنند بنابراین در نهایت واضح است که شبکه client /server کارایی بسیار بهتری دارد.
اسلاید 18 :
مدل کلاینت سرور
عموما کلاینت به کامپیوتری گفته می شود که تقاضایی را از یک سرور دارد. کلاینت در لغت نامه به معنای مشتری می باشد و مشتری کسی است که تقاضای خدماتی را از سوی فروشنده ای دارد. یک سرور می تواند در آن واحد به چندین کلاینت یا بازدید کننده خدمات رسانی کند.
اين در حالي است كه در فناوری اطلاعات سرور برنامه ی کامپیوتری است که خدمات گوناگونی را به برنامه های کامپیوتری دیگر و یا کاربرانش (در همان سیستم یا سیستم دیگر) ارائه می دهد . در تعریف عملی تر، سرور یک کامپیوتر متصل به شبکه است که بر خلاف سایر کامپیوتر ها برای چند منظور متفاوت ساخته شده است.
اسلاید 19 :
مدل کلاینت سرور
- در معماری فوق از سرويس دهند گان و سرويس گيرند گان با خصايص متفاوت استفاده می شود.
- اصل تقسيم کار دنبال و سرويس دهنده عمليات سنگين با پردازش بالا و سرويس گيرنده عمليات سبک را انجام خواهند داد.
- دو بخش متفاوت يک برنامه ، در جهت انجام عمليات با يکديگر تشريک مساعی می نمايند.
- سرويس گيرنده با ارسال درخواست و سرويس دهنده با پاسخ به درخواست جلوه ای از همياری در پردازش عمليات را بنمايش می گذارند.
- پلتفورم و سيستم های عامل سرويس دهنده و سرويس گيرنده می تواند متفاوت باشد.
- عملياتی را که يک برنامه انجام می دهد بين سرويس دهنده و سرويس گيرنده تقسيم می گردد.
اسلاید 20 :
مدل کلاینت سرور
مزايا :
- بهره گيری مناسب از پتانسيل های سخت افزاری موجود با توجه به اصل تقسيم عمليات ها
- بهينه سازی استفاده و بکارگيری منابع اشتراکی .
-بهينه سازی توانائی کاربران از بعد انجام فعاليت های متفاوت
معايب :
- عدم وجود امکانات لازم برای کپسوله نمودن سياست های راهبردی نرم افزار
- کاهش کارائی برنامه همزمان با افزايش تعداد کاربران همزمان
- بهبود عملکرد برنامه و يا اعمال اصلاحات مورد نظر همواره يکی از چالش های جدی است