.NET Developer

CSharp Programming

۱۰ مطلب با کلمه‌ی کلیدی «اموزش سی شارپ» ثبت شده است

شنبه, ۱۸ فروردين ۱۳۹۷، ۱۱:۲۴ ب.ظ م.ب آیرملو
الگوریتم دایجسترا

الگوریتم دایجسترا

نام این الگوریتم بر اساس نام ارائه‌دهنده هلندی آن، یعنی اِدسخِر دایکسترا انتخاب شده‌است. در منابع فارسی آن را به شکل‌های دِیکسترا، دکسترا، دایکسترا، دایجسترا، دیجسترا، دایجکسترا و دیجکسترا هم نوشته شده است، ولی جیمِ آن در تلفظ هلندی آن تلفظ نمی‌شود، لذا دو مورد اول صحیح‌ هستند.

الگوریتم دایجسترا راه‌کاری برای پیدا کردن کم‌وزن مسیر از رأس مشخص آغاز به بقیه رئوس در گراف جهت‌دار و وزن‌دار (با وزن‌های مثبت) می‌دهد. وزن یک مسیر در گراف وزن‌دار برابر مجموع وزن یال‌های آن است. جهت‌دار نبودن یال‌ها هم مشکلی ایجاد نمی‌کند و می‌توان برای یال‌های غیر جهت‌دار دو یال فرض کرد.

لگوریتم

فرض کنید 1≤‌s≤n که در آن رأس ‌s رأس آغاز است و فرض کنید:

dist(r)=0

و به ازای هر v≠r:

dist(v)=∞

فرض کنید مجموعه‌ی T برابر رئوسی باشد که تا کنون کم وزن‌ترین مسیر آن‌ها را پیدا کرده‌ایم. این الگوریتم در هر مرحله نزدیک‌ترین رأس به s را که تا کنون به مجموعه‌ی ‌T اضافه نشده را انتخاب می‌کند (مثلا ‌x) و آن را به مجموعه‌ی T اضافه می‌کند و فاصله‌ی دیگر رأس‌ها را با توجه به فاصله‌‌ی x بروز می‌کند. به ازای هر رأس v خارج T:....

ادامه مطلب...
۱۸ فروردين ۹۷ ، ۲۳:۲۴ ۰ نظر
م.ب آیرملو
شنبه, ۱۸ فروردين ۱۳۹۷، ۰۵:۲۷ ب.ظ م.ب آیرملو
ویژوال استودیو

ویژوال استودیو

بهتره بدونید همین نرم افزار با دو زبان نوشته شده--سی پلاس و سی شارپ

نرم‌افزار Visual Studio، نرم‌افزاری توسعه یافته برای برنامه نویسان کامپیوتر است که توسط شرکت نرم‌افزاری Microsoft تولید شده‌است. تمرکز اصلی این نرم‌افزار از اولین نسخه‌های آن تاکنون بر روی خصوصیت IDE بودن آن است که به برنامه‌نویس اجازه می‌دهد تا برنامه‌های کاربردی مستقل، وب‌گاه، برنامه‌های کاربردی وب یا سرویس‌های وب را که بر روی تعدادی از PlatFormهای پشتیبانی شده توسط Microsoft .NET Framework (البته برای تمام نسخه‌های بعد از ویژوال استودیو ۶) همچنین Platformهایی مانند Microsoft Windows servers and workstations, PocketPC Smartphones و World Wide Web browsers اجرا می‌شوند را براحتی ایجاد نماید. از جمله قابلیت‌های اضافه شده که در آخرین ویرایش ارائه شده‌است می‌توان به Silverlight اشاره کرد که یک Web Application framework بسیار پیشرفته جهت توسعه نرم‌افزارهای کاربردی تحت وب می‌باشد.

ادامه مطلب...
۱۸ فروردين ۹۷ ، ۱۷:۲۷ ۰ نظر
م.ب آیرملو
چهارشنبه, ۱۵ فروردين ۱۳۹۷، ۰۷:۱۸ ب.ظ م.ب آیرملو
نوع داده Refrence Type + Value Type  در سی شارپ

نوع داده Refrence Type + Value Type در سی شارپ

سی شارپ دارای یک سامانه نوع یکپارچه‌است که به آن CTS می‌گویند. این بدان معناست که تمام انواع، شامل موارد اصلی مانند Integerها، مشتق شده از System.Object هستند. به عنوان مثال، هر نوع یک متد به نام ToString() را به ارث می‌برد. بخاطر کارایی، انواع اولیه (و انواع مقداری) به‌طور داخلی فضایی برای آن‌ها بر روی پشته در نظر گرفته می‌شود

انواع داده

CTS داده‌ها را به دو نوع تقسیم می‌کند:


نوع مقداری (Value Type)

نوع مرجعی (Refrence Type)

انواع داده‌ای توده ساده‌ای از داده می‌باشند. نمونه‌های انواع داده‌ای نه هویت مرجعی دارند و نه مفاهیم مقایسه مراجع را. برای مقایسه برابری یا عدم برابری انواع داده‌ای، خود مقدار داده‌ها را با یکدیگر مقایسه می‌کنیم مگر اینکه عملگرهای مشابه دوباره تعریف شده باشند. مقادیر داده‌های مرجعی همیشه یک مقدار پیش‌فرض دارند و همیشه می‌توانند ایجاد یا کپی شوند. یکی دیگر از محدودیت‌های انواع داده‌ای این ات که آن‌ها نمی‌توانند از یکدیگر مشتق شوند (ولی می‌توانند اشتراکاتی داشته باشند) و هم چنین نمی‌توانند در سازنده مقدار دهی اولیه شوند. مثالی از انواع داده‌ای، بعضی از انواع اولیه مانند int و float و char و System.DateTime می‌باشند. در مقابل، انواع مرجعی مفهوم تعریف مرجعی را دارند (که در آن هر نمونه از نوع مرجع، به‌طور ذاتی از دیگر نمونه‌ها جدا می‌شود، حتی اگر داده هر دو نمونه یکی باشد). این دقیقاً نمونه مشابه مقایسه تساوی یا عدم تساوی داده‌های مرجعی است، که در آن آزمایش برای مرجع‌ها از داده‌ای‌ها سریع تر است. در کل نه همیشه امکان تعریف نمونه مرجعی وجود دارد و نه امکان کپی یا نمایش مقادیر مقایسه دو نمونه؛ ولی به هر حال انواع مرجعی خاص می‌توانند این اعمال را از طریق سازنده‌های عمومی یا اجرای واسط‌های مشابه (مثل ICloneable یا IComparable) انجام دهند. نمونه‌هایی از انواع مرجعی، اشیاء، System.String و Sysmet.Array می‌باشند. هر دو نوع داده قابلیت انعطاف توسط تعریف به وسیله کاربر را دارند. در واقع وقتی ما نوع داده‌ای را به تابع ای ارسال می‌کنیم، آدرس داده نیز فرستاده می‌شود. البته این امر پیش‌فرض است ولی برای داده‌های مثل آرایه، رشته‌ای، آدرس فرستاده می‌شود و ارسال از نوع مرجع می‌شود


ادامه مطلب...
۱۵ فروردين ۹۷ ، ۱۹:۱۸ ۰ نظر
م.ب آیرملو
يكشنبه, ۱۲ فروردين ۱۳۹۷، ۱۲:۱۴ ق.ظ م.ب آیرملو
وراثت در سی شارپ-ادامه شی گرائی

وراثت در سی شارپ-ادامه شی گرائی

وراثت یا ارث بری (Inheritance) از مفاهیم اساسی برنامه‌نویسی شیءگراست. هر شیء یک نمونه از یک کلاس است و هر کلاس می‌تواند از کلاس یا کلاسهای دیگری مشتق شده باشد (خواص متدها یا رویدادهای کلاس‌های دیگر را به ارث ببرد). در یک مثال ساده می‌توان اتومبیلی را در نظر گرفت که برای جلوگیری از بازنویسی خواص عمومی اتومبیل شامل: چهار چرخ، متدهای حرکت چرخ، متد چرخاندن فرمان، فرمان، بدنه، در و غیره، می‌توان یک کلاس پایه از اتومبیل ایجاد کرد سپس مثلاً برای اتومبیل سیتروئن مدل C۵ یک کلاس جدید ایجاد کرده که خواص، متدها و رویدادهای عمومی اتومبیل را داشته باشد و فقط برای خواص، متدها و رویدادهای جدید این اتومبیل کد نوشته شود. این ویژگی باعث صرفه‌جویی در نوشتن کد و تا حدودی تضمین صحت کد موجود می‌شود. به عنوان مثال اگر کلاس پایه مشکلی داشته باشد فقط کافی است کلاس پایه تغییر داده شود و در تمامی کلاس‌هایی که از این کلاس پایه ویژگی‌ای ا به ارث برده‌اند این تغییر اعمال خواهد شد


ادامه مطلب...
۱۲ فروردين ۹۷ ، ۰۰:۱۴ ۰ نظر
م.ب آیرملو
جمعه, ۱۰ فروردين ۱۳۹۷، ۱۱:۵۵ ب.ظ م.ب آیرملو
شی گرایی یا Object Oriented Analysis And Design

شی گرایی یا Object Oriented Analysis And Design

برنامه‌نویسی شی‌گرا (به انگلیسی Object-Oriented Programming مخفف:OOP) یک شیوه برنامه‌نویسی است که ساختار یا بلوک اصلی اجزای آن، شی‌ها می‌باشند. در واقع در این شیوه برنامه‌نویسی، برنامه به شی گرایش پیدا می‌کند. به این معنا که داده‌ها و توابعی که قرار است بر روی این داده‌ها عمل کنند، تا حد امکان در قالبی به نام شی در کنار یکدیگر قرار گرفته، جمع‌بندی شده و یک واحد (شی) را تشکیل داده و نسبت به محیط بیرونِ خود، کپسوله می‌شوند و از این طریق، توابع بیگانهٔ خارج از آن شی، دیگر امکان ایجاد تغییر در داده‌های درون آن شی را ندارند. به‌طور مثال حساب بانکی شما که شامل مشخصات فردی شما و میزان سپردهٔ شما در بانک است، تشکیل یک شی را می‌دهند و به دلیل دارا بودن ویژگی کپسوله، امکان دستکاری در میزان سپرده یا مشخصات شما، توسط دیگران وجود ندارد از دیگر ویژگی‌های برنامه‌نویسی شی گرا، پیچیدگی کم، هزینه کم، امکان گسترش سریع برنامه با خطای کمتر نسبت به سایر پارادایم‌های برنامه‌نویسی است.

ادامه مطلب...
۱۰ فروردين ۹۷ ، ۲۳:۵۵ ۱ نظر
م.ب آیرملو
چهارشنبه, ۸ فروردين ۱۳۹۷، ۰۸:۴۰ ب.ظ م.ب آیرملو
معرفی زبان سی شارپ- قسمت دوم

معرفی زبان سی شارپ- قسمت دوم

رشته ها

در C یا ++C ساختار رشته به صورت ارایه‌ای از نوع char بود که امکان اضافه کردن به رشته را محدود می‌کرد به دلیل ثابت بودن طول در آغاز تعریف ولی در سی شارپ دو نوع متفاوت رشته وجود دارد؛ که یکی به صورت آرایه‌ای با طول ثابت ۲۵۶(در عمل ۲۵۵)موجوداست (به صورت پیش فرض) و در صورتی که با کمبود جا روبرو شود فضای جدید (بزرگتر) یافته و به ان انتقال می‌دهد؛ ولی در نوع دوم رشته‌ها از لیست پیوندی استفاده می‌شود.


***لیست پیوندی***

یست پیوندی (به انگلیسی: Linked list) ساختاری شامل دنباله‌ای از عناصر است که هر عنصر دارای اشاره‌گری به عنصر بعدی در دنباله است. فهرست پیوندی از جملهٔ ساده‌ترین و رایج‌ترین داده‌ساختارها است و در پیاده‌سازی از داده‌ساختارها پشته (Stack)، صف (Queue) و جدول درهم‌سازی (Hash table) استفاده می‌شود. مزیت مهم فهرست پیوندی نسبت به آرایه‌ها این است که ترتیب قرار گرفتن داده‌ها در آن با ترتیب قرار گرفتن آن‌ها در حافظه متفاوت است. به همین دلیل فهرست پیوندی دارای این ویژگی است که درج و حذف گره‌ها در هر نقطه‌ای از فهرست، با تعداد ثابتی از عملیات امکان‌پذیر است. از طرف دیگر فهرست پیوندی اجازه دستیابی تصادفی به داده یا هرگونه اندیس‌گذاری را نمی‌دهد. در نتیجه بسیاری از اعمال ابتدایی نظیر به دست آوردن آخرین عنصر فهرست، پیدا کردن عنصر شامل داده مورد نظر، یا مشخص کردن مکان درج یک عنصر جدید ممکن است نیازمند بررسی اکثر عناصر فهرست باشد.

ادامه مطلب...
۰۸ فروردين ۹۷ ، ۲۰:۴۰ ۰ نظر
م.ب آیرملو
دوشنبه, ۶ فروردين ۱۳۹۷، ۰۹:۴۱ ب.ظ م.ب آیرملو
تاریخچه و ویژگیهای سی شارپ-- قسمت اول

تاریخچه و ویژگیهای سی شارپ-- قسمت اول

بحث های بسیار طولانی در انجمن ها و فروم سایتهای برنامه نویسی در خصوص برتری  یکی از زبانهای برنامه نویسی مطرح شده که فقط یک پاسخ بسیار صریح و روشن دارد

هرکس فکر میکنه زبان برنامه نویسی x نسبت به سایر زبانهای برنامه نویسی برتری داره باید ایتدا به این سوال پاسخ بده:

ایا میتوان گفت شغل مهندسی برق بهتره یا پزشکی؟

یعنی هرکدام دارای مزیت خود هستند اگر شما در زبان بیسیک استاد شوید مطمئن باشید برنامه هایی خواهید  ساخت که قابلیت انجام هر کاری را دارند پس مقایسه چیزی جز تلفت کردن زمان  نیست در اینجا فقط به معرفی زبان دات نتی سی شارپ میپردازم

سی شارپ یک زبان برنامه نویسی همگردان، سطح بالا، شیءگرا، ساخت یافته، رویداد محور، تابعی، دستوری و جنریک است که توسط شرکت مایکروسافت در سال 2000 میلادی از خانواده- زبان‌های چارچوب دات‌نت معرفی شد. زبان سی شارپ همچنین از خانواده زبان‌های برنامه‌نویسی سی نیز است
ادامه مطلب...
۰۶ فروردين ۹۷ ، ۲۱:۴۱ ۰ نظر
م.ب آیرملو
دوشنبه, ۳۰ بهمن ۱۳۹۶، ۰۷:۰۰ ق.ظ م.ب آیرملو
پاس دادن اطلاعات دیتاگرید به فرم دیگر

پاس دادن اطلاعات دیتاگرید به فرم دیگر

سلام
این پست در باره متد پاس دادن اطلاعات بین دو فرم خصوصا دو دیتا گرید ویو هستش
سعی میکنم کدهایی بزارم که کمتر در اون مورد اموزش هست چه سایتهای داخلی یا خارجی
در این پروژه دو تا فرم دارم و هر دو دارای یه دیتاگردی ویو که از یه دیتابیس واحد استفاده میکنن و داخل دیتابیس 2 تا جدول دارم
برای مرتب شدن پروژه کانکشن استرینگ رو درون کلاس قرار دادم و از متد get-set برای ارسال و دریافت اطلاعات استفاده کردم و از روش
متد سازنده یا همان constructor استفاده کردم
در فرم اول بل استفاده  از دیتا اداپتورو دیتا تیبل   اطلاعات در دیتاگرید نمایش داده شده

ادامه مطلب...
۳۰ بهمن ۹۶ ، ۰۷:۰۰ ۰ نظر
م.ب آیرملو