تسلا با چشماندازی برای آیندهای بهتر، نه تنها به با ارزشترین شرکت خودروسازی تاریخ تبدیل شده است، بلکه از خود به عنوان یکی از برترین شرکتهای فناوری در جهان نیز پیشی گرفته است. از وسایل نقلیه خودران گرفته تا رباتهای هوش مصنوعی، تسلا همه این کارها را انجام داده است. اما چه زبان های برنامه نویسی به این سازمان کمک کرده تا چنین محصولات آینده نگرانه ای را ایجاد کند؟ بیایید دریابیم.
زبان های برنامه نویسی مورد استفاده در تسلا
1. C & C++
در سالهای اخیر، تعداد زیادی از زبانهای برنامهنویسی جدید مانند Elixir، Pony، Julia و غیره وجود داشته است که برای آسانتر کردن کارها با کمترین کد ممکن ساخته شدهاند. با این حال، تسلا هنوز هم به شدت بر یکی از اساسی ترین زبان ها متکی است: C و C++.
"بیشتر نرم افزار در ماشین های تسلا مهدی امینی، مدیر مهندسی تسلا گفت: C یا C++. یکی از بزرگترین نقاط قوت در میان این زبانهای قدیمی و احتمالاً دلیل بقای آن در طول زمان این است که این زبانها تقریباً روی هر نوع سیستمی قابل اجرا هستند. نسبت به نزدیکی آن به سیستم عامل، این سطح پایین است زبانهای برنامه نویسی در اکثر IoT و سیستم های تعبیه شده استفاده می شود و به مهندسان در بهینه سازی نرم افزار کمک می کند.
هیچ زبان برنامه نویسی در مورد کارایی به C یا C++ نزدیک نشده است. اکثر زبانهای برنامهنویسی مدرن با جمعآوری زبالهها در مدیریت حافظه غیر قطعی هستند، این به سادگی برای سیستمهای جاسازی شده حیاتی مانند آنچه در خودروهای تسلا وجود دارد، مناسب نیست. یکی دیگر از شرکت های بزرگ فناوری که به طور گسترده از C & C ++ استفاده می کند، است کارت گرافیک Nvidia.
2 پایتون
علاوه بر C و C++، تسلا همچنین به شدت به احتمالاً محبوب ترین و پرکاربردترین زبان متکی است. پــایتــون. در یک سری توییت، ایلان توضیح میدهد که چگونه از ترکیب C/C++ و Python برای ساخت الگوریتمهای خود استفاده میکنند:
NN ما ابتدا برای تکرار سریع در پایتون است، سپس برای سرعت به کد درایور فلزی C++/C/خام تبدیل میشود (مهم!). همچنین، تعداد زیادی مهندس C++/C برای کنترل وسیله نقلیه و کل بقیه ماشین مورد نیاز است. پیشینه تحصیلی مهم نیست، اما همه باید آزمون کدنویسی هاردکور را بگذرانند.
- ایلان ماسک (elonmusk) فوریه 3، 2020
این توییت بسیاری از توسعه دهندگان را بر آن داشت تا کمبودهای تبدیل از Python به C++/C را برجسته کنند، اما بیایید در نظر داشته باشیم که این توییت فقط یک توضیح فشرده از یک فرآیند خوب فکر شده است و عدالت را در مورد واقعی انجام نمی دهد. تکنیک های مورد استفاده Soumith Chintala، یکی از خالقان PyTorch، توضیح می دهد که آنها به احتمال زیاد تبدیل خودکار از Python به C & C++ را دنبال می کنند. ایلان همچنین به وابستگی آنها به PyTorch اشاره کرد.
PyTorch پرکاربردترین مجموعه/کتابخانه ابزار خارجی است
- ایلان ماسک (elonmusk) فوریه 3، 2020
PyTorch کتابخانه ای است که برای یادگیری ماشین، بینایی کامپیوتر و پردازش زبان طبیعی ساخته شده است. این کاملاً منبع باز است و توسط آزمایشگاه تحقیقاتی هوش مصنوعی فیس بوک ساخته شده است.
3. جاوا و جاوا اسکریپت
بر اساس نظرسنجی انجام شده توسط Burning Glass، جاوا و جاوا اسکریپت از نظر کاربرد و اهمیت برای زبانها در تسلا در ردیف بعدی قرار دارند. هر دوی این زبان ها به شدت در ساختن سیستم ها و اپلیکیشن ها برای ماشین هایشان استفاده می شود. C++، Python و Java زبانهایی هستند که تقریباً در تمام پستهای شغلی در تسلا مورد نیاز هستند. علاوه بر این، تسلا برای نقشهایی که شامل برنامهنویسی فرانتاند میشوند، به مهارت قوی در جاوا اسکریپت نیاز دارد. درباره مشاغل در تسلا بیشتر بدانید اینجا.
4. زبان های دیگر
تسلا همچنین نیاز به برتری در سایر زبان های برنامه نویسی بر اساس عملکردهای خاص انجام شده توسط هر یک از آنها دارد. واکنش نشان می دهند و حروفچینی زبانهای مبتنی بر جاوا اسکریپت هستند که به طور گسترده توسط تسلا برای توسعه فرانتاند استفاده میشوند. علاوه بر این، یاقوت، CSS و پی اچ پی در نقش های مربوط به توسعه وب مورد نیاز است. در نهایت، SQL در مقیاس بزرگ برای مدیریت پایگاه داده استفاده می شود. همه این زبانها با هم ترکیب میشوند تا محصولاتی را بسازند که ما را شگفتزده میکند.
نتیجه
بنابراین، علیرغم اینکه تسلا یکی از شرکت های بزرگ فناوری در جهان است، در درجه اول به زبان های برنامه نویسی قدیمی متکی است. اگر میخواهید برای شرکتهایی مانند تسلا، اسپیس ایکس، انویدیا، اینتل و غیره کار کنید، پایتون، سی و سی پلاس پلاس ضروری است. با این حال، تسلا بیش از 300 مهندس با مجموعهای از مهارتها در کار دارد که همه آنها با هم ترکیب میشوند تا پیچیده ایجاد کنند. شبکه هایی برای اجرای محصولات خود انتخاب زبان برنامه نویسی شما برای یادگیری باید کاملاً به نوع عملکردی که می خواهید انجام دهید بستگی دارد. عاقلانه انتخاب کنید!
پاسخ دهید