۰۰/۴/۲۴ پنج شنبه
امروزه کمتر کسی را میتوان پیدا کرد که هنوز برای کارهای روزمرهاش از دسکتاپ استفاده کند. اکثر افراد تلفن همراه را ترجیح میدهند. دلیلش هم واضح است. تلفنهای همراه نسبت به دسکتاپ ها قابلیت حمل و نقل بهتری دارند. همچنین در این روزها تلفنهای همراه از نظر پردازشی به قدری قوی شدهاند که بتوانند نرم افزارهای مشابه نرم افزارهای دسکتاپی را اجرا کنند. مثلاً برای تدوین ویدئو برای شبکههای اجتماعی اکثر افراد ترجیح میدهند از اپلیکیشن های مناسب تلفن همراهشان استفاده کنند تا نرم افزارهای ادوبی. با این حال عده بسیار زیادی همچنان به عنوان برنامه نویس نرم افزارهای دسکتاپ در حال فعالیت و کسب درآمد هستند.
در پست «همه چیز درباره برنامه نویسی وب» در مورد شاخهای از برنامه نویسی که به توسعه وبسایت ها و وب اپلیکیشن ها میپردازد، صحبت کردیم. در ادامه قصد داریم در مورد برنامه نویسی نرم افزارهای دسکتاپی صحبت کنیم.
توسعه دهنده دسکتاپ، برنامه نویسی است که نرم افزارهایی با دو ویژگی مینویسد: ۱) به طور طبیعی روی سیستم عاملهایی مثل ویندوز، مک و لینوکس اجرا شود؛ ۲) نرم افزار احتیاجی به اتصال به اینترنت نداشته باشد. وظایف یک توسعه دهنده دسکتاپ، بسته به نوع نرم افزار در حال توسعه، انتظارات کارفرما و سوابق متغیر است. به طور کلی ساخت نمونه اولیه، توسعه، پیاده سازی، پشتیبانی و نگهداری از سورس کد نرم افزار از وظایف یک توسعه دهنده دسکتاپ میباشد.
توسعه دهندگان نرم افزارهای دسکتاپ معمولاً برای شرکتهای نرم افزاری بزرگ، سازمانهایی که نرم افزار داخلی مخصوص به خود دارند و شرکتهای بازی سازی کار میکنند.
واضح است که اولین مهارت برای تبدیل شدن به یک توسعه دهنده دسکتاپ، مهارت برنامه نویسی است. البته هرچند مهارت برنامه نویسی، لازم است اما قرار نیست مهمترین مهارت مورد نیاز برای تبدیل شدن به یک برنامه نویس دسکتاپ باشد. اکثر کارفرماها به دنبال افرادی هستند که میتوانند منطقی و الگوریتمی فکر کنند و بهینهترین راه حل را برای مسائل گوناگون پیدا کنند. زیرا بخش زیادی از برنامه نویسی شامل پیدا کردن راهی برای انجام کاری توسط نرم افزارهای کامپیوتری، بهینه سازی الگوریتمها و برنامههای قبلی و عیب یابی از آنهاست. ممکن است به نظر خسته کننده باشد اما برای برنامه نویسان موفق این کار بسیار لذت بخش است.
کارفرماها همچنین به دنبال برنامه نویسانی هستند که جزئی نگر و صبور باشند. هر دوی این مهارتها برای توسعه دهندگان نرم افزار لازم است. چون کوچکترین اشکال در برنامه میتواند منجر به وقوع یک مشکل بزرگ شود. پیدا کردن ایرادها و رفع آنها قسمت مهمی از وظایف یک برنامه نویس نرم افزار را تشکیل میدهد.
در آخر، یک برنامه نویس دسکتاپ باید کنجکاو باشد. کنجکاوی باعث میشود که برنامه نویسان به دنبال راه حلهای جدیدی بگردند که نرم افزار را قدرتمندتر و سریعتر میکند و استفاده از آن را برای کاربران سادهتر میسازد.
محبوبترین زبانهای برنامه نویسی دسکتاپ:
در برنامه نویسی دسکتاپ چیزی به عنوان «بهترین زبان برنامه نویسی» وجود ندارد. زیرا هر نرم افزار بسته به نیازمندیها و اهدافش نیاز به زبانهای برنامه نویسی و روشهای متفاوتی دارد. در ادامه چند زبان برنامه نویسی که امسال جزء محبوبترین ها بودهاند را ذکر کردهایم: (منبع: Top 10 Programming Languages for Desktop Apps In 2021)
۱. C#: زبانی مدرن و شیء گراست که توسط ماکروسافت طراحی شده است. اگر قبلاً با جاوا یا جاوا اسکریپت کار کرده باشید، ساختارهای این زبان برایتان آشنا خواهد بود. از آنجایی که این زبان توسط مایکروسافت طراحی شده، برای توسعه نرم افزارهای ویندوز بسیار مناسب است.
۲. C++: زبانی چندمنظوره، شیء گرا و سطح پایین است. این زبان هم توسط مایکروسافت طراحی شده و به همراه زبان C# از مشتقات زبان C میباشد. به دلیل سطح پایین بودن این زبان، برنامه نویسان میتوانند با استفاده از آن روی منابع سیستم و حافظه آن کنترل داشته باشند. از سی پلاس پلاس در برنامه نویسی سیستمی، مرورگرها، بازیها و غیره نیز استفاده میشود.
۳. Python: پایتون یک زبان سطح بالا و شیء گراست. با استفاده از پایتون نیازی نیست برنامه نویس برای اجرای مفاهیم از حجم زیاد و پیچیدهای از کدها استفاده کند. پایتون تعداد زیادی فریم ورک GUI دارد که به برنامه نویسان کمک میکند به راحتی اپلیکیشن های دسکتاپی بنویسند.
۴. Java: جاوا زبانی شی گرا و مبتنی بر کلاس است. این زبان قدرتمند به برنامه نویسان امکان میدهد که یک بار برنامه نویسند، همه جا آن را اجرا کنند (WORA). با استفاده از ابزارهایی مثل JDK، Netbeans IDE، Java FX، Java swing و SQL میتوانید نرم افزارهای قدرتمندی برای دسکتاپ توسعه دهید.
PHP، Java Script، Swift و Red-lang از دیگر زبانهای برنامه نویسی ای هستند که برای توسعه نرم افزارهای دسکتاپ استفاده میشوند.
همانطور که در ابتدای این متن گفتیم، با گسترش استفاده از تلفنهای همراه، میزان استفاده از نرم افزارهای دسکتاپی در بین مردم کمتر شده است. همچنین برخی از سازمانها ترجیح میدهند از رایانش ابری و سیستمهای توزیع شده برای انجام محاسباتشان استفاده کنند. با این حال هنوز قابلیتهایی وجود دارند که توسط نرم افزارهای دسکتاپی به صورت بهتری ارائه میشوند:
به زبان ساده، اپلیکیشن های تحت وب برای ارائه محتواهای عمومی مناسب هستند اما برای تولید محتواهای خاص و تخصصی احتیاج به اپلیکیشن های دسکتاپی میباشد. اگر میبینید که بازار کار بیشتر تقاضای توسعه دهنده فرانتاند، بکاند و توسعه دهنده اپلیکیشن های مختص تلفن همراه دارد، به این دلیل است که تعداد مصرف کنندگان محتوای عمومی در این پلتفرمها بیشتر هستند.
با توجه به صفحه ۸۱ گزارش افزایش حقوق سرا سری سال ۱۴۰۰ که توسط سایت جاب ویژن منتشر شده است، برنامه نویسان اپلیکیشن های ویندوزی با توجه به سطح خود میتوانند به طور میانگین انتظار درآمدی بین ۵٫۲ میلیون تومان تا ۱۵٫۵ میلیون تومان داشته باشند. در این میان، با افزایش حقوق ۳۰ درصدی، ۵۰ درصد جامعه آماری این گزارش درآمدی معادل ۸٫۸ میلیون تومان خواهند داشت.
محمد یک برنامه نویس ویندوز است. او در این باره میگوید: «برنامه نویسی دسکتاپ دو دسته دارد: برنامه نویسی اپلیکیشن و برنامه نویسی شرکتی. برنامه نویسی اپلیکیشن یعنی برنامهای مثل ورد بسازیم یا ماشین حساب برای ویندوز بسازیم. یعنی اپلیکیشن هایی که به خودی خود کار میکنند و کاربر عمومی دارند. این نوع برنامه نویسی در ایران بازار کار خوبی ندارد. برنامه نویسی های شرکتی معمولاً یا شامل نگهداری و پشتیبانی از نرمافزارهایی میشوند که قبلاً نوشته شدهاند و یا سعی در توسعه و به روز رسانی نرم افزارهایشان دارند. همچنین برنامه نویسی دسکتاپ شامل برنامه نویسی دستگاههای رزرواسیون و نوبت دهی نیز میشوند. شرکتهای ارائه دهنده این خدمات اغلب از WPF یا windows form برای برنامه نویسی استفاده میکنند.
در مورد مهارتهای نرم، برنامه نویسان دسکتاپ مثل بقیه برنامه نویسان لازم است مهارت کار تیمی و یادگیری سریع داشته باشید. چون وقتی وارد یک سازمان یا شرکت جدید میشوید باید یاد بگیرید طبق استانداردها، فریمورک ها و ابزارهایی که قبلاً آن شرکت ساخته است کار کنید. بنابراین مهارت و تمایل به یادگیری و کار تیمی، جز مهارتهای نرم بسیار مهم در این حوزه است.»
در مورد خودتان برای ما بگویید. باتوجه به مطلبی که خواندید به نظر شما برنامه نویسی دسکتاپ برای شما مناسب است یا خیر؟ اگر برنامه نویس دسکتاپ هستید در مورد وضعیت کارتان و بازار کارش برایمان در قسمت نظرات بنویسید. به نظر شما یک برنامه نویس دسکتاپ باید چه مهارتهای نرمی داشته باشند؟
در حال انجام عملیات