سیستم دانلود و آپلود کتاب UML بخش چهل و دوم
مروری بر زبان های برنامه نویسی
مروری بر پایه محیط ASP.NET
ماکروسافت با ارائه ASP و زبانهای قدیمیتر خود به صورت .NET در قرن بیست و یکم قدم مهمی برداشت. ASP.NET که ابزار C# را برای کد نویسی در اختیار قرار میدهد به برنامه حرفه ای و شی گرابرای تولید صفحات وب تبدیل شده و به این فن آوری کمک بسیار میکند . ولی زبانهایی که از گذشته به ارث رسیده اند نمی توانند به اندازه .NET کارایی داشته باشند بنابراین .NET زبان C# را ارائه کرده که برای محیط .NET مناسب باشد.
C# در .NET به عنوان زبانی کاملأ جدید ارئه شده. C# در عین اینکه برای برنامه- نویسان C آشنا میباشد ولی جدید است . C# به دلیل داشتن خصایص RAS مورد علاقه برنامه نویسان VB نیز میباشد. برخی میگویند C# زبانی ارئه شده از سوی ماکروسافت برای رقابت با Java شرکت SUN میباشد .
اگر ماکروسافت تولید نرم افزار را بخوبی تولید نمایدو C# را با VS.NET عرضه کند آنگاه قطعاُC# به معیارهای مورد نظر خواهد رسید . C# در واقع زبانی جدید با تمامی امکانات دلخواه شما مانند شی گرایی کامل ، مدیریت خود کار حافطه و مرتب سازی محیط کار می باشد .
نکات مهم در مورد ASP.NET
ASP.NET بخشی اصلی از حوزه ابتکاری Micrisoft.NET یا برنامه ای جدید برای تولید نرم افزار می باشد. .NET در واقع یک طراحی کاربردی برای جایگزینی به جای مدل DNA ویندوز و همچنین مجموعه ای از ، خدمات ، ابزارها ، نرم افزارها و سرورها بر پایه چهارچوب کاری .NET و زبان اجرایی مشترک می باشد.
ASP.NET به جای که جایگزین ASP ۴ بشود یا نسخه ارتقا یافته تدریجی آن باشد خود باز نویسی کامل از ابتدا محسوب می شود واز تمامی امکانات پیشرفته برای در دسترس قرار دادن .NET استفاده شده است. ASP.NET می تواند از هر چیز که توسط .NET ارائه می شود از جمله پشتی بانی از تعداد ۲۰ یا بیشتر زبان .NET (از Perl.NET تا C# ) و مجموعه ای کامل کتابخانه های نرم افزاری چارچوب کاری .NET بهره ببرد .
با به وجود آمدن ASP.NET ما شاهد تغییر در روش های متعارف اسکریپت نویسی بسوی شروع برنامه نویسی حرفه ای بر خط (online) هستیم. اسکریپتهای VBتنها انتخاب نیستند زیرا برنامه نویسان میتوانند از تمام امکانات موجود در.NET مانندVB وC++ وتمام زبانهای موجود در آن استفاده کنند.
نمیتوان انکار نمود که.NET مورد توجه بسیار توسعه دهندگان نرم افزار قرار گرفته است و این نشانه قالب مناسب و استراتژی .NET برای تداوم در دنیای برنامه نویسی میباشد. معرفی راه حل نرم افزاریی که هرکس را قادر میسازد با هر زبان دلخواه که با محیط .NET سازگاری داشته باشد برنامه نویسی کند حداقل کاری است که میتوان در مورد آن انجام داد.
هر چند که نسخه فعلی نسخه پایدار بتا میباشد و بسیاری از مردم تصور میکنند که آنچه که ارائه میشود پایدار میباشد ولی به دلیل طبیعت بتای آن دارای مشکلاتی میباشد. یادگیری با مشکلات موجود در چهار چوب امکان آمادگی در برابر نسخه جدید را فراهم میکند.
یادگیری از تاریخچه ASP
برای دانستن تاریخچهASP میتوان به سال ۱۹۹۵ و در محیطی خاص که ماکروسافت دریافت که به علت عدم پشتیبانی انترنت در محصولات خود از این صنعت باز مانده باز گشت. قبل از آن مایکرسافت در پی بدست آوری فن آوری و ابزار و پروتکلهای اختصاصی خود برای شبکه های ماکرسافت بود. اما ناگهان به استراتژی انترنت احتیاج پیدا کردند.
مایکرسافت توانست خود را از شرایط عقب مانده به شرایط ایده آلی برساند
با تولید مرورگر وب IE (internet explorer) بازار مرورگر وب را بدست آورد وIIS (internet information server را در ۱۰۰۰ شرکت مهم نصب نمود.
پیدایش ASP
بازگشت به اواسط دهه ۹۰ ابتدای دنیای وب نشان میدهد در آن زمان برای تولید وب کسی که میخواست وب سایت خود را محیطی مناسب برای تجارت قرار دهد ابزارهای زیادی برای انتخاب نداشت و انتخابها محدود بودند به محیطهای برنامه نویسی سمت سرور و ابزار برنامه نویسی سمت کاربران محدود میشد. در انتها برنامه نویس باید برنامه های رابط دروازه عمومی CGI(common gateway interface) را بکار برد. در این برنامه ها از زبانهای کامپایلی نظیر دلفی ویژوال بیسیک یا زبانهای اسکریپت نویسی تفسیرشدنی مانند پرل یا رکسو اسکریپتهای لایه سیستم عامل مانند UNIX استفاده می گردد.
ابتدای ۱۹۹۶ ماکرسافت شروع به اصلاح وضعیت موجودکرد برای رسیدن به اهداف خود رابط برنامه نویسی کاربردی سرورانترنت ISAPI (Internet Server Application Programming Interface) را به عنوان بخشی از سرور اطلاعات انترنت در نظر گرفت. ISAPI حاصل توسعه Win۳۲API ویندوز میباشد. این فن آوری برای تولید نرم افزار سرور وب تولید شده بود. که بتواند با IIS ارتباط داشته باشد.که باعث پنج برابر شدن کارایی سیستم بود. همان گونه که شما با این توضیحات تصور میکنید این افزایش کارایی اثرات جانبی دارد بر روی پیچیدگی برنامه نویسی برای برنامه نویسان میشود.
این به علت ضعف برنامه نویسان نبود بلکه احتیاج به دانش پایه ای ودقیق برنامه نویسی داشت تا برنامه های ISAPI درست کار کنند. شرکت ماکرسافت همانگونه برنامه نویسان را به استفاده ISAPI تشویق میکرد آنها را به استفاده از فن آوری اتصال دهنده پایگاه داده انترنت Internet Database Connector (IDC) تشویق میکرد. این فن آوری روشی جدید برای ایجاد ارتباط سایتهای انترنتی با پایگاهای داده سرور به واسطه ارتباط پذیری باز با پایگاه داده (ODBC)Open Database Connectivity میباشد.
فن آوری های IDC و ISPI از خامی ماکروسافت کاسته و برای اولین بار باعث تبدیل سرور وب ضعیف به محیط سرور برنامه های محاوره ای ابتدایی شد.
برنامه نویسان دیگر ابزارهای دیگری در اختیار داشتند بسیاری از آنها از جمله Netscape Livewire از محبوبیت زیادی برخوردار بودند.Livewire فن آوری قابل اجرا تحت سرور Netscape بود که از فن آوری جاوا اسکریپت که در آن از اجزا جاوا نیز استفاده شده بود برای منطق در صفحه استفاده میکرد .محدودیتهای ISAPI در Livewire نیز به علت کامالی بودن وجود داشت و برای اجاد تغییر نیاز به قطع کردن برنامه و شروع مجدد بود.
چرا ASP مورد نیاز بود؟
تمامی برنامه نویسان وب ، توانایی برنامه نویسی لازم برای نوشتن نرم افزارها ISAPI را نداشتند و چون در SAPI به کامپایل برنامه ها نیاز بود. مراحل زیادی در تولید سایت مبتنی بر ISAPI وجود داشت که سبب کند شدن مراحل تولید سایت میشد. برنامه نویسان تازه کار دریافتند که یادگیری زبانی صنعتی و قدرتمند مانند VB6 ، کامپایل حتی ساده ترین منطق صفحه خود به فایلهای .dll نیاز دارد.
برنامه های ویژوال بیسیک علی رغم سهولت تولیدشان ، در صورت بکارگیری برای CGI بسیار ضغیف عمل نموده و تمام منابع را در اختیار خواهند گرفت. زبانهای دیگر از جمله پرل برای آغاز یک برنامه خط دستور جداگانه و به منظور تفسیر اجرای اسکریپتهای درخواست شده به سرور نیاز دارند که این امرموجب افزایش زمان بارگذاری صفحه و کاهش کارایی سرور خواهد شد.
CGI خود تمام منابع را در اختیار میگیرد چون درخواست هر صفحه سرورهای وب را وادار میکند تا فرایندهای جدید را متوقف نموده و از طریق این فرایندها ارتباط را بر قرار نمایند. این امر موجب اتلاف وقت و مصرف حافظه باارزش RAM میگردد مشکل دیگری که فراروی تیم برنامه نویسی در اواسط دهه ۹۰ قرار داشت ، این مسئله بود که سایت در واقع ترکیبی از زبان نشانه گذاری فرامتنیHypertext Markup Language (HTML) و منطق است. آنها به روشی برای ادغام کدهای برنامه نویسان با HTML طرح صفحه طراح و طراحی بدون ایجاد آشفتگی در ساختار دیگری نیاز داشتند. راه حل های متعددی برای رفع این مشکل از سیستمهای قابل اختصاصی گرفته تا عبارات شامل سمت سرور Server Side Include (SSI) وجود داشتند.درهریک ازاین راه حل ها بر سرور اعلام میشود که کد مبتنی بر تگ های توضیحات ویژه HTML را اجرا نماید.
ایجاد قابلیت محاوره ای که بتواند از سوی پایگاه داده هدایت شود ، نیز مشکلی دیگر در بهینه سازی برنامه نویسی بود. تقاضا برای سایت های وب پیچیده آغاز شده بود و برنامه نویسان به منظور رفع این تقاضا به روشی قابل مدیریت نیاز داشتند ولی ابزارهای موجود تسهیلی در انجام این کار ایجاد نمیکردند .افرادی که میتوانستند به این روش دست یابند ، خواهان پاداشی متناسب با سختی انجام کاری که از آنها خواسته شده بودند.
لوگوی AJAX
آنچه که لازم بود ، راه حلی برای بقیه ما بود . این راه حل می بایست فن آوری ساده ای مبتنی بر متن و دارای اسکریپتی همانند پرل باشد ، تا برنامه نویسان بتوانند صفحات خود را بدون نیاز به کامپایل و با کمک ابزار ساده ویرایش متن مانند Notepad تغییر دهند .این روش باید در حین حفظ کارایی لازم ،به حداقل منابع نیاز داشته باشد. بنابراین باید آن را درون سرور همانند ISAPI . ولی بدون پیچیدگی اجرا نمود ،تیمهای طراحان و تنظیم کنندکان علاقمند بودند که این روش شامل امکانات و خصوصیات قالبها و SSl باشد تا راحتتر بتوان یکپارچه سازی آرایش صفحات را مدیریت نمود. این روش برای اینکه بتواند با استقبال مواجه شود ،می بایست زبانی را اجرا نماید که براحتی بتوان آن را آموخت و برای بسیاری از برنامه نویسان آشنا باشد.
چرا از ابتدا ASP بکار گرفته نشد؟
ASP موفقیتی ناگهانی نبود ،با این حال توانست ،بخش عظیمی از جامعه تولیدکنندگان نرم افزار را به خود جذب کند. بویژه افرادی که قبلأ تجربه های خوبی در برنامه نویسی ویژوال بیسیک برای اسکریپتهای کاربردی داشتند.
افراد دیگری که برای یادگیری ویژوال بیسیک سرمایه گذاری نکرده بودند، دریافتند که محدودیتهایی در ویژوال بیسیک و اسکریپت نویسی ویژوال بیسیک وجود دارد که مانع استفاده از این فن آوری میگردد. کمبودهای موجود شامل مدیریت ضعیف حافظه ،عدم قابلیتهای مدیریت قدرتمند رشته مانند عبارات منظم است که در سایر زبانهای موجود وجود داشت .ASP در مقایسه با CGI پرل ، چنین کمبودی ندارد در آن زمان سرور اطلاعات در مراحل اولیه خود بسر میبرد و توسعه آن به آرامی صورت میگرفت، هر چند که نیروی قدرتمند روابط عمومی مایکروسافت پس از پیشرفت شگفت آوری که از سوی شرکت گزارش شد ، کاملأ به جریان افتاده بود ، سرور اطلاعات در مقایسه با نسخه های موجود این نرم افزار کاملأ ضعیف به نظر میرسد ولی هنوز هم از لحاظ کارایی قابل رقابت است.
تا سال ۱۹۹۷ ، بخش اعظم برنامه نویسی سرور در اختیار پرل و CGI بود. سایت های وب با کارایی بالا معمولأ از ترکیبی از برنامه های کامپایل شده C برای موتورهای تجاری واقعی و برای پردازش های سبکتر از فرم ها استفاده میکردند. درآن زمان تردیدها و سوءظن هایی پیرامون اقدامات و فعالیت های انترنتی ماکروسافت از جمله IIS و Internet Explorer وجود داشت وISAPI بیش ازتشویق بخش وسیعی ازجامعه برنامه نویسان نرم افزار،کاربیشتری انجام نداد. علی رغم وجود چنین فضای نامطمئنی، ماکروسافت با خرید چندین مجوز windows NT۴ برای میزبانی وب و توسعه تولید نرم افزار روبرو شد.
پشتیبانی شرکتهای ثالث برای هر چیز دیگری به جز اجزا کوچک در ابتدا به کندی آغاز شد ولی همانند تمامی محصولات ماکروسافت که پس از عرضه دو نسخه از محصول ، شرکت همه مشکلات را برطرف میسازد ، ASP نیز از این قاعده مستثنی نبود .
در حالی که بخش عمده ای از برنامه نویسان از جمله شخص برجسته ای چون Larry Wall از پرل استفاده میکردند . برنامه نویسان ASP تا آن زمان تحت حمایت مناسبی قرار نداشتند .برنامه نویسان پرل از طرف مقام های بالا دعوت به مشارکت و باز گذاشتن کد هایشان میشدند و به همین علت این گروه ها با پیشرفت مواجه میشدند ، به طوری که تمامی راه های ممکن فقط با چند کلیک در سایت شبکه آرشیو جامع پرل از لحاظ رقابتی و مالی منجر به ایجاد نظریاتی پیرامون وجود فروشندگان ثالث اجزا در دنیا نرم افزار های توزیع یافته انترنتی ویندوز (DNA) گردید. البته این موجب توسعه ASP به صورت برنامه مورد علاقه امروزی نگردید ولی در موفقیت فعلی آن سهیم بوده است.