آموزش اصول و مبانی برنامه نویسی

آموزش اصول و مبانی برنامه نویسی

آموزش اصول و مبانی برنامه نویسی

در این مقاله میخواهیم به مفاهیم اولیه زبان برنامه نویسی بپردازیم بعد از این که این مفاهیم اولیه را آموختید میتوانید بهترین زبان برنامه نویسی خود را انتخاب کنید. علاوه بر دانستن تعدادی تعاریف باید بتوانید مثل یک برنامه نویس فکر کنید و به حل مسئله بپردازید و سپس نکات مهم برای شروع زبان برنامه نویسی را از دست ندهید!

مطالب این مقاله به نحوی آموزش داده شده که افراد را برای یادگیری هر زبان برنامه نویسی آماده میکندو دید کلی به آن ها میدهد. در واقع این مقاله درس شماره 0 هر دوره زبان برنامه نویسی دانست. از این رو اکیدا توصیه میکنم این مقاله را با دقت مطالعه بفرمایید.

هدف ما از زبان برنامه نویسی چیست؟

هدف ما از برنامه‌نویسی این است که خواسته‌های خود را به رایانه منتقل کنیم، اما باید به شما بگوییم رایانه مانند شخصی می‌ماند که هیچ چیز نمی‌داند! شما باید تمام در‌خواست‌های خود را “مرحله به مرحله” به او بگویید وگرنه مطمئنا دچار اشتباه خواهد شد، به همین دلیل می‌گوییم شما باید به اندازه‌ی کافی صبر و حوصله داشته باشید تا بتوانید خواسته‌های خود را به این “ماشین کند ذهن” بفهمانید خط به خط آن را بخواند و اجرا کند

در اکثر زبان‌های برنامه ‌نویسی توابع و متدهای آماده‌ی بسیاری وجود دارد که شما می‌توانید بعدها در برنامه‌ی خود به راحتی از آن‌ها استفاده کنید، اما ما پیشنهاد میکنیم اصول اولیه برنامه نویسی را به خوبی گذرانده و حرفه ای به جلو حرکت کنید به گونه‌ی که خودتان بتوانید به راحتی توابع مورد نیاز خود را نوشته و در برنامه‌تان از آن‌ها استفاده کنید!!

با دسته‌بندی زبان‌های برنامه‌نویسی آشنا شوید

سه دسته زبان برنامه‌نویسی وجود دارد، زبان‌های سطح بالا، زبان سطح میانی و زبان سطح پایین که در ادامه به توضیح آن‌ها در این مقاله می‌پردازیم:

زبان‌های سطح بالا

این دسته از زبان‌های برنامه‌نویسی شباهت بسیار زیادی به زبان انسان داشته و به راحتی توسط انسان‌ها قابل درک و فهم هستند، به همین دلیل به آن‌ها زبان سطح بالا (نزدیک به زبان انسان) می‌گوییم، به شدت به شما توصیه می‌کنیم اگر برای اولین بار قصد برنامه‌نویسی دارید به سراغ این زبان‌ها بروید (پایتون ،جاوا، سی‌شارپ، آبجکتیو سی و… جزو زبان‌های سطح بالا هستند)

زبان‌های سطح میانی

همان‌گونه که از نام این دسته پیداست این زبان‌ها چیزی بین زبان‌های سطح بالا و زبان‌های سطح پایین هستند، این زبان‌ها علاوه بر اینکه به زبان انسان نزدیک‌اند در عین حال برای برقراری ارتباط مستقیم با سخت‌افزار نیز مناسب هستند، اگر وقت و حوصله‌ی زیادی دارید و می‌خواهید از پایه برنامه‌نویسی را بیاموزید می‌توانید به سراغ این دسته از زبان‌ها بروید (سی، سی‌پلاس‌پلاس و… جزو زبان‌های سطح میانی به حساب می‌آیند)

زبان‌های سطح پایین

این‌گونه زبان‌ها به طور قابل توجهی برای انسان غیر قابل درک بوده و بیشتر به زبان ماشین شباهت دارند، هرچند فهم آن‌ها برای رایانه آسان‌تر است، اما از آنجایی که صحبت کردن با زبان انسان برای ما راحت‌تر است به همین دلیل اکثر افراد سعی می‌کنند از دسته‌ی اول (زبان‌های سطح بالا) استفاده کنند، اگر قصد دارید به طور مستقیم با سخت‌افزار صحبت کنید باید به سراغ این دسته از زبان‌ها بروید، در غیر این صورت به شما توصیه می‌کنیم از همان دسته‌ی اول استفاده کنید (زبان اسمبلی یا صفر و یک جزو زبان‌های سطح پایین به حساب می‌آید)

سورس کد چیست؟

برای شروع برنامه نویسی، نیاز نیست ابتدا تعداد زیادی برنامه برای نوشتن کد خود نصب کنید. می‌توانید حتی از notepad روی ویندوز هم استفاده کنید. به این کد و متن نوشته شده source code گفته می‌شود. البته برنامه‌نویسان برای این کار از محیط‌های اختصاصی برای سریع‌تر و راحت‌تر شدن کدنویسی استفاده می‌کنند. مثال این ادیتور‌ها:

Notepad ++, Code,  Brackets, Blue Fish, Atom, Editpad, Sublime Text …

چرا به کد نوشته شده سورس کد می‌گوییم؟

پردازنده یا cpu یک کامپیوتر، اصلا زبان سورس کد را نمی‌فهمد و زبان آن machine code است که تصویر آن را می‌بینید. سورس کد در اصل ارتباطی بین ما و کامپیوتر است تا نیازی نباشد زمان بسیار زیاد برای machine coding بگذاریم. بنابراین کد ما به کد ماشینی تبدیل می‌شود و برای کامپیوتر قابل فهم می‌شود.

این تبدیل شدن سورس کد به کد ماشینی به ۲ صورت انجام می‌شود:

۱گردآوری کردن (compilation)

با استفاده از یک compiler تک تک دستورات به کد ماشین تبدیل می‌شود و پردازنده آن را اجرا می‌کند. نتیجه آن یک فایل قابل اجرا (exe) است. بعد از کامپایل کردن، یک فایل ارائه می‌شود و نیازی به سورس کد نیست و حتی زبان برنامه نویسی آن نیز مشخص نمی‌شود.

۲. ترجمه کردن (Interpretation)

در اینجا کد به شما داده می‌شود و لازم است برای استفاده از آن interpreter داشته باشید اما نیازی نیست تا برنامه‌ای دانلود یا نصب کنید و این برنامه‌ها معمولا در سیستم عامل‌ها موجود هستند. رایج ترین مثال آن JavaScript است که در همه مرورگرها پیدا می‌شود. بنابراین این تبدیل از قبل نیست و وقتی برنامه را اجرا می‌کنید انجام می‌شود.

بعضی زبان‌های برنامه نویسی مثل C++ ,Swift و objective-C کامپایل می‌شوند. JavaScript, Python و PHP معمولا ترجمه می‌شوند. بهترین مثال یک زبان بین این دو حالت (Hybrid intermediate approach) زبان برنامه نویسی Java (زبان برنامه نویسی طراحی اپلیکیشن موبایل) است.

معنای صفر و یک چیست؟

یک تراشه پردازنده دارای تعداد بسیار زیادی -به اصطلاح – سوییچ در ابعاد میکروسکوپی است. این‌ها می‌توانند روشن یا خاموش باشد. اگر یک کلید داشته باشیم ۲ حالت دارد (روشن و خاموش) . اگر ۲ کلید باشد،‌ ۴ حالت روشن و خاموش و ادامه این محاسبات نیز با توان‌های عدد ۲ انجام می‌شود. (مثل روشن و خاموش کردن کلید برق)

چیدمان این کلیدها که bit (بیت) نام دارند، می‌تواند متفاوت باشد و حالت‌های مختلفی را فراهم کند و هر کدام معنای خاصی بدهد. پس ۰ به معنای خاموش و ۱ به معنای روشن است و یک زبان دو دویی یا binary بر پایه ۲ داریم. احتمالا شنیده‌اید که یک سیستم ساختار ۳۲ یا ۶۴ بیت دارد. یعنی CPU راحت‌تر است با کدام یک کار کند. سپس این کدها به اعداد hexadecimal تبدیل می‌شوند. پس کدی که می‌نویسیم در نهایت به ۰ و ۱ تبدیل می‌شود و با کامپیوتر ارتباط برقرار می‌کند.

سینتکس یک زبان برنامه نویسی چیست؟

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

اصطلاحات برنامه نویسی

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

۱. الگوریتم: تعدادی مرحله یا دستور که برای انجام یک کار خاص لازم است دنبال شود. یک برنامه نویس برای رسیدن به خروجی مورد نظر الگوریتم طراحی می‌کند. مانند همان مثال کتاب آشپزی

۲.data type: داده‌های استفاده شده در یک برنامه می‌تواند انواع مختلفی داشته باشد. مثلا عدد باشد(integer)، کاراکتر یا شئ باشد و …

۳. conditionals: یعنی شرطی بگذاریم که آن قسمت از کد تنها با برقرار بودن شرط اجرا شود.

۴. آرایه: مجموعه‌ای از یک نوع داده است. (مثلا مجموعه‌ای از اعداد) و هر عضو این مجموعه شامل یک index است. (که این عدد از 0 شروع می‌شود)

۵. loop: تا وقتی که شرط آن برقرار باشد، اجرا می‌شود و تکرار می‌شود و اگر شرط برقرار نبود از حلقه خارج میشود.

۶. function: همان تابع است. می‌تواند پارامترهایی را بگیرد و عملیاتی را روی آن‌ها انجام دهد و به ما خروجی بدهد.

۷. class: مانند یک چارچوب است که  حالت و رفتارهای مختلفی بنا به خواسته برنامه نویس می‌تواند داشته باشد. یعنی تعدادی ویژگی ثابت دارد و تعدادی ویژگی متغیر.

برای خواندن مقالات به روز دیگر با آکادمی ایرانیان همراه باشید.

چه زبان برنامه نویسی برای من مناسب است؟

چه زبان برنامه نویسی برای من مناسب است؟

چه زبان برنامه نویسی برای من مناسب است؟

چگونه زبان برنامه نویسی را شروع کنیم؟

چه زبان برنامه نویسی برای من مناسب است؟

کدام زبان برنامه نویسی پر درامد تر است؟

کدام زبان برنامه نویسی راحت تر است؟

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

اگر به دنبال یک زبان برنامه نویسی هستید در مرحله اول باید مبانی اولیه را بلد باشید تا تسلط کافی را داشته باشید.

آموزش اصول و مبانی برنامه نویسی

سپس حوزه های برنامه نویسی مثل موبایل، دسکتاپ، وب سایت را انتخاب کرده تا به بهترین نحو برنامه نویسی را شروع کنید و یک دید کلی از زبان برنامه نویسی داشته باشید. در ادامه با حوزه های زبان برنامه نویسی بیشتر آشنا میشوید.

بررسی انتخاب بهترین زبان برنامه نویسی

برای شروع بهترین زبان های برنامه نویسی لازم است به موارد زیر نهایت دقت را داشته باشید تا آموزش شما کاملا هدفمند بوده و منجر به موفقیت روز افزونتان شود. این موارد عبارت اند از:

  • بررسی وضعیت تقاضا در بازار کار برنامه نویسی
  • بررسی میزان سادگی، پیچیدگی و دشواری زبان برنامه نویسی
  • وجود دوره ها و کلاس های یادگیری و تحقیق در زبان برنامه نویسی منتخب
  • وجود داشتن منابع آموزشی معتبر در زمینه زبان برنامه نویسی منتخب

اگر موارد بالا را در نظر داشته باشید با سرعت بهتر و هدفمند تری آموزش را می بینید و وارد بازار کار جذاب برنامه نویسی میشوید.

روش پیدا کردن برترین زبان برنامه نویسی

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

قبل از پیدا کردن بهترین زبان برنامه نویسی به این سوال پاسخ دهید که چرا میخواهید یک برنامه نویس شوید؟!

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

حوزه های زبان برنامه نویسی

در برنامه‌نویسی، پلتفرم به نرم‌افزار یا سخت‌افزاری گفته می‌شود که روی آن سرویسی قرار گرفته باشد. یک پلتفرم، شامل یک سخت‌افزار، سیستم عامل و یک سری برنامه‌ها و دستورالعمل‌هایی است که بستری برای اجرای اپلیکیشن فراهم می‌کند.
حوزه‌‌های برنامه‌نویسی را بر اساس پلتفرم به سه دسته کلی تقسیم می‌کنند:

  • برنامه‌نویسی تحت وب
  • برنامه‌نویسی تحت دسکتاپ
  • برنامه‌نویسی تحت موبایل

1-  حوزه برنامه‌نویسی تحت وب

یکی از محبوب‌ترین حوزه‌های برنامه نویسی ،حوزه تحت وب است. به زبان‌هایی که برای کار، بر ‌روی وب و شبکه طراحی و ساخته شده‌‌اند، زبان‌های برنامه‌نویسی تحت وب گفته می‌شود. این زبان‌ها برای تولید انواع پروژه‌ها و نرم‌افزار‌های تحت وب مورد استفاده قرار می‌گیرد. به عنوان مثال انواع وب‌‌سایت‌ها، امور بانکی، خرید آنلاین، ایمیل ها، مجله‌ها و برنامه‌های آنلاین نمونه کاربردهایی هستند که از زبان‌های تحت وب برای ایجاد آن‌ها استفاده شده است.

از پرکاربرد‌ترین زبان‌ها در این حوزه که می‌توان نام برد:

  • زبان‌های سمت سرور: php, python, ruby, ASP.NET
  • زبان‌های سمت کاربر: html, css, javascript

۲- حوزه برنامه‌نویسی تحت دسکتاپ

زبان‌های برنامه‌ نویسی‌ تحت دسکتاپ زبان‌هایی هستند که از آن‌‌ها برای تولید نرم‌افزار‌ های کاربردی روی سیستم عامل ویندوز، لینوکس، مک و غیره استفاده می‌شوند. مانند مرورگرها، نرم‌افزارهای چندرسانه‌ای Multi Media، نرم‌‌افزارهای اتوماسیون اداری و غیره.
از بین انواع زبان‌های برنامه‌نویسی در این حوزه، متداول‌ترین آن‌ها که می‌توان نام برد:

  • زبان‌های برنامه‌نویسی ویندوز :  C#, java, javascript
  • زبان‌های برنامه‌نویسی لینوکس: java, python
  • زبان‌های برنامه‌نویسی مک: swift

۳- حوزه برنامه‌نویسی تحت موبایل

برنامه‌نویسی تحت موبایل زبان‌هایی هستند که برای ساخت اپلیکیشن‌های موبایل استفاده می‌شوند. یعنی با استفاده از آن‌ها می‌توانید انواع اپلیکیشن اندرویدی و ios را تولید کنید.

مانند: جاوا، کاتلین، پایتون، سی شارپ، بیسیک و …

خب با در نظر گرفتن این موارد به راحتی میتوانید بهترین زبان برنامه نویسی را بررسی کرده و یک آینده فوق العاده ای را برای خود رقم بزنید.

آکادمی ایرانیان در تلاش است تا 7خان دوره های آموزشی را پله به پله همراه شما باشد و شما را برای حرفه ای تر شدن و ورود به بازار کار همراهی کند.