تبلیغات
سایت تخصصی برنامه نویسی مهندس میثم حبیبی - مطالب آبان 1393
برای برگذاری دوره های مجازی از راه دور با تلفنهای 66641890 - 02166641008 (مجتمع برتر) تماس حاصل فرمایید

و یا مطالب خود را با آدرس تلگرام bestprogramer@ درمیان بگذارید
خاصیت AllowDrop:
سه شنبه 27 آبان 1393 ساعت 11:52 ق.ظ | نوشته ‌شده به دست میثم حبیبی | ( نظرات )

این خاصیت زمانی که True باشد اجازه میدهد تا اشیاء خارجی را درون  Form با عمل Drag وارد نمود مثل آنکه میخواهیم عکسی را درون Photoshop  بکشیم یا صوت MP3 را با کشیدن روی یک پلیر اجراء نماییم.

نکته: ابتدا باید کدهای Drag & Drop را بسازیم که در ادامه آموزشها بیان خواهد گردید.




برچسب‌ها: خاصیت AllowDrop , AllowDrop ,



خاصیت AccessibleRole :
سه شنبه 27 آبان 1393 ساعت 11:51 ق.ظ | نوشته ‌شده به دست میثم حبیبی | ( نظرات )

ارائه خصوصیت به کنترلها که میتوان از میان نامهای درون کنترل انتخاب نماییم.







خاصیت AccessibleName :
سه شنبه 27 آبان 1393 ساعت 11:50 ق.ظ | نوشته ‌شده به دست میثم حبیبی | ( نظرات )

عنوان متن توضیحی AccessibleDescription.







خاصیت AccessibleDescription:
سه شنبه 27 آبان 1393 ساعت 11:49 ق.ظ | نوشته ‌شده به دست میثم حبیبی | ( نظرات )

در این خاصیت شما می توانید توضیحی برای کنترل های بصری بنویسید تا در صورت نیاز متوجه شوید که چه عملی را انجام می دهند.







خاصیت AcceptButton :
سه شنبه 27 آبان 1393 ساعت 11:46 ق.ظ | نوشته ‌شده به دست میثم حبیبی | ( نظرات )

این خاصیت در صورتی فعال میشود که شما ابتدا دکمه ای از نوع Button را درون Form قرار دهید سپس هر کدی را که میخواهید را درون آن بنویسید به طور مثال

MsgBox("یا علی گفیم و عشق آغاز شد")

حال خاصیت AcceptButton را برابر Button1 قرار دهید (این در صورتی است که خاصیت Name کنترل را تغییر ندهید ) هم اکنون اگر تمرکز سیستم روی کنترل دیگر بود با زدن کلید Enter فرامین درون Button1 اجراء می گردد. به طور مثال اکثر فرمهای ویندوز در هر نقطه از فرم با زدن Enter ذخیره سازی انجام شده و خارج می شود مانند Date and Time یا Sound در کنترل پنل.







خاصیت Name :
سه شنبه 27 آبان 1393 ساعت 11:44 ق.ظ | نوشته ‌شده به دست میثم حبیبی | ( نظرات )

 نام کنترل می باشد که کلیه کد نویسی ها بر مبنای آن انجام می گیرد و در هنگام کد نویسی قادر به تغییر نیست .بهتر است نام گذاری کنترلها بر اساس روش مجارستانی انجام بگیرد که این عمل برای مبتدی ها توصیه نمی شود .

به طور مثال:  دکمه ای برای ذخیره سازی اطلاعات دانش آموزان است به شکل زیر نام گذاری می نماییم

Btn_Save_New_Student

بیانگر دانش آموزان - به معنای اطلاعات جدید -  نوع فرم ذخیره سازی است – نام اختصاری Button

Lst_View_ Debtor_Student

بیانگر دانش آموزان – فهرست نمایشی بدهکاران -  نوع فرم نمایشی است – نام اختصاری Listbox




برچسب‌ها: خاصیت Name , Name ,



VB.net بهتر است یا #C ؟
یکشنبه 18 آبان 1393 ساعت 05:51 ب.ظ | نوشته ‌شده به دست میثم حبیبی | ( نظرات )

با سلام خدمت تمامی دوستان عزیز

من در این مقاله میخواهم تا با مقایسه فنی بین دو زبانVB.NET  و C# مشخص کنم کدامیک بهتر و کارآمد تر است.

این دو زبان از نظر معنایی و مفهومی هیچ تفاوت عمده ای با یکدیگر ندارند . در برخی از مقالات اینترنتی که بسیار کپی هم شده نوشته شده که C# از زبان قدیم C ارث بری می کند و بهره برده، که این گفته کاملا غلط است . دو زبان  و C# شاید به ظاهر ادبیات کد شبیه باشند اما در پایه برنامه نویسی مانند مغرب و مشرق هستند و اصلا هیچ ربطی به یکدیگر ندارند لذا این جمله باید به اینگونه اصلاح شوده که زبانهای VB.NET و C# هر دو با بهره گیری از Framework کار میکنند که زبانهای گذشته به هیچ عنوان این مورد را ندارند . دوم گفته شده که C# قادر است در حافظه دستکاری نماید که این عمل با VB.NET  نیز انجام میشده .

حال در اینجا باید گفت به چه دلیل ما باید در حافظه وارد شده و دستکاری نماییم در صورتی که امروزه از بانکهای اطلاعاتی برای همه امور ذخیره سازی استفاده می شود .در نتیجه این کار فقط برای کار با سخت افزار و مدیریت زیر بنایی سیستم و ساخت برنامه های میان افزار کاربرد دارد که برنامه نویسهای خیلی کمی در دنیا قادر به این کار میباشند. دستکاری حافظه فقط برای زمان کامپایل برنامه بوده که امروزه نیازی به این عمل نیست که جلوتر در مورد آن بحث خواهد شد.

دو زبان VB.NET و C# تنها یک پوسته برای زبان واسطی به نام  MSIL(Microsoft Intermediate Language) بوده و باید تمامی کدها قبل از تبدیل شدن به زبان ماشین (Native Code)  به آن تبدیل شوند. هنگام کامپایل شدن سورس کد برنامه ای که با یک زبان.NET  نوشته شده است تولید می شود. زبانهای پلاترم دات نت به طور یکسان از این زبان میانی پشتیبانی میکنند. در واقع این زبانها مجبورند که از استاندارد MSIL تبعیت کنند نه اینکه هر مقداری از آن که دلشان بخواهد را پشتیبانی کنند. بنابراین وقتی قرار باشد نتیجه کار هر دو زبان VB.NET و C# نهایتا به کد MSIL تبدیل شود ، دیگر چندان مهم نیست که مبدأ این کد به چه زبانی نوشته شده است. بنابراین هر دو زبان به یک ترتیب از قابلیتهای کلیدی چارچوب دات نت پشتیبانی می کنند.

مدیریت حافظه در VB.NET دقیقا به همان ترتیبی اتفاق می‌افتد که در C#   انجام می شود. در گذشته چنین نبود و یکی از دلایل گزینش زبان C به جای ویژال بیسیک ، برتری محسوس C نسبت به ویژوال بیسیک در زمینه مدیریت حافظه و راندمان برنامه بود. این تفاوت دیگر از بین رفته استمدیریت حافظه مستقیما توسط چارچوب .NET انجام می‌شود و نوع زبان برنامه‌نویسی تاثیری ندارد. حتی برتری ویژوال بیسیک در زمینه Rapid Application Development و معماری Windows forms نیز در پلاتفرم .NET از بین رفته است. برنامه سازی در سی شارپ دقیقا به همان سادگی ویژوال بیسیک دات‌نت است اما باید گفت شاید بهینه سازی و مدیریت حافظه در  بهتر از VB بوده ولی زمانی این میزان محسوس بوده که سیستمها کند بودند لذا امروزه که سخت افزارها چینین قوی شده است این اختلاف به هیچ عنوان حس نمی گردد.

تفاوت‌های اصلی میان دو زبان بیشتر در گرامر و Syntax زبان‌ است. در مقاله مفصلی که از اینجا قابل دریافت است ، مایکروسافت تمام کلیدواژه‌ها و syntax دو زبان را نظیر به نظیر بررسی کرده است و شما پس از مطالعه دقیقا مقاله فوق متوجه خواهید شد که این دو زبان تفاوت اندکی از نظر قابلیت ها و مزیتها دارند و هیچ کدام از نظر راندمان برنامه تولید شده و مدیریت حافظه به دیگری رجحان ندارند. تنها چیزی که می توانم بگویم اینست که زبان  C# زبان خلاصه‌تری است. به عبارت دیگر برای پیاده سازی یک قطعه کد در زبان سی شارپ به حجم برنامه‌نویسی کمتری نیاز است. اما به دلیل اینکه بیشتر ادبیات به صورت علائم می باشد و مانند VB.NET محاوره ای نیست آزار دهنده تربوده حتی اگر به آن عادت کرده باشید. البته باید بگویم آنهایی که بر روی زبان C# تعصب دارند به هیچ عنوان این حرف را نمی پذیرند پس بهتر است هر دو کد را به یک تازه کار نشان داده تا او قضاوت نماید. سالهاست که هر دو زبان را تدریس میکنم و رفتارهای مختلف شاگردان تازه کار را مشاهده نموده ام .

در برخی از نسخه های قدیمی .NET اختلافاتی وجود داشت مانند در زبان C# می‌توانستید سندهایی از نوع XML ایجاد کنید که با سورس کد برنامه شما پیوند خورده باشد. به این ترتیب به موازات پیشرفت پروژه برنامه نویسی می‌توانید خیلی راحتDocumentation  آن را نیز آماده نمود. چنین قابلیتی در VB.NET وجود نداشت که از نسخه 2005 به آن اضافه گردید.

بنابراین دقت کنید که برتر بودن زبان سی شارپ نسبت به VB.NET چیزی جز یک شایعه و افسانه نیست. حال باید گفت اگر سی شارپ و VB.NET از نظر قدرت و توانایی با هم تفاوتی ندارند پس مایکروسافت چرا این دوزبان را درست کرد؟ دلیلش اینست که مایکروسافت نمی توانست برنامه نویسان هریک از این دو گروه را وادار به پذیرش syntax زبان دیگر کند. بهتر بود که آنهایی که بهsyntax زبان C عادت دارند با همان روش ادامه بدهند و آنهایی که به ویژوال بیسیک علاقه دارند به همان منوال ادامه دهند. البته کار کسانی که از VB6 به VB.NET می آیند خیلی مشکل است زیرا VB.NET یک زبان OOP  پیشرفته است و این موضوع کار برنامه نویسان ویژوال بیسیک را که به راحت طلبی عادت کرده بودند سخت می کند. ولی برنامه نویسان C کار چندان مشکلی ندارند و می توانند از دانش خود در زمینه برنامه نویسی شیء گرا کماکان بهره بگیرند.

حال در اینجا میخواهم چند نکته دیگر را بیان نمایم که قابل تفکر و بررسی است.

  • در زبان VB.NET بخشی با نام Module وجود دارد که در C# وجود ندارد.

  • در زبان VB.NET دسترسی به بخش رویدادها بسیار ساده تر شده است.
  • در زبان VB.NET ادبیات کد راحتتر بوده که خودش باعث میگردد تا برنامه نویس تمرکز بیشتری را روی الگریتم برنامه اش داشته باشد نه آنکه مراقب حروف کوچک و بزرگ ،  ; و .. باشد که باعث پایین آمدن راندمان برنامه میشود .
  • خطا یابی در VB.NET سریعتر از C# که باعث میگردد زودتر خطاها کشف شود شما پس از اصلاح کد در C# میبینید خط خطا زیرش دیرتر از VB.NET حذف میشود.
  • تفاوتهای عمده دیگری وجود دارد که کفیست به زبان انگلیسی در سایت ماکروسافت بخش MSDN جستجو نمایید.

صادقانه بگویم که زبان سی شارپ در اصل برای رقابت با جاوا خلق شده است و مزیت خاص دیگری نسبت به VB.NET  ندارند. در واقع چون ادبیاتC#  خیلی شبیه جاوا و C است، این ویژگی می تواند برخی از برنامه نویسان  جاوا را قانع کند . واقعا زبان سی شارپ هیچ مزیت استراتژیک دیگری نسبت به ویژوال بیسیک دات نت ندارد. من خود با هر دو زبان کار کرده ام و از هر دو زبان خوشم میآید و هیچ تفاوت خاصی بین این دو نمی بینم.

 

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




مرتبط با: VB.NET , #C , برنامه نویسی ,




 
گفتمان مدیر
نویسندگان
نظر سنجی
آیا از مطالب سایت راضی هستید




دیگر موارد
بازدید کل :
بازدید امروز :
بازدید دیروز :
بازدید این ماه :
بازدید ماه قبل :
تعداد مطالب :
تعداد نویسندگان :
آخرین بروز رسانی :
آخرین بازدید :