پنج دلیل برای یادگیری یک زبان برنامه نویسی جدید در سال ۹۹
در این مطلب، پنج دلیل برای یادگیری یک زبان برنامه نویسی جدید در سال ۹۹ بیان شده است. «بروس لی» (Bruce Lee) یک جمله معروف دارد: «من از مردی که ۱۰,۰۰۰ ضربه گوناگون را یکبار تمرین کرده است نمیترسم؛ اما از مردی که یک ضربه را ۱۰,۰۰۰ بار تمرین کرده است، میترسم». پرسشی که اکنون و با بیان این نقل قول برای بسیاری از افراد مطرح میشود، این است که آیا افراد نیازی به یادگیری زبانهای برنامهنویسی گوناگون دارند یا باید روی زبانی که در حال حاضر آن را میدانند متمرکز شوند و صرفا از آن استفاده کنند؟ همچون بسیاری از دیگر پرسشها، پاسخ این پرسش نیز، «بستگی دارد»، است. در ادامه مطلبِ پنج دلیل برای یادگیری یک زبان برنامه نویسی جدید در سال ۹۹، به این پرسش پاسخ داده شده است.

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

در تصویر زیر، پارادایمهای برنامهنویسی اصلی بیان شدهاند.

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

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

راهی به سوی توسعه نرمافزار فول-استک
با رشد معماری میکروسرویس، تقاضا برای برنامهنویسهای فولاستک افزایش پیدا میکند. معماری میکروسرویس نیاز به یک تیم چند-عملکردی دارد. اگر در تیمی برای مثال دو توسعهدهنده وجود دارد که تنها میتوانند بکاند کار کنند، تیم به اندازه کافی انعطافپذیر نخواهد بود.
در برخی از پروژهها، چنانکه توسعهدهندگان فرانتاند و بکاند به صورت موازی کار کنند، مانع از پیشرفت تیم میشوند. به طور ویژه، هنگامی که هر دو توسعهدهنده فرانتاند یا هر دو بکاند کار باشند، کار نمیتواند به خوبی پیش برود.

تیم در صورت داشتن توسعهدهندگان فولاستک میتواند بین کارهای گوناگون به راحتی جا به جا شود. همچنین، شرکتها معمولا پرداختهای بیشتری به توسعهدهندگان فولاستک دارند. شایان توجه است که یادگیری یک زبان برنامهنویسی جدید از فرد یک توسعهدهنده فول استک نمیسازد. اما به او کمک میکند تا به یک توسعهدهنده فولاستک مبدل شود.
توسعه شغلی
افرادی که در صدد صعود از نردبان شغلی خود هستند، نه تنها باید کارشناسانی با دانش عمیق باشند، بلکه باید دامنه تخصصهای بیشتری نیز داشته باشند. در نقش یک معمار نرمافزار، افراد باید تصمیماتی پیرامون طراحی استک کامل، و نه فقط فرانتاند یا بکاند، بگیرند.
روزی روزگاری، معماران «برج عاج» (Ivory Tower) (کنایه از شکاف بین دانش و کاربرد) وجود داشتند که میتوانستند معماری نرمافزار را برای یک پروژه، بدون کدنویسی کردن، طراحی کنند. اما در حاضر شرکتها به دنبال معمارهای نرمافزاری هستند که میتوانند کدنویسی کنند.

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













