ویژگیهای جدید در Visual Basic 2008
سلام دوستان عزیز،
در این تاپیک میتوانید به معرفی ویژگیهای جدید در Visual Basic 2008 بپردازید ،
چندی از ویژگیهای جدید که میتوانند مورد بحث قرار گیرند :
- Implicitly Typed Local Variables
- Nullable Types
- Relaxed Delegates
- Object Initializers
- Array Initializers
- Anonymous Types
- Extension Methods
- Lambda Expressions
- Xml Support in LINQ to XML
- LINQ - Language Integrated Query
- Query Expressions & Query Operators
- .......
این تاپیک تنها محل ارائه ی نکات مفید میباشد ، لطفا" در صورت داشتن سوال ، آن را در تاپیکی جداگانه مطرح نمایید ،/
Implicitly Typed Local Variables
يکي از قابليت هايي که به VB9 اضافه شده حدس زدن متغير تعريف شده هست !
قبلاً اينطوري متغير تعريف ميکرديم
Dim i As Integer = 123
Dim s As String = "Bart"
Dim d As Dictionary(Of String, List(Of Integer)) = New Dictionary(Of String, List(Of Integer))
البته خلاصه هم ميشد
Dim d As New Dictionary(Of String, List(Of Integer))
حالا خلاصه تر هم ميشه نوشت !
Dim i = 123
Dim s = "Bart"
Dim d = New Dictionary(Of String, List(Of Integer))
ميبينيد که VB9 چقدر راحت خودش حدس ميزنه
http://www.bartdesmet.net/images/Vis...F0D5/image.png
اين به خاطر خاصيت Infer هست که شما ميتونيد به دلخواه روشن يا خاموش کنيدش
http://www.bartdesmet.net/images/Vis...D5/image_3.png
وقتي يه پروژه New ميکنيد اين خاصيت به صورت پيش فرض On ، برا تغييرش ميتونيد به project properties --> Compile tab بريد
http://www.bartdesmet.net/images/Vis...D5/image_4.png
شما اگه Off کنيدش اينطوري نتيجه ميگيريد
http://www.bartdesmet.net/images/Vis...D5/image_5.png
در واقع VB9 متغيرهارو از نوع System.Object در نظر ميگيره
http://www.bartdesmet.net/images/Vis...D5/image_6.png
ولي اگه روشن باشه به راحتي VB9 حدس ميزنه و کاره شمارو راحت ميکنه
http://www.bartdesmet.net/images/Vis...D5/image_7.png
نقل قول: ویژگیهای جدید در Visual Basic 2008
سلام
داریوش جان مطالبت جالب بود من هم اینها رو دارم
تغییرات عمده و پر سر و صدا از VS2005 به VS2008 عبارتند از:
1- نسخه جدید .NET: نسخه .NET که به همراه VS2008 عرضه شده همین .NET 3.5 است. در وصف این زیبارو همین بس که علاوه بر همه .NET 2.0 ، شش Library اضافه شده بهش که عبارتند از :
• WWF یا به اختصار WF Windows Workflow Foundation: در مورد WF قبلا در همین وبلاگ یه مقاله نوشتم که برای آشنایی با WF می تونید به اون مراجعه کنید.
• WPF (Windows Presentation Foundation): WPF امکانات گرافیکی برای طراحی UI در اختیار شما قرار میده. WPF در زمینه طراحی UI برنامه های ویندوز یه ایده کاملا جدیده و قبل از این چنین ابزاری وجود نداشته. با استفاده از WPF شما می تونید برنامه هایی با ظاهر کاملا متفاوت و بصورت دو بعدی و سه بعدی طراحی کنید. طراحی فرمها در WPF مبتنی بر زبان جدیدی به نام XAML است.
• (WCF (Windows Communication Foundation:
• CardSpace
• ASP.NET AJAX: یه Library برای استفاده بهتر و ساده تر Ajax در ASP.NET که حالا با خود .NET یکپارچه شده. مایکروسافت نسخه بتای اونو Atlas نامگذاری کرده بود.
• SilverLight: یه Library کاملا جدید و جذاب برای طراحان وب. به زبون ساده SilverLight یعنی استفاده از امکانات WPF در طراحی صفحات وب. اگه بخواید دقیقتر بشید میشه گفت همون کاریه که Flash می کنه ولی با این تفاوت که طراحی UI با استفاده از WPF انجام میشه و کدنویسی با استفاده از VB.NET یا C# و این برای برنامه نویسای وب یعنی هلو!
2- خلق زبان XAML: اینم یکی دیگه از تحولات جدید VS2008 است. یه زبان جدید برای طراحی! اونایی که سراغ WPF و SilverLight میرن بیشتر در مورد این زبان مطلب میشنون. به واسطه همین زبان مایکروسافت یه Designer جدید به VS2008 اضافه کرده که شما در آن واحد هم می تونید Interface رو بصورت سنتی و با استفاده از ToolBox و پنجره Properties طراحی کنید و هم می تونید از XAML در پنل مخصوص به خودش استفاده کنید.
3- قابلیت MultiTargeting: شما در VS2008 می تونید پروژه هایی از نوع .NET 2.0 یا .NET 3.0 یا 3.5 بسازید.
4- طراح MasterPage های تو در تو (Nested MasterPage): قابلیت Nested MasterPage در VS2005 هم وجود داشت و در حقیقت با .NET 2.0 عرضه شد اما مشکلی که وجود داشت این بود که VS2005 توانایی ویرایش و نمایش صفحات وب مبتنی بر Nested MasterPage رو نداشت که این امکان به VS2008 اضافه شده.
5- در .NET 3.0 سه کنترل جدید به ASP.NET اضافه شده. این سه کنترل عبارتند از: ListView، DataPager، LinqDataSource.
6- پشتیبانی از Expression Blend: حتما با Expression Blend آشنا هستید. Expression Blend ابزاری بصری برای تولید کدهای XAML در برنامه های مبتنی بر WPF است. در VS2008 شما Expression Blend رو به عنوان یه Add in در اختیار دارید.
7- مدیریت Using: برنامه نویسایی که از Java به .NET رو آوردن مدتها منتظر بودن تا چنین امکانی به VS اضافه بشه. با استفاده از این امکان شما می تونید بخش Using هر ماژولو مدیریت کنید. با انتخاب همه Using ها و کلیک راست روی اونا منوی مدیریت Using ها نمایش داده میشه که شامل گزینه هایی مثل: حذف Using های استفاده نشده، مرتب کردن Using ها، حذف و مرتب کردن و امکانات دیگه ای است.
8- نمایش منوی Intellisense: در نسخه های قبلی VS وقتی که اسم یه شی و علامت . رو تایپ می کردید منوی Intellisense در محل تایپ نمایش داده میشد و این باعث میشد که قسمتهایی از کد که زیر منو قرار می گرفت از دید شما خارج بشه. در VS2008 در زمان نمایش منوی Intellisense اگه شما کلید Ctrl رو نگهدارید این منو بصورت نیمه شفاف نمایش داده میشه و در نتیجه کدهای زیر اون هم قابل مشاهده هستن.
9- فیلتر کردن منوی Intellisense: در نسخه های قبلی VS وقتی شما چیزی تایپ می کردید همه گزینه های مربوطه در منوی Intellisense نمایش داده می شد اما در VS2008 فقط آیتمهایی نمایش داده میشن که با کارکترهای تایپ شده توسط شما منطبق باشه. به عنوان مثال اکه شما اسم یه شی رو تایپ کنید و بعد علامت . بزنید و بعدش حرف m رو تایپ کنید فقط اعضایی که با حرف m شروع میشن تو لیست نمایش داده میشه.
10- JavaScript Intellisense and Debugging: بعضی از چیزا هست که واقعا نمیشه فهمید که چرا Microsoft اینقدر در برابرشون ایستادگی می کنه. یکیش همینه. بالاخره Microsoft بعد از مدتها امکان Debug و Intellisense برای JavaScript هایی که توی صفحات ASPX می نویسید را توی VS2008 قرار داد.
11- اخطار برای خطاهای Html و javascript: در VS2005 خطاهای مربوط به Html و خطاهای زبان C# بطور ترکیبی توی یه پنجره نمایش داده میشد. در VS2008 این خطاها جدا شدن و به همراه خطاهای مربوط به JavaScript به عنوان اخطار (Warning) نمایش داده میشن.
12- یکی دیگه از تغییرات پر سر و صدا عرضه LINQ (Language Integrated Query) بود. LINQ یک روش کاملا جدید و نوآورانه برای کار با منابع داده با استفاده از Query بدون توجه به نوع منبع داده است صرف نظر از اینکه منبع داده موجود در حافظه اشیا، XML، SQL و یا DataSet و یا هر چیز دیگه ای باشه.
13- طراح LINQ: در VS2005 امکاناتی برای کار با SQL Server به نام Server Explorer در اختیار برنامه نویس بود. در VS2008 این امکانات کماکان وجود دارن با این تفاوت که اماناتی هم برای طراحی LINQ-to-SQL اضافه شده.
14- معماری رابط کاربر چند زبانه (MUI): معماری MUI این اجازه رو به کاربر میده تا زبان متن نمایش داده شده رو به زبان دلخواه تغییر بده. این معماری بخشی از محصولات MS Office و MS Windows محسوب میشه. VS2008 در حال حاضر زبانهای انگلیسی، اسپانیایی، فرانسوی، آلمانی، ایتالیایی، چینی، ژاپنی، کره ای را فراهم کرده. (همین جا وبلاگ CsharpBlog مایکروسافت رو به دلیل نادیده گرفتن حقوق برنامه نویسای ایرانی و نبودن زبان فارسی تو این لیست شدیدا محکوم می کنه و تحریم می کنه تا بدینوسیله این شرکت ورشکست بشه الهی!)
15- امکانات بسیار زیادی به زبانهای برنامه نویسی C# و VB.NET اضافه شده که فقط از شنیدن اسم اونا مو به تنتون سیخ میشه. بعضی از این تغییرات مهم عبارتند از:
• Automatic Properties
• Relaxed Delegates
• Object Initialisers
• Type Inference
• Anonymous Types
• Extension Methods
• Lambdas
• Partial Methods
در مورد این امکانات کسی سوال نکنه که خودمم تازه دارم مطالعشون می کنم! نکته مهم و جالب دیگه اینه که شما می تونید از امکانات جدید زبانهای #C و VB.NET توی پروژه های .NET 2.0 که قبلا نوشتید استفاده کنید. بزودی تو همین وبلاگ در مورد این امکانات بیشتر صحبت می کنیم.
16- پشتیبانی کامل و امکانات جدید برای برنامه نویسایی که با Office 2007 سرو کار دارن مثل طراحی فرم برای Outlook، کنترل محتوای Word و بسیاری چیزهای دیگه.
17- یکی از امکانات ویژه ای که توی VS2008 اضافه شده امکان استفاده Debug در داخل متدهای .NET Framework است. یعنی با این امکان جدید .NET به یک پلتفرم نیمه Open Source برنامه نویسی تبدیل شده (مایکروسافت برای این منظور یه Licence جدید ثبت کرده و دسترسی به سورسهای .NET از این طریق تحت این Licence انجام میشه).
18- امکانات برنامه نوسی و تولید کد بهتر برای اجرا در ویندوز ویستا
19- استفاده تجاری: تا قبل از این نمی تونستید از نسخه های Trial و یا Express Edition برای مقاصد تجاری استفاده کنید. اما شما می تونید از VS2008 Trial برای مقاصد تجاری هم استفاده کنید. این کار از طریق Popfly امکان پذیره. Popfly یه میزبان برای پروژه های VS2008 روی وبه که توانایی Build و توزیع اونا رو با مجوز استفاده تجاری داره. شما می تونید پروژه های تحت وب و یا پروژه هایی که با استفاده از VS2008 Express Edition و یا VS2008 Trail نوشتید توی Popfly کمپایل و توزیع کنید.
20- استفاده از Unit Testing برای توسعه دهندگان موبایل: با این امکان در پروژه های معمولی در VS2005 آشنا هستید. حالا امکان استفاده از Unit Testing رو توی برنامه های موبایل هم دارید.
21- مدیریت امنیتی موبایل: در VS2008 مدیریت امنیت موبایل بسیار ساده تر و خوش دست تر از قبل شده و شما می تونید تنظیمات امنیتی برای ابزار نهایی رو با کلیک کردن یه کلید عوض کنید و به این ترتیب به سرعت برنامتونو در حالات مختلف امنیتی تست کنید.
22- مدیریت شبیه ساز (Emulator): مدیریت شبیه ساز برای اولین بار تو VS2005 عرضه شده. استفاده از این ابزار مشاهده و اجرای Image های موجود تو شبیه سازها در ماشین شما رو آسونتر می کنه. در مدیر شبیه ساز موجود تو VS2008 می تونید از راههای کاملا اتوماتیک استفاده کنید به این معنی که شما می تونید با نوشتن یه کد یا اسکریپت ساده و اجرای اون با استفاده از Unit Test ها یکی پس از دیگری به همه شبیه سازهای موجود در دستگاهتون متصل بشید و بعد از انجام کار مورد نظرتون اتصال رو قطع کنید. یکی دیگه از امکانات توسعه یافته در مدیر شبیه ساز اینه که اتصال به Image های شبیه ساز رو آسون می کنه. با استفاده از این امکان جدید شما می تونید تنظیمات هر شبیه ساز رو توی یه فایل XML ساده که توی فولدر My Device Emulator قرار می گیره ذخیره کنید.
23- توسعه شبیه ساز ابزار: ضمن رفع نواقص و بهینه سازی نسخه 1.0 حالا شبیه ساز موجود در VS2008 که با Windows Mobile 6.0 SDK عرضه شده تواناییهای بیشتری داره که از مهمتریناش میشه به این موارد اشاره کرد: باطری، بلندگوها، هدست، کیت اتوموبیل.
24- بسترهای پشتیبانی شده برای موبایل: در VS2008 برای برنامه نویسی موبایل انتخابهای مختلفی برای پلتفرم و نوع Windows Mobile و زبان و نوع برنامه نویسی دارید. Pocket PC 2003، Smart Phone 2003، Windows Mobile 5.0 SDK، Windows Mobile 6.0 SDK(آخرین نسخه اونو باید خودتون از سایت مایکروسافت دانلود و نصب کنید) پلتفرهایی هستن که VS2008 پشتیبانی می کنه. در VS2008 برای پلتفرم Smart Phone 2003 فقط می تونید بصورت Native برنامه نویسی کنید و .NET CF 1.0 هم پشتیبانی نمیشه. اگه شما پروژه ای از این نوع دارید باید با استفاده از VS2008 اونو به پلتفرم Windows Mobile 5.0 SDK و .NET CF 2.0 ارتقا بدید.
منبع: وبلاگهای MSDN
نقل قول: ویژگیهای جدید در Visual Basic 2008
با سلام
به مطلب زیر که از آقای راد هست دقت کنید
دانلود تمامی سورس کدهای کتابخانه های دات نت در یک زمان!
همون طور که می دونید، با انتشار VS.NET 2008، مایکروسافت به برنامه نویسان دات نت این امکان رو داد تا بتونن در زمان دیباگ، سورس کتابخانه های دات نت رو ببینن و از این طریق از آنچه که پیش اومده بیشتر مطلع بشن.
مشکلی که در این بین وجود داره اینه که برای اولین بار که نیاز به دیباگ کدی دارید که در نیم اسپیس خاصی وجود داره، باید به اینترنت متصل باشید تا سورس اون نیم اسپیس دانلود بشه.
البته یک بار دانلود کافیه و در مراتب بعد کدها Cache میشن و نیاز به اتصال به اینترنت وجود نداره.
یکی از برادران برنامه نویس ساکن بلاد کفر!، ابزاری رو ساخته که با استفاده از اون می تونید سورس تمامی کتابخانه ها رو یکجا دانلود کنید و برای همیشه داشته باشید!
جزئیات بیشتر…
منبع
نقل قول: ویژگیهای جدید در Visual Basic 2008
کاش مثالهایی از این WF میزدید
آیا VB به سمت نحو C درحال تکامل است؟
نقل قول:
نوشته شده توسط
Dariuosh
يادتونه وقتي يه کلاس تعريف ميکرديم و ميخواستيم بعداً ازش نمونه بگيريم برا مقدار دهي اوليه اش کلي داستان داشتيم
مثلاً
Class Customer
Private _name As String
Private _age As Integer
Public Sub New(ByVal name As String)
_name = name
End Sub
Public Property Name() As String
Get
Return _name
End Get
Set(ByVal value As String)
_name = value
End Set
End Property
Public Property Age() As Integer
Get
Return _age
End Get
Set(ByVal value As Integer)
_age = value
End Set
End Property
End Class
الان تو اين کلاس 2تا Property داره که Name در زمان New شدن بايد مقدار بگيره
حالا اگه ميخواستيم نمونه بگيريم و مقدار دهي کنيم راهش اين بود
Dim c As New Customer("Bart")
c.Age = 24
يا اگه ميخواستيم چند Property رو باهم مقدار دهي کنيم اينطوري ، از
With استفاده ميکرديم
Dim c As New Customer("Bart")
With c
.Age = 24
End With
حالا VB9 استفاده از
Withرو ارتقاء داده
يعني شما تو همون خط مقدار Propertyها رو ميتونيد مشخص کنيد
Dim c As New Customer("Bart") With {.Age = 24}
Dim u = New With {.Id = id, .Name = t.Name, .Age = t.Age}
نقل قول:
نوشته شده توسط
Dariuosh
يکي از قابليت هايي که به VB9 اضافه شده حدس زدن متغير تعريف شده هست !
قبلاً اينطوري متغير تعريف ميکرديم
Dim i As Integer = 123
Dim s As String = "Bart"
Dim d As Dictionary(Of String, List(Of Integer)) = New Dictionary(Of String, List(Of Integer))
البته خلاصه هم ميشد
Dim d As New Dictionary(Of String, List(Of Integer))
حالا خلاصه تر هم ميشه نوشت !
Dim i = 123
Dim s = "Bart"
Dim d = New Dictionary(Of String, List(Of Integer))
به نظر من، [که هم با VB کار کردم و هم با #C،البته بسیار ابتدایی و beginner]،این قابلیت هایی که به VB9 اظافه شده،در حقیقت از #C به آن هدیه شده است.شاید ماکروسافت میخواسته VB کارها را با نحو #C بیشتر آشنا کند.
نقل قول:
نوشته شده توسط
omidgold
کاش مثالهایی از این WF میزدید
در فاز دوم پروژه دانشگاهیم میخواهم همین کار را بکنم.به امید خدا در هفته های بعد شروع میشود.
نقل قول: ویژگیهای جدید در Visual Basic 2008
شرمنده مزاحم شدیم من خیلی پیشرفته کار نمی کنم ولی دلم می خواد پیشرفت کنم کاش دوستان یک توضیحی بدن این موارد چیه ؟
نقل قول: ویژگیهای جدید در Visual Basic 2008
کاش یکی بگه اسنیک چیه و چه استفاده ای داره
نقل قول: ویژگیهای جدید در Visual Basic 2008
با عرض سلام خدمت تمامی کاربران
من با وی بی 2008 و دات نت فریم ورک 3.5 یک بانک داده طراحی کردم ولی فقط برای ایجاد کلید جستجو در این بانک داده مشکل دارم . هر چی جستجو کردم در دات نت 3.5 نتونستم دستور یا کد عمل جستجو را پیدا کنم . لطفا کمکم کنید.
با تشکرات فراوان