پیوند ها
انسان ها با استفاده از زبان برنامه نویسی قادر اند به کامپیوتر ها دستور دهند و به گونه ایی رئیس آن ها باشند. در اصل زبان های برنامه نویسی برای رفع مشکلات موجود بوجود آمده اند و با استفاده از آن ها می توان کار ها را به صورت دقیق و با سرعت انجام داد. هنر برنامه نویسی یعنی ارائه راه حل هایی برای مشکلات مختلف با نوشتن کد ها. تا به امروز زبان های برنامه نویسی زیادی ساخته شده اند، اما در میان آن ها تعداد اندکی هستند که در دنیا مشهور هستند اکثر برنامه نویسان از آن ها استفاده می کنند و در میان این زبان های مشهور می توان گفت که زبان برنامه نویسی C# یکی از قدرتمند ترین زبان های برنامه نویسی می باشد که خیلی زود توانست افراد زیادی را به خود علاقه مند کند. این زبان محصول کمپانی بزرگ مایکروسافت می باشد.
در این آموزش که در مورد زبان برنامه نویسی سی شارپ می باشد تلاش شده است تا این زبان خیلی ساده و به صورت تصویری برای خوانندگان این کتاب آموزش داده شود. توصیه می کنیم حتما بعد از مطالعه بخش های مختلف کتاب مثال ها و کد هایی که ارائه شده اند را به صورت عملی تمرین کنید و سعی کنید تا مفهوم چیزی را که می نویسید به طور کامل درک کنید.
در این بخش یکی دیگر از آموزش های زبان برنامه نویسی سی شارپ را برای علاقه مندان به یاد گیری برنامه نویسی آماده کرده ایم که با عنوان آموزش برنامه نویسی پیشرفته در سی شارپ در ۲۳۸ صفحه ارائه شده است که در ادامه می توانید توضیحاتی در مورد زبان برنامه نویسی C# مشاهده و آن را دانلود کنید.
زبان سی شارپ (به انگلیسی: C#) یک زبان قدرتمند و پرطرفدار است که توسط کمپانی بزرگ مایکروسافت ساخته شده است، این زبان ترکیبی از زبان سی پلاس پلاس وزبان جاوا می باشد.
شرکت Sun Microsystems در سال ۱۹۹۹، بهمایکروسافت اجازه داد تا از زبان برنامه نویسی جاوا در ساخت سیستم عامل خود استفاده کند. زبان برنامه نویسی جاوا به هیچ پلتفرم یا سیستم عاملی وابسته نیست و برنامه های نوشته شده با آن را می توان بر روی همه پلتفرم ها و سیستم عامل ها اجرا کرد. شرکت مایکروسافت در آن زمان برخی از مفاد قرار دادی که شرکت Sun Microsystems بسته بود را زیر پا گذاشت و قابلیت مستقل بودن زبان جاوا را از آن برداشت و شرکت Sun Microsystems پروندهای علیه مایکروسافت درست کرد. در نهایت مایکروسافت مجبور شد تا زبان برنامه نویسی جدید شی گرا با کامپایلر شبیه به سی پلاس پلاس درست کند. آندرس هلزبرگ (Anders Hejlsberg) که امروزه آن را پدر سی شارپ نیز می نامند، سرپرستی و مدیریت پروژه طراحی و ساخت زبانی جدید را بر عهده گرفت و نام این زبان جدید را Cool گذاشت. در ابتدا شرکت مایکروسافت قصد تغییر نام این زبان را نداشت ولی به خاطر مناسب نبودن این نام برای اهداف تجاری در سال ۲۰۰۰ و در زمان معرفی رسمی فریم ورک دات نت نام آن را به سی شارپ تغییر داد.
برنامهنویسی شیگرا (به انگلیسی Object-Oriented Programming مخفف:OOP) یک شیوه برنامهنویسی است که ساختار یا بلوک اصلی اجزای آن، شیها میباشند. در واقع در این شیوه برنامهنویسی، برنامه به شی گرایش پیدا میکند. به این معنا که دادهها و توابعی که قرار است بر روی این دادهها عمل کنند، تا حد امکان در قالبی به نام شی در کنار یکدیگر قرار گرفته، جمعبندی شده و یک واحد (شی) را تشکیل داده و نسبت به محیط بیرونِ خود،کپسوله میشوند و از این طریق، توابع بیگانهٔ خارج از آن شی، دیگر امکان ایجاد تغییر در دادههای درون آن شی را ندارند. بهطور مثال حساب بانکی شما که شامل مشخصات فردی شما و میزان سپردهٔ شما در بانک است، تشکیل یک شی را میدهند و به دلیل دارا بودن ویژگی کپسوله، امکان دستکاری در میزان سپرده یا مشخصات شما، توسط دیگران وجود ندارد.[۱] از دیگر ویژگیهای برنامهنویسی شی گرا، پیچیدگی کم، هزینه کم، امکان گسترش سریع برنامه با خطای کمتر نسبت به سایر پارادایمهای برنامهنویسی است.
فلسفهای که منجر به شکلگیری ی زبانهای شی گرا شد، عبارت بود از این واقعیت که نحوهٔ عملکرد مغز و شیوهٔ دریافت اطلاعات از محیط پیرامون و پردازش آن اطلاعات (اندیشیدن)، شیوهای شی گراست، از همین روی میبایستی زبانی تعریف میشد که همین شیوه را مبنای کار خود قرار داده و بازتولید میکرد؛ و دقیقاً به همان شکل که اشیا در جهان خارج، دارای هویت و کارکرد مشخص و یگانه برای خود هستند و در عین حال با دیگر اشیا در ارتباطی تنگاتنگ و مستقیم اند، در زبانهای برنامهنویسینیز میبایستی این اصول کلی برقرار میشد.[۲] تا به این شکل، برنامهنویس بتواند با بهرهگیری از زبانی که به روش اندیشیدنش، نزدیکی بیشتری دارد، شیهای مختلفی را تعریف نموده، این شیها را در ارتباط با یکدیگر قرار داده و از شیهای پویای تولید شده برای حل مسئله ی پیش روی استفاده نماید. امروزه اکثر زبانهای دستوری برنامهنویسی از فنون شیگرایی پشتیبانی میکنند. زبانهایی مانند جاوا،سی++، سی شارپ، دلفی از جمله زبانهای شیگرا هستند. حتی بسیاری از زبانهای روال گونه که ساختار برنامهها در آنها بلوکهایی با نام پروسیجر است امروزه از فنون شیگرایی نیز پشتبانی میکنند. زبانهای سی++[۳] وپیاچپی از این جمله هستند. هر شیء یک سری خصوصیت و قابلیت دارد، که اصطلاحاً Properties و Operation خوانده میشوند. در این پارادایم برنامهنویسی، دید برنامهنویس به سیستم دید شخصی است که سعی مینماید با پیدا کردن اشیاء مختلف در سیستم و برقراری ارتباط بین آنها سیستم را تولید نماید. (مفهوم مدیریت دیداری)
کلاس ها
کلاس نوع خاصی از آرایه است که امکان ذخیره و جمعبندی تعداد زیادی المان را (که شامل دادهها و توابع هستند) برای یک شی جدید فراهم آورده و تحت یک نام مشترک ذخیره میکند. اما بر خلاف آرایه که تنها قادر به ذخیرهٔ دادههایی هم جنس است، کلاس میتواند دادههایی از جنسهای مختلف را ذخیره نماید.[۴] بهطور مثال در نظر بگیرید که میخواهیم تاریخ ۱۳ نوامبر ۲۰۰۶ را که تشکیل شده از روز، ماه و سال است مورد استفاده قرار دهیم. برای این منظور سه نوع متغیر متفاوت مورد نیاز است:
int day;
String month;
int year;
حال در نظر بگیرید که نه فقط یک تاریخ، بلکه n تاریخ متفاوت مورد نیاز است. این بدان معنی ست که میبایستی به تعداد n بار، سه متغیر بالا، جداگانه تعریف شوند و تعریفِ تک تک و پیاپی متغیرها، نه فقط از لحاظ زمانی بسیار وقت گیر مینماید، بلکه از لحاظ میزان کد مورد نیاز نیز بسیار غیر عملی ست، چرا که هر بار میبایستی نام جدیدی برای متغیرها در نظر گرفته شود (دو متغیر متفاوت نمیتوانند هم نام باشند). در اینجاست که کلاسها به خوبی وارد عمل میشوند. با استفاده از کلاسها میتوان متغیرهای متعدد را زیر عنوان یک جنسیت مشترک جدید (بهطور مثال هر سه را در یک کلاس با نام Date)، تعریف و جمعبندی نمود؛ و بعد از آن، بدون نیاز به تعریف مجدد روز، ماه و سال، از کلاس Date به میزان مورد نیاز استفاده کرد:[۴]
class Date{
int day;
String month;
int year;
}
نکات کلیدی برای شروع برنامه نویسی۱- انتخاب زبان برنامه نویسی مناسب:
زبان های زیادی برای برنامه نویسی وجود دارند. ولی تقریبا می توان گفت که سینتکس و یا دستور اکثر زبان های برنامه نویسی مشابه زبان C++ (سی پلاس پلاس) است. پس پیشنهاد می کنم اگر مبتدی هستید آموزش زیان C++ را کامل یاد بگیرید.
۲- استفاده از محیط برنامه نویسی مناسب :
اگر مبتدی هستید حتما از ساده ترین محیط ها و ویرایشگرهای متن برای کدنویسی استفاده کنید. محیط های حرفه ای جهت برنامه نویسی، افراد مبتدی را تنبل می کند.
محیط های حرفه ای دستورات رو بعد از ورود یک حرف برای شما تایپ می کند و اینگونه می شود که عملا قدرت تایپ دستورات از شما گرفته و شما به نوعی در تایپ دستورات تنبل بار می آیید و در آینده با قواعد و دستورات بیگانه می شوید و همچنین در رفع خطاهای برنامه خود دچار مشکل می شوید.
۳- پیش نیازها برای شروع برنامه نویسی :
قبل از شروع به یادگیری کدنویسی ابتدا پیش نیازهای مربوط به برنامه نویسی را خوب یادبگیرید. یک برنامه نویس هنگامی موفق می شود که قدرت تجزیه و تحلیل یک سیستم را داشته باشد. بتواند مسائل را به خوبی حل کند.
با مفاهیمی چون طراحی و تحلیل الگوریتم و فلوچارت غریبه نباشد. یک برنامه نویس خوب باید بتواند بهترین الگوریتم و ساختمان داده را برای کد خود طراحی کند. شاید شما بتوانید یک برنامه را با چندین روش بنویسید ولی بهترین روش الگوریتمی ست که فاکتورهایی مانند سرعت، دقت، امنیت و … را داشته باشد.
۴- جهت دادن به مسیر یادگیری برنامه نویسی:
تقریبا زبان های برنامه نویسی به دو دسته تقسیم می شوند.
۱- زبان های برنامه نویسی دسکتاپ : برای اجرا در سیستم عامل های مختلف. مانند نرم افزارهای اتوماسیون اداری، ماشین حساب، پخش ویدیو و برنامه های موبایل و غیره
۲- زبان های برنامه نویسی تحت وب : که به منظور وب نویسی طراحی و توسعه داده شده اند. مانند شبکه های اجتماعی ، فروشگاه ها اینترنتی و …
سعی کنید برای شروع، مسیر درست را برای ادامه انتخاب کنید و ببینید به کدام یک از این نوع زبان ها علاقه دارید.
مثلا زبان برنامه نویسی سی شارپ ، زبان برنامه نویسی پایتون ، زبان برنامه نویسی جاوا، زبان برنامه نویسی php , زبان برنامه نویسی جاوا اسکریپت از جمله زبان های برنامه نویسی دسکتاپ و تحت وب هستند که بسیار قدرتمند و محبوب می باشند.
۵- مفاهیم فناوری اطلاعات و ارتباطات (IT) :
شما به عنوان یک برنامه نویس باید با مفاهیم IT آشنا باشید. مثلا کدهای شما چگونه اجرا می شوند ؟ چگونه به سمت سرور می روند ؟ پروتکل چیست ؟ مفسر با کامپایلر چه تفات هایی دارند؟ نرم فزار، سخت افزار، شبکه و …
۶- زبان انگلیسی تخصصی :
زبان بین المللی در رشته IT انگلیسی می باشد. هر چقدر به زبان انگلیسی (تخصصی رشته IT) مسلط تر باشید، یادگیری و رفع خطا برای شما آسان تر خواهد بود. این علم هر روز در حال پیشرفت است و شما هم مجبورید هرروز مقالات و یا کتابهایی به زبان انگلیسی بخوانید. پس برای تقویت زبان انگلیسی تخصصی خود تلاش بیشتری کنید.
۷- نا امید نشوید :
از ابتدا تا انتها بارها پیش می آید که برنامه شما دچار خطاهایی می شود که رفع آن برای شما بسیار دشوار می شود. این باعث می شود که شما از ادامه کار منصرف شوید و با خود بگویید که استعداد کافی برای یادگیری و ادامه را ندارید.
هیچ گاه هنگام بروز خطا در برنامه خود نا امید نشوید. بلکه خوشحال هم باشید. چون قرار است مطلب و تکنیک جدیدی یاد بگیرید. متن خطای خود را گوگل کنید. در انجمن ها و وبسایت های مربوطه ثبت نام کنید و علت را از حرفه ای ترها بپرسید.
یکی از انجمن های جهانی برنامه نویسی ، وب سایتstackoverflow.com است. سوال خود را آنجا مطرح کنید.
۸- بهترین زبان برنامه نویسی برای بازار کار:
اگر شما به هر زبانی به طور حرفه ای مسلط باشید، مطمئن باشید که همیشه فرصت استخدام در همه جا را دارید. پس بعد از انتخاب مسیر یک زبان را جهت یادگیری انتخاب کنید و در آن حرفه ای شوید.
وقتی یک زبان را به طور کامل فراگرفتید، یادگیری دیگر زبان ها بسیار ساده تر خواهد شد.
سعی کنید برکه ای باشید به عمق ده متر، نه اقیانوسی به عمق ده سانتی متر
۹- انتخاب بهترین اساتید و وسایل کمک آموزشی:
یک استاد و یا یک کتاب خوب می تواند علاقه شما را به شروع برنامه نویسی بیشتر کند و بلعکس.
انتخاب درست منابع آموزشی جهت یادگیری می تواند ضمن ارائه مسیر درست برنامه نویسی به شما ، علاقه و امید شما را به این مبحث بیشتر کند.
و در آخر اگر روزی حرفه ای شدید بدانید که هنوز هیچ نمی دانی. فروتن باشید و به دیگران تجربیات خود را آموزش دهید.
۱۰- متوقف نشوید و هر روز تمرین کنید :
یکی از عوامل موفقیت در شروع برنامه نویسی تمرین زیاد به صورت مداوم و روزانه است. به هیچ وجه تمرین را متوقف نکنید و فاصله زمانی زیاد بین تمرین ها نیندازید. ساده ترین پروژه ها و الگریتم ها را از اینترنت دریافت کنید و خود به آن فکرکنید و کد بزنید.
خلاق باشید و سعی کنید راهی جدید و ساده برای حل مسائل پیدا کنید. کدهای حرفه ای تر ها را ببینید و سعی کنید روش کدزنی آن ها را تحلیل کنید.
از افراد با تجربه کمک بگیرید و نظر آن ها را در مورد سیستمی که طراحی کردید بپرسید. معماری های جدید و فریم ورک های روز و محبوب را بشناسید و از آن ها استفاده کنید.
iwn.4kia.ir