PDA

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



Bad Sector
9th March 2011, 12:01 AM
چرا از 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 به آدرس زیر مراجعه کنید و خودتان نتایج را بدست بیاورید و مقایسه کنید!

@@@@

قابل اعتماد بودن

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 تبدیل خواهد کرد.

منبع (http://daneshnameh.roshd.ir/mavara/mavara-view_forum_threads2.php?comment=124686&SSOReturnPage=Check&Rand=0#ref124686)

Bad Sector
9th March 2011, 12:03 AM
به طور معمول نسل های جدید زبان های برنامه نویسی به این دلیل متولد می شوند که زبان های قدیمی تر دارای امکانات محدود بودند و یا قدرت استفاده از تکنولوژی های فعلی را به صورت مطلوب و ساده ندارند.

مهمترین نیازی که به عنوان آخرین تکنولوژی وجود دارد، برنامه نویسی در محیط اینترنت است.
اینترنت در مدت تقریبا ۸ سال جای خود را به عنوان یکی از مهمترین وسایل ارتباطی برای کارهای روزمره و تجارت باز کرده است.
سیستم های برنامه نویسی قدیمی تر امکان برنامه نویسی برای اینترنت را فراهم کرده بودند اما هر کدام دارای اشکالات بزرگی هستند، برای مثال تکنولوژی 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 می باشد، استفاده از آن هم چندان کمکی به برنامه نویسی نمی کند.

Bad Sector
9th March 2011, 12:04 AM
برخی محدودیت های برنامه نویسی اینترنتی در مدل 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 است. این کلاس ها تقریبا هر نیازی را در برنامه نویسی برآورده می کنند. بعنوان مثال از این کلاس ها می توان جهت تولید تصاویر بر حسب تقاضا، به رمز درآوردن یک فایل و یا ارسال یک نامه استفاده کرد.

Bad Sector
9th March 2011, 12:06 AM
مقایسه 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 کاملا سازگار است.

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

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