PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : آموزش asp.net



آبجی
2nd March 2010, 01:01 PM
چرا از asp.net استفاده می کنیم: 1:برنامه نويسي آسان: asp.net به طور شگفت انگيزي برنامه نويسي وب را آسان كرده است.كنترلهاي سرور asp.net ميتونند به شما كمك كنند كه با كمترين ميزان كد برنامه هاي قوي بسازيد .شما با اين كنترلها ميتونيد به آساني هرچه تمام تر به ديتا بيس ها متصل بشيد ,ميتوانيد وروي هاي كاربرها رو اعتبار سنجي كنيد ,فايلهاي كاربر رو به روي سرور آپلود كنيد .اما بهتر از همه!!ديگه نيازي نيست نگران مرورگرها باشيد.كنترلهاي سرور asp.net بر روي تمامي مرورگرها اجرا ميشوند!!
عدم وابستيگ به زبان خاص: asp.net كاملا آماده پذيرفتن برنامه نويسان زبانهاي ديگر است. شما در asp.net به يك زبان خاص متكي نيستيد .بر عكس asp كلاسيك كه شما به زبانهاي اسكريپتي jscript و vbScript وابسته بوديد اما شما در asp.net هم اكنون قادر به برنامه نويسي با 25 زبان برنامه نويسي هستيد.asp.net دست شما را براي انتخاب زبان برنامه نويسي مورد علاقه تان كاملا باز گذاشته است!!
ابزارهاي عالي : شما ميتوانيد حتي با تكست اديتور هاي ساده مثل notPad هم حداكثر استفاده را از asp.net ببريد .اما مي توانيد با استفاده از ويژوال استوديو به همان راحتي كه در محيط ويژوال بيسيك برنامه مينوشتيد!!در محيط وب نيز برنامه بنويسيد.ميتونيد در محيط ويژوال استوديو از راحتي كار لذت ببريد.كنترلها ار درگ اند دراپ كنيد!به راحتي هر چه تمام تر براي آنها كد بنويسيد.در اين راه
ويژوال استوديو به عنوان يك دوست خوب همواره همراه شما خواهد بود.ابزارهاي جانبي ويژوال استوديو نيز كارهايي همچون تست و دیباگ و... را برای شما انجام میدهند.
كلاسهاي از پيش ساخته شده : كلاسهاي از پيش نوشته شده asp.net همواره در طول برنامه نويسي در كنار شما خواهند بود.و كارهاي پيچيده را به راحتي هر چه تمام تر براي شما انجام ميدهند.4500 كلاس فريم ورك دات نت تقريبا هر كاري را با كمترين مقدار كد براي شما انجام خواهند داد!!كارهايي مثل "كار با ديتا بيس" , "كار با XML " , "كار با تصاوير" و .....
پرفورمنس و قابليت توسعه! : اجراي كامپايل شده: بايد به اين كته توجه داشت كه asp.net بسيار سريع تر از asp كلاسيك و هر زبان مترجمي ديگر است. نكته جالب اينجاست كه شما به هيچ وجه كاري با اين كامپايل نخواهيد داشت و اصولا متوجه آن نخواهيد شد!در ضمن در صورت كمترين تقييري در فايل سورس و كد كامپايل شده براي پاسخگويي به ريكوئست ها آماده خواهد بود.كد كامپايل شده همواره به روز خواهد بود.اين الگوريتم باعث شده asp.net سه تا 4 برابر سريع تر از asp كلاسيك باشد.
پس به خاطر داشته باشيد كه كدها در asp.net در انتها به native code كامپايل ميشوند و اين باعث افزايش كارايي و سرعت asp.net ميشود!
خروجي كش شده: سيستم كش asp.net به طور شگفت آوري كارايي نرم افزار شما را افزايش ميدهد . هنگامي كه سيستم كش در يك صفحه فعال باشد . asp.net فقط و تنها و فقط يك بار كد را اجرا ميكند و صفحه را در حافظه خود نگه ميدارد بارهاي ديگر فقط نتيجه اين اجرا را براي درخواست كننده ميفرستد . اين عمل باعث صرفه جويي در پراسس سرور ميشود . و از اجراي چند باره يك كد جلو گيري ميكند.كش شدن خروجي مخصوصا در صفحات متصل به دستا بيس باعث افزايش كارايي و كاهش تراكنش با ديتا بيس ميشود.
ارائه نتيجه بهتر از رقيب (J2EE) : در مقايسه نتايج دو تكنولوژي J2EE , asp.net نتايج بهتري از asp.net به دست مي آيد. يك برنامه asp.net يك چهارم J2EE به كد نويسي احتياج دارد!!و در انتها 28 برابر سريع تر از J2EE اجرا ميشود!همچنين به 7 برابر بيشتر از J2EE به كاربرها پاسخ ميدهد!تنها با يك ششم استفاده بيشتر از CPU !! براي دريافت كد و برنامه petshop به آدرس زير مراجعه كنيد و خودتان نتايج را بدست بياوريد و مقايسه كنيد!
<http://msdn.microsoft.com/net/compare/default.asp>
قابل اعتماد بودن
asp.net سعي كرده است كه برنامه همواره در دسترس يوزرهای آن باشد.يعني مشكلات تا آنجا که ممکن است باعث از كار افتادن برنامه و قطع سرويس دهي آن نشود .
asp.net به طور اوماتيك ارورها را تشخيص و آنها را بر طرف ميكند مشكلاتي از قبيل Memory Leak شدن يا DeadLock شدن يا كرش كردن برنامه.
به عنوان مثال شما برنامه اي نوشته ايد كه داراي مشكل Memory Leak (به هدر رفتن حافظه) است.
بعد از يك هفته اين اشتباه باعث ميشود كه در صد بالايي از مموري سرور اشغال شود. در این وظعیت asp.net به طور اتوماتيك
بار ديگر برنامه را اجرا ميكند و برنامه مشكل دار را از استفاده خارج ميكنداز بين ميبرد ومموري را آزاد ميسازد.تمام اين فرايندها كاملا اتوماتيك و بدون دخالت هيچ فردي اتفاق ميفتد.
انتشار ساده
1: asp.net انتشار و نصب برنامه را بسيار ساده كرده است.شما ميتوانيد يك برنامه چند لايه را به راحتي انتشار يك سايت html بر روي سرور كپي كنيد!بدون نياز به نصب اجراي regsvr32 براي رجيستر كردن كامپوننتها.براي تنظيم برنامه هاي asp.net تنها اديت كردن فايل web.config كافيست.
2:يكي از مسايلي كه در asp كلاسيك برنامه نويس را دچار دردسر ميكرد مسئله كامپوننتاهاي كام بود.در حقيقت بعد از ارتقا كامپوننتها برنامه نويس بايد سرويس را راه اندازي دوباره ميكرد و مسلما براي دقايقي آن سرويس از دسترس خارج ميسد اما در asp.net اين مشكل حل شده است و براي ازتقاع شي كامپوننت فقط نياز هست كه كمپوننت جديد جايگزين كامپوننت قديمي بشود.و بعد از آن asp.net بدون كوچكترني دردسري آن كامپوننت را خواهد شناخت!
3:يكي از ويژگي هاي asp.net اين است كه شما مجبور نيستسد برنامه هاي سابق خود را كنار بگذاريد!!بلكه ميتوانيد كماكان به طور پهلو به پهلو از 2 تكنولوژي جديد و قديم استفاده كنيد.همچنين ميتوانيد از اشيا’ كام كلاسيك خود همچنان استفاده كنيد .دليل اين موضوع هم اين است كه موتور asp كلاسيك كماكان در كنار موتور asp.net در IIS6 حضور دارد.
سرويسهاي ويژه
XML web serviseسرويسهاي XML شما را قادر ميسازد متدهاي خود را در اختيار ديگر برنامه هاي وب بگذاريد.در سرويسهاي وب شما حتي نبايد نگران سيستم عامل سرويس گيرنده باشيد!شما ميتوانيد به سادگي و با چند خط كد سرويس وبي بنويسيد و در اختيار ديگران قرار
بدهيد و آنها نيز ميتوانند به آساني متدهاي اين سرويسها را كال كنند!
هر كلاسي ميتواد به يك سرويس وب تبديل شود.تنها نيازي كه برنامه سرويس گيرنده براي در دسترس داشتن اين كلاسها لازم دارد پروتوكل SOAP هست!پس از آن به راحتي هرچه تمام تر و بدون نياز به داشتن اطلاعاطي در باره شبكه و XML ويا هر چيز ديگر.
برنامه نويسي موبايل
كنترلهاي موبايل به شما اين امكان را ميدهد كه به سادگي براي موبايلها PDA ها و ساير انواع موبايلها(غريب به 80 نوع) برنامه بنويسيد.شما برنامه خود را مينويسيد و سپس كنترلهاي موبايل asp.net آن را به فرمت قابل در يافت موبايلها از قبيل WAP/WML, HTML, يا iMode تبديل خواهد كرد.

آبجی
2nd March 2010, 01:01 PM
به طور معمول نسل های جديد زبان های برنامه نويسی به اين دليل متولد می شوند که زبان های قديمی تر دارای امکانات محدود بودند و يا قدرت استفاده از تکنولوژی های فعلی را به صورت مطلوب و ساده ندارند.
مهمترين نيازی که به عنوان آخرين تکنولوژی وجود دارد، برنامه نويسی در محيط اينترنت است. اينترنت در مدت تقريبا ۸ سال جای خود را به عنوان يکی از مهمترين وسايل ارتباطی برای کارهای روزمره و تجارت باز کرده است. سيستم های برنامه نويسی قديمی تر امکان برنامه نويسی برای اينترنت را فراهم کرده بودند اما هر کدام دارای اشکالات بزرگی هستند، برای مثال تکنولوژی COM اولين بار در ويندوز به کار گرفته شد. در سال 1970 نيز سيستم هايی برای Unix نوشته شده بودند، جاوا نيز در اصل برای ابزارهای الکترونيکی بود و نه برای اينترنت.
سپس برای اولين بار يک سيستم جامع برای برنامه نويسی تحت اينترنت ايجاد شد. اين سيستم -NET. از مراحل سطح پايين که به زبان ماشين می باشد تا بالاترين سطح که برنامه نويسی ويژوال آن می باشد برای استفاده در اينترنت طراحی شده است. البتهNET. فقط برای اينترنت نيست و با استفاده از آن می توان برنامه های کامل تحت Client نيز ايجاد کرد، اما بزرگترين مزيت آن دربرابر سيستم های ديگر امکانات اينترنت آن است.
برای اينکه مزايای استفاده ازNET. را بهتر متوجه بشويم بهتر است در ابتدا معايب سيستم های پيشين را ذکر کنيم. شرکت مايکروسافت تا قبل از سال 1995 به برنامه نويسی در محيط های Client و Server می پرداخت، اما از آن سال به بعد توجه بيشتری به مساله برنامه نويسی در اينترنت کرد. مايکروسافت COM و +COM را ايجاد کرد و آنها را در ويژوال استوديوی 6 به کار گرفت. در سال 1999 حدود ۵۰ در صد از بزرگترين سايتهای تجارت الکترونيکی از محصولات مايکروسافت استفاده می کردند. اما هنوز هم مشکلات بزرگی در سيستم های مايکروسافت وجود داشت که يکی از آنها دشواری نوشتن برنامه در اينترنت با محصولات مايکروسافت بود. شرکت مايکروسافت برای راحتی کار برنامه نويس ها ASP يا Active Server Page را ايجاد کرد. با اينکه اين يک قدم بزرگ بود و کارها را بسيار ساده کرد ولی هنوز از برنامه نويسی شی گرا پشتيبانی نمی کرد. همچنين در ويژوال استوديوی 6 قسمتی برای Internet Application ايجاد شده بود و در آنها امکان ساختن Web Class وجود داشت ولی هيچ وقت به عنوان يک ابزار کار آمد برای برنامه نويسی وب درنظر گرفته نشد.
مدل برنامه نويسی DNA
مايکروسافت يک مدل برنامه نويسی به نام Distributed interNet Application دارد که بر پايه برنامه نويسی n-tier و COM بنا نهاده شده است. مدل DNA از سه بخش اساسی تشکيل شده است.
بخش اول به نام Presentation tire معروف است. در اين بخش رابط تصويری کاربر وجود دارد و خود نيز به دو نوع Internet Browser و Win 32 GUI تقسيم می شود که هر کدام مشکلات خاص خود را دارند. در مدلی که از Win32 GUI يا همان نرم افزارهای معمولی استفاده می شود دو مشکل بزرگ وجود دارد ؛ دشواری بروز رسانی نرم افزار و ديگری DLL Hell که در ادامه توضيح داده خواهد شد. در نوع دوم مشکلاتی از قبيل نبود امکانات برنامه نويسی کافی در محيط مرورگر، نبود رابط قوی با کاربر، نبودن مرورگر های يکسان و... وجود دارد. همچنين هميشه يک اتصال به اينترنت يا اينترانت لازم است. در اين نوع از برنامه نويسی می توان از Java Applet ها يا ActiveX استفاده کرد ولی مرورگر بايد امکان استفاده از آن را داشته باشد، مخصوصا ً هنگام استفاده از ActiveX که بايد فقط از IE استفاده کرد.
بخش دوم که Middle tier نام دارد، مکانی است که اطلاعات و قوانين تجاری در آن وجود دارد. منظور از قوانين ، متد ها و اجزائی هستند که اعمال کاربران را کنترل می کنند. مهمترين و آسان ترين زبان برای نوشتن اين اجزا از DNA ويژوال بيسيک است. برنامه نويسی که بخواهد در اين رده برنامه بنويسد بايد آشنايی کاملی با COM و پروتکل های رايج داشته، همچنين بايد مهارت کافی در استفاده از ADO و ADSI داشته باشد. مشخص است که يک اشتباه در اين لايه باعث بروز خطا و نقص در کل سيستم می شود.
بخش سوم يا Data tier مکانی است که اطلاعات سازمان در آن ذخيره می شود. معمولا ً در اين قسمت از بانکهای پيشرفته رابطه ای مانند SQL Server و Oracle استفاده می کنند.
محدوديت های COM
همانطور که ديديد مهمترين قسمت در DNA همان COM است که در جای جای آن استفاده می شود. در اينجا برخی معايب COM ذکر می شود : ( در ابتدای متن ذکر شد که برای درک نياز بهNET. بايد ابتدا معايب سيستم های قديمی را بشناسيم )
DLL Hell: اگر کوچکترين تغييری در يک COM ايجاد شود، ديگر برنامه هايی که از ورژن قبلی استفاده می کردند قادر به فعال ساختن نسخه جديد نيستند. هنگامی که در ويندوز، يک COM نصب شود برايش در رجيستری يک GUID ثبت می شود که اطلاعات آن COM را در خود ذخيره می کند. اگر يک برنامه از نسخه اول يک COM استفاده کند و بعد از مدتی شما تغييراتی در نسخه اول بدهيد و بخواهيد آن را دوباره در سيستم نصب کنيد ويندوز به شما پيغام خطا می دهد چون ورژن آن تکراری است، اگر هم آن را به ورژن دوم ارتقا دهيد نرم افزار قبلی هنوز به دنبال نسخه اول می گردد. اين امر باعث می شود که شما مجبور شويد يکبار ديگر کل برنامه را کامپايل کرده و در کامپيوترتان نصب کنيد.
کمبود در وراثت: در نسخه های COM که در حال حاضرهستند چيزی به نام وراثتی که در ++C وجود دارد نمی باشد، بلکه وراثت تنها در واسط يک COM می باشد، استفاده از آن هم چندان کمکی به برنامه نويسی نمی کند.
برخی محدوديت های برنامه نويسی اينترنتی در مدل DNA
۱- وجود دو محيط برنامه نويسی برای اينترنت و Client
نقصان در نوشتن برنامه هايی با رابط گرافيکی خوب که در اينترنت کار می کردند کاملا ً مشهود است، نمونه بارز آن اختلاف در برنامه نويسی در ويژوال بيسيک و ASP است. ويژوال بيسيک با رابط گرافيکی کاملا ً سطح بالا و ASP تقريبا ً رابط گرافيکی ندارد. همين امر باعث می شد که يک برنامه نويس مجبور باشد طيف وسيعی از تکنيک ها و زبان ها را فرابگيرد تا بتواند برنامه ساده ای در اينترنت بنويسد.
۲- نبودن حالت های ذخيره اطلاعات رابط گرافيکی در صفحه های اينترنتی
نمونه اين حالت زمانی است که در يک textbox متنی وجود داشته باشد. در برنامه های Win32 GUI متن داخل textbox تا زمانی که کاربر يا برنامه آن را تغيير نداده بر جای خود وجود دارد. اما در محيط اينترنت و نوع ASP با هر بار refresh کردن صفحه کل اطلاعات ازبين می رود. البته اين مشکل با استفاده از شئ های Request و Response تقريبا ً قابل حل است ولی احتياج به برنامه نويسی برای هر تکه از صفحه ASP دارد.
۳- نداشتن Event Handler در محيط برنامه نويسی اينترنت
يکی از مهمترين ابزاری که در برنامه نويسی Win32 GUI وجود دارد استفاده از Event ها است. با تکنولوژی که در حال حاضر وجود دارد تنها راه رسيدن به اين مهم استفاده از ActiveX است که به علت مسايل امنيتی در بيش از ۹۵ در صد مواقع توسط کاربر استفاده از آن رد می شود.
معايب استفاده از API
API ها توابعی هستند که از ويندوز نسخه 1 تا امروز در برنامه نويسی کاربرد داشته و دارند. مهمترين کاری که اين توابع انجام می دهند انجام کارهای سخت و سطح پايين سيستمی است که احتياج به برنامه نويسی زيادی دارند و يا حتی امکان ايجاد آن با زبان هايی مثل ويژوال بيسيک نيست. اما هر API از هر نسخه ويندوز تا نسخه ديگر آن می تواند دچار تغييرات بشود. برای مثال برنامه ای که در ويندوز 98 نوشته شده باشد می تواند در ويندوز 95 اجرا نشود. همچنين هم اکنون ابزارهای جديدی به بازار آمده است که برای آنها نيز می توان برنامه نويسی کرد، مانند تلفن های سيار، کيوسک تلفن، دستگاه های کامپيوتری جيبی و غيره. در اين نوع دستگاه ها ديگر ويندوز به مفهومی که در حال حاضر وجود دارد قابل اجرا نيست و در نتيجه API هم وجود ندارد. لازم به ذکر است که ويندوز CE برای دستگاه های مذکور می باشد ولی قابليت های آن با ويندوزهای ديگر تفاوت زيادی دارد.
NET نسل بعدی Active Server Pages يا ASP است که توسط شرکت ميکروسافت ارائه شده است. اين محصول توسط ميکروسافت بعنوان شاخص اصلی فناوری در ساخت سايتهای وب در نظر گرفته شده است. با استفاده از ASP.NET می توان هم اينترانت کوچک يک شرکت را ساخت و هم يک سايت وب تجاری خيلی بزرگ را طراحی و پياده سازی نمود. مهمترين نکاتی که در طراحی اين محصول در نظر گرفته شده است راحتی استفاده و بالا بودن کارائی و قابليت آن می باشد. در زير برخی ويژگيهای ASP.NET را بررسی می کنيم.
• صفحات ASP.NET کامپايل می شوند.
هنگامی که يک صفحه ASP.NET برای اولين بارتوسط يک مراجعه کننده به سايت فراخوانی می شود، آن صفحه ابتدا کامپايل شده و بر روی سرور نگهداشته می شود و در فراخوانی های بعدی از آن استفاده می شود. اين بدين معنی است که صفحات ASP.NET خيلی سريع اجرا می شوند.
• صفحات ASP.NET با ابزارهای روی سرور ساخته می شوند.
با ابزارهای موجود در ASP.NET می توان صفحات پيچيده وب را براحتی طراحی نمود. بعنوان مثال با استفاده از ابزار DataGrid می توان به آسانی داده های موجود در يک بانک اطلاعاتی را تحت وب نمايش داد.
• مجموعهASP.NET عضوی از بدنه NET. است.
بدنه NET. دارای بيش از ۴۵۰۰ کلاس آماده جهت استفاده در ASP.NET است. اين کلاس ها تقريبا هر نيازی را در برنامه نويسی برآورده می کنند. بعنوان مثال از اين کلاس ها می توان جهت توليد تصاوير بر حسب تقاضا، به رمز درآوردن يک فايل و يا ارسال يک نامه استفاده کرد.
مقايسه ASP.NET و ASP کلاسيک
ASP.NET نسل بعدی ASP يا ASP کلاسيک است. اما اين يک پيشرفت تکاملی است بطوريکه اين دو فناوری تقريبا از يکديگر متفاوتند. صفحات ASP با زبان های دستورالعمل نويسی مانند VBScript يا JScript ايجاد می شوند اما در ASP.NET ما يک فرايند کامل برنامه نويسی با زبانهای Visual Basic يا #C (سي-شارپ تلفظ شود) داريم. همچنين در ASP کلاسيک تنها پنج کلاس استاندارد (Request, Response, Application Session, Server) وجود دارد حال آنکه در ASP.NET می توان از بيش از ۴۵۰۰ کلاس استاندارد موجود در بدنه NET. بهره جست.همچنين عليرغم قدرت و امکانات زياد و متعدد ASP.NET، استفاده از آن در مقايسه با ASP کلاسيک بسيار آسانتر است. بعنوان مثال با استفاده از چند ابزار در يک صفحه ASP.NET می توان يک صفحه بسيار پيچيده HTML بدست آورد که ساخت آن در ASP کلاسيک ممکن است نياز به چند روز کار داشته باشد.
زبانهای برنامه نويسی در ASP.NET
شما در ASP.NET می توانيد از هر زبان برنامه نويسی که با بدنه NET. سازگار باشد استفاده کنيد. اين زبانها عبارتند از Visual Basic.NET و #C و JScript.NET . اين بدين معنی است که شما جهت نوشتن برنامه در ASP.NET نياز به فراگيری زبان جديدی نداريد و اگر يکی از زبانهای ويژوال بيسيک يا ++C يا جاوا را می دانيد هم اکنون می توانيد در ASP.NET برنامه بنويسيد.از طرف ديگر تعدادی زبانهای ديگر توسط بعضی از شرکتهای فعال در اين زمينه به مجموعه زبانهای استاندارد ASP.NET افزوده شده است. بعنوان مثال اگر مايل باشيد حتی می توانيد از PERL و COBOL هم در ASP.NET استفاده کنيد.
ابزارهای ASP.NET
سالهاست که برنامه نويسان ويژوال بيسيک جهت ساخت فرم های خود از ابزارهای ويژوال بيسيک مانند TextBox و ListBox استفاده کرده اند. در ASP.NET هم شما می توانيد از ابزارهای فراوان موجود در آن برای ساخت فرم ها و صفحات خود استفاده نمائيد. در ASP.NET چهار دسته عمده از ابزارها موجود است:
• ابزارهای اصلی مانند TextBox، RadioButton، ListBox و Button.
• ابزارهای اعتباری برای حصول اطمينان از ورود و تائيد صحت اطلاعات ورودی فرم ها.
• ابزارهای داده ای برای ارتباط با بانک اطلاعاتی و دستکاری داده.
• ابزارهای پيشرفته جهت نمايش عناصر پيچيده در واسط کاربر مانند تقويم و آگهی های تبليغاتي.
با استفاده از Visual Studio.NET شما براحتی می توانيد با چيدن تصويری اين ابزارها بر روی فرم مورد نظر، صفحه دلخواه خود را بسازيد. در صورت تمايل حتی می توانيد در يک ويرايشگر ساده متن مانند Notepad برنامه مورد نظر را نوشته و از اين ابزارها استفاده کنيد.
دريافت ASP.NET
جهت شروع برنامه نويسی در ASP.NET تنها کافی است که مجموعه ASP.NET را بهمراه بدنه NET. از سايت ميکروسافت دريافت کنيد.
دريافت .NET Framework
ASP.NET با سيستم عامل های Windows 2000 (نسخه Server و Professional) و Windows XP کاملا سازگار است.

استفاده از تمامی مطالب سایت تنها با ذکر منبع آن به نام سایت علمی نخبگان جوان و ذکر آدرس سایت مجاز است

استفاده از نام و برند نخبگان جوان به هر نحو توسط سایر سایت ها ممنوع بوده و پیگرد قانونی دارد