FaraProg | فرا پروگ: آموزش‌های برنامه‌نویسی – Telegram
FaraProg | فرا پروگ: آموزش‌های برنامه‌نویسی
1.86K subscribers
81 photos
35 videos
459 links
فرا پروگ — کانال تخصصی آموزش برنامه‌نویسی
🔸 C
🔸 C++
🔸 C#
🔸 GO
🔸 PHP
🔸 Perl
🔸 Java
🔸 Rust
🔸 Ruby
🔸 Kotlin
🔸 Delphi
🔸 Pascal
🔸 Python
🔸 Visual Basic

🚀 برای مشاهده تمام آموزش‌های ویدیویی برنامه‌نویسی، کلیک کنید👇
fdrs.ir/tc/pg
Download Telegram
✳️ آموزش استیمول سافت | کامل، رایگان و پروژه محور — به زبان ساده

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

══ فهرست مطالب ══

‏ ○ مباحث مقدماتی آموزش استیمول سافت
‏ ○ استیمول سافت چیست ؟
‏ ○ آموزش دانلود و نصب استیمول سافت
‏ ○ معرفی مجموعه فیلم های آموزش‌ سی شارپ
‏ ○ آموزش استیمول سافت
‏ ○ نحوه استفاده از استیمول سافت در سی شارپ
‏ ○ معرفی فیلم های آموزش استیمول سافت
‏ ○ جمع‌بندی


🔸 مباحث مقدماتی آموزش استیمول سافت

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

‏«گزارش» قالب مصورسازی شده داده‌ها محسوب می‌شود. در حوزه توسعه نرم‌افزار، یک گزارش شامل نمایش و ارائه داده‌ها در قالب نمودارها، جداول و سایر انواع مصورسازی داده است. این داده‌ها از بانک‌های اطلاعاتی پیاده‌سازی شده با فناوری‌های مختلف استخراج می‌شوند. با توجه به اینکه استیمول سافت یک ابزار گزارش گیری محسوب می‌شود، بهتر است پیش از شروع آموزش استیمول سافت به ارائه تعریفی از یک ابزار گزارش گیری و چیستی آن پرداخته شود.

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


🔸 استیمول سافت چیست ؟

‏شرکت استیمول سافت یک تولید کننده نرم‌افزار در حوزه هوش تجاری، تحلیل داده و پردازش به شمار می‌رود. این شرکت یک ارائه‌دهنده نرم‌افزار برای هوش تجاری در حیطه ابزارهای گزارش گیری به حساب می‌آید. شرکت استیمول سافت با حفظ سازش‌پذیری به طور کامل، برای پلتفرم‌های مختلف ابزارهای گزارش گیری تولید می‌کند. برخی از این پلتفرم‌ها شامل موارد زیر است:

‏– WinForms

‏– ASP.NET

‏– ASP.NET MVC

‏– ‎.NET C‎ore

‏– JavaScript

‏– Java

‏– PHP

‏– WPF

‏استیمول سافت ابزارهایی را برای طراحی و مشاهده گزارش‌ها در پلتفرم‌های گوناگون و برای دستگاه‌های مختلف ارائه کرده است. کاربران می‌توانند هم از اجزای ارائه شده برای یک فناوری خاص و هم از اپلیکیشن‌های مستقل ارائه شده برای ویندوز و مک OS استفاده کنند. در ادامه هر یک از محصولات شرکت استیمول سافت معرفی شده‌اند.

‏Stimulsoft Ultimate محصولی همه جانبه برای فریم‌ورک دات‌نت، جاوا اسکریپت، PHP و جاوا است که برای رندر کردن گزارش‌ها و داشبورد‌ها استفاده می‌شود. این محصول مجموعه کاملی از ابزارها برای ایجاد گزارش‌هایی تحت محیط‌های ‎JavaScript ،WPF .‎NE‎T Core ،ASP.NET ،WinForms و سایر موارد را شامل می‌شود. نمایش‌دهنده‌های گزارش (Report Viewer) متعددی جهت نمایش گزارش‌ها و داشبوردها در این محصول فراهم شده است. Stimulsoft Ultimate سیستم قدرتمندی برای اکسپورت کردن گزارش‌ها دارد که بسیاری از قالب‌های مختلف در آن پشتیبانی می‌شوند.



مطالعه ادامه مطلب 👇👇

🔗 آموزش استیمول سافت | کامل، رایگان و پروژه محور — به زبان ساده — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ آموزش کامل MVC در PHP — از صفر تا صد و به زبان ساده

‏در این مقاله، با ایجاد یک فریم‌ورک کامل MVC در PHP از صفر، توسعه وب با استفاده از چارچوب الگوی معماری MVC و فناوری PHP آموزش داده شده است. آموزش کامل MVC در PHP با هدف کسب مهارت برای شروع ساخت اپلیکیشن به این شیوه ارائه شده است. با مطالعه این مقاله می‌توان درک بهتری از نحوه کارکرد الگوی MVC در PHP به دست آورد و به دنبال آن، می‌توان فریم‌ورک‌های MVC محور رایج PHP نظیر Phalcon و CodeIgniter را با درک، دانش و مهارت بیش‌تری به کار گرفت. در این آموزش، مباحث به صورت پروژه محور، گام‌به‌گام و با بیانی ساده ارائه شده‌اند.

══ فهرست مطالب ══

‏ ○ پیش‌نیازهای آموزش کامل MVC در PHP
‏ ○ معرفی فیلم های آموزش PHP
‏ ○ آموزش کامل MVC در PHP
‏ ○ معرفی فیلم های آموزش MVC در PHP
‏ ○ جمع‌بندی


🔸 پیش‌نیازهای آموزش کامل MVC در PHP

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

‏بدون شک توسعه دهندگان ارشد در این حوزه مهارت لازم را دارند و آموزش کامل MVC در PHP را فرا گرفته‌اند. آموزش MVC در PHP برای افرادی مناسب است که مراحل مقدماتی آموزش توسعه وب با PHP را گذرانده‌اند، تعدادی پروژه ساده با PHP انجام داده‌اند، درکی از HTML و CSS دارند و اکنون قصد دارند به صورت حرفه‌ای وارد بازار کار شوند. برنامه‌نویسی شی‌گرا یکی دیگر از مهارت‌های مورد نیاز پیش از شروع آموزش کامل MVC در PHP است. ممکن است یادگیری مفاهیم شی‌گرایی در ابتدا کمی دشوار به نظر برسد، اما با تمرین و تکرار می‌توان تسلط کافی را در این زمینه به دست آورد. بنابراین، می‌توان مهارت‌های مورد نیاز برای آموزش کامل MVC در PHP را به صورت زیر فهرست کرد:

‏– PHP

‏– HTML

‏– CSS

‏– برنامه‌نویسی شی‌گرا

‏در ادامه این بخش، چند نکته پیرامون آموزش MVC در PHP بیان شده است.


🔸 معرفی فیلم های آموزش PHP

‏دلایل قانع کننده بسیاری برای استفاده از‌ فناوری PHP در ایجاد وب‌اپلیکیشن‌ها وجود دارد. PHP رایج‌ترین و پراستفاده‌ترین زبان برنامه‌نویسی برای توسعه وب‌سایت و وب‌اپلیکیشن‌ها به حساب می‌آید. PHP یک زبان اسکریپت‌نویسی سمت سرور همه‌منظوره است. مجموعه دوره‌های آموزشی برنامه‌نویسی PHP در سایت فرادرس، تقریباً دارای ۳۸۰۰ دقیقه محتوای آموزشی است. در حال حاضر، این مجموعه ۱۰ عنوان آموزشی دارد که مباحث مقدماتی تا پیشرفته زبان برنامه‌نویسی PHP را شامل می‌شوند.

‏اکثر دوره‌های آموزشی این مجموعه به روش پروژه محور ارائه می‌شوند و در آن‌ها از مثال‌های مختلفی برای درک بهتر مباحث آموزشی استفاده شده است. همچنین، دوره‌هایی برای آموزش برخی از فریم‌ورک‌های PHP که مبتنی بر MVC هستند نیز در این مجموعه یافت می‌شوند. در ادامه، برخی از دوره‌های آموزشی شاخص در مجموعه آموزش PHP معرفی شده‌اند.

‏– فیلم آموزش برنامه‌نویسی PHP: طول مدت این دوره ۲۸ ساعت و ۳۱ دقیقه و مدرس آن دکتر مصطفی کلامی هریس است. هدف این فرادرس آموزش تمامی موضوعات و مباحث عملی مورد نیاز برای ورود به دنیای برنامه‌نویسی و پیاده‌سازی وب به روش پویا و با استفاده از زبان PHP است. برای دیدن فیلم آموزش برنامه‌نویسی PHP + کلیک کنید.

‏– فیلم آموزش فریمورک PHP کدایگنایتر (CodeIgniter): طول مدت این دوره آموزشی ۷ ساعت و مدرس آن مهندس مهدی عاشوری است. هدف این دوره آموزشی شرح روش ایجاد سریع و اصولی وب‌سایت بر اساس کار گروهی و مدل MVC است. برای دیدن فیلم آموزش فریمورک PHP کدایگنایتر (CodeIgniter) + کلیک کنید.

‏– فیلم آموزش ساخت نرم افزار فروشگاه اینترنتی با فریمورک CodeIgniter: طول مدت این دوره ۷ ساعت و ۱۷ دقیقه و مدرس آن مهندس امید نجفی پور است. در این دوره، آموزش CodeIgniter با رویکردی پروژه‌محور ارائه شده است و یک فروشگاه اینترنتی به صورت ساده ولی جامع، طراحی و توسعه داده می‌شود. برای دیدن فیلم آموزش ساخت برنامه فروشگاه اینترنتی با فریمورک CodeIgniter + کلیک کنید.


مطالعه ادامه مطلب 👇👇

🔗 آموزش کامل MVC در PHP — از صفر تا صد و به زبان ساده — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ مسیر یادگیری برنامه نویسی وب — معرفی نقشه راه و منابع یادگیری

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

══ فهرست مطالب ══

‏ ○ توسعه‌دهنده وب کیست؟
‏ ○ توسعه دهنده وب چه کار می‌کند؟
‏ ○ برنامه‌نویسی وب فرانت‌اند چیست؟
‏ ○ برنامه‌نویسی وب بک‌اند چیست؟
‏ ○ برنامه‌نویسی وب فول‌استک چیست؟
‏ ○ تفاوت طراحی وب با توسعه‌دهنده وب چیست؟
‏ ○ توسعه‌دهنده وب کجا کار می‌کند؟
‏ ○ بازار کار توسعه وب چگونه است؟
‏ ○ درآمد توسعه‌دهنده وب چقدر است؟
‏ ○ آموزش‌ها و مهارت‌های مورد نیاز توسعه دهنده وب چیست؟
‏ ○ مسیر یادگیری برنامه نویسی وب چیست؟
‏ ○ معرفی فیلم‌های آموزش توسعه وب فرادرس
‏ ○ زبان‌های برنامه‌نویسی محبوب در مسیر یادگیری برنامه نویسی وب
‏ ○ آشنایی با محبوب‌ترین فریم‌ورک‌های وب
‏ ○ پرسش‌های متداول پیرامون مسیر یادگیری برنامه نویسی وب


🔸 توسعه‌دهنده وب کیست؟

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

‏به بیان دیگر، توسعه‌دهنده وب یک برنامه‌نویس است که در زمینه توسعه برنامه‌های کاربردی وب با استفاده از مدل خادم-مخدوم (Client-Server Model | مدل کلاینت-سرور) مهارت دارد و به طور کلی، به توسعه وب می‌پردازد. برنامه‌های نوشته شده توسط توسعه‌دهنده وب معمولا از CSS ،HTML و جاوا اسکریپت (JavaScript) در سمت کلاینت و PHP، پایتون، C#‎، گو (Go)، Node.js و جاوا در سمت سرور و پروتکل HTTP برای ارتباط بین کلاینت و سرور استفاده می‌کنند. معمولا، یک سیستم مدیریت محتوای وب برای توسعه و نگهداری برنامه‌های کاربردی وب مورد استفاده قرار می‌گیرد. توسعه وب نه تنها یک زمینه بسیار مهم در خط مقدم عصر دیجیتال است، بلکه روز به روز نیز در حال رشد و گسترش است. در ادامه مطلب مسیر یادگیری برنامه نویسی وب به این پرسش پاسخ داده می‌شود که توسعه دهنده وب چه کار می‌کند.


🔸 توسعه دهنده وب چه کار می‌کند؟

‏توسعه‌دهنده وب مسئول طراحی و توسعه وب‌سایت‌ها و برنامه‌های کاربردی وب است. توسعه‌دهنده وب با بهره‌گیری از انواع گوناگونی از زبان‌های برنامه‌نویسی و فناوری‌های وب، به پیاده‌سازی و مدیریت کارکردهای وب‌سایت، طراحی بخش بصری وب‌سایت، پیاده‌سازی ویژگی‌های برنامه کاربردی وب و یکپارچه‌سازی سنجه‌های امنیتی یک وب‌سایت می‌پردازد.



مطالعه ادامه مطلب 👇👇

🔗 مسیر یادگیری برنامه نویسی وب — معرفی نقشه راه و منابع یادگیری — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ Thread چیست ؟ — به زبان ساده و جامع

‏Thread (نخ | رشته) توالی محدودی از دستورالعمل‌های برنامه‌نویسی به حساب می‌آید. Thread‌ جریانی واحد از کنترل در یک برنامه است که امکان اجرای چند وظیفه (Task) را در درون یک «پردازه» یا پردازش به وجود می‌آورد. این تعاریف کوتاه احتمالاً پیچیده و ناقص هستند. بنابراین، در این نوشته ابتدا در سطحی جامع به این سوال پاسخ داده شده است که Thread چیست و سپس برای درک بهتر و کامل‌تر معنی Thread ، سایر مفاهیم مرتبط با آن نیز شرح و به سوالات رایج پیرامون مفهوم Thread پاسخ داده شده است. پس از شرح مباحث نظری و تعاریف، نمونه کدهای ایجاد Thread در زبان‌های جاوا، C++‎، سی شارپ و پایتون نیز ارائه شده‌اند و همچنین مفاهیم مهم در برنامه‌نویسی Thread شرح داده شده است.

══ فهرست مطالب ══

‏ ○ Thread چیست ؟
‏ ○ Context Switching چیست؟
‏ ○ تفاوت Process و Thread چیست؟
‏ ○ Thread در سی پی یو چیست ؟
‏ ○ معرفی فیلم های آموزش دروس علوم و مهندسی کامپیوتر
‏ ○ Multi Thread یا چندنخی چیست؟
‏ ○ کاربردهای Thread چه هستند؟
‏ ○ تفاوت Core و Thread در پردازنده چیست؟
‏ ○ تفاوت Concurrency و Parallelism چیست ؟
‏ ○ Green Thread چیست؟
‏ ○ معنی Threading‌ چیست؟
‏ ○ Thread در برنامه نویسی چیست ؟
‏ ○ Thread در جاوا چیست؟
‏ ○ Thread‌ در اندروید چیست ؟
‏ ○ Thread در سی پلاس پلاس
‏ ○ Thread در سی شارپ
‏ ○ Thread در پایتون
‏ ○ مفهوم Thread Safety
‏ ○ Thread Pool چیست؟
‏ ○ معرفی فیلم های آموزشی مرتبط با مفهوم Thread
‏ ○ جمع‌بندی


🔸 Thread چیست ؟

‏Thread کوچک‌ترین واحد اجرایی در سیستم عامل است. Thread‌ واحد اساسی اجرایی یا واحد اساسی در بهره‌برداری از CPU به حساب می‌آید. Thread یکی از مفاهیم مهم در سیستم‌های عامل محسوب می‌شود. Thread موجودیتی در درون یک پردازه (پروسه | Process) است که می‌تواند برای اجرا زمان‌بندی شود. یک برنامه تحت اجرا به عنوان یک Process شناخته می‌شود. هر برنامه ممکن است تعدادی پردازه مرتبط داشته باشد و هر پردازه می‌تواند دارای چند Thread باشد که این Threadها آن پردازه را اجرا می‌کنند. تمام Threadهای یک پردازه فضای آدرس مجازی و منابع سیستمی آن پردازه را با یکدیگر شریک می‌شوند.

‏Threadها معمولاً‌ به وسیله یک زمان‌بند (Scheduler) مدیریت می‌شوند. یک زمان‌بند بخش استانداردی از یک سیستم عامل است. برای ایجاد یک Thread ابتدا باید یک Process یا پردازه ایجاد شود. پس از آن، پردازه یک Thread ایجاد می‌کند و سپس این Thread اجرا خواهد شد. این فرآیند می‌تواند برای بازه زمانی کوتاه یا طولانی بسته به نوع پردازه رخ بدهد. فارق از اینکه چه مدت زمان مورد نیاز باشد، این منظر به وجود می‌آید که کامپیوتر دارد کارهای زیادی را در یک لحظه انجام می‌دهد.

‏هر پردازه حداقل دارای یک Thread است، اما سقفی برای تعداد Threadهای یک پردازه وجود ندارد و پردازه می‌تواند هر تعداد Thread مورد نیازش را به کار گیرد. برای وظایف تخصصی، هر چه تعداد Thread بیش‌تری وجود داشته باشد، عملکرد و کارایی سیستم بهتر خواهد بود. در ادامه پاسخ به سوال «Thread چیست» در این بخش، اجزای تشکیل دهنده Thread شرح داده شده‌اند.


🔸 Context Switching چیست؟

‏«Context Switching» یا «تغییر زمینه» شامل ذخیره مفاد یا وضعیت یک Process در سیستم عامل است تا بتوان در زمان لازم آن را دوباره بارگذاری کرد و اجرای آن پردازه از همان نقطه توقف از سر گرفته شود. Context Switching ویژگی یک سیستم عامل چندوظیفه‌ای است و امکان استفاده چند پردازه از یک CPU واحد را فراهم می‌کند. در طول این مقاله چند بار از اصطلاح Context Switching استفاده شده است. Context Switching به فرایند ذخیره وضعیت سیستم برای یک وظیفه اشاره دارد تا امکان توقف موقت انجام آم وظیفه و ادامه انجام وظیفه دیگر فراهم شود.



مطالعه ادامه مطلب 👇👇

🔗 Thread چیست ؟ — به زبان ساده و جامع — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس


✳️ باز کردن فایل exe در اندروید — آموزش تصویری و گام به گام

‏بی‌شک برای شما نیز پیش آمده است که به امکانات یک نرم‌افزار ویندوزی روی محیط خارج از ویندوز و برای نمونه سیستم عامل اندروید نیاز داشته باشید. فرض کنید می‌خواهید یک فایل خاص را باز کنید که برنامه آن را فقط روی ویندوز دارید، یا کلاً اپلیکیشن آن برای اندروید نوشته نشده است. در چنین مواردی همه ما آرزو می‌کنیم که‌ ای کاش روشی برای باز کردن فایل EXE در اندروید وجود می‌داشت. خب باید به اطلاع شما برسانیم که خوشبختانه آرزوی شما برآورده شده است و چنین کاری امکان‌پذیر است. در این مقاله با ما همراه باشید تا با ۶ اپلیکیشن برای باز کردن فایل exe در اندروید آشنا شوید و روش کار با هر یک را نیز بشناسید.

══ فهرست مطالب ══

‏ ○ فهرست اپلیکیشن‌های باز کردن نرم‌افزارهای ویندوز
‏ ○ بررسی کار با Wine برای باز کردن فایل exe در اندروید
‏ ○ معرفی فیلم آموزش برنامه‌نویسی اندروید
‏ ○ سخن پایانی


🔸 فهرست اپلیکیشن‌های باز کردن نرم‌افزارهای ویندوز

‏البته برای باز کردن نرم‌افزارهای یک سیستم عامل روی سیستم عامل دیگر روش‌های مختلفی وجود دارد که از آن جمله می‌توان به بوت دوگانه لینوکس یا استفاده از Bootcamp یا Parallels روی مک اشاره کرد. همچنین امکان نصب برنامه‌هایی که در ادامه اشاره شده است نیز وجود دارد. این اپلیکیشن‌ها امکان نصب و اجرای نرم‌افزارهای ویندوزی را روی سیستم‌عامل‌های غیر ویندوز از قبیل مک، لینوکس، بی‌اس‌دی و سولاریس فراهم می‌سازند.

‏Wine (+) به عنوان یک نرم‌افزار برای باز کردن فایل exe در اندروید یک اختصار بازگشتی برای عبارت «واین یک شبیه‌ساز نیست» (Wine Is Not an Emulator) است. این برنامه در اصل یک پروژه اوپن سورس است که در سال ۱۹۹۳ آغاز شده و از آن زمان تحت هماهنگی فردی به نام «الکساندر ژولیار»‌ (Alexandre Julliard) توسعه یافته و نگهداری می‌شود.

‏واین یک لایه هماهنگی ین برنامه‌های ویندوزی و سیستم عامل است. این برنامه فراخوانی‌های API ویندوز را به فراخوانی‌های POSIX تبدیل می‌کند و به این ترتیب می‌توان اپلیکیشن‌های ویندوزی را با سیستم‌های عامل سازگار با POSIX از قبیل Mac OS X، GNU/Linux و BSD یکپارچه‌سازی کرد. بنابراین واین نه یک شبیه‌ساز یا ماشین مجازی بلکه یک پیاده‌سازی مجدد از Win۳۲ API است.


🔸 بررسی کار با Wine برای باز کردن فایل exe در اندروید

‏با این که واین مدت‌ زیادی است که ارائه شده، اما نسخه ۳.۰ یک به‌روزرسانی مهم را شامل می‌شود که شامل پشتیبانی اندروید است. این بدان معنی است که اکنون می‌توان به راحتی اپلیکیشن‌های ویندوزی را از طریق Wine روی اندروید اجرا کرد.

‏اپلیکیشن Wine برای اندروید یک نرم‌افزار ساده است و تنها به یک دستگاه اندرویدی و یک اتصال اینترنتی فعال برای دانلود کردن و اجرا نیاز دارد. همچنین در صورتی که دستگاه اندرویدی یک اتصال شبکه نداشته باشد، می‌توان فایل APK واین و فایل‌های ویندوزی exe را روی رایانه دانلود کرده و آن‌ها را به دستگاه موبایل انتقال داد.



مطالعه ادامه مطلب 👇👇

🔗 باز کردن فایل exe در اندروید — آموزش تصویری و گام به گام — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ مفهوم کلاس در برنامه نویسی — همراه با نمونه مثال عملی

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

══ فهرست مطالب ══

‏ ○ مفهوم کلاس در برنامه نویسی چیست ؟
‏ ○ برنامه نویسی شی گرا چیست ؟
‏ ○ شی چیست ؟
‏ ○ تفاوت کلاس و شی چیست ؟
‏ ○ اجزای یک کلاس در برنامه نویسی شی گرا چه هستند؟
‏ ○ مثال ساده برای درک مفهوم کلاس در برنامه نویسی
‏ ○ معرفی فیلم های آموزش برنامه نویسی
‏ ○ مفهوم کلاس در جاوا
‏ ○ تعامل اشیا و کلاس‌ها در جاوا
‏ ○ مفهوم کلاس در پایتون
‏ ○ مفهوم کلاس در سی شارپ
‏ ○ معرفی فیلم های آموزش برنامه نویسی شی گرا
‏ ○ جمع‌بندی


🔸 مفهوم کلاس در برنامه نویسی چیست ؟

‏در برنامه نویسی شی گرا ،‌ کلاس یک قالب کدنویسی توسعه‌پذیر برای ایجاد اشیا است. کلاس مقادیر اولیه را برای وضعیت (متغیرهای عضو) و پیاده‌سازی رفتار (توابع یا متدهای عضو) فراهم می‌کند. در یک کلاس ، مجموعه‌ای از خصوصیت‌ها (Property) و متدهایی تعریف می‌شوند که برای همه اشیا از آن نوع مشترک هستند. برای مثال، یک کلاس می‌تواند یک خودرو باشد که دارای خصوصیت‌های «رنگ» و «داشتن چهار چرخ» باشد.

‏همچنین در یک کلاس ماشین یا خودرو، از «رانندگی کردن» می‌توان به عنوان یک متُد نام برد. در بخش‌های بعدی این مقاله شامل بخش مفهوم کلاس در جاوا، مفهوم کلاس در پایتون و مفهوم کلاس در سی شارپ، آموزش مفهوم کلاس در برنامه نویسی شی گرا به طور جامع و به صورت عملی ارائه خواهد شد. اما، همان‌طور که بیان شد، مفهوم کلاس در برنامه نویسی شی گرا مطرح می‌شود و بنابراین، در ادامه تعریف کوتاهی از برنامه نویسی شی گرا ارائه شده است.


🔸 برنامه نویسی شی گرا چیست ؟

‏برنامه نویسی شی گرا (Object Oriented Programming) که به اختصار با سرنام OOP خطاب می‌شود، روشی در برنامه نویسی است که در آن از اشیا استفاده می‌شود. یک شی درست مثل یک موجودیت در جهان واقعی می‌تواند دارای صفات و قابلیت‌های عملکردی باشد. برنامه نویسی شی گرا برای ساختاردهی به یک برنامه نرم‌افزاری و تبدیل آن به قطعات ساده و قابل استفاده مجدد به کار می‌رود. مهارت‌های برنامه نویسی شی گرا برای نزدیک‌تر کردن مفاهیم برنامه نویسی به مفاهیم دنیای واقعی پدید آمده‌اند.

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



مطالعه ادامه مطلب 👇👇

🔗 مفهوم کلاس در برنامه نویسی — همراه با نمونه مثال عملی — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ ۴ قابلیت جدید پایتون ۳.۹ — راهنمای پیشرفته

‏چندین ماه است که پایتون ۳.۹ با کلی قابلیت‌های ساختاری جدید و بهینه‌سازی‌های مختلف معرفی شده است. در این مقاله قصد داریم ۴ قابلیت جدید پایتون ۳.۹ را بررسی کنیم که بسیار مفید هستند. همچنین شیوه ارتقا به پایتون ۳.۹ را نیز بررسی خواهیم کرد.

══ فهرست مطالب ══

‏ ○ ادغام دیکشنر‌ی‌ها
‏ ○ به‌روزرسانی دیکشنری‌ها
‏ ○ حذف یک پیشوند از رشته‌ها
‏ ○ حذف پسوند از رشته‌ها
‏ ○
‏ ○ شیوه نصب پایتون ۳.۹
‏ ○ سخن پایانی


🔸 ادغام دیکشنر‌ی‌ها

‏از پایتون ۳.۹ امکان استفاده از عملگر | برای ادغام دو یا چند دیکشنری در هم وجود دارد. در صورت وجود کلیدهای تکراری، آن دیکشنری که در سمت راست قرار دارد تقدم خواهد داشت. این تغییر جزئی بخشی از PEP-۵۸۴ محسوب می‌شود.


🔸 به‌روزرسانی دیکشنری‌ها

‏اگر یک گام فراتر برویم، امکان استفاده از عملگر =| برای به‌روزرسانی درجای یک دیکشنری نیز وجود دارد. در واقع a |= b معادل a = a | b است، اما =| یک دیکشنری جدید بازگشت نمی‌دهد، بلکه a موجود آپدیت خواهد شد. این قابلیت جدید نیز بخشی از PEP-۵۸ است.



مطالعه ادامه مطلب 👇👇

🔗 ۴ قابلیت جدید پایتون ۳.۹ — راهنمای پیشرفته — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ آموزش نفوذ به سایت — راهنمای کاربردی پیدا کردن ضعف‌های امنیتی وب‌سایت

‏یک هکر یا تست‌کننده نفوذ پیش از حمله به یک وب‌سایت، ابتدا فهرستی از سطوح هدف تهیه می‌کند. پس از آن که عملیات شناسایی به خوبی انجام شد و مکان‌های مناسب برای حمله مشخص گردید، از یک ابزار اسکن وب‌سرور مانند Nikto برای شکار آسیب‌پذیری‌ها استفاده می‌شود تا جهات بالقوه حملات مشخص شوند. در این مطلب به توضیح اصول بسیار مقدماتی آموزش نفوذ به سایت می‌پردازیم. توجه کنید که این مطلب صرفاً با هدف آموزش و آگاه‌سازی در خصوص روش‌های مقابله با هک نگارش یافته است و مجموعه فرادرس در مورد هر نوع سوءاستفاده از این مطلب در جهت نفوذ غیر قانونی و بدون اجازه به وب‌سایت‌ها از خود سلب مسئولیت می‌کند.

══ فهرست مطالب ══

‏ ○ روش صحیح استفاده از Nikto
‏ ○ گام یکم: نصب Nikto
‏ ○ گام دوم: آشنایی با Nikto
‏ ○ گام سوم: استفاده از ساختار مقدماتی
‏ ○ گام چهارم: اسکن کردن یک وب‌سایت SSL
‏ ○ گام پنجم: اسکن کردن یک نشانی IP
‏ ○ گام ششم: اسکن کردن یک وب‌سایت HTTP
‏ ○ گام هفتم: همراهی اسکن با Metasploit
‏ ○ سخن پایانی


🔸 روش صحیح استفاده از Nikto

‏اگر اولین بار است که Nikto را روی یک وب‌سایت مقصد اجرا کنید، شاید ندانید که با اطلاعات به دست آمده از اسکن باید چه بکنید. Nikto در واقع بیشتر شبیه یک اشاره‌گر لیزی است تا یک شمشیر لیزری که در جنگ ستارگان دیده‌ایم.

‏نخست باید در مورد سطوح هدف صحبت کنیم. منظور از سطوح هدف در واقع هر جایی است که یک هکر می‌تواند حمله کند و می‌تواند شامل چیزهایی مانند پرینترهای افشاشده در شبکه و یک وب‌سرور باشد. هنگامی که در ادامه به استفاده از Nikto عادت کنیم، باید یکی از سه اطلاعات زیر را در اختیار آن قرار دهیم: یک نشانی IP برای سرویس لوکال، یک دامنه وب برای حمله یا یک وب‌سایت SSL/HTTPS.

‏پیش از آن که دست به اسکن با Nikto بزنیم، بهتر است قبلاً برخی کارهای شناسایی را با استفاده از ابرارهای تجسسی اوپن سورس مانند Maltego انجام دهیم. ابزارهایی مانند این می‌توانند به ساخت یک پروفایل و لیست متمرکزتری از اهداف در دسترس که باید رویان تمرکز کرد کمک کنند. زمانی که این کار انجام یافت، می‌توان از Nikto برای بررسی آسیب‌پذیری‌های بالقوه روی اهداف داخل لیست استفاده کرد.


🔸 گام یکم: نصب Nikto

‏اگر کالی لینوکس را اجرا می‌کنید، Nikto از قبل روی سیستم نصب شده است و از این رو نیازی به دانلود یا نصب چیز دیگر ندارید. این ابزار در دسته Vulnerability Analysis قرار دارد. اگر به هر دلیلی به این ابزار دسترسی ندارید، می‌توانید Nikto را از صفحه گیت‌هاب آن (+) دانلود کنید و یا از دستور apt install بهره بگیرید.

‏اگر این کار را روی یک سیستم مک انجام می‌دهید، امکان استفاده از Homebrew برای نصب نیکتو نیز وجود دارد.



مطالعه ادامه مطلب 👇👇

🔗 آموزش نفوذ به سایت — راهنمای کاربردی پیدا کردن ضعف‌های امنیتی وب‌سایت — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ آموزش وب سوکت | راهنمای رایگان و جامع — به زبان ساده

‏وب سوکت یک پروتکل ارتباطی کاملاً دوطرفه و پایدار است که در بستر کلاینت-سرور و وب‌اپلیکیشن‌های بی‌درنگ به کار می‌رود. این مقاله به آموزش وب سوکت اختصاص دارد. ابتدا چیستی وب سوکت و مفاهیم نظری آموزش وب سوکت از جمله تفاوت آن با پروتکل HTTP، کاربردها، مزایا و معایب وب سوکت و سایر مباحث مهم در این حوزه شرح داده شده‌اند. سپس، آموزش وب سوکت به صورت عملی و پروژه محور ارائه شده است. یکی از بخش‌های آموزش عملی وب سوکت در این مقاله به آموزش وب سوکت در PHP اختصاص داده شده است. پیش از شرح چیستی و شروع آموزش وب سوکت ، ابتدا بهتر است به چیستی پروتکل HTTP پرداخته شود.

══ فهرست مطالب ══

‏ ○ پروتکل HTTP چیست و HTTP چگونه کار می‌کند؟
‏ ○ وب سوکت چیست ؟
‏ ○ تفاوت وب سوکت با HTTP چیست ؟
‏ ○ سوکت چیست ؟
‏ ○ تفاوت سوکت و وب سوکت چیست ؟
‏ ○ معرفی فیلم های آموزش طراحی سایت
‏ ○ کاربرد‌های وب سوکت چه هستند؟
‏ ○ چه زمانی نباید از وب سوکت استفاده کرد؟
‏ ○ مزایا و معایب وب سوکت
‏ ○ آموزش API‌ وب سوکت در جاوا اسکریت
‏ ○ کلاینت وب سوکت در جاوا اسکریپت
‏ ○ سرور وب سوکت
‏ ○ آموزش وب سوکت در PHP
‏ ○ معرفی فیلم های آموزش وب سوکت
‏ ○ جمع‌بندی


🔸 پروتکل HTTP چیست و HTTP چگونه کار می‌کند؟

‏HTTP سرنامی برای عبارت «Hypertext Transfer Protocol» و به معنی «قرارداد انتقال ابَرمتن» است. HTTP پروتکل یا منشوری است که برای انتقال مستندات ابرمتن استفاده می‌شود. این مستندات پایه و اساس شبکه جهانی وب محسوب می‌شوند. HTTP یک پروتکل مستقل از وضعیت (Stateless) است که بر اساس پروتکل TCP عمل می‌کند. پروتکل HTTP یک سویه است و در آن کلاینت درخواست را ارسال می‌کند و سرور پاسخ می‌دهد.

‏به عنوان مثال، یک کاربر درخواستی در قالب HTTP یا HTTPS به سرور می‌فرستد. سرور پس از دریافت یک درخواست، پاسخ را به کلاینت ارسال می‌کند و در واقع هر درخواست با پاسخ متناظرش همراه است. پس از ارسال پاسخ توسط سرور، اتصال بسته می‌شود. یعنی در هر درخواست HTTP یا HTTPS ارسالی توسط کلاینت، یک اتصال و ارتباط جدید با سرور برقرار می‌شود و پس از فرستادن پاسخ توسط سرور، این اتصال خود‌به‌خود خاتمه پیدا می‌کند.

‏TCP یک پروتکل اتصال‌گرا است که تحویل بسته داده انتقالی را با استفاده از روش‌های دست‌دهی سه جانبه (۳‎-Way‎ Handsha‎ke‎) و ارسال دوباره بسته‌های از دست رفته تضمین می‌کند. HTTP می‌تواند به وسیله هر یک از پروتکل‌های اتصال‌گرای پایا نظیر TCP و SCTP مورد استفاده قرار بگیرد. وقتی یک کلاینت درخواست HTTP به سرور ارسال می‌کند، یک اتصال TCP بین کلاینت و سرور باز است و پس از دریافت پاسخ، اتصال TCP خاتمه می‌یابد. در هر درخواست HTTP اتصال TCP جداگانه‌ای با سرور ایجاد می‌شود.


🔸 وب سوکت چیست ؟

‏وب سوکت (WebSocket) یک پروتکل دوطرفه و کاملاً دو رشته‌ای است که مانند HTTP در ارتباط‌های کلاینت-سروری به کار گرفته می‌شود. وب سوکت به اختصار با سرنام «WS» نیز شناخته می‌شود. وب سوکت یک پروتکل وابسته به وضعیت است. یعنی تا زمان خاتمه توسط یکی از طرفین (کلاینت یا سرور)، اتصال میان کلاینت و سرور قطع نخواهد شد،. پس از قطع اتصال توسط کلاینت یا سرور، ارتباط بین هر دو طرف قطع می‌شود. برای درک بهتر مفهوم وب سوکت ، بهتر است مثالی ارائه شود که در آن از یک ارتباط کلاینت-سروری با پروتکل وب سوکت استفاده می‌شود. این کار در ادامه مقاله آموزش وب سوکت انجام شده است.

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



مطالعه ادامه مطلب 👇👇

🔗 آموزش وب سوکت | راهنمای رایگان و جامع — به زبان ساده — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ آموزش برنامه نویسی iOS در ویندوز | راهنمای رایگان و جامع شروع به کار

‏شرکت اپل از پیشتازان دنیای فناوری و تولید کنندگان مرغوب‌ترین محصولات به حساب می‌آید. اما، یکی از انتقاداتی که به اپل وارد است، انحصارطلبی این شرکت و عدم پشتیبانی از مَنِش نرم‌افزار آزاد و متن‌باز است. این انحصارطلبی حتی در مورد توسعه نرم‌افزار برای محصولات اپل و برنامه نویسی iOS نیز وجود دارد. به گونه‌ای که طبق قوانین این شرکت، توسعه نرم‌افزار برای محصولات اپل باید تنها در سیستم عامل مک انجام شود. جالب اینجاست که طبق توافقنامه مجوز کاربری اپل، استفاده از مک او اس نیز فقط در دستگاه‌های اپل مجاز است. بدین سبب، در مقاله آموزش برنامه نویسی iOS در ویندوز ، به بررسی راهکارهایی برای امکان برنامه نویسی iOS در ویندوز پرداخته و ابزارها و روش‌های توسعه اپلیکیشن iOS در ویندوز شرح داده شده‌اند.

══ فهرست مطالب ══

‏ ○ iOS چیست ؟
‏ ○ برنامه نویسی iOS چیست ؟
‏ ○ برنامه نویسی iOS چه تفاوتی با توسعه سایر برنامه‌ها دارد؟
‏ ○ ابزارهای برنامه نویسی iOS چه هستند؟
‏ ○ چالش‌های برنامه نویسی iOS چه هستند؟
‏ ○ چگونه می‌توان برنامه نویسی iOS در ویندوز انجام داد؟
‏ ○ معرفی فیلم های آموزش توسعه اپلیکیشن موبایل
‏ ○ بهترین روش‌های برنامه نویسی iOS در ویندوز چه هستند؟
‏ ○ آموزش ساخت هکینتاش برای برنامه نویسی iOS در ویندوز
‏ ○ معرفی فیلم های آموزش برنامه نویسی iOS در ویندوز
‏ ○ جمع‌بندی


🔸 iOS چیست ؟

‏iOS یک سیستم عامل موبایل (تلفن همراه) به حساب می‌آید که توسط شرکت اپل توسعه داده شده است. این سیستم عامل در ابتدا «iPhone OS» نام‌گذاری شد، اما در خرداد ۱۳۸۸ (ژوئن ۲۰۰۹) نام آن به iOS تغییر داده شد. سیستم عامل iOS در حال حاضر روی دستگاه‌های آیفون (iPhone)، iPod و iPad اجرا می‌شود. مشابه سیستم عامل‌های امروزی، iOS دارای رابط کاربری گرافیکی (GUI) است. اگرچه، چون iOS یک سیستم عامل موبایل است، به جای صفحه کلید و ماوس، مبتنی بر ورودی صفحه لمسی طراحی شده است. مثلاً می‌توان اپلیکیشن‌های موبایل را که به آن‌ها «App» گفته می‌شود، به جای دوبار کلیک کردن (در PC)، تنها با یک ضربه باز کرد.

‏iOS بر اساس اصل سادگی طراحی شده است و شامل ویژگی‌ها و قابلیت‌های متعدد یک سیستم عامل سنتی نمی‌شود. همچنین، دسترسی به تنظیمات سیستمی در iOS برای کاربران محدودیت دارد. به جای ویرایش، اکثر تنظیمات در برنامه Settings در آیفون انجام می‌شود. علاوه بر این، با وجود اینکه می‌توان چندین برنامه را به طور همزمان اجرا کرد، کاربر تنها می‌تواند یک برنامه باز را در لحظه ببیند. در مقایسه با سیستم عامل macOS یا مک OS اپل،‌ iOS رابط کاربری ساده‌تری را ارائه می‌دهد. با این وجود، ویژگی‌های جدید و بیش‌تری در هر نسخه به iOS اضافه می‌شوند. با کسب آشنایی لازم با سیستم عامل iOS ، اکنون فرصت مناسبی است تا به معرفی برنامه نویسی iOS پرداخته شود.


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

‏برنامه نویسی iOS یا توسعه اپلیکیشن iOS، به فرآیند ساخت اپلیکیشن موبایل برای سخت‌افزارهای شرکت اپل شامل آیفون، آی‌پد و آی‌پاد تاچ گفته می‌شود. برنامه نویسی iOS به زبان برنامه نویسی سوئیفت (Swift) یا Objective-C انجام می‌شود و سپس برای دانلود و استفاده کاربران در فروشگاه اپل (اپ استور | App Store) منتشر می‌شود. برنامه نویسی iOS وجوه مشترک بسیاری با سایر انواع برنامه نویسی نرم‌افزار و اپلیکیشن دارد، اما برخی تفاوت‌های کلیدی در این بین وجود دارد که در ادامه به آن‌ها پرداخته شده است.



مطالعه ادامه مطلب 👇👇

🔗 آموزش برنامه نویسی iOS در ویندوز | راهنمای رایگان و جامع شروع به کار — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

👍1
✳️ آموزش Ionic | فریمورک آیونیک چیست ؟ — آموزش گام به گام رایگان

‏در این مطلب ضمن پاسخ به پرسش فریمورک آیونیک چیست به آموزش ionic به صورت گام به گام برای شروع به کار با آن پرداخته شده است. اما پیش از پرداختن به موضوع اصلی بحث، مفهوم کیت توسعه نرم‌افزار و فریمورک بیان شده است تا به درک بهتر مطلب آموزش ionic کمک کند.

══ فهرست مطالب ══

‏ ○ کیت توسعه نرم‌افزار چیست؟
‏ ○ فریمورک چیست؟
‏ ○ فریمورک آیونیک چیست ؟
‏ ○ تاریخچه فریمورک آیونیک چیست ؟
‏ ○ اهداف فریمورک آیونیک چیست ؟
‏ ○ خدمات و ویژگی‌های فریمورک آیونیک چیست ؟
‏ ○ مزایای آیونیک چیست؟
‏ ○ معایب آیونیک چیست؟
‏ ○ فریمورک آیونیک از چه پلتفرم‌هایی پشتیبانی می‌کند؟
‏ ○ کارایی فریمورک آیونیک چگونه است؟
‏ ○ آموزش ionic و نصب آن
‏ ○ نصب خط فرمان ionic
‏ ○ اجرای برنامه کاربردی
‏ ○ اجرای محلی در مرورگر وب
‏ ○ ساخت یک برنامه کاربردی انگولار با آیونیک
‏ ○ معرفی فیلم های آموزش برنامه‌نویسی موبایل


🔸 کیت توسعه نرم‌افزار چیست؟

‏کیت توسعه نرم‌افزار (Software Development Kit | SDK) یک مجموعه از ابزارهای توسعه نرم‌افزار در یک بسته ویژه نصب است.


🔸 فریمورک چیست؟

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



مطالعه ادامه مطلب 👇👇

🔗 آموزش Ionic | فریمورک آیونیک چیست ؟ — آموزش گام به گام رایگان — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ برنامه نویسی شی گرا در C++‎ — آموزش رایگان، به زبان ساده و جامع

‏زبان برنامه نویسی C++‎ (سی پلاس‌پلاس) یکی از اولین زبان‌هایی است که برنامه نویسی شی گرا (OOP) در آن پیاده‌سازی و در سطح گسترده‌ای توسط برنامه نویسان مورد استفاده قرار گرفته است. C و C++‎ از جمله زبان‌های برنامه نویسی به حساب می‌آیند که اکثراً در دانشگاه‌ها تحت عنوان دروس مبانی برنامه‌نویسی و برنامه‌نویسی پیشرفته تدریس می‌شوند و در واقع یکی از اولین زبان‌هایی هستند که برای آموزش مقدماتی دانشجویان رشته کامپیوتر و برنامه‌نویسان مبتدی مورد استفاده قرار می‌گیرند. بنابراین، یادگیری برنامه نویسی شی گرا در C++‎ اهمیت ویژه‌ای دارد. بدین سبب، این مقاله با هدف آموزش مباحث و مفاهیم برنامه نویسی شی گرا در C++‎ و بیان مفهوم کلاس در C++‎ و سایر مفاهیم مرتبط ارائه شده است. به عنوان مقدمه، در ابتدا به این مسئله پرداخته شده است که برنامه نویسی شی گرا چیست؟

══ فهرست مطالب ══

‏ ○ برنامه نویسی شی گرا چیست ؟
‏ ○ چرا نیاز به برنامه نویسی شی گرا در C++‎ وجود دارد؟
‏ ○ مزایای برنامه نویسی شی گرا چیست؟
‏ ○ خصوصیات یک زبان برنامه نویسی شی گرا چیست؟
‏ ○ کلاس در ‎C++‎ چیست؟
‏ ○ شی در C++‎ چیست؟
‏ ○ کپسوله‌سازی در C++‎ چیست؟
‏ ○ انتزاع داده‌ها در C++‎ چیست؟
‏ ○ چندریختی در C++‎ چیست؟
‏ ○ ارث بری در C++‎ چیست؟
‏ ○ معرفی فیلم های آموزش برنامه نویسی C و C++‎
‏ ○ آموزش برنامه نویسی شی گرا در C++‎
‏ ○ مثال برنامه نویسی شی گرا در C++‎ : کلاس Circle
‏ ○ معرفی فیلم های آموزشی برنامه نویسی شی گرا در C++‎
‏ ○ جمع‌بندی


🔸 برنامه نویسی شی گرا چیست ؟

‏همان‌طور که از نامش پیداست، در برنامه نویسی شی گرا (Object Oriented Programming | OOP) از اشیا استفاده می‌شود. برنامه نویسی شی گرا برای ساختاردهی به یک برنامه نرم‌افزاری و تبدیل آن به قطعات ساده و قابل استفاده مجدد است. این قطعات درست مثل نقشه ساخت هستند و به آن‌ها «کلاس» (Class) گفته می‌شود. هدف برنامه نویسی شی گرا ، پیاده‌سازی نهادهای جهان واقعی همچون وراثت (ارث‌بری)،‌ پنهان‌سازی، چندریختی (Polymorphism) و دیگر موارد در برنامه‌نویسی است. هدف اصلی OOP پیوند دادن داده‌ها و توابعی است که روی داده‌ها عملیات انجام می‌دهند.

‏در این مقصود، پیوند باید به‌گونه‌ای شکل بگیرد که امکان دسترسی به آن داده‌ها در هیچ بخش دیگری از کدها به غیر از تابع وجود نداشته باشد. در سال‌های اخیر، قابلیت برنامه نویسی شی گرا در C++‎ و بسیاری از زبان‌های برنامه نویسی دیگر فراهم شده است. برای استفاده از این قابلیت، ابتدا باید درکی از دلیل استفاده از برنامه نویسی شی گرا وجود داشته باشد. بنابراین، در ادامه به این سوال پاسخ داده شده است که چرا نیاز به برنامه نویسی شی گرا در C++‎ و سایر زبان‌های شی گرا وجود دارد؟


🔸 چرا نیاز به برنامه نویسی شی گرا در C++‎ وجود دارد؟

‏در این بخش از مقاله برنامه نویسی شی گرا در C++‎ ، به چرایی نیاز به شی گرایی در C++‎ و سایر زبان‌های شی گرا پرداخته شده است. ابتدا با یک مثال ساده، استفاده از اجزا و قطعات کوچک‌تر برای تولید یک موجودیت بزرگ‌تر در سخت‌افزار و نرم‌افزار با هم مقایسه شده‌اند و سپس برای روشن شدن دلیل استفاده از شی گرایی، زبان‌های برنامه نویسی سنتی یا رویه‌گرا (Procedural)‌ شرح داده شده‌اند. پس از آن، به معرفی مفهوم برنامه نویسی شی گرا در C++‎ و سایر زبان‌های شی گرا و شرح ویژگی‌های آن پرداخته شده است.

‏اگر فردی بخواهد کامپیوتر شخصی خودش را سرهم (مونتاژ) کند، به فروشگاه‌های قطعات سخت‌افزار کامپیوتر مراجعه خواهد کرد و یک مادربرد، پردازنده، چند RAM، یک هارد دیسک، کیس، منبع تغذیه و سایر قطعات را خریداری می‌کند و آن‌ها را سرهم‌بندی خواهد کرد. پس از آن، کامپیوتر را به برق وصل می‌کند و PC روشن می‌شود. این فرد دیگر نگرانی بابت این مسئله ندارد که آیا مادربورد چهار لایه یا شش لایه است یا آیا هارد دیسک چهار صفحه دارد یا شش صفحه یا اینکه ضخامت آن سه یا پنج اینچ است. البته، باید مطمئن شد که رابط‌ها با هم همخوانی داشته باشند. به عنوان مثال، در صورتی که مادربورد تنها از رابط IDE پشتیبانی می‌کند، باید اطمینان حاصل کرد که به جای رابط SCSI، یک هارد دیسک با رابط IDE خریداری شود.


مطالعه ادامه مطلب 👇👇

🔗 برنامه نویسی شی گرا در C++‎ — آموزش رایگان، به زبان ساده و جامع — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ — راهنمای کاربردی

‏در دنیای مدرن امروزی، نیاز به برنامه نویسان کامپیوتر روز به روز بیش‌تر می‌شود. همه چیز به لحاظ دیجیتال در حال تغییر و تحول است. با توجه به نرخ بالای تعداد افرادی که وارد عرصه برنامه نویسی می‌شوند، این میزان از گسترش و پیشرفت سریع تکنولوژی به هیچ عنوان تعجب‌آور نیست. وجه مشترک همه رشته‌ها و زیر رشته‌های مرتبط با علوم کامپیوتر و فناوری، روند نوشتن دستورالعمل‌ها در قالب کُد است که به آن برنامه نویسی گفته می‌شود. برنامه نویسی قلب علوم کامپیوتر به حساب می‌آید و پایه و اساس بسیاری از علوم و رشته‌های دیگر نیز شمرده می‌شود. با سه رقمی شدن تعداد زبان های برنامه نویسی و همچنین کاربرد متفاوت هر یک از این زبان‌ها، انتخاب یکی از آن‌ها برای یک هدف و پروژه خاص می‌تواند بسیار گیج‌کننده و دلهره‌آور باشد. این مطلب، با هدف ساده‌سازی فرآیند انتخاب یک زبان برنامه نویسی مناسب و همچنین، معرفی بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ تهیه شده است.

══ فهرست مطالب ══

‏ ○ سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب
‏ ○ زبان برنامه نویسی پایتون (Python)
‏ ○ زبان برنامه نویسی جاوا اسکریپت (JavaScript)
‏ ○ جاوا (Java)
‏ ○ C و ++C
‏ ○ سی شارپ
‏ ○ Golang
‏ ○ زبان برنامه نویسی R
‏ ○ PHP — پی اچ پی
‏ ○ Swift — سوئیفت
‏ ○ زبان برنامه نویسی Kotlin (کاتلین)
‏ ○ جمع‌بندی: بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ کدامند ؟


🔸 سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب

‏در این بخش از مطلب بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ به برخی از سوالات رایج پیرامون انتخاب زبان برنامه نویسی مناسب پرداخته شده است.

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

‏می‌توان بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ را زبان‌های پایتون، جاوا اسکریپت، جاوا، C/C++‎، سی‌شارپ، PHP ،Golang، سوئیفت و کاتلین دانست. اما مهم‌ترین مسئله در انتخاب زبان برنامه نویسی مناسب، هدف از یادگیری آن زبان است و اینکه فرد قصد دارد چه مسیر شغلی و حرفه‌ای را در پیش بگیرد. به عنوان مثال در صورتی که هدف شروع مسیر شغلی دانشمند داده باشد، زبان پایتون و R از جمله بهترین زبان های برنامه نویسی در این حوزه به حساب می‌آیند و یا در صورتی که هدف تبدیل شدن به یک توسعه‌دهنده فرانت‌اند باشد، یادگیری و آموزش زبان جاوا اسکریپت بسیار اهمیت دارد.


🔸 زبان برنامه نویسی پایتون (Python)

‏برای افرادی که به تازگی پا به عرصه برنامه نویسی و علوم کامپیوتر گذاشته‌اند و حتی برای آن دسته از افرادی که تجربه کار با پایتون را داشته‌اند، زبان برنامه نویسی پایتون یکی از بهترین زبان های برنامه نویسی است که هر برنامه نویسی با آن احساس راحتی خواهد داشت. این زبان دارای نحو (Syntax) واضح و یادگیری آن بسیار ساده است. این مسئله، پایتون را تبدیل به یک انتخاب محبوب و رایج، هم در میان مبتدیان و هم افراد متخصص کرده است.

‏نقطه مثبت پایتون این است که، به عنوان یکی از بهترین زبان های برنامه نویسی، کاملاً همه‌منظوره و تطبیق‌پذیر است و می‌توان از پایتون تقریباً در همه جا استفاده کرد. چه قصد کار بر روی کاربردهای بک‌اند یک وب‌سایت وجود داشته باشد و چه هدف، توسعه بک‌اند یک برنامه کاربردی تلفن همراه باشد، می‌توان از پایتون استفاده کرد.

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



مطالعه ادامه مطلب 👇👇

🔗 بهترین زبان های برنامه نویسی سال ۱۴۰۰ یا ۲۰۲۱ — راهنمای کاربردی — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس


❇️ اصول کدنویسی که همه باید بدانند

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

یک برنامه‌نویس خوب، برنامه‌نویسی است که امکان درک مشکل را داشته باشد، یک راه‌حل معقول ارائه کند، بتواند این راه‌حل را به روشی سریع به کاربر نهایی عرضه نماید و برای نیل به این مقصود بتواند به عنوان عضوی از یک تیم کار کند.

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


🔹 فهرست مطالب این نوشته

▫️ ابزارهای مناسب برای پیاده‌سازی اصول
▫️ اصل مسئولیت منفرد
▫️ کد تمیز بهتر از کد هوشمندانه است
▫️ قانون دیمیتر
▫️ اصل YAGNI
▫️ جمع‌بندی


🔸 ابزارهای مناسب برای پیاده‌سازی اصول

برخی ابزارها وجود دارند که موجب می‌شوند پیگیری مفاهیم آسان‌تر شوند و مع‌الأسف این موضوع چندان که شایسته است مورد بحث قرار نمی‌گیرد. برای نمونه توسعه‌دهندگان فرانت‌اند از هاب‌های کامپوننت ابری مانند Bit.dev برای انتشار کامپوننت‌های مستقل استفاده می‌کنند. این هاب‌ها به دلایل زیر به پیگیری اصول برنامه‌نویسی صحیح کمک می‌کنند.

امکان انتشار آزادانه کامپوننت‌ها از هر کدبیس وجود دارد. یعنی کد بیشتری اشتراک یافته و مورد استفاده مجدد قرار می‌گیرد. این وضعیت به رعایت اصل DRY کمک می‌کند. همچنین به این معنی است که لازم نیست یک سیستم طراحی را مجدداً به طور کامل با کامپوننت‌های UI که هرگز استفاده نخواهید کرد بسازید. بلکه به جای آن می‌توانید هر کامپوننت را بسازید و تنها زمانی که نیاز دارید آن‌ها منتشر کنید که به رعایت اصل YAGNI کمک می‌کند.

ساخت کامپوننت‌ها به صورت بخش‌های مستقل کد به منظور انتشار، استفاده مجدد و مشارکت تیمی به طور طبیعی کمک می‌کند که هر توسعه‌دهنده‌ای از اصل «مسئولیت منفرد» (Single Responsibility) آگاه شود.


🔸 اصل مسئولیت منفرد

زمانی که شروع به کدنویسی می‌کنید، در طی دوره‌های زمانی بلندمدت کد شلوغ می‌شود. اغلب در کد خود کلاس‌ها یا ماژول‌هایی داریم که چندین کارکرد را اجرا می‌کنند. این وضعیت در نهایت منجر به ایجاد کلاس‌هایی می‌شود که از صدها یا هزاران خط کد تشکیل یافته‌اند.

اصل «مسئولیت منفرد» (Single Responsibility) بیان می‌کند که هر کلاس یا ماژول در برنامه باید کارکرد خاصی داشته باشد. به بیان دیگر یک کلاس یا ماژول در برنامه باید تنها مسئول وظایفی در رابط به با یک کارکرد خاص باشد. این وضعیت به کوچک و تمیز ماندن ماژول‌ها کمک می‌کند.


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

زمانی که مشغول نوشتن برنامه هستیم، معمولاً این میل را داریم که میزان هوشمندانه بودن کد خود را به رخ بکشیم. کد هوشمندانه ممکن است در عمل به جای یک کد قابل درک به صورت یک مانع به نظر برسد.

خواننده باید بسیار هوشمند باشد تا بفهمد یک قطعه کد هوشمندانه چه کاری انجام می‌دهد و نوشتن این نوع کدها هرگز خوب نیست. هیچ کس واقعاً به میزان هوشمندانه بودن یک کد تا زمانی که تمیز و برای درک همه افراد ساده است، اهمیتی نمی‌‌دهد.

ادامه این مطلب رایگان را در مجله فرادرس در لینک زیر بخوانید.

🔗 اصول کدنویسی که همه باید بدانند — راهنمای کاربردی — کلیک کنید.



📌 کانال اختصاصی آموزش‌های رایگان برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی برنامه‌نویسی فرادرس [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ مبانی برنامه نویسی – آشنایی با ساختار و مولفه‌های یک زبان برنامه نویسی

‏در این آموزش، در خصوص مبانی برنامه نویسی صحبت می‌کنیم و با ساختار یک زبان برنامه نویسی آشنا خواهیم شد. در ابتدا، لزوم آشنایی با مباحث ابتدایی در مبانی برنامه نویسی مطرح می‌شود و مفاهیم اساسی زبان‌های برنامه نویسی را یاد می‌گیریم. همچنین در خصوص مولفه‌های یک زبان برنامه نویسی به بحث می‌پردازیم.

══ فهرست مطالب ══

‏ ○ چرا از کامپیوتر استفاده می کنیم؟
‏ ○ سیستم عامل چیست؟ برنامه کاربردی کدام است؟
‏ ○ چرا نیاز داریم یک برنامه ی کاربردی را خلق کنیم؟
‏ ○ به چه چیزهایی کامپیوتر می گویند؟
‏ ○ برنامه نویسی چیست؟
‏ ○ به چه زبانی می‌توانیم با کامپیوتر صحبت کنیم؟
‏ ○ برنامه نویسی چگونه آغاز شد؟
‏ ○ چرا برای هر زبان سطح تعیین می شود؟
‏ ○ زبان‌های برنامه‌نویسی سطح بالا
‏ ○ مبانی برنامه نویسی و خالق زبانِ C
‏ ○ نحوه قابل فهم شدن زبان برای سخت افزار


🔸 چرا از کامپیوتر استفاده می کنیم؟

‏هر سیستم کامپیوتر از سخت‌افزار (hardware) و نرم‌افزار (software) تشکیل شده است که می‌توان آن را به جسم و روح تشبیه کرد و ما با داشتن این دو در کنار هم می‌توانیم یک کامپیوتر در اختیار داشته باشیم. کامپیوتر‌‌ها مانند ما انسان‌‌ها دچار خستگی یا فراموشی نمی شوند و می‌توانند عملیات پردازشی گوناگون را هزاران بار (در صورت عدم وجود مشکل فیزیکی) انجام دهند.

‏انسان به سه دلیل کامپیوتر را اختراع کرد:

‏– دقت

‏– سرعت

‏– عدم خستگی کامپیوتر

‏دلایلی که انسان در تامین کامل آن‌ها دچار مشکل است اما در مقابل کامپیوتر نیز دچار خلاء‌هایی است، به عنوان مثال کامپیوتر ها نمی‌توانند مانند انسان دارای خلاقیت باشند چون خلاقیت نیاز مستقیم به هوشِ انسانی دارد. اگرچه در سالیان اخیر تلاش‌های مستمری در زمینه‌ی ساختِ هوشِ مصنوعی در کامپیوتر صورت گرفته است، اما پیاده کردن این پروژه به دلیلِ وجود فرآیند‌های بسیار پیچیده در مغز انسان زمان بر خواهد بود و اکنون در دسترس نیست.


🔸 سیستم عامل چیست؟ برنامه کاربردی کدام است؟

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



مطالعه ادامه مطلب 👇👇

🔗 مبانی برنامه نویسی – آشنایی با ساختار و مولفه‌های یک زبان برنامه نویسی — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ برنامه نویس فرانت اند ، بک اند و فول استک دولوپر — وظایف، مهارت ها و درآمد

‏ممکن است برای علاقه‌مندانی که قصد انتخاب یک مسیر شغلی در زمینه برنامه‌نویسی و توسعه وب را دارند، این سئوال به وجود بیاید که توسعه‌دهنده فرانت‌اند (Front-End Developer)، توسعه‌دهنده بک‌اند (Back-End Developer) و توسعه‌دهنده فول‌استک (Full Stack Developer) که هستند، روزانه چه کارهایی انجام می‌دهند، چه مهارت‌ها و چه وظایفی دارند؟ در مطلب برنامه نویس فرانت اند ، بک اند و فول استک دولوپر این سه موقعیت شغلی که در واقع انواع نقش‌های شغلی توسعه دهنده وب هستند، به طور کامل مورد بررسی قرار گرفته‌اند و مهارت‌های لازم برای هر یک از این جایگاه‌های شغلی، وظایفت، حوزه های کاری و درآمد آن‌ها بررسی و با یکدیگر مقایسه شده است.

══ فهرست مطالب ══

‏ ○ برنامه نویس فرانت اند ، بک اند و فول استک دولوپر کیست؟
‏ ○ توسعه دهنده فرانت اند (Front-End) چه کسی است؟
‏ ○ توسعه دهنده بک اند (Back-End) چه کسی است؟
‏ ○ توسعه دهنده فول استک (Full Stack) چه کسی است؟
‏ ○ منابع آموزشی برای توسعه‌دهندگان فرانت اند، ‌بک اند و فول استک
‏ ○ مقایسه میزان درآمد توسعه‌دهندگان فرانت اند، ‌بک اند و فول استک
‏ ○ جمع‌بندی


🔸 برنامه نویس فرانت اند ، بک اند و فول استک دولوپر کیست؟

‏تصور کنید کاربر یک صفحه جدید در مرورگر را باز می‌کند، آدرس سایت مورد نظر خودش را در قسمت نوار آدرس وارد می‌کند، کلید اینتر را می‌زند؛ سایت به سرعت باز می‌شود و قالب و طراحی گرافیکی سایت توجه مخاطب را جلب می‌کند. صفحه باز شده معمولا ساختاری استاندارد و ویژگی‌های بصری قابل توجهی دارد. در واقع، این توسعه‌دهندگان وب هستند که مسئولیت تولید و ایجاد چنین محصول باکیفیت و با تجربه‌کاربری دلپذیری را برعهده دارند.

‏تا دی ماه ۱۴۰۰، بیش از ۱٫۵ میلیارد وب‌سایت در جهان ایجاد شده و همچنان این تعداد در حال افزایش است. بنابراین، امنیت شغلی قدرتمندی برای توسعه‌دهندگان وب و در واقع افراد فعال در زمینه کدنویسی، ساخت، آنالیز و نگهداری صفحات وب وجود دارد. در دنیای رقابتی امروز،‌ وب‌سایت‌ها یکی از حیاتی‌ترین اجزاء برای هر کسب‌و‌کاری محسوب می‌شوند. با توجه به این که روندها و الگوهای توسعه وب به طور مرتب و با سرعت بالایی در حال تغییر هستند، فعلا کمبودی در خصوص فرصت‌های شغلی برای توسعه‌دهندگان وجود ندارد.

‏سوال اصلی که در این وهله مطرح می‌شود این است که آموزش دیدن و آماده شدن برای چه نوع موقعیت شغلی در حوزه توسعه وب بهتر است؟ با مراجعه به سایت‌های کاریابی و یا بررسی دوره‌های آموزشی آنلاین موجود در اینترنت، مشخص می‌شود که نقش‌های شغلی حوزه توسعه وب به سه دسته اصلی تقسیم می‌شود: ‌فرانت‌اند (Front-End)، ‌بک‌اند (Back-End) و فول‌استک (Full Stack).


🔸 توسعه دهنده فرانت اند (Front-End) چه کسی است؟

‏در این بخش از مطلب برنامه نویس فرانت اند ، بک اند و فول استک دولوپر به این پرسش پاسخ داده می‌شود که توسعه دهنده فرانت اند (Front-End) چه کسی است؟ ظاهر و بخش بیرونی یک وب‌سایت، قسمتی است که کاربران با آن به تعامل می‌پردازند. تمام آن‌چه که هنگام پیمایش در اینترنت دیده می‌شود، از فونت‌ها و رنگ‌ها گرفته تا منوهای کشویی و اسلایدرها (Slider)، ترکیبی از سی‌اس‌اس (CSS)، اچ‌تی‌ام‌ال و جاوا اسکریپت هستند. این مولفه‌های بصری که می‌توان آن‌ها را بخشی از «تجربه‌کاربری» (User Experience) دانست، در سیستم کاربر به وسیله «مرورگر وب» (Web Browser) کنترل می‌شوند.

‏– None

‏در این بخش از مطلب برنامه نویس فرانت اند ، بک اند و فول استک به پرسش «ابزارها و مهارت‌های مورد نیاز توسعه دهنده فرانت اند چیست؟» پاسخ داده شده است. توسعه‌دهندگان فرانت‌اند، مسئولیت تولید کدهای سمت کاربر و معماری تجربه‌کاربری همه‌جانبه آن را برعهده دارند. برای عملی کردن این اهداف، توسعه‌دهندگان فرانت‌اند باید در سه مهارت کلیدی اچ‌تی‌ام‌ال، سی‌اس‌اس و برنامه‌نویسی جاوا اسکریپت تسلط داشته باشند.

‏علاوه بر نیاز به تسلط بر این سه زبان، لازم است توسعه‌دهندگان با فریم‌ورک‌هایی چون بوت‌استرپ (Bootstrap)، فاندیشن (Foundation)، بک‌بون (Backbone)، انگولارجی‌اس (AngularJs) و امبرجی‌اس (EmberJS) آشنایی داشته ‌باشند. این فریم‌ورک‌ها مستقل از نوع دستگاه مورد استفاده، ارائه محتوا با ظاهری آراسته و زیبا را تضمین می‌کنند.



مطالعه ادامه مطلب 👇👇

🔗 برنامه نویس فرانت اند ، بک اند و فول استک دولوپر — وظایف، مهارت ها و درآمد — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

👍1
✳️ ۶ عادت خوب برنامه نویسی | راهنمای کاربردی

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

══ فهرست مطالب ══

‏ ○ ۱. تمیزکاری کد
‏ ○ ۲. به فرد بعد از خود فکر کنید
‏ ○ ۳. تنها آن چه لازم است و نه بیشتر انجام دهید
‏ ○ ۴. برای کد خود طرح‌ریزی داشته باشید
‏ ○ ۵. مستندسازی
‏ ○ ۶. هرگز از یادگیری دست نکشید
‏ ○ سخن پایانی


🔸 ۱. تمیزکاری کد

‏یک عادت عالی برنامه‌نویسی این است که هر زمان یک قطعه کد را تغییر می‌دهید، تلاش کنید آن را بهبود ببخشید. مهم نیست که مشغول اصلاح یک خط کد هستید یا یک قابلیت کاملاً جدید را به کد موجود اضافه می‌کنید، در هر حال باید در جهت تمیزکاری و بهبود کد تلاش کنید. «رابرت سی. مارتین» (Robert C. Martin) این عادت را در یک نقل قول مشهور به خوبی بیان کرده است:

‏«همواره کدی که ویرایش می‌کنید را بهتر از حالت اولیه آن بکنید»

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


🔸 ۲. به فرد بعد از خود فکر کنید

‏هر زمان که یک قطعه کد را می‌نویسید، باید به توسعه‌دهنده بعدی که قرار است روی کد شما کار کند، فکر کنید.

‏کدی بنویسید که قابلیت نگهداری داشته باشد تا توسعه‌دهندگان بعدی، آن را به سهولت درک کنند و به همان میزان که برای شما خوانا است برای آن‌ها نیز خوانا باشد. نسبت زمانی که برای خواندن یک کد صرف می‌شود در قیاس با زمان مورد نیاز برای نوشتن کد برابر با ۱۰ به ۱ است! این بدان معنی است که با صرف کمی تلاش بیشتر برای خواناتر ساختن کد، می‌توانید صرفه‌جویی زمانی زیادی ایجاد کنید.

‏زمانی که می‌خواهید کدنویسی کنید، رؤیایی فکر نکنید، کد ساده بنویسید تا هر کس آن را خوانده و درک کند. در واقع هیچ نیازی به نوشتن کدهای جادوی تک‌خطی که از Stack Overflow کپی کرده‌اید و حتی خودتان هم به درستی درک نمی‌کنید وجود ندارد.



مطالعه ادامه مطلب 👇👇

🔗 ۶ عادت خوب برنامه نویسی | راهنمای کاربردی — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ ده زبان برنامه نویسی که باید در سال ۱۴۰۰ یاد بگیرید

‏یکی از بهترین مهارت‌ها در جهان کنونی، برای داشتن جایگاه شغلی و درآمد خوب، «برنامه نویسی کامپیوتری» (Computer Programming) است. امروزه، از کامپیوترها تقریبا در همه صنایع استفاده می‌شود. این ماشین‌ها، دارای طیف وسیعی از کاربردها از «خلبان خودکار» (Autopilot) در هواپیما گرفته تا «سرعت‌سنج» (Speedometer) در دوچرخه هستند و در واقع باید گفت کامپیوترها به اشکال گوناگونی ما را احاطه کرده‌اند. در دهه‌های اخیر، کامپیوترها نقش اساسی در توسعه بخشیدن به کسب‌و‌کارها داشته‌اند و دارند. روزگاری که انسان‌ها از کاغذ و خودکار برای ثبت اطلاعات استفاده می‌کردند دیگر گذشته و امروزه این کارها با بهره‌گیری از کامپیوترها انجام می‌شود. آنچه بیان شد موجب شده تا اهمیت زبان‌های برنامه‌نویسی روز به روز افزایش بیابد و شرکت‌های گوناگون (صنایع مختلف) برای پیش‌برد اهداف خود نسبت به استخدام افراد مسلط به برنامه‌نویسی اقدام کنند.

══ فهرست مطالب ══

‏ ○ زبان برنامه نویسی پایتون
‏ ○ زبان برنامه نویسی جاوا
‏ ○ زبان برنامه نویسی C++/C
‏ ○ زبان برنامه نویسی جاوا اسکریپت
‏ ○ زبان برنامه نویسی گو
‏ ○ زبان برنامه نویسی R
‏ ○ زبان برنامه نویسی سوئیفت
‏ ○ زبان برنامه نویسی پی‌اچ‌پی
‏ ○ زبان برنامه نویسی سی‌شارپ
‏ ○ زبان برنامه نویسی متلب
‏ ○ نتیجه‌گیری


🔸 زبان برنامه نویسی پایتون

‏«زبان برنامه‌نویسی پایتون» (Python Programming Language) بدون شک در صدر لیست زبان‌هایی قرار دارد که برای داشتن یک شغل خوب، باید در سال جدید آموخت. این زبان به طور گسترده‌ای به عنوان بهترین زبان برنامه‌نویسی که باید آن را به عنوان اولین زبان برنامه‌نویسی آموخت، انتخاب و پذیرفته شده است. استفاده از زبان پایتون و توسعه برنامه با بهره‌گیری از آن ساده است. از پایتون به طور گسترده‌ای برای توسعه برنامه‌های کاربردی وب مقیاس‌پذیر استفاده می‌شود. «یوتیوب» (YouTube)، «اینستاگرام» (Instagram)، «پینترست» (Pinterest)، «سروی‌مانکی» (SurveyMonkey) از جمله پروژه‌های بزرگی هستند که با زبان پایتون ساخته شده‌اند. پایتون دارای «کتابخانه‌های» (Libraries) پشتیبان خوب و جامعه توسعه‌دهندگان بزرگی است.

‏زبان برنامه‌نویسی پایتون یک نقطه آغاز خوب برای افراد تازه‌کار فراهم می‌کند. بنابراین، به افرادی که به دنبال شغل خوبی هستند، قطعا یادگیری این زبان توصیه می‌شود. استارتاپ‌های زیادی از پایتون به عنوان زبان اول و اصلی خود به ویژه برای بک‌اِند استفاده می‌کنند و این امر فرصت خوبی را برای برنامه‌نویسان فول-استک پایتون فراهم می‌کند. در زیر یک برنامه ساده «سلام دنیا!» یا همان «Hello World!» مشهور قابل مشاهده است.

‏همانطور که از همین ابتدای راه مشهود است، کد زدن به زبان پایتون ساده است. کلیه افرادی که تمایل دارند به استارتاپ‌ها بپیوندند باید پایتون یاد بگیرند. نکته قابل توجه آن است که زبان پایتون کاربرد زیادی در زمینه «علم داده» (Data Science) و «یادگیری ماشین» (Machine Learning) دارد. بنابراین، یادگیری آن برگ برنده‌ای برای کسب فرصت‌های شغلی پیشرو و گام برداشتن به سوی آینده است.


🔸 زبان برنامه نویسی جاوا

‏«جاوا» (Java)، دیگر انتخاب محبوب در سازمان‌های بزرگ بوده و هست. این زبان، به طور گسترده برای ساخت برنامه‌های کاربردی وب در مقیاس کسب‌و‌کارهای بزرگ مورد استفاده قرار می‌گیرد. جاوا به عنوان یک زبان بسیار مقیاس‌پذیر شناخته شده و بنابراین بسیاری از کسب‌و‌کارهای بزرگ آن را پذیرفته‌اند و استفاده می‌کنند. به افرادی که به دنبال توسعه شغلی خود و محیا شدن برای کار در کسب‌و‌کارهای بزرگ هستند، یادگیری زبان برنامه‌نویسی جاوا پیشنهاد می‌شود.

‏همچنین، جاوا به طور گسترده‌ای در توسعه برنامه‌های کاربردی «اندروید» (Android) مورد استفاده قرار می‌گیرد. امروزه، نظر به این واقعیت که اندروید میلیاردها کاربر دارد، تقریبا همه کسب‌و‌کارها نیاز به برنامه‌های کاربردی اندروید دارند. این امر یک فرصت شغلی قابل توجه را برای توسعه دهندگان جاوا فراهم می‌کند. البته نباید فراموش کرد که گوگل یک چارچوب توسعه اندروید مبتنی بر جاوا با نام «اندروید استودیو» (Android Studio) تولید کرده است که مسیر را برای کسب درآمد از جاوا برای توسعه‌دهندگان این زبان هموارتر می‌کند.

مطالعه ادامه مطلب 👇👇

🔗 ده زبان برنامه نویسی که باید در سال ۱۴۰۰ یاد بگیرید — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ آموزش Visual Studio Code — از نصب تا اجرای اولین پروژه در VS Code

‏Visual Studio Code یک ویرایشگر کد منبع (Source Code Editor) سبک اما قدرتمند است که روی کامپیوتر دسکتاپ اجرا می‌شود. این ویرایشگر کد برای ویندوز، macOS و لینوکس در دسترس است. این برنامه با پشتیبانی توکار (Built-in) از JavaScript ،TypeScript و Node.js ارائه می‌شود و دارای یک اکوسیستم غنی از افزونه‌هایی (Add-on) برای زبان‌های دیگر (مانند C++ ،C# ،Java ،Python ،PHP و Go) و سیستم‌های زمان اجرا (مانند NET. و Unity) است. پیش از شروع آموزش Visual Studio Code و ارائه تعریف کامل‌تری از آن، بهتر است ابتدا به این سوال پاسخ داده شود که یک ویرایشگر کد چیست و چه تفاوت‌هایی با ویرایشگر متن و محیط توسعه یکپارچه (IDE) دارد.

══ فهرست مطالب ══

‏ ○ ویرایشگر کد چیست؟
‏ ○ Visual Studio Code چیست؟
‏ ○ معرفی فیلم های آموزش برنامه‌نویسی
‏ ○ کاربردهای Visual Studio Code
‏ ○ ویژگی های کاربردی Visual Studio Code
‏ ○ مزایا و معایب Visual Studio Code
‏ ○ آموزش Visual Studio Code
‏ ○ نگاهی به رابط کاربری در VS Code
‏ ○ معرفی مطالب آموزش Visual Studio Code
‏ ○ معرفی فیلم های آموزش برنامه‌نویسی
‏ ○ جمع‌بندی


🔸 ویرایشگر کد چیست؟

‏یک نرم‌افزار کامپیوتری از «کدهای منبع» ساخته شده است. این کدهای منبع معمولاً از طریق یک برنامه ویرایشگر کد منبع وارد کامپیوتر می‌شوند. این ویرایشگر یک «واسط برنامه‌نویسی» (Programming Interface) است که کدهای نرم‌افزاری را دریافت و ذخیره می‌کند. در حوزه کدنویسی، ویرایشگرهای کد منبع مختلفی وجود دارد. اغلب، هر ویرایشگر برای یک زبان برنامه‌نویسی خاص نوشته می‌شود.

‏بیشتر برنامه‌های کامپیوتری، در یک محیط توسعه یکپارچه (IDE | Integrated Development Environment) ساخته می‌شوند. IDE معمولاً شامل یک برنامه ویرایشگر کد است که کد منبع یک برنامه را ضبط و تجمیع می‌کند. ویرایشگر کد می‌تواند بهره‌وری یک توسعه‌دهنده نرم‌افزار را افزایش دهد. زیرا، با استفاده از یک برنامه ویرایشگر کد منبع می‌توان بلافاصله اعتبار کدهای تولید شده را سنجید.

‏IDE محیطی است که چند قابلیت را با هم در یک برنامه واحد ترکیب می‌کند. بنابراین می‌توان تفاوت ویرایشگر کد و محیط توسعه را اینگونه بیان کرد:


🔸 Visual Studio Code چیست؟

‏Visual Studio Code (معروف به VS Code) ویرایشگر کد منبع متن‌باز (منبع آزاد) و رایگان ارائه شده توسط شرکت مایکروسافت است. Visual Studio Code به برنامه‌نویسان و توسعه‌دهندگان کمک می‌کند تا اشکال زدایی و اصلاح کد را با استفاده از روش‌های هوشمند انجام دهند. VS Code در ویندوز، لینوکس و macOS قابل استفاده است. اگرچه، VS Code ویرایشگری نسبتاً سبک به حساب می‌آید، اما برخی ویژگی‌های قدرتمندش آن‌را به یکی از محبوب‌ترین ابزارهای توسعه در چند وقت اخیر تبدیل کرده است. در ادامه آموزش Visual Studio Code به معرفی امکانات و ساختار رابط کاربری این ویرایشگر کد پرداخته شده است.

‏VS Code از مجموعه گسترده‌ای از زبان‌های برنامه‌نویسی شامل ++Java ،C و Python گرفته تا CSS ،Go و Dockerfile پشتیبانی می‌کند. علاوه بر این، VS Code به برنامه‌نویسان امکان می‌دهد تا افزونه‌های جدیدی از جمله Code Linterها (ابزارهای تحلیل کد برای عیب‌یابی)، اشکال‌زدایی و پشتیبانی از توسعه وب و فناوری ابری را اضافه و حتی ایجاد کنند. رابط کاربری VS Code در مقایسه با سایر ویرایشگرهای متن، امکان تعامل بیش‌تری را با برنامه‌نویس فراهم می‌کند. برای ساده‌سازی تجربه کاربری، VS Code به پنج ناحیه اصلی تقسیم می‌شود:

‏– نوار فعالیت (activity bar)

‏– نوار کناری (side bar)

‏– گروه‌های ویرایشگر (Editor groups)

‏– پنل (panel)

‏– نوار وضعیت (status bar)

‏تصویر زیر نشان می‌دهد که این نواحی چطور در Visual Studio Code نمایش داده می‌شوند.



مطالعه ادامه مطلب 👇👇

🔗 آموزش Visual Studio Code — از نصب تا اجرای اولین پروژه در VS Code — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

👍1
✳️ کاربرد زبان اسمبلی — زبان اسمبلی چیست و چه ویژگی هایی دارد؟

‏در این مطلب، به پرسش زبان اسمبلی چیست پاسخ داده می‌شود و کاربرد زبان اسمبلی به طور کامل از گذشته تا امروز مورد بررسی قرار می‌گیرد.

══ فهرست مطالب ══

‏ ○ مقدمه‌ای بر زبان اسمبلی
‏ ○ زبان ماشین چیست؟
‏ ○ زبان اسمبلی چیست ؟
‏ ○ تفاوت زبان ماشین و زبان اسمبلی چیست؟
‏ ○ نحو زبان اسمبلی به چه صورت است؟
‏ ○ چرا زبان اسمبلی مفید است؟
‏ ○ چرا باید زبان اسمبلی را یاد گرفت؟
‏ ○ ویژگی‌های زبان اسمبلی
‏ ○ اسمبلر چیست؟
‏ ○ مزایا و معایب اسمبلر
‏ ○ هدف و کاربرد زبان اسمبلی در گذشته چه بوده است؟
‏ ○ کاربرد زبان اسمبلی در حال حاضر چیست؟
‏ ○ کاربرد زبان اسمبلی به طور متداول چیست؟
‏ ○ معرفی فیلم آموزش زبان اسمبلی فرادرس


🔸 مقدمه‌ای بر زبان اسمبلی

‏زبان اسمبلی (Assembly Language) یک زبان برنامه‌نویسی سطح پایین (Low-Level Programming Language) است.دستورهای زبان اسمبلی به کد ماشین و در نتیجه، به سخت‌افزار بسیار نزدیک هستند. به همین دلیل، فراگیری زبان اسمبلی دشوار و کاربردهای آن، منحصر به برخی از زمینه‌های خاص است. از یادگیری زبان اسمبلی برای فراگیری سازکار کلیه قطعات کامپیوتر از واحد پردازش مرکزی (CPU) گرفته تا حافظه استفاده می‌شود. البته، زبان اسمبلی کاربردهای دیگری نیز دارد که در ادامه مطلب کاربرد زبان اسمبلی به طور کامل به آن‌ها پرداخته شده است.

‏نکته‌ای که باید به آن توجه داشت این است که با وجود آنکه امروزه اغلب برنامه‌نویس‌ها از زبان‌های برنامه‌نویسی سطح بالا مانند پایتون، جاوا و گو برای توسعه نرم‌افزارهای گوناگون استفاده می‌کنند، اما زبان اسمبلی در رتبه‌بندی‌هایی که برای زبان‌های برنامه‌نویسی توسط مراکز گوناگون ارائه می‌شود، معمولا جزو ۲۰ زبان برتر و دارای کاربرد و بازار کار در دنیا محسوب می‌شود. هرچند که معمولا از جهت کاربرد و بازار کار در فهرست ۱۰ زبان برنامه‌نویسی برتر قرار ندارد.

‏برای درک بهتر جایگاه زبان اسمبلی در میان دیگر زبان‌ها از جهت نزدیکی نحو به سخت‌افزار باید گفت که زبان اسمبلی از زبان ماشین سطح بالاتر و از زبان‌هایی مانند پاسکال و C/C++‎ سطح پایین‌تر است. بنابراین، کد نوشته شده به زبان اسمبلی نیز برای اجرا نیاز به آن دارد که به کد قابل اجرا توسط ماشین یا همان زبان ماشین تبدیل شود. در کامپیوترها، چیزی با عنوان اسمبلر (Assembler) وجود دارد که به تبدیل کد اسمبلی به کد قابل اجرای ماشین کمک می‌کند.


🔸 زبان ماشین چیست؟

‏زبان ماشین (Machine Language) مجموعه دستورالعمل‌هایی است که با استفاده از آن‌ها کدنویسی ماشین یا در واقع، کدنویسی مستقیم برای سخت‌افزار کامپیوتر، انجام می‌شود. زبان ماشین، یک زبان برنامه‌نویسی سطح پایین است که به طور مستقیم برای کنترل واحد پردازش مرکزی کامپیوتر مورد استفاده قرار می‌گیرد. شایان توجه است که زبان ماشین پایین‌ترین سطح از زبان‌های برنامه‌نویسی و حتی از اسمبلی نیز پایین‌تر است. منظور از پایین بودن، نزدیکی به سخت‌افزار و نه زبان انسان است.

‏هر دستوری به زبان ماشین، منجر به آن می‌شود که واحد پردازش مرکزی یک وظیفه خاص را انجام دهد. از جمله این وظایف می‌توان به بارگذاری، ذخیره‌سازی، پرش یا انجام عملیات در واحد محاسبه و منطق (Arithmetic Logic Unit) روی یک یا تعداد بیشتری واحد داده در ثبات یا حافظه اشاره کرد. زبان ماشین یک زبان صرفا «عددی» است. یعنی کدهای زبان ماشین دنباله‌های از اعداد هستند که برای سخت‌افزار معنای خاصی دارند و قطعات الکترونیکی را به انجام کار خاصی مجبور می‌کنند. یکی از مهم‌ترین اهداف زبان ماشین، اجرا شدن برنامه نوشته شده در آن در سریع‌ترین زمان ممکن است و به همین دلیل این سطح از نزدیکی به سخت‌افزار را دارد.

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



مطالعه ادامه مطلب 👇👇

🔗 کاربرد زبان اسمبلی — زبان اسمبلی چیست و چه ویژگی هایی دارد؟ — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس

✳️ ۱۲ زبان برنامه نویسی برای IoT به همراه معرفی منابع | راهنمای کاربردی

‏در این مطلب، ۱۲ زبان برنامه نویسی برای IoT مورد بررسی قرار خواهد گرفت. همچنین، منابع یادگیری برنامه نویسی IoT نیز معرفی می‌شوند. رشد و توسعه اینترنت و تعدد دستگاه‌های هوشمند درسال‌های اخیر، بشریت را به سمت داشتن دنیای کاملا متصل، به پیش می‌برد. در جهان کنونی که شبکه دستگاه‌های فیزیکی متصل به یکدیگر همواره در حال رشد است، «اینترنت اشیا» که به آن «اینترنت چیزها» (Internet of Things | IoT) نیز گفته می‌شود، به مسئله‌ای واقع‌گرایانه‌تر مبدل و از فضای یک رویای دوردست خارج شده است.

══ فهرست مطالب ══

‏ ○ زبان برنامه نویسی برای IoT
‏ ○ منابع یادگیری زبان برنامه نویسی برای IoT
‏ ○ جمع‌بندی


🔸 زبان برنامه نویسی برای IoT

‏در ساخت و توسعه برنامه‌های کاربردی دسکتاپ، سرورها و موبایل، از زبان‌های برنامه‌نویسی گوناگونی استفاده می‌شود. همین امر موجب شده است تا افراد فکر کنند که هیچ تفاوتی بین اشیای هوشمند وجود ندارد و همه آن‌ها «مینی‌کامپیوتر» (Minicomputer) هستند. اینترنت اشیا دارای یک معماری سه لایه است که شامل تولید داده‌ها، سازمان‌دهی داده‌ها با استفاده از «دروازه‌ها» (Gateways) یا «هاب‌ها» (Hubs) و همچنین، سرورهای مرکزی است. این سرورهای مرکزی به لحاظ جغرافیایی دورتر از محلی قرار دارند که داده‌ها تولید می‌شوند.

‏برخی از پرسش‌هایی که در این وهله امکان دارد مطرح شوند عبارتند از:

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

‏– چه روش برنامه نویسی برای IoT مورد استفاده قرار می‌گیرد؟

‏– چه زبان برنامه نویسی برای IoT استفاده می‌شود؟

‏انتخاب یک زبان برنامه‌نویسی خاص برای پروژه اینترنت اشیا، به پیچیدگی انتخاب یک پلتفرم سخت‌افزاری برای این کار است. در اینجا، لیستی از زبان‌های برنامه‌نویسی ارائه شده است که برای پروژه‌های اینترنت اشیا مناسب هستند.


🔸 منابع یادگیری زبان برنامه نویسی برای IoT

‏در بخش‌های پیشین، ضمن معرفی هر زبان برنامه نویسی برای IoT منبع یا منابع یادگیری آن زبان نیز معرفی شدند. در ادامه، منابع یادگیری زبان برنامه نویسی برای IoT و با تمرکز بر مبحث اینترنت اشیا و پروزه‌های عملی آن، معرفی شده‌اند. همچنین، تعدادی آموزش اینترنت اشیا بار تمرکز بیشتر بر سخت‌افزارهای این حوزه نیز بیان شده‌اند. علاقه‌مندان به بحث اینترنت اشیا، می‌توانند با تمرکز هم بر مباحث سخت‌افزاری و هم مباحث نرم‌افزاری این حوزه، دانش و مهارت خود را به شده ارتقا دهند.

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

‏برای کسب اطلاعات بیشتر پیرامون دوره آموزش ویدئویی «آموزش اینترنت اشیا – مقدماتی» و مشاهده پیش‌نمایش‌هایی از آن، کلیک کنید.



مطالعه ادامه مطلب 👇👇

🔗 ۱۲ زبان برنامه نویسی برای IoT به همراه معرفی منابع | راهنمای کاربردی — کلیک کنید (+)


📌 کانال اختصاصی آموزشی برنامه‌نویسی

آخرین مطالب علمی، مقالات رایگان و ویدئوهای آموزشی برنامه‌نویسی را در کانال اختصاصی [@FaraProg] دنبال کنید. 👇

@FaraProg — مطالب و آموزش‌های برنامه‌نویسی فرادرس