بخشی از پاورپوینت
اسلاید 1 :
به نام یکتای دانا
مبانی برنامه نویسی کامپیوتر
اسلاید 3 :
مبانی برنامه نویسی کامپیوتر (به زبان C#)
اسلاید 4 :
فهرست مطالب
بخش دوم
متدها
مفهوم بازگشتی
ایجاد و استفاده از اشیا
مدیریت خطا
پردازش رشته و متن
بخش اول
پیش مقدمه
مقدمه ای بر برنامه نویسی
داده های اولیه و متغیرها
عملگرها و عبارت ها
ورودی و خروجی با استفاده از کنسول
جمله های شرطی
حلقه ها ( تکرار)
آرایه ها
سیستم های عددی
مبانی برنامه نویسی کامپیوتر
اسلاید 5 :
ادامه فهرست
بخش چهارم
ساختمان داده ها و پیچیدگی الگوریتم
اصول برنامه نویسی شی گرا
برنامه نویسی با کیفیت بالا
آشنایی با Lambda Expression و LINQ
متدولوژیِ حل مسئله
بخش سوم
تعریف کلاس
فایل های متنی
ساختارداده های خطی
درخت ها و گراف ها
دیکشنریها، جدول های درهم و مجموعه ها
مبانی برنامه نویسی کامپیوتر
اسلاید 6 :
پیش مقدمه
مبانی برنامه نویسی کامپیوتر
پیش نیازهای لازم برای یک برنامه نویس حرفه ای شدن:
علاقه!
پشتکار!
تمرین + پروژه های عملی
انتخاب زبان مناسب.
داشتن دید و دانش مهندسی
کسب مداوم تجربه و بروز رسانی دانش با استفاده از فروم ها و مقاله ها
اسلاید 7 :
اهداف این دوره
مبانی برنامه نویسی کامپیوتر
یاد بگیریم که چگونه برنامه نویسی کنیم، نه چگونه با یک زبان، کدنویسی کنیم.
الگوهای برنامه نویسی را بیاموزیم.
ایده حل مسئله پیدا کنیم.
اسلاید 8 :
درباره زبان C#
مبانی برنامه نویسی کامپیوتر
اسلاید 9 :
درباره زبان C#
مبانی برنامه نویسی کامپیوتر
شی گرا
همه منظوره
سطح بالا
از معروفترین و متداولترین زبان های برنامه نویسی دنیا
این زبان همراه با پلتفرم .NET، منحصرا توسط مایکروسافت ارائه میشود و متن باز نیست
بنابراین شرکت های بزرگ مانند IBM، از زبان Java به عنوان زبان اصلی توسعه برنامه ها استفاده می کنند(زبان Java و platform آن، متن باز است).
این زبان با یک محیطی به نام CLR همراه است. CLR بخشی از .NET Framework است.
با استفاده از .NET و CLR، علاوه بر ویندوز، برنامه ها قابلیت اجرا روی موبایل ها و سایر ابزار قابل حمل را نیز دارند.
با استفاده از نسخه رایگان پیاده سازی شده از .NET، تحت عنوان Mono، برنامه های نوشته شده به زبان C#، قابل اجرا روی Linux، iOS، MacOS و سایر سیستم های عامل نیز هستند (گرچه Mono بصورت رسمی از سوی مایکروسافت پشتیبانی نمی شود).
اسلاید 10 :
درباره زبان C# - ادامه
مبانی برنامه نویسی کامپیوتر
اسلاید 11 :
.NET Framework
مبانی برنامه نویسی کامپیوتر
یک پلتفرم است که شامل:
زبان های برنامه سازی (مانند C#، VB)
یک محیط برای اجرای کدها (CLR)، که کدهای برنامه ها را در یک محیط کنترل شده اجرا می کند.
مجموعه ای از ابزار مانند کامپایلر csc، که کدهای C# را به کدهای میانی (MSIL) تبدیل می کند، به نحوی که برای CLR قابل فهم باشد.
مجموعه ای از کتابخانه های استاندارد مانند ADO.NET که امکاناتی برای دسترسی به دیتابیس فراهم می کنند یا WCF که امکان اتصال برنامه ها را از طریق پروتکل ها و چارچوب های استاندارد مانند HTTP، REST، JSON، SOAP و TCP را فراهم می کند.
اسلاید 12 :
چرا C# ؟
مبانی برنامه نویسی کامپیوتر
در مقایسه با C++، Java و PHP:
یکی از معروف ترین زبان های برنامه نویسی است!
میلیون ها برنامه نویس در جهان در حال استفاده از آن هستند!(forums, community, weblog)
در عین سادگی استفاده، و سادگی در یادگیری، بطور وسیع در صنعت و شرکت های مختلف در حال استفاده است.
از رقیب اصلیش، Java، غنی تر و مهندسی شده تر است.
رقیب دیگرش PHP، برای پروژه های کوچک، انتخاب مناسب و گزینه برتر است، اما در پروژه های بزرگ کارآمد نیست.
گفته می شود، PHP به سمت برنامه نویسی با کیفیت پایین تمایل دارد. چون زبانِ خوب سازمان یافته ای نیست.
زبان های C و C++ زبان های قدیمی تری هستند! برای کاربردهایی مانند بازیهای 3D، که باید به سخت افزار نزدیک بود، C++ گزینه مناسبی است. برای حوزه های سیستمی، مانند پیاده سازی سیستم عامل، C انتخاب بهتری است.
اسلاید 13 :
چقدر زمان نیاز است؟
مبانی برنامه نویسی کامپیوتر
برای یادگیری و شناخت:
در صورت مطالعه یک کتاب مناسب در این حوزه:
با تمرین مستمر و تمام وقت، حداقل 2 ماه کامل
با تمرین مستمر و نیمه وقت، بین 4 الی 5 ماه
برای حرفه ای شدن و حرفه ای ماندن: همیشه!
اسلاید 14 :
آیا واقعا میخواهید برنامه نویس شوید؟
مبانی برنامه نویسی کامپیوتر
جالبه که بدانید، 100% پرسش های انجام شده در مصاحبه های استخدامی بعنوان مهندس نرم افزار در شرکت گوگل، و بیشتر پرسش ها در شرکت مایکروسافت در خصوص حیطه های زیر بوده اند:
ساختارهای داده ها
الگوریتم ها
تفکر الگوریتمی
اگر واقعا می خواهید برنامه نویس شوید، باید بدانید که برنامه نویس ها:
جدی (Serious)
با استقامت (Persevering)
متفکر و پرسشگر هستند.
اسلاید 15 :
برنامه نویس خوب:
مبانی برنامه نویسی کامپیوتر
زمان بسیار زیادی را صرف کسب مهارت های مهندسی می کنند
تکنولوژی های جدید را می آموزند
زبان های برنامه نویسی جدید و پارادایم ها را بررسی می کنند
در خصوص راه های جدید برای انجام کارهایشان می اندیشند
قادر به تفکر منطقی هستند
می توانند روی مسایل مختلف استدلال کنند و راه حل هایی بیابند
راه حل ها را بصورت مجموعه ای از گام ها تصور کنند
با استفاده از ابزارهای موجود، جهان پیرامون خود را مدل کنند
ایده های خود را بصورت برنامه یا مولفه هایی پیاده سازی کنند
الگوریتم ها و برنامه های خود را تست کنند، حالت های مختلف را در نظر می گیرند و شرایط متفاوت را پیش بینی می کنند
به نصیحت های افراد با تجربه تر گوش می دهند
واسط کاربری برنامه های خود را با نیاز مشتری تطبیق می دهند
اسلاید 16 :
برنامه نویس خوب – ادامه - 1
مبانی برنامه نویسی کامپیوتر
همواره کتاب، مقاله یا وبلاگ های مرتبط با برنامه نویسی را می خوانند و علاقه مند به تکنولوژی های جدید هستند
همیشه در حال بروزرسانی دانش خود هستند و به فکر بهبود نرم افزارهای ساخته شده شان می باشند.
برخی از آنها، زمانی که درگیر پروژه مهم یا در حال مطالعه یک ارائه جذابی هستند، خوردن و خوابیدن را فراموش می کنند!(پیش مقدمه)
معمولا یک یا چند عدد کامپیوتر دارند، و یک اتصال اینترنت به منظور ارتباط آنلاین با دنیای تکنولوژی!
بصورت منظم به وبلاگ ها و سایت های مرتبط با تکنولوژی های جدید، سمینارها و رویدادها سر می زنند، حتی اگر در آن زمان، کاری با آن رویدادها نداشته باشند!
دنبال ابزار جدید یا روش بهتر برای نرم افزار یا بخشی از کارشان هستند
کتابخانه های جدید را تست می کنند، زبان های جدید را یاد می گیرند، فریم ورک های جدید را بررسی می کنند، ابزارهای جدید توسعه را آزمایش و استفاده می کنند.
مهارتهای خود را توسعه می دهند، سطح آگاهی، رقابت و حرفه ای بودن خود را حفظ می کنند
اسلاید 17 :
برنامه نویس خوب – ادامه -2
مبانی برنامه نویسی کامپیوتر
یک برنامه نویس واقعی، می داند که هرگز نمی تواند در حرفه خود، به استاد کامل تبدیل شود، چون بصورت پیوسته در حال تغییر است!
به این اصل باور کامل دارند که در تمام عمر خود باید یاد بگیرند و تحقیق کنند. از این باور، لذت می برند و این باور آن ها را راضی می کند(زمان)
برنامه نویس حقیقی، جدی است و دائماً از افراد در خصوص اینکه هرچیزی چگونه کار می کنند، می پرسند ( از یک ساعت ساده گرفته تا یک سیستم رهیاب، تکنولوژی اینترنت، زبان های برنامه سازی، سیستم عامل ها، کامپایلرها، بازیها، گرافیک های کامپیوتری، سخت افزار، هوش مصنوعی و هر چیز دیگری که با کامپیوترها و تکنولوژی های در ارتباط باشد)(پیش مقدمه)
هر چه بیشتر یاد می گیرند، دانش و مهارتهای بیشتری را می طلبند
زندگی آن ها به تکنولوژی گره خورده و با آن تغییر می کند. از توسعه علوم کامپیوتر، صنعت نرم افزار و تکنولوژی ها لذت می برند
اسلاید 18 :
برنامه نویس خوب – شغل برنامه نویسی
مبانی برنامه نویسی کامپیوتر
برنامه نویسی، یک حرفه است که تمامیِ توان و توجه شما را می طلبد تا بتوانید تبدیل به یک فرد ویژه، دانا، شایسته، منطقی، و قادر به مواجهه با وضعیتهای غیراستاندارد شوید.
این حرفه، نیاز به تمام توجه شما برای سال های متمادی دارد.
اگر با این توصیف ها، آماده هستید تا با گذراندن این دوره و بعد از چند ماه، قدم در راه حرفه ای شدن بگذارید، ادامه دهید، در غیر اینصورت، پیشنهاد می کنیم، منصرف شوید یا شغل دیگری را انتخاب کنید!
اسلاید 19 :
برنامه نویس خوب – شغل برنامه نویسی
مبانی برنامه نویسی کامپیوتر
اگر حرفه ای شوید:
می توانید هر برنامه ای که تاکنون دیده اید را بنویسید!
هر مسئله ای را که یک برنامه نویس می تواند حل کند، را شما هم می توانید حل کنید!
می توانید همیشه به اهدافتان فکر کنید بلندپروازی کنید و بدانید که شدنی هستند!
تکنولوژی های جدید را به خوبی بیاموزید
سایت بسازید
کامپایلر بنویسید
دیتابیس ایجاد کنید
بازی بنویسید
کسب و کار راه اندازی کنید
به کمک صنعت بیاید
در همه حوزه ها، مانند کشاورزی، زیست محیط، حمل و نقل، آموزش و . نقش داشته باشید!
اسلاید 20 :
برنامه نویس خوب – شغل برنامه نویسی
مبانی برنامه نویسی کامپیوتر
بدانیم، کسی که می خواهد حرفه ای شود، هر روز برنامه نویسی می کند یا به یک موضوع برنامه نویسی فکر می کند!