آیا Asp.Net 5 Cross Platform همان Asp هست ؟

دوشنبه 21 دی 1394

مایکروسافت نسخه 5 از ASP.NET رااعلام کرده است و به نظر می رسد از اینکه این فن آوری 15 ساله شده ،خوشحال است - اما واقعا این فناوری زنده و بخوبی کار میکند ؟

آیا Asp.Net 5 Cross Platform همان Asp هست ؟

ASP.NET 5 که کاملا به صورت CrossPlatform باشد و از آن بتوان در سکوهای مختلفی چون لینوکس ،Mac و ... استفاده کرد هنوز به صورت کامل درنیامده است و با توجه به متن باز بودن آن در Github بر روی آن کار می شود .اما اگر هم اکنون برنامه نویس هستید و بر روی لینوکس یا mac برنامه نویسی می کنید بسیاری از تکنولوژی ها هستند که می توانید آنها را جایگزین ASP.NET کرده و بر روی سیستم عامل و سخت افزار خاص خود (سکو) برنامه نویسی کنید .

امکانات دیگر ASP.NET 5 در زیر لیست شده است

  • هسته .NET توکار که نسخه درست برنامه را پشتیبانی می کند
  • ابزارهایی که تولید برنامه های تحت وب را راحت تر کرده است
  • قرار دادن یک  web stack برای Web UI و Web APIs
  • تنظیمات مبتنی بر محیط Cloud
  • پشتیبانی و استفاده بهینه تر از NuGet
  • پشتیبانی توکار تزریق وابستگی یا dependency injection
  • توانایی هاست شدن بر روی IIS ویا هاست شده بر روی کامپیوتر شخصی

اگر از برنامه نویسانی هستید که از وب فرم برای توسعه کار خود استفاده می کرده اید بدانید که این تکنولوژی همچنان طرفداران خاص خود را دارد .هنوز می توانید با .NET 4.5  به توسعه وب فرم خود بر روی IIS بپردازید اما نمی توانید با استفاده از وب فرم .NET core را اجرا کنید .و درست به همین خاطر در آینده نسل وب فرم ها از ASP.NET برچیده خواهد شد.

به محض اینکه مایکروسافت محصولی بیرون می دهد عده کثیری به آن روی می آورند ولی چیزی که در مورد ASP.NET5 می توان گفت این است که هنوز جای کار دارد و تیم آن باید راه حلی برای مرتب سازی و انسجام آن ارائه دهد .

شایان ذکر اینکه در نسخه های قدیمی تر ASP.NET برنامه های MVC و Web Api جداگانه نوشته می شدند و ادغام کردن آنها به راحتی صورت نمی گرفت ولی در نسخه ASP.NET5 این نرافزارها به راحتی با یکدیگر ادغام می شوند .

 

مایکروسافت نسخه 5 ASP.NET را ارائه داده است .و به نظر میرسد که بعد از 15 سال از اولین ارائه این استودیو بسیار بهتر از قبل است .

شکی نیست که ASP.NET 5 استودیو بسیار خوبی است و در بین انتخاب های بسیاری که برای نوشتن برنامه های تحت وب و یا سایر برنامه ها وجود دارد ASP.NET 5 می تواند جزء انتخاب های برتر باشد .اگر اخیرا برنامه ای با ASP.NET 5 نوشته اید و امکانات بسیار آن نظیر SharePoint را ببینید تعجب خواهید کرد که چرا این نسخه جدید هم با همان نام قبلی ارائه شده است .

زمانی که ASP.net5  ارائه شد مایکروسافت برای آن رویاهای بسیاری داشت ولی در حال حاضر به نظر می رسد که تا حدودی دنباله رو کارهای دیگران شده است .

اولین باری که در دنیای وب نیاز به ایجاد MVC به وجود آمد مایکروسافت MVC را ایجاد و آن را روانه بازار کرد.کار زیادی بر روی ورژن اصلی Visual studio انجام نشد.اما از آن برای تولید ساده تر محصولات تحت وب برای کاربر استفاده شد.بعد از مدتی برنامه نویسان و کلا دنیای مجازی این تصور را به وجود آورد که Node.js بهترین کار برای تولید نرم افزار های کاراتر و بهینه است در پی این تصورات مایکروسافت Web API را ارائه داد .

تا به اینجا چهار تفسیر مختلف از اینکه نهایتا  ASP.NET5 چیست در دست است .

ایده اصلی برای تولید ASP.NET5 این بوده است که نرم افزارهایی که با آن تولید می شود مانند نرم افزارهای تحت دستکتاپ باشند.تمام کدها در فایل های جداگانه ای قرار داشته باشند ، code behind جداگانه ، و کدهای HTML هم به جداگانه وجود داشته باشند هر کدام از این فایل ها در مرحله کامپایل با هم ترکیب شده و نتیجه نهایی تولید می شود.اگر کنترلی بر روی فرم وجود داشته باشد رویداد مربوط به هر کدام در سمت سرور مدیریت شده و به سمت کاربر ارسال می شود .تا به اینجای کار همه چیز برنامه های تحت وب مانند تحت دسکتاپ بوده است .

سوالی که در اینجا مطرح می شود این است که پس جایگاه Web Forms  در ASP.NET 5 کجاست ؟

تا به اینجای کار به نظر می رسد که تیم ASP.NET بسیاری از چیزها که در ASP.NET سنتی وجود داشته است را به یکباره حذف کرده و به جای آن تکنولوژی متعلق به دیگران را بازنویسی کرده است !نه تنها تیم برنامه نویس ASP.NET تمایز واضح بین کد و HTML را از بین برده است بلکه حتی IIS را هم حذف کرده اند!این وب سرور که مورد علاقه عموم هم نبود با سیستم های جدیدی چون WebAPI جایگزین شده است .ولی خود همین WebAPI کار خاص و بسیار مورد پسندی برای برنامه نویسان انجام نداده است .

 

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید