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

خب خب سلام اینجا قراره باهم کلی چیزهای جذاب و کار آمد یاد بگیریم در زمینه رشته مهندسی کامپیوتر که رشته ومورد علاقه خودم و اینکه خودم در حال حاضر در این رشته تحصیل میکنم و قراره اینجا کلی اموزش داشته باشیم آموزش برنامه نویسی و ....خب قراره در این پست کمی با حرفه برنامه نویسی کامپیوتر آشناتون کنم. بچه ها اگه میخواید وارد این حرفه بشید و این مهارت رو فرا بگیرید . باید بهش علاقه داشته باشید که اگه یه جاهاییش براتون سخت شد از پسش در بیاید و باید انگیزه کافی رو داشته باشید تا به اون چه که دلخواهتون هست برسید ....آیدی اینستاگرام من: myss.ghasemi @ https://virgool.io/p/tl3twuqjjtlb/@myss.ghasemi%F0%9F%93%B7 تفاوت بین توسعه دهنده ، برنامه نویس و کدنویس چیست؟در ادامه پاسخ به این سوال که برنامه نویسی چیست به این موضوع پرداخته شده است که برنامه نویس چه کسی است؟ در دنیای فناوری اطلاعات از سه اصطلاح مختلف «کدنویس»، «برنامه نویس» و «توسعه دهنده» استفاده می‌شود. اغلب این سه اصطلاح را به جای هم به کار می‌برند و بسیاری از افراد تفاوتی بین آن‌ها قائل نمی‌شوند. اما در دنیای حرفه‌ای برنامه نویسی، تفاوت‌هایی بین این سه اصطلاح وجود دارند که بد نیست در این بخش به آن‌ها پرداخته شود. بنابراین هر یک از این سه اصطلاح در ادامه تعریف شده‌اند تا تفاوت آن‌ها مشخص شود.برنامه نویس کیست ؟برنامه نویس فردی حرفه‌ای است که دستورالعمل‌های لازم را به وسیله نوشتن و تست کردن کدها جهت اجرا روی کامپیوتر ایجاد می‌کند. برنامه نویس که گاهی توسعه دهنده (Developer) هم خطاب می‌شود، امکان عملکرد صحیح اپلیکیشن‌ها و برنامه‌های نرم افزاری را فراهم می‌کند. برنامه نویسان و توسعه دهندگان علاوه بر کدنویسی، کار اصلاح، نگهداری، تست و سایر امور مرتبط با ساخت و تولید نرم افزار را هم انجام می‌دهند.?پیشه برنامه نویسی بسیار وسیع است و حوزه‌های مختلفی دارد که از جمله مهم‌ترین شاخه‌های آن می‌توان به برنامه نویس وب و موبایل، توسعه دهنده نرم افزار (دسکتاپ) و برنامه نویس بازی‌های کامپیوتری اشاره کرد که پیش‌تر در بخش انواع برنامه نویسی به آن‌ها اشاره شده است. برنامه نویسان حرفه‌ای و متخصص، برنامه‌ها را برای پیدا کردن ایرادها (باگ‌ها) و برطرف کردن هر نوع خطایی جستجو می‌کنند و به‌روزرسانی‌های لازم را برای برنامه‌های از قبل ایجاد شده می‌نویسند.برای افرادی که سابقه خوبی در ریاضی دارند و می‌توانند با پروسه‌های ترتیبی و منطقی که کامپیوترها به آن‌ها متکی هستند به خوبی کار کنند، حرفه برنامه نویسی شغلی ایده‌آل به حساب می‌آید.به بیان ساده برنامه نویسی چیست ؟به بیان ساده، اساساً برنامه نویسی اقدامی برای به‌کارگیری کامپیوتر جهت انجام یک وظیفه مشخص است که این وظیفه باید بدون خطا و به‌درستی انجام شود.انواع برنامه نویسی چیست ؟مقصود از طرح این سوال که انواع برنامه نویسی چیست می‌تواند متفاوت باشد. برخی از افراد ممکن است به دنبال انواع زبان‌های برنامه نویسی باشند و برخی دیگر نیز احتمالاً می‌خواهند در خصوص انواع حوزه‌های مختلف برنامه نویسی در بازار کار اطلاعاتی را به دست آورند. بنابراین در این بخش به هر یک از دو جنبه مختلف این سوال پرداخته شده است. ابتدا انواع زبان‌های برنامه نویسی شرح داده شده‌اند. https://virgool.io/p/tl3twuqjjtlb/@myss.ghasem زبان برنامه نویسی برای افرادی که به دنبال شغلی در زمینه برنامه نویسی و سایر حوزه‌های فناوری اطلاعات هستند، بسیار مفید و مهم است. به واسطه آشنایی با انواع زبان‌های برنامه نویسی می‌توان تشخیص داد که چه زبانی برای چه کاربردی مناسب است و افراد می‌توانند بر اساس زمینه مورد علاقه، زبان برنامه نویسی مناسب را برای یادگیری انتخاب کنند. انواع زبان‌های برنامه نویسی را می‌توان به دو دسته کلی زبان‌های سطح بالا و سطح پایین تقسیم کرد. در ادامه دسته‌بندی دقیق‌تری از انواع زبان برنامه نویسی فهرست شده است:زبان سطح پایین : این زبان قابل درک‌ترین نوع زبان برای کامپیوتر به حساب می‌آید که می‌توان آن را به روش‌های زیر دسته‌بندی کرد:زبان ماشین (1GL): این نوع زبان رشته‌هایی از اعداد دودویی را شامل می‌شود و تنها زبانی است که به طور مستقیم برای پردازنده کامپیوتر یا همان سی‌پی‌یو قابل درک است.زبان اسمبلی (2GL): این زبان هم نوعی از زبان‌های سطح پایین به حساب می‌آید، چرا که برای طراحی یک برنامه با این زبان، برنامه نویس باید اطلاعات جزئی را در خصوص مشخصات سخت‌افزاری در اختیار داشته باشد.زبان سطح بالا : دستورالعمل‌های این نوع زبان برنامه نویسی شباهت و نزدیکی زیادی به زبان انسان یا همان زبان انگلیسی دارند. در زبان سطح بالا از نشانه‌گذاری ریاضی برای اجرای وظایف استفاده می‌شود. یادگیری زبان سطح بالا بسیار آسان‌تر است. زبان‌های سطح بالا را می‌توان به بخش‌های زیر دسته‌بندی کرد:زبان رویه محور (3GL): برنامه نویسی رویه محور یا همان رویه‌ای، روشی است برای مدل‌سازی مسئله از طریق مشخص کردن گام‌ها و ترتیب آن گام‌هایی که باید برای رسیدن به نتیجه مطلوب یا وضعیت خاصی در برنامه پیمایش شوند.زبان مسئله محور (4GL): در این نوع زبان به کاربران اجازه داده می‌شود تا بدون توصیف تمام جزئیات مروبط به نحوه اعمال تغییرات روی داده‌ها، با هدف تولید نتیجه، مشخص کنند که خروجی باید چه چیزی باشد. این یک گامی فراتر از 3GL به حساب می‌آید.زبان طبیعی (5GL): زبان‌های طبیعی همچنان در مرحله توسعه و ساخت هستند. در این نوع از زبان‌ها می‌توان گزاره‌هایی را نوشت که شبیه به جملات عادی به نظر می‌رسند.انواع زبان برنامه نویسی را می‌توان به شکل دیگری هم دسته‌بندی کرد که در ادامه ملاحظه می‌شود:رویه‌ایتابعیشی گرااسکریپتیمنطقیپایگاه داده‌ایجریان دادهبرای کسب اطلاعات بیش‌تر در خصوص موارد فوق، مطالعه مقاله فهرست انواع زبا‌ن‌های برنامه نویسی به علاقه‌مندان پیشنهاد می‌شود:مقاله پیشنهادی: فهرست انواع زبان های برنامه نویسی + کاربرد مزایا و معایب — آنچه باید بدانیدانواع حوزه های مختلف برنامه نویسی چیست؟حوزه‌های اصلی برنامه نویسی را می‌توان به ۵ دسته کلی تقسیم کرد که برنامه نویسی وب و برنامه نویسی موبایل از جمله حوزه‌های محبوب‌تر به حساب می‌آیند. هر یک از ۵ شاخه اصلی برنامه نویسی در ادامه فهرست و به طور مختصر شرح داده شده‌اند:برنامه نویسی کامپیوتر: در این حوزه برنامه‌هایی برای اجرای وظایف کاربردی کامپیوترهای شخصی ایجاد می‌شوند. در برنامه نویسی کامپیوتر باید اطمینان حاصل شود که کدها بدون ایراد باشند و انتظارات مشتریان برآورده شوند.توسعه و برنامه نویسی وب: شاخه برنامه نویسی وب تمام مراحل برنامه نویسی را برای ایجاد و پیاده‌سازی وب سایت‌ها و سایر کاربردهای مبتنی بر وب شامل می‌شود.توسعه و برنامه نویسی موبایل: توسعه اپلیکیشن‌های تلفن‌‌های هوشمند به فرآیند ایجاد برنامه‌های نرم افزاری می‌گویند که روی دستگاه‌های تلفن هوشمند اجرا می‌شوند.علم داده (Data Science): به بیان ساده، علم داده یک حوزه تحصیلی میان رشته‌ای به حساب می‌آید که در آن داده‌ها برای انجام تحقیقات گوناگون به کار گرفته می‌شوند و در گزارش‌گیری با هدف بیرون کشیدن بینش و مفهوم از درون داده‌ها مورد استفاده قرار می‌گیرند. به متخصصین علم داده، «دانشمند داده» هم می‌گویند.توسعه و برنامه نویسی بازی‌های کامپیوتری: برنامه نویسی بازی یا توسعه بازی به کلیه مراحل ایجاد بازی‌های کامپیوتری گفته می‌شود. این حوزه شامل «طراحی»، «توسعه» و «انتشار» بازی‌های رایانه‌ای می‌شود.پایتون یک زبان برنامه نویسی است که معمولاً برای ساخت وب سایت‌ها و توسعه نرم افزار، خودکار کردن کارها و انجام تجزیه-تحلیل داده‌ها موزد استفاده قرار می‌گیرد. پایتون یک زبان برنامه نویسی همه منظوره به حساب می‌آید؛ به این معنا که می‌توان از پایتون در برنامه‌های مختلف استفاده کرد و تنها برای یک برنامه خاص به صورت اختصاصی طراحی نشده است. همه کاره بودن و همچنین سادگی یادگیری پایتون برای افراد تازه کار این زبان برنامه نویسی را به یکی از پرکاربردترین زبان‌های برنامه نویسی تبدیل کرده است.پایتون یک زبان برنامه نویسی شی‌گرا و سطح بالا به حساب می‌آید. پایتون دارای قواعد نحوی ساده‌ای است و به همین دلیل هم می‌توان آن را به راحتی یاد گرفت. هوش مصنوعی، برنامه نویسی وب، توسعه نرم افزار و برنامه نویسی و طراحی ربات هوشمند تنها برخی از کاربردهای پایتون هستند. قواعد نحوی یا همان سینتکس پایتون بسیار ساده است و این باعث می‌شود که یادگیری آن بسیار آسان باشد. بسته‌ها و ماژول‌های بسیاری برای پایتون ساخته شده‌اند که با اضافه کردن آن‌ها به پایتون می‌توان قابلیت‌های عملکردی ویژه‌ای را پیاده‌سازی کرد و پایتون را در مقاصد مختلف به کار گرفت. پایتون دارای کتابخانه استانداردی بسیار جامع و غنی است.چگونه می توانیم برنامه نویس شویم؟برای تبدیل شدن به یک برنامه نویس حرفه‌ای باید گام‌های مختلفی را طی کرد. اولین و مهم‌ترین نکته‌ای که پیش از ورود به دنیای برنامه نویسی باید در نظر گرفت این است که لازم است فرد به برنامه نویسی علاقه داشته باشد. کسب موفقیت در هیچ زمینه‌ای بدون علاقه امکان‌پذیر نیست. علاوه بر این، استعداد داشتن در برنامه نویسی هم بسیار اهمیت دارد.حیطه برنامه نویسی بسیار گسترده و دارای شاخه‌های مختلفی است. در ابتدا باید مشخص شود که فرد به چه کاربردی از برنامه نویسی علاقه‌مند است و قصد دارد در چه شاخه‌ای از برنامه نویسی فعالیت کند؟ آیا به توسعه و برنامه نویسی وب علاقه وجود دارد یا اینکه فرد برای فعالیت به عنوان دانشمند داده مشتاق است؟پس از مشخص شدن حیطه فعالیت، در گام بعدی باید به سراغ یادگیری زبان‌های برنامه نویسی و سایر فناوری‌ها و ابزارهای مورد نیاز رفت. ابتدا لازم است مفاهیم پایه و مقدماتی برنامه نویسی را یاد گرفت و سپس با شروع کار عملی و انجام پروژه فرآیند یادگیری را ادامه داد. نکته کلیدی این است که انجام پروژه باید هر چه سریع‌تر شروع شود و تنها با تمرین و فعالیت عملی می‌توان مهارت کسب کرد و تبدیل به یک برنامه نویس حرفه‌ای شد.برای پاسخ دقیق‌تر به این سوال مهم که چگونه برنامه نویس شویم ، پیش‌تر در مجله فرادرس مقاله‌ای جامع و کاربردی در این خصوص منتشر شده است که مطالعه آن برای آگاهی از تمام گام‌ها و جوانب تبدیل شدن به یک برنامه نویس حرفه‌ای به علاقه‌مندان پیشنهاد می‌شود:همان‌طور که بیان شد، یکی از گام‌های مهم در تبدیل شدن به برنامه نویس حرفه‌ای، یادگیری یک زبان برنامه نویسی مناسب است که در حوزه مورد علاقه فرد کاربرد داشته باشدپایتون یکی از محبوب‌ترین و پر استفاده‌ترین زبان‌های برنامه نویسی در زمینه‌های مختلف به حساب می‌آید. یادگیری پایتون به آن دسته از افرادی پیشنهاد می‌شود که قصد شروع حرفه برنامه نویسی را دارند . زبان برنامه نویسی جاوا یک زبان شی‌گرا و سطح بالا است که به وسیله آن می‌توان برای پلتفرم‌های مختلف نرم افزار ایجاد کرد. جاوا علاوه بر توسعه بک اند و برنامه نویسی اندروید، کاربردهای بسیار گسترده‌تری دارد و از بازار کار مناسبی برخوردار است. جاوا اسکریپت یکی از کلیدی‌ترین، پر استفاده‌ترین و محبوب‌ترین زبان‌ها در زمینه برنامه نویسی وب به حساب می‌آید که ابتدا در فرانت اند و اکنون در بک اند استفاده می‌شود. جاوا اسکریپت زبان برنامه نویسی پویا (داینامیک) است؛ یعنی امکان ایجاد قابلیت‌های عملکردی پویا و تعاملی در صفحات و کاربردهای وب را فراهم می‌سازد. از زبان برنامه‌نویسی PHP می‌توان به عنوان پراستفاده‌ترین زبان برنامه‌نویسی تحت وب یاد کرد. تاکنون بیش از 70 درصد وب‌سایت‌ها با استفاده از PHP پیاده‌سازی شده‌اند. PHP یک زبان برنامه‌نویسی سمت سرور به حساب می‌آید؛ یعنی کدهای نوشته شده روی سرور اجرا و نتیجه خروجی برای کاربر ارسال می‌شود.C++‎ (سی پلاس‌پلاس) یکی دیگر از زبان‌های برنامه نویسی رایج و پرکاربرد در دنیای IT به حساب می‌آید. بسیاری از نرم‌افزارها و برنامه‌های کاربردی محبوب و شناخته شده با C++‎ نوشته شده‌اند. با یادگیری این زبان برنامه نویسی می‌توان در زمینه توسعه نرم افزارهای مختلف به فعالیت پرداخت. طول مدت این دوره آموزشی ۲۰ ساعت و ۱۴ دقیقه و مدرس آن دکتر فرشید شیرافکن است. آموزش زبان C++‎‌ برای علاقه‌مندان و افرادی که قصد شروع یادگیری برنامه‌نویسی را دارند می‌تواند مناسب باشد.همچنین، این زبان به عنوان یکی از دروس پایه و مهم در مجموعه رشته‌های مهندسی کامپیوتر مقطع کارشناسی تدریس می‌شود. بنابراین، دانشجویان این رشته نیز می‌توانند برای یادگیری بهتر C++‎ از محتوای این دوره آموزشی استفاده کنند. برخی از مباحث و موضوعات این دوره شامل انواع داده‌ها، انواع عملگرها، دستورات cin و cout، ساختارهای تکرار (for ،while و do while)، تابع، آرایه و سایر موارد می‌شود.کسب درآمد از برنامه نویسی و بازار کار آنبرنامه نویسی حوزه‌ای بسیار گسترده است و شاخه‌های مختلفی دارد. می‌توان گفت که در اکثر کسب و کارها و صنایع مختلف از برنامه نویسی استفاده می‌شود. تقریباً تمام شرکت‌ها و سازمان‌های بزرگ وارد فضای آنلاین شده‌اند و همه‌گیری تجارت الکترونیک بسیار محسوس است. بنابراین،‌ میزان تقاضای بسیار بالایی برای استخدام افراد حرفه‌ای فعال در زمینه برنامه نویسی وجود دارد.این افزایش تقاضا باعث شده است که درآمد برنامه نویسی رشد چشمگیری داشته باشد. علاوه بر این کمبود نیروی متخصص در حوزه برنامه نویسی هم یکی دیگر از عوامل بالارفتن سطح درآمد برنامه نویسی در ایران به حساب می‌آید. بنابراین با ورود به دنیای حرفه‌ای برنامه نویسی، پس از کسب تجربه کافی و افزایش سطح مهارت خود، می‌توان درآمد مناسبی داشت.بازار کار برنامه نویسی در ایران چگونه است؟بازار کار برنامه نویسی در ایران هم به مانند اکثر کشورهای دنیا در وضعیت مناسبی قرار دارد و میزان تقاضا برای استخدام افراد در مشاغل مختلف مرتبط با برنامه نویسی بسیار بالا است. با سر زدن به وب سایت‌های کاریابی مشخص می‌شود که درصد بالایی از آگهی‌های استخدام مربوط به مشاغل مختلف مرتبط با برنامه نویسی است.همان‌طور که پیش‌تر هم بیان شد، عناوین شغلی و زمینه‌های تخصصی متعددی در حوزه برنامه نویسی وجود دارد و همین مسئله باعث شده است که بازار کار برنامه نویسی بسیار گسترده باشد. می‌توان زمینه مورد علاقه خود را در دنیای وسیع برنامه نویسی انتخاب کرد و در صورت حرفه‌ای شدن در آن زمینه خاص و توانایی تحویل کار با کیفیت، دغدغه‌ای برای بازار کار آن وجود ندارد.حقوق برنامه نویسی در ایران و جهان در چه وضعیتی قرار دارد؟میزان حقوق برنامه نویسی به فاکتورهای مختلفی بستگی دارد و نمی‌توان بدون در نظر گرفتن این فاکتورها میزان حقوق ثابت یا حتی بازه مشخصی را بیان کرد. اما به طور کلی باید گفت که افراد با تجربه و برنامه نویسانی که کیفیت کار بالایی دارند، حقوق بسیار زیادی دریافت می‌کنند و حقوق برنامه نویسی در ایران و تقریباً‌ در تمام نقاط جهان در سطح مطلوب و قابل قبولی قرار دارد. در واقع حقوق بالای برنامه نویسی یکی از دلایل اصلی جذب شدن افراد به سمت این حوزه است. https://virgool.io/p/tl3twuqjjtlb/%F0%9F%93%B7 حالا بهتر است برخی از فاکتورها و عواملی فهرست شوند که در تعیین میزان حقوق برنامه نویسی تاثیرگذار هستند:زمینه فعالیت در حیطه برنامه نویسی: یعنی حقوق برنامه نویسی برای زمینه برنامه نویسی وب یا مثلاً‌ برنامه نویسی موبایل یا برای یک مهندس یادگیری ماشین متفاوت است. اگرچه میزان این تفاوت چندان زیاد نیست و بهتر است فرد فعالیت در زمینه‌ای را انتخاب کند که به آن علاقه‌مند است.سطح مهارت فرد در برنامه نویسی: یعنی آیا فرد یک برنامه نویسی مبتدی یا به اصطلاح جونیور است یا اینکه در زمینه فعالیت خود یک فرد ماهر و حرفه‌ای به حساب می‌آید و اصطلاحاً سینیور است؟ بالاتر از سطح مهارت Senior هم وجود دارد و مثلاً‌ می‌توان به «معمار ارشد» یا «مدیر نرم افزار» اشاره کرد.کشور و شهر محل سکونت: یعنی اینکه یک برنامه نویس اگر در تهران زندگی و کار کند، معمولاً حقوق بالاتری نسبت به برنامه نویسی دریافت خواهد کرد که در یک شهر کوچک ساکن است. هیچ شکی هم وجود ندارد که در اکثر کشورهای اروپایی یا مثلاً در کشور آمریکا، حقوق برنامه نویس بسیار بالاتر از ایران است.نوع و محل فعالیت: یعنی آیا یک برنامه نویس به صورت مستقل و پروژه‌ای کار می‌کند یا اینکه در یک شرکت و سازمان استخدام شده است؟ اگر کار به صورت پروژه‌ای باشد، بستگی دارد که دو طرف روی چه مبلغی توافق کرده‌اند و میزان پیچیدگی پروژه چقدر است و سطح انتظارات کارفرما به چه صورت است؟ حقوق برنامه نویس بسته به اینکه در چه شرکتی استخدام شده باشد هم متفاوت است. برای مثال معمولاً حقوق برنامه نویسی در شرکت‌های بزرگی مثل گوگل و مایکروسافت بالاتر از سایر شرکت‌های کوچک‌تر است.به طور کلی می‌توان گفت که بازه حقوق برنامه نویسی در ایران از میزان حداقلی تعیین شده در قانون کار آغاز می‌شود و بسته به هر یک از عوامل فوق می‌تواند تا مبالغ هنگفتی مثلاً ۵۰ میلیون تومان هم افزایش یابد. در نتیجه با توجه به پتانسیل بالای رشد حقوق برنامه نویسی می‌توان گفت که علاقه‌مندان به این حوزه از این بابت انگیزه مضاعفی خواهند داشت و دیگر بهانه‌ای برای یادگیری هر چه بهتر برنامه نویسی باقی نمی‌ماند. در مقاله «چگونه از برنامه نویسی پول در بیاوریم» توضیحات بیش‌تری در خصوص کسب درآمد از برنامه نویسی ارائه شده است که مطالعه آن می‌تواند برای علاقه‌مندان مفید واقع شود. خب دوستان من در این پست به صورت بسیار مفید و کامل و بسیار مفصل براتون توضیح دادم لطفا اگر درخواست یا پیشنهادی در رابطه با پست ها دارید میتونید به آیدی پیج من در اینستاگرام پیام دهید ...@myss.ghasemi