Защо да изберем C++ през 2021
Майкъл Доминик е софтуерен инженер, който работи за The Mad Botter. Преди часове се сблъсках с негова публикация, в която обяснява защо компанията му избира да работи на C++ през 2021 г. За да не го перефразирам грешно, нека самият той го обясни в прав текст:
Множество платформи/Собствен код
Разбира се, изразходвах много енергия, опитвайки се да намеря междуплатформени решения, които работят добре и това, до което стигнах, е че винаги са нужни компромиси, които не желая да правя. Точно затова има много добри причини да се придържаме към по-традиционните решения. C ++ ни позволява да разполагаме със споделен код (с някои специфични за платформата модификации), компилиран за всяка от нашите платформи, като същевременно има специфични модули, за да се възползва от определени функции на платформата. Ключов момент тук е, че под платформи ние говорим не само за операционни системи, но и за архитектури на процесори. Тук поглеждам към Apple Silicon.
Модерен C++
С последните няколко версии C ++ премина през промени, които имат за цел да премахнат част от недостатъците на езика. Обръща се внимание на колекциите и управлението на паметта. По-конкретно открихме, че интелигентните указатели (smart pointers) са особено привлекателни. Смея да твърдя, че са познати на феновете на Objective-C; Да, все още скърбя за квадратните скоби!
Познаване от екипа
Добре, това не е силен технически аргумент, но всъщност е доста важен. В сравнение с конкуриращите се езици на ниско ниво (Go и Rust), целият екип има поне известен опит със C++, като някои от нас имат доста голям опит с езика. Причината за това е, че C++ е стар и популярен език, разработван години наред, през който мнозина програмисти са минали. Това значи, че по-голяма част от тях ще се чувстват по-комфортно да използват именно C++ вместо по-непознат за тях синтаксис. Въпреки че не трябва определя всички технически решения, опитът си е фактор.
Преди да изберем C ++ се колебахме между три езика: C++, C# (.Net) и Rust. C# беше елиминиран първо по няколко причини, включително някои допълнителни перипети за работа на Linux и macOS. .Net е много по-лесен да се разработи в Linux и macOS сега, отколкото някога е било преди. Rust почти спечели и слушателите на Coder Radio ще разберат, че съм фен на Rust, но в крайна сметка съществуващото C++ изживяване в екипа надделя. Подобно на колекция от винилови плочи на хипстърска среща, то е безценно.
---
За всяко ястие си има правилните подправки и няма как да се отрече, че C++ е една от добрите такива. По този повод, не пропускай да се включиш в курса ни C++ Fundamentals. Той стартира на 23 Март и е част от модула ни C++ Development. Курсът ще те запознае с основните типове данни, работа с масиви, функции, линейни контейнери и потоци и е подходящ за всеки преминал курса Programming Basics with C++ или с еквивалентни знания. Занятията се провеждат изцяло онлайн, а след всяка лекция, получаваш достъп до записа и учебните ресурси. Не се колебай, а се запиши сега!