سی شارپ (#C) چیست؟
در قسمت قبلی کاربرد زبان برنامه نویسی سی شارپ رو مقداری توضیح دادم. امیدوارم که به اندازه کافی براتون مناسب بوده باشه. سعی میکنم در قسمت بعدی انشاالله مقایسه ای بین ویندوز فرم و console application و wpf و uwp داشته باشم تا بتونم به شما کمک کنم که انتخاب مناسبی داشته باشید.این رو هم بگم که این دوره آموزش برنامه نویسی ویندوز با سی شارپ ، پیش نیازی نداره (فقط کامپیوتر رو باید بتونید روشن کنید و یکم هم آفیس بلد باشین و اگه کمی هم الگوریتم و فلوچارت رو بلد باشین خیلی براتون مفید هست) در این دوره آموزشی ، بنده میخواهم آموزش برنامه نویسی ویندوز با زبان برنامه نویسی سی شارپ در قالب ویندوز فرم اپلیکیشن (windows form application) رو بهتون یاد بدهم.
نوشتن برنامه براي يك كامپيوتر همانند ياد دادن گره زدن بند كفش به يك كودك است . تا زماني كه شما نتوانيد درست مراحل کار را بيان كنيد، هيچ كاري انجام نمي شود . سی شارپ یا #C یک زبان برنامه نويسي است كه به وسيله ي آن مي توانيد به كامپيوتر بگوييد چه كارهايي را انجام بدهد و كامپيوتر هم مثل يك كودك است و فقط كارهايي را مي تواند انجام دهد كه مراحل آن به وضوح مشخص بشوند. خوشبختانه ، سی شارپ ، زباني هست كه سعي كرده اين موضوع را تا حد ممكن ساده كند و به شما اجازه مي دهد تا كارهاي بسيار سخت را به سادگي انجام بدهيد . درك کردن اتفاقاتي كه در سطوح پايين براي اجراي يك برنامه رخ مي دهد هيچ وقت ضرري نداشته است، اما در سی شارپ براي نوشتن يك برنامه نيازي به درگيري با مسائلي از ايـن قبيـل ندارید و مي توانيد به راحتي بر الگوريتم برنامه اي كه مي خواهيد بنويسيد تمركز بكنيد.حتي اگر تاحالا هيچ برنامه اي براي كامپيوتر ننوشته باشيد، انشاالله در مطالب بعدی و انجام تمرينات بخش “امتحان كنيد”، بيش تر با جنبه هاي مختلف زبان سی شارپ و همچنين دات نت فریمورک آشنا ميشويد.
سعی کنید قبل از شروع برنامه نویسی ، یک آشنایی مختصری با الگوریتم و فلوچارت داشته باشین چون میتونه خیلی کمکتون کنه. در حقیقت شما باید یک الگوریتم رو با استفاده از زبان سی شارپ پیاده سازی کنید.
یعنی مثلا شما میخواهید یک برنامه ی نمایش میانگین 3 عدد رو بسازید.الگوریتم برنامه اینه که ابتدا عدد اول رو از کاربر بگیره ، سپس عدد دوم و پس از اون هم عدد سوم را بگیره.بعد بیاد این ها رو با هم جمع کنه و تقسیم بر 3 بکنه و در پایان هم به کاربر نمایش بده.حالا شما باید این الگوریتم رو با استفاده از زبان برنامه نویسی سی شارپ ، تبدیل به یک برنامه بکنید.
کدهای سی شارپ رو هم باید درون نرم افزار visual studio بنویسید و از اونها خروجی بگیرید.
برای ساخت برنامه ی ویندوزی با سی شارپ میتونید یکی از 4 گزینه ی ویندوز فرم یا کنسول اپلیکیشن یا wpf یا uwp رو انتخاب کنید.
با استفاده از زبان سی شارپ ، میتونید هزاران ایده ی خود را عملی کنید و چندین نرم افزار مختلف ویندوزی رو در زمان کم بسازید. مانند برنامه های تجاری ، فروشگاهی ، سرگرمی ، گرافیکی ، ویرایش تصویر و ویدئو پیشرفته و اعمال فیلترها و عملیات مختلف روی تصاویر ، نرم افزار ساخت انیمشن و حتی نرم افزار ساخت بازی ، نرم افزارهای ارتباط با اینترنت ، دانلود منیجر ، گرفتن داده از اینترنت ، نرم افزارهای آپلودکننده ، شبکه های اجتماعی ، ارتباط با ftp ، نرم افزارهای ارسال مطلب خودکار در وردپرس و RSS Reader و قالب ساز و نرم افزار های کاربردی مانند مبدل فرمت و ماشین حساب و و نرم افزارهای امنیتی پیشرفته مانند آنتی ویروس و برنامه هایی برای ارتباط با بردها مانند arduino و نرم افزارهای کار با فایل ها و فولدرها و مدیریت آنها و حتی نرم افزار نقشه کشی و برنامه های مهندسی و علمی و کاربردی و برنامه های قابل استفاده در صنعت و کارخانه ها و نرم افزارهای ویرایشگر متن و همچنین نرم افزارهای ویرایش و مدیریت فیلم و موسیقی و ارتباط با Joystick و ارتباط با excel و word و برنامه های مربوط به ارتباط با سخت افزار مانند Burn سی دی و باز و بسته کردن درایو cd rom و خاموش کردن کامپیوتر و نرم افزار های شبیه سازی موس و کلیک و بسیاری از ایده های دیگر که من میتوانم تا چندین ساعت دیگر فقط ایده های مختلف و انواع نرم افزارها رو بنویسم.
این متن زیر را فقط به صورت روزنامه وار بخونید و هر قسمتی اش رو هم که متوجه نشدید ، مهم نیست.
زبان #C در حقيقت نسخه كامل شده ي زبانهاي برنامه نويسي C (سی) و ++C (سی پلاس پلاس) می باشد كه توسط microsoft براي كار با چارچوب NET. به وجود آمده است. در ايجـاد زبان سی شارپ سعي شده است كه از ويژگيهاي خوب زبانهاي برنامه نويسي ديگر الهام گرفته شود و نيز كاستي هاي آن زبان ها برطرف بشود.ساخت يك برنامه در محيط سی شارپ خیلی راحت تر از ايجاد يک برنامـه در محـيط ++C اسـت. عـلاوه بـر ايـن سادگي، #C زبـان قدرتمندي نيز محسوب مي شود به نحوي كه اغلب كارهايي كه در سی پلاس پلاس امكان پذير است در سی شارپ هم ميتوان انجام داد. بعضي از ويژگيهاي #C كه هم سطح با ويژگيهاي پيشرفته در ++C هستند، همانند قابليت دسترسي مستقيم به حافظه و نيز تغيير آن، باعث مي شوند كه كدهاي يك برنامه به عنوان كد نا امن در نظر گرفته شود.
استفاده از اين تكنيك هاي پيشرفته ي برنامه نويسي، عموماً خطرناك هستند زيرا ممكن است باعث شوند قسمتهاي مهم حافظه كه اطلاعات سيستم عامل در آن قرار دارد بـه طـور نـا خواسـته تغيير كند و سيستم متوقف شود. بعضي مواقع كدهاي زبان #C طولاني تر از كدهاي زبان ++C هستند. علت اين طولاني تر بودن كدها به خاطر اين است كه #C بر خلاف ++C يك زبان Type-Safe میباشد. در اصطلاح اين لغت به معني اين است كـه هنگـامي كـه نـوع داده اي يـك متغير (variable) مشخص شد، آن متغير نمي تواند به يك نوع داده اي ديگر كه به آن مرتبط نيست تبديل بشود . عـلاوه بـر ايـن مـورد يـك سـري محدوديتهاي ديگر نيز هنگام تبديل يك نوع داده اي به نوع داده اي ديگر نيز وجود دارد كه باعث مي شود كدهاي #C طولاني تـر از كدهاي ++C شوند، اما در مقابل كدهاي #C از پايداري بيشتري برخوردارند و نيز خطايابي در آنها ساده تر است . البته #C فقط يكي از زبانهاي برنامه نويسي است كه براي طراحي برنامه تحت NET. ايجاد شده است.سی شارپ یک زبان خوب برای طراحی برنامه تحت دات نت است. يكي از دلايل اين امر اين است كه زبان سی شارپ ، از پايه براي استفاده در محيط NET. ايجـاد شده است و معمولاً در پروژه هايي كه در رابطه با انتقال NET. به سيستم عامل های ديگر است، مانند Mono از اين زبان استفاده مي كنند.
در زبانهاي ديگر، مانند نسخه NET. زبان ويژوال بيسيك، براي اينكه شباهت با نسلهاي قبلي خود را حفظ كنند، يكسري از قسمتهاي CLR پشتيباني نمي شود. در مقابل با استفاده از زبان #C مي توان از تمام ويژگيهاي ارائه شـده بـه وسـيله NET. در برنامه استفاده كرد.