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

 

.Net

دات نت یک پلتفرم توسعه است که توسط مایکروسافت، فروشنده Azure، یکی از بهترین پیشنهادات ابری، ارائه و نگهداری می شود. اکثر بخش‌های پلتفرم توسعه اکنون منبع باز و کراس پلتفرم هستند (به عنوان مثال، NET Core).

من فکر می کنم دات نت برای ایجاد برنامه های کاربردی مبتنی بر ابر مناسب است. پشتیبانی بومی از Azure Cloud ثبات و هم افزایی را فراهم می کند. کتابخانه های گسترده و ابزار قدرتمند، فرآیند توسعه را ساده و ساده می کند.

چیزی که من در استفاده از دات نت برای توسعه ابری دوست دارم، عملکرد استثنایی و استفاده بهینه از انرژی کامپیوتر است. این پلتفرم دارای ویژگی‌های خوبی برای پشتیبانی از همزمانی، الگوریتم‌های موازی و ترکیب‌پذیری است، از جمله ساختارهای زبان مدرن مانند ژنریک، جستجوی یکپارچه زبان (LINQ) و برنامه‌نویسی ناهمزمان.

نمونه‌هایی از برنامه‌های ابری مجهز به دات‌نت: مشتریان شرکتی مایکروسافت – Exchange، SharePoint، Office 365، Microsoft Visual Studio.

 

جاوا

جاوا برای توسعه برنامه های ابری سازمانی سفارشی انتخابی است. به نظر من، دلیل اصلی این امر این است که جاوا از نظر عملکرد و سرعت اجرا ایمن، پایدار، قابل حمل و مقیاس پذیر است. چارچوب های قدرتمندی را برای پشتیبانی از میکروسرویس ها، برنامه نویسی واکنشی و استراتژی های چند ابری (Spring Boot، Cloud Foundry، Akka و غیره) ارائه می دهد.

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

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

نمونه هایی از برنامه های ابری مبتنی بر جاوا: Gmail، پلتفرم Hadoop، Confluence.

 

 

Python

پایتون یکی از معدود زبان های بسیار مناسب برای دستکاری و پردازش مجموعه داده های بزرگ است. بنابراین، من اغلب آن را به عنوان بهترین گزینه برای رایانش ابری که با شبکه‌های عصبی، یادگیری ماشینی و سیستم‌های تحلیل جریانی سروکار دارد، توصیه می‌کنم. طبیعتاً پایتون از پشتیبانی قوی همه ارائه دهندگان ابر اصلی برخوردار است (پیش‌نمایش‌های پشتیبانی از زمان اجرا Azure 2.x از Python (نسخه 3.6)؛ AWS SDK برای پایتون).

نمونه هایی از برنامه های ابری مبتنی بر پایتون: Netflix، Pinterest، Reddit، Spotify، Instagram.

Node.js

Node.js بسیار مقیاس پذیر و سریع است (در موتور Google JS اجرا می شود). کدنویسی آسان است و می توان از آن برای توسعه برنامه های کاربردی سرتاسر استفاده کرد. Node.js با الگوی ارتباطی ناهمزمان، غیرمسدود کننده خود، به برنامه‌ها کمک می‌کند تا تعداد زیادی از اتصالات را به طور موثر مدیریت کنند.

نمونه‌هایی از برنامه‌های ابری مبتنی : PayPal، Uber، NASA، Trello.

 

GoLang

Golang برای بهره‌گیری از فرآیندهای چند هسته‌ای و تامین آسان محاسبات ابری توزیع‌شده ایجاد شد. این یک زبان سریع و ساده برای توسعه سرور به دلیل ابزارهای پیشرفته برای مدیریت همزمان (Goroutines) و موازی سازی است. بنابراین، ارائه دهندگان اصلی ابر به طور فعال از زبان پشتیبانی می کنند و به توسعه بیشتر آن کمک می کنند. همچنین Golang دارای یک چارچوب قدرتمند برای روبات‌ها، پهپادها و توسعه اینترنت اشیا – Gobot است.

نمونه هایی از برنامه های ابری مبتنی بر Golang: برخی از خدمات Uber، Dailymotion، Twitch.

 

به کدام زبان نیاز دارید؟

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

کدام نرم افزار/کد قدیمی را می خواهید پشتیبانی کنید؟
چه کسی برنامه شما را توسعه خواهد داد (تسلط آنها در این زمینه چیست، چه کسی در دسترس است)؟

 

پایان .

لینک منبع : https://www.scnsoft.com/blog/cloud-development-languages

یک نظر بگذارید

آدرس ایمیل شما منتشر نخواهد شد