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

تو این مقاله میخام به زبان خیلی ساده برای کسانیکه قصد شروع برنامه‌نویسی را دارند و اصلا نمیدونن برنامه‌نویسی چیست!؟ یکم توضیح بدم.برنامه نویسی چیست؟اگر بخواهیم به زبان گفتاری خیلی‌خیلی ساده و روان براتون این مقاله رو بنویسم و در مورد برنامه نویسی صحبت کنم، اینجوری میشه که در زیر می‌خوانید.برنامه نویسی چیست؟!این اساساً بدان معنی است که شما مجموعه‌ای از دستورالعمل‌ها را به کامپیوتر ارائه می‌دهید که به زبانی نوشته شده است که کامپیوتر می تواند آن را درک کند. این دستورالعمل ها می توانند انواع مختلفی داشته باشند. درست مانند ما انسان‌ها که می توانیم چند زبان (انگلیسی ، اسپانیایی ، ماندارین ، فرانسوی و ...) را بفهمیم ، در مورد کامپیوترها نیز چنین است. کامپیوترها دستورالعمل‌هایی را که به شکل نحوی خاصی بنام زبان برنامه نویسی نوشته شده اند، می‌فهمند.چون حس کردم که تعریفم از دید و نگاه خودم است و شاید بهتر است به یک منبع معتبر رجوع کنیم، از ویکی پدیا فارسی کمک گرفتم و تعریف برنامه نویسی در زیر کامل‌تر آمده است.برنامه‌سازی کامپیوتر یا برنامه‌نویسی رایانه‌ای (به انگلیسی: computer programming) همان فرایند طراحی و ساخت یک برنامه رایانه‌ای اجراپذیر برای به‌دست‌آوردن یک نتیجه رایانشی خاص، یا انجام یک عمل خاص است. برنامه‌نویسی شامل عمل‌هایی مثل: تحلیل، ایجاد الگوریتم‌ها، رخ‌نمانگاری دقت الگوریتم‌ها و مصرف منابع، و پیاده‌سازی آن الگوریتم‌ها به یک زبان برنامه‌نویسی انتخاب شده‌است (که معمولاً به آن کدگذاری (کدینگ) گفته می‌شود). کد منبع یک برنامه به یک یا بیشتر زبان نوشته می‌شود که این زبان برای «برنامه‌نویس» قابل فهم است (به جای کد ماشین که به صورت مستقیم توسط واحد پردازش مرکزی اجرا می‌شود). هدف از برنامه‌نویسی، پیداکردن ترتیبی از دستورالعمل‌ها است که انجام یک عمل را در یک رایانه، معمولاً برای حل‌کردن یک برنامه داده شده، خودکارسازی می‌کند (که می‌تواند تا حد یک سیستم‌عامل پیچیده باشد). بنابراین، یک برنامه‌نویسی حرفه‌ای نیاز به مهارت در چندین موضوع متفاوت دارد، که شامل دانش دامنه کاربردی، الگوریتم‌های خاص، و منطق صوری است.همانطور که در بالا ذکر شد،کامپیوترها دستورالعمل‌هایی را که به صورت نحوی خاص بنام زبان برنامه نویسی نوشته شده اند، درک می‌کنند. یک زبان برنامه نویسی راهی برای بیان یک کار برای یک برنامه نویس فراهم می‌کند تا بتواند توسط کامپیوتر درک و اجرا شود.ولی خب به همین سادگی هم که گفتم نیست بخواهیم یکم دقیق‌تر بشیم به این موضوع زبان‌های‌ برنامه نویسی به چهار دسته مختلف تقسیم بندی می شوند.انواع زبان‌های برنامه نویسی زبان‌های برنامه‌نویسی تحت ویندوززبان‌های برنامه‌نویسی تحت وبزبان‌های برنامه‌نویسی موبایلزبان‌های برنامه‌نویسی چند منظوره یا کراس پلتفرمزبان های برنامه‌نویسی تحت ویندوز: ما به کمک این زبان‌ها میتوانیم نرم افزار‌هایی را توسعه بدهیم و بنویسیم که روی پلتفرم ویندوز قابل اجرا هستند. مثلا: فتوشاپ، ورد، مرورگرها، و الی هزار تا ...زبان های برنامه نویسی تحت ویندوززبان‌های برنامه‌نویسی تحت وب :برنامه‌نویسی تحت وباین نوع از زبان‌ها که خود به دو زیر شاخه تقسیم می شوند.بک اند Back-endفرانت اند Front-endبا فراگیری و یادگیری این زبان‌ها میتوانیم برنامه‌هایی رو توسعه دهیم که روی مرورگرهای کامپیرتر اجرا می‌شوند که اصولا بهشون میگن سایت ?.یه توضیح خیلی مختصری هم در مورد بک اند و فرانت اند بخوام بدم، اینجوری میشه که در زیر آوردم.بک اند: هر عملیات و پروسه‌ای که در پشت‌صحنه انجام میشه و کاربر نمیتونه به سادگی اونا رو ببینه بک اند می‌گویند.backend programmingفرانت اند: مکمل توضیح بالا است بطوریکه نتیجه عملیات و پروسه ای که در بک اند انجام میشه رو در فرانت اند کاربر میبینه، پس بنابراین هر چیزی که کاربر میبینه رو فرانت اند می‌گویند، شاید عکس پایین دقیق‌تر این گفته‌ها رو نشون بدن.( دیگه واقعا از این ساده تر نمیشه بیان کرد)برنامه‌نویسی تحت وبزبان های برنامه نویسی تحت وبزبان‌های برنامه‌نویسی موبایل:این نوع از زبان‌ها هم بر اساس سیستم عامل موبایلی که استفاده میشه به دو زیر شاخه تقسیم می شوند.( البته به غیر از اینها هم است ولی خیلی کم استفاده میکنن) زبان‌های برنامه نویسی اندروید برنامه نویسی اندرویداین زبان‌ها برای توسعه و طراحی اپلیکیشن‌های اندرویدی استفاده می‌شوند، برای توسعه اپلیکیشن‌های اندروید از زبان‌های زیر استفاده می کنند.زبان جاوازبان کاتلینزبان ریکت نیتیوزبان فلاتر زبان های برنامه نویسی IOSبرنامه نویسی IOSاین زبان ها برای توسعه اپلیکیشن های IOS استفاده می شوند که محصول انحصاری شرکت اپل یعنی آیفون هست. زبان برنامه نویسی Objective-Cزبان برنامه نویسی SWIFTزبان های برنامه نویسی موبایلزبان های برنامه نویسی چند منظوره یا کراس پلتفرم:این نوع از زبان ها همانطور که از نام آنها پیدا است، کراس پلتفرم هستند. یعنی با یادگیری و استفاده از این زبان ها می توانید همزمان برای چند پلتفرم مختلف مانند: وب، ویندوز، موبایل، و... خروجی گرفت.برای مثال: فلاتر زبان کراس پلتفرم است که همزمان خروجی چند منظوره در اختیار توسعه دهنده قرار می دهد.زبان های برنامه نویسی چند منظوره یا کراس پلتفرم( ولی حالا اینکه کراس پلتفرم بهتره یا نیتیوها برمیگرده به نظر و هدف شما )امیدوارم مقاله مفید واقع بوده باشه، اگر نظری دارید لطفا در کامنت برای من بیارید، با سپاس.لایک هم یادت نره._______________________________ممنون از اینکه وقت گذاشتین و خوندین، لطفا نظرات و پیشنهادات خودتون و دایرکت اینستاگرامم بهم‌بگید. https://www.instagram.com/behrad.tech/