amir_saniyan
دوشنبه 19 آذر 1386, 02:32 صبح
سلام.
من در زیر تجربیات خودم رو از VS2008 (ویژوال استودیو 2008) نوشتم.
شما هم اگه چیز جدیدی در مورد VS2008 میدونید و به درد بخور هستش به ما هم بگید.
به نظر میرسه که مایکروسافت حداقل چند هدف اصلی رو در VS2008 رو دنبال کرده:
اولی چرخه تولید نرم افزار هستش که خیلی مهمه و متاسفانه ظاهرا ما خیلی به اون توجهی نداریم (همون درسهای مهندسی نرمافزار: رعایت اصول صحیح برنامه نویسی همچون نامگذاریها و ..، نوشتن برنامههای تست [به نظر خودم خیلی مهمه و حالا حتی تو نسخه Professional هم اومده]، رعایت نسخه بندی صحیح برای کار گروهی برنامهنویسی و ...)
دوم WPF: ظاهرا این قضیه Code Behind توی ASP.NET داره کم کم به Windows Application ها هم منتقل میشه. یعنی کار برنامه نویس از کار طراح GUI کاملا جداست. من تغییر زیادی توی Windows Application نسبت به VS2005 ندیدم اما ظاهرا کم کم باید اونو کنار بگذاریم و بیام سراغ WPF (مثلا همونطور که از DOS به ویندوز مهاجرت کردیم حالا هم باید یک مهاجرت دیگه بکنیم). پروژهای WPF تقریبا دیگه شبیه Windows Application ها نیستند. یک چیزی به نام XAML (با تلفظ «زامل») وجود داره که شبیه XML است و رابط کد و GUI هستش. اگه اشتباه نکنم خلاصهاش اینه که گرافیک دو بعدی و حتی سه بعدی رو میتونی بیاری تو برنامههای ویندوزی و این کار با توجه به استفاده صحیح WPF از کارت گرافیکی هیچ باری رو CPU نمیندازه. یک جورایی برنامههای ویندوزی با کمک WPF دارن شبیه برنامههای WEB میشن. اگه دقت کرده باشید تو ویستا هم اکثر فرمها (مثل فرمهای Control Panel) شبیه صفحات وب هستند. یعنی منو (که از اصول مسلم پنجرههای قدیمی بودند) حذف شدهاند. دکمهها تبدیل به لینک شدهاند. فرمها Scroll میخورند. جالب اینجاست که فرمها دارای دکمه Back و Forward (دو دکمه آبی رنگ بالا و سمت چپ) هستند، دقیقا مثل Browser ها. خلاصه کلام این که بالاخره برنامههای ویندوزی و برنامههای تحت وب تو یک نقطه دارند به هم میرسند (WPF) و شاید در آینده دیگه اصلا برنامه تحت وب و برنامه تحت ویندوز اصلا معنی نداشته باشد و همه یک چیز باشند.
سوم LINQ: خوب ظاهرا تنها چیزی که شیگرا نشده بود Database بود که اونم به سلامتی یک جورایی داره شی گرا میشه. من که خودم خیلی دوست داشتم از یک آرایه تو حافظه با دستور SQL یک Query بگیرم و جالب اینجاست که الان همچین چیزی امکان پذیر است.
چهارم قدرتمند کردن زبانهای برنامهنویسی: ویژگیهای نسخه جدید زبان C# اینهاست (توجه کنید خود زبان سیشارپ بدون در نظر گرفتن .NET به نگارش 3 رسیده): 1-بدون نیاز به تعریف متغیر اضافه Property تعریف کنید و کدتون کمتر کثیف میشه. 2- علاوه بر اینکه Class ها Partial بودند حالا متدها هم میتونند Partial باشند. 3- LINQ که بالا گفته شد. 4- مقدار دهی به اعضای کلاس تو همون خط ایجاد شی (دیگه آبروی هر چی گلابی بردند :) ). 5- تعریف متغیر به شکل گلاب یعنی دیگه حتی لازم نیست فکر کنی متغیرت از چه نوعی باشه فقط بگو var i = 7 خود VS به جای تو فکر میکنه و میفهمه که i باید صحیح باشه و اگر هم برنامه نویش اصلا نفهمه چی تعریف کرده لابد VS میفهمه دیگه و خلاصه یک نوعی از خودش در مییاره. به خصوص مثلا اگه با چند تا دستور SQL و JOIN و ... با کمک LINQ از یک آرایه تو حافظه Query گرفتی دیگه اصلا به نوع برگشتی فکر نکن فقط بنویس var. (همینه دیگه) 6- عبارات Lambada: راستش خوندم ولی نفهمیدم ولی فکر کنم معادلش رو قبلا تو PHP دیدم. 7- چند تا چیز دیگه هم هست... :)
خوب یک خبر بد: واسه کسایی مثل خودم که هنوز تو شوک VS2005 هستند چه برسه به VS2008 :) باید بگم میتونید نسخه بعد از VS2008 رو هم میتونید از الان دانلود کنید. اسم کدش هم Rosario هستش (بابا مایکروسافت بذار اول VS2008 بیاد تو بازار بعد...). اینم لینکش:
http://msdn2.microsoft.com/en-us/vstudio/bb725993.aspx
موفق باشید.
من در زیر تجربیات خودم رو از VS2008 (ویژوال استودیو 2008) نوشتم.
شما هم اگه چیز جدیدی در مورد VS2008 میدونید و به درد بخور هستش به ما هم بگید.
به نظر میرسه که مایکروسافت حداقل چند هدف اصلی رو در VS2008 رو دنبال کرده:
اولی چرخه تولید نرم افزار هستش که خیلی مهمه و متاسفانه ظاهرا ما خیلی به اون توجهی نداریم (همون درسهای مهندسی نرمافزار: رعایت اصول صحیح برنامه نویسی همچون نامگذاریها و ..، نوشتن برنامههای تست [به نظر خودم خیلی مهمه و حالا حتی تو نسخه Professional هم اومده]، رعایت نسخه بندی صحیح برای کار گروهی برنامهنویسی و ...)
دوم WPF: ظاهرا این قضیه Code Behind توی ASP.NET داره کم کم به Windows Application ها هم منتقل میشه. یعنی کار برنامه نویس از کار طراح GUI کاملا جداست. من تغییر زیادی توی Windows Application نسبت به VS2005 ندیدم اما ظاهرا کم کم باید اونو کنار بگذاریم و بیام سراغ WPF (مثلا همونطور که از DOS به ویندوز مهاجرت کردیم حالا هم باید یک مهاجرت دیگه بکنیم). پروژهای WPF تقریبا دیگه شبیه Windows Application ها نیستند. یک چیزی به نام XAML (با تلفظ «زامل») وجود داره که شبیه XML است و رابط کد و GUI هستش. اگه اشتباه نکنم خلاصهاش اینه که گرافیک دو بعدی و حتی سه بعدی رو میتونی بیاری تو برنامههای ویندوزی و این کار با توجه به استفاده صحیح WPF از کارت گرافیکی هیچ باری رو CPU نمیندازه. یک جورایی برنامههای ویندوزی با کمک WPF دارن شبیه برنامههای WEB میشن. اگه دقت کرده باشید تو ویستا هم اکثر فرمها (مثل فرمهای Control Panel) شبیه صفحات وب هستند. یعنی منو (که از اصول مسلم پنجرههای قدیمی بودند) حذف شدهاند. دکمهها تبدیل به لینک شدهاند. فرمها Scroll میخورند. جالب اینجاست که فرمها دارای دکمه Back و Forward (دو دکمه آبی رنگ بالا و سمت چپ) هستند، دقیقا مثل Browser ها. خلاصه کلام این که بالاخره برنامههای ویندوزی و برنامههای تحت وب تو یک نقطه دارند به هم میرسند (WPF) و شاید در آینده دیگه اصلا برنامه تحت وب و برنامه تحت ویندوز اصلا معنی نداشته باشد و همه یک چیز باشند.
سوم LINQ: خوب ظاهرا تنها چیزی که شیگرا نشده بود Database بود که اونم به سلامتی یک جورایی داره شی گرا میشه. من که خودم خیلی دوست داشتم از یک آرایه تو حافظه با دستور SQL یک Query بگیرم و جالب اینجاست که الان همچین چیزی امکان پذیر است.
چهارم قدرتمند کردن زبانهای برنامهنویسی: ویژگیهای نسخه جدید زبان C# اینهاست (توجه کنید خود زبان سیشارپ بدون در نظر گرفتن .NET به نگارش 3 رسیده): 1-بدون نیاز به تعریف متغیر اضافه Property تعریف کنید و کدتون کمتر کثیف میشه. 2- علاوه بر اینکه Class ها Partial بودند حالا متدها هم میتونند Partial باشند. 3- LINQ که بالا گفته شد. 4- مقدار دهی به اعضای کلاس تو همون خط ایجاد شی (دیگه آبروی هر چی گلابی بردند :) ). 5- تعریف متغیر به شکل گلاب یعنی دیگه حتی لازم نیست فکر کنی متغیرت از چه نوعی باشه فقط بگو var i = 7 خود VS به جای تو فکر میکنه و میفهمه که i باید صحیح باشه و اگر هم برنامه نویش اصلا نفهمه چی تعریف کرده لابد VS میفهمه دیگه و خلاصه یک نوعی از خودش در مییاره. به خصوص مثلا اگه با چند تا دستور SQL و JOIN و ... با کمک LINQ از یک آرایه تو حافظه Query گرفتی دیگه اصلا به نوع برگشتی فکر نکن فقط بنویس var. (همینه دیگه) 6- عبارات Lambada: راستش خوندم ولی نفهمیدم ولی فکر کنم معادلش رو قبلا تو PHP دیدم. 7- چند تا چیز دیگه هم هست... :)
خوب یک خبر بد: واسه کسایی مثل خودم که هنوز تو شوک VS2005 هستند چه برسه به VS2008 :) باید بگم میتونید نسخه بعد از VS2008 رو هم میتونید از الان دانلود کنید. اسم کدش هم Rosario هستش (بابا مایکروسافت بذار اول VS2008 بیاد تو بازار بعد...). اینم لینکش:
http://msdn2.microsoft.com/en-us/vstudio/bb725993.aspx
موفق باشید.