آموزش ASP.Net

آموزش ASP.Net - معرفی

ASP.Net  یک platform (بستر اجرای نرم افزار) ویژۀ توسعۀ وب است که یک مدل برنامه نویسی ، یک زیرساخت نرم افزار جامع و سرویس های متنوعی را برای ساخت نرم افزار های تحت وب کارامد و قدرتمند برای PC همانند دستگاه های موبایل ارائه می دهد.

 ASP.Net در بالای پروتکل HTTP  کار می کند و از دستورات و سیاست های HTTP جهت تنظیم یک ارتباط و همکاری دوطرفه از مرورگر به سرور استفاده می نماید.

ASP.Net  بخشی از بستر اجرای نرم افزار (Microsoft .Net platform) می باشد. اپلیکیشن های تحت ASP.Net کدهای ترجمه یا کامپایل شده ای هستند که از مولفه های (component) توسعه پذیر (extensible) و قابل استفادۀ مجدد موجود در.Net Framework  استفاده می نمایند. این کدها می توانند از کلیۀ سلسله مراتب (hierarchy) کلاس ها در.Net Framework  استفاده کنند.

کدهای نرم افزار ASP.Net می توانند به هرکدام از زبان های زیر نوشته شوند.

  • C#
  • Net
  • Jscript
  • J#

ASP.Net  برای تولید اپلیکیشن های تحت وب تعاملی (interactive) و مبتنی بر داده (داده محور یا data-driven  ) از طریق اینترنت استفاده می شود، که شامل تعداد زیادی ابزار کنترلی (control) از قبیل  textboxها، buttonها وlable  هایی برای پیکربندی و دستکاری کد جهت ایجاد صفحات HTML  می باشد.

مدل فرم های وب ASP.Net (Web Forms model)

فرم های وب ASP.Net قابلیت رویداد محور بودن (event-driven) را به اپلیکیشن های تحت وب، اضافه می کنند. مرورگر، فرمی از وب را به سرور وب ارسال می نماید و سرور در پاسخ یک صفحۀ نشانه گذاری شده (markup page) یا صفحه HTML را برمی گرداند. تمام فعالیت های سمت سرویس گیرنده (client-side)  کاربر برای پردازش stateful (پایدار) به سرور فرستاده می شوند. سرور، خروجی (output)  عملیات کاربر را پردازش می کند و عکس العمل هایی نشان می دهد. اکنونHTTP  یک پروتکل stateless  (ناپایدار) می باشد. چارچوب کاری (framework) ASP.Net به ذخیره سازی اطلاعات مربوط به وضعیت (state) برنامۀ تحت وب (web application) کمک می کند که شامل موارد زیر می باشد.

  1. Page state
  2. Session state 

وضعیت صفحه وضعیت مربوط به کاربر می باشد، برای مثال می توان محتویات فیلدهای ورودی ( input field  ) مختلف در فرم وب را نام برد.  Session state همان اطلاعات جمعی به دست آمده از صفحات متفاوتی است که کاربر از آن ها بازدید نموده و یا کاری در آن انجام داده است به عنوان مثال می توان به کل session state اشاره کرد. برای واضح کردن مفهوم اجازه دهید در ادامه مثالی از سبد خرید ارائه دهیم.

 کاربر آیتم هایی را به سبد خرید اضافه می کند. آیتم ها از صفحه ای انتخاب می شوند که صفحه آیتم ها نامیده می شود، کل آیتم های جمع آوری شده و قیمت ها در صفحه ای متفاوت نشان داده می شوند که صفحه سبد خرید نامیده می شود. HTTP  به تنهایی نمی تواند مسیر تمام اطلاعات ورودی از تمام صفحات مختلف را حفظ کند. Session state (وضعیت session )  ASP.Net و زیر ساخت سمت سرور ( server side infrastructure ) تمام اطلاعاتی که به صورت سراسری در طی یک session جمع آوری شده اند را نگه داری می کنند.

ASP.NET runtime  (وضعیت صفحه) page state را به سرور و آن را از سرور در سراسر صفحه تقاضاها تا زمانی که کدهای asp.net runtime تولید شوند حمل می کند و کامپوننت های مربوط به بخش سرور را در فیلدهای پنهان ترکیب می کند.

از این طریق سرور از وضعیت کلی برنامۀ کاربردی آگاه شده و به یک روش اتصال دو لایه (  two-tiered connected way  ) عمل می کند.

مدل کامپوننت ASP.Net:

این مدل  ASP.Net ساختارهای متفاوتی از صفحات ASP.Net را ارائه می دهد. اساسا این مدل، مدلی است که موارد زیر را توصیف می نماید:

  • مولفه های بخش سرور شامل تمامی عناصر یا تگ های HTML مانند <form> و <input>.
  • کنترل های سرور که به توسعه رابط پیچیدۀ کاربر کمک می کند، برای مثال کنترل calendar یا کنترل Gridview .

 ASP.Net فن آوری است که تحت.Net Framework  کار می کند که شامل همه ویژگی های مربوط به وب می شود..Net Framework  از سلسه مراتب شئ گرایی ساخته شده است. نرم افزار وب ASP.Net  از صفحات ساخته شده است. وقتی که یک کاربر تقاضای صفحۀ ASP.Net را دارد، IIS  فرایند صفحه را به سیستم  ASP.Net runtimeمحول می کند.

ASP.Net runtime  (زمان اجرا) صفحۀ.aspx  را به نمونه ای از یک کلاس تبدیل می کند که به ارث برده شده از صفحۀ کلاس پایۀ .Net framework می باشد. هر صفحه ASP.Net  و تمامی کامپوننت هایش شئ هستند برای مثال کنترل های سمت سرور نیز شئ محسوب می شوند.

کامپوننت های .Net framework ورژن 3.5

پیش از رفتن به مرحله بعدی در.Net visual studio به کامپوننت های مختلف در .Net framework 3.5 خواهیم پرداخت. در زیر به توضیح کامپوننت های .Net framework 3.5 و نحوه عملکرد آن ها می پردازیم. 

 کامپوننت ها و توضیحاتشان

 1) Common Language Runtime   یا ( CLR زمان اجرای زبان مشترک(     

مدیریت حافظه، مدیریت استثنائات، اشکال زدایی، بررسی امنیت، اجرای نخ ها (thread execution) از بین بردن تهدیدات و خطرات، اجرای کدها، کدهای ایمن و بازبینی و تایید صحت و همچنین فرایند ترجمه یا کامپایل را اجرا می کند. برنامه هایی (کدهایی) که مستقیما توسط CLR مدیریت می شوند، برنامه های مدیریت شده نامیده می شوند. هنگامی که یک کد مدیریت شده کامپایل می شود، کامپایلر (compiler) source code را به کد زبان میانی مشترک مستقل از CPU (IL) تبدیل می کند. یک کامپایل پویا یا ترجمۀ درجا  (Just in time compiler)  (JIT) کد IL را به کدnative   (بومی) تبدیل می کند که ویژۀ CPU می باشد.

2) Net Framework Class Library.

شامل کتابخانه ای غنی و وسیع از  typeها است که امکان و قابلیت بارها استفاده از آن ها ( library of reusable types  ) وجود دارد. کلاس ها، ساختارها، رابط ها (interfaces) و مقادیر شمارشی (enumerated values)  که جمعاً نوع (type) نامیده می شوند.

 3) Common Language Specification (مشخصات زبان مشترک(

شامل مشخصاتی برای زبان های پشتیبانی شده تحت .NET و پیاده سازی یکپارچه سازی زبان (language integration)  می باشد.

 4) Common Type System  (سیستم نوع مشترک)

راهنمایی ها و دستور العمل هایی برای تعریف / اعلان، استفاده و اجرا type ها در runtime(زمان اجرا) و ارتباط متقابل زبان فراهم می کند.

 5) Metadata و Assemblies

Metadata  داده های دودویی (binary information) هستند که یا در فایل های اجرایی انتقال پذیر (Portable executable) و یا در حافظه ذخیره می شوند. Assembly واحد منطقی می باشد که شامل assembly manifest، کد IL، مجموعه ای از منابع مانند فایل های تصویری و غیره می باشد.

 6) Windows Forms - فرم های ویندوز

فرم های ویندوز دربردارندۀ نمایش گرافیکی (graphical representation) کلیۀ پنجره (window) هایی است که در برنامه ی کاربردی (app) نشان داده می شوند.

7) ASP.Net  و  ASP.Net AJAX

ASP.Net  مدل توسعه و برنامه نویسی تحت وب (web development model) و AJAX شاخه ای از (یا افزونه ای برای) ASP.Net جهت توسعه و اجرای قابلیت ها و امکانات AJAX می باشد. ASP.Net AJAX شامل کامپوننت هایی است که به برنامه نویس تحت وب اجازه می دهد که داده را در یک وب سایت بدون نیاز به بارگذاری مجدد در صفحه آپدیت و بروز رسانی کند. 

8) ADO.Net

فن آوری می باشد که برای کار با داده و پایگاه داده استفاده می شود. ADO.Net دسترسی به منابع دیتا مانند سرور SQL، OLE DB, XML و غیره را فراهم می کند. این فن آوری امکان اتصال با منابع دیتا را برای بازیابی، دستکاری و آپدیت کردن دیتا فراهم می کند.

 9)  Windows Workflow Foundation (WF)

به ساختن workflow applicationها (برنامه هایی که به پیگیری و مدیریت تمام فعالیت ها از ابتدا تا انتهای پروژه کمک می کنند) در ویندوز کمک می کند، که شامل activities، runtime workflow ، designer workflow و یک rule engine می باشد.

10) Windows Presentation Foundation

تمایزی میان رابط کاربری (user interface) و منطق تجارت ایجاد می کند و با استفاده از داکیومنت ها، media، گرافیک های دو و سه بعدی، انیمیشن و غیره به ساخت و توسعه ی رابط های کاربری خیره کنندۀ بصری کمک می کند.

 11) Windows Communication Foundation (WCF)

فن آوری می باشد که برای ساخت و اجرای سیستم های متصل استفاده می شود.

 12) Windows CardSpace

امکان دسترسی به منابع و به اشتراک گذاری اطلاعات شخصی به صورت امن و همراه با ایمنی کامل را در محیط اینترنت فراهم می آورد.

13) LINQ

قابلیت های data querying (پرسمان از داده) را با استفاده از سینتکسی (دستور نحوی) که شبیه به سینتکس query language SQL (زبان پرسمان از دادۀ SQL ) قدیمی است به زبان های (تحت).Net انتقال می دهد (اضافه می کند).

 

در صورتی که سوال و یا نظری دارید، از بخش نظرات با ما در میان بگذارید.

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

شما چه نظر و یا سوالی درباره این نوشته دارید؟

مبحث آموزشی

آموزش ASP.Net

Learn ASP.Net

سرفصل ها

پرســیدن سؤال جدید

سؤال های تخصصی خود را از ما بپرسید

دنبال کردن تلگرام کانال سافت اسکیل

https://telegram.me/softskill_ir

عملیات کاربران

خبـرنــامه

Newsletters

در خبــرنـامه سافت اسکیل عضو شویــد تا جدیدترین هـای سایت را بلافاصله در ایمیل خـود دریافت کنیـد

کلیک کنید و سوالات خود را از ما بپرسید
لطفا فرم سوال را پر کنید

سوال شما با موفقیت ثبت شد. برای اینکه بتوانیم به شما اطلاع رسانی کنیم، موارد زیر را وارد کنید:

لطفا چند لحظه منتظر بمانید ...