Zostaw swoje dane kontaktowe, a my wyślemy Ci nasz przegląd e-mailem
Wyrażam zgodę na przetwarzanie moich danych osobowych w celu przesyłania spersonalizowanych materiałów marketingowych zgodnie z Regulaminem. Politykę Prywatności. Potwierdzając zgłoszenie, użytkownik wyraża zgodę na otrzymywanie materiałów marketingowych
Dziękuję!

Formularz został pomyślnie przesłany.
Więcej informacji można znaleźć w skrzynce pocztowej.

Innowise jest międzynarodową firmą tworzącą oprogramowanie w pełnym cyklu założona w 2007 roku. Jesteśmy zespołem ponad 1800+ specjalistów IT tworzących oprogramowanie dla innych profesjonalistów na całym świecie. profesjonalistów na całym świecie.
O nas
Innowise jest międzynarodową firmą tworzącą oprogramowanie w pełnym cyklu założona w 2007 roku. Jesteśmy zespołem ponad 1800+ specjalistów IT tworzących oprogramowanie dla innych profesjonalistów na całym świecie. profesjonalistów na całym świecie.

Język Google Carbon może zastąpić C++

Na konferencji CPP North, Chandler Carruth, główny inżynier oprogramowania w Google, ogłosił wydanie języka programowania Carbon. Carbon od Google to eksperymentalny, otwarty język, który ma być następcą C++, ale nie jego zamiennikiem. W artykule przyjrzymy się bliżej językowi Carbon, jego celom, potencjałowi oraz powodom, dla których C++ potrzebuje następcy.
Język węglowy Google&#039

Co jest nie tak z C++?

Według indeksu TIOBE z sierpnia 2022, C++ zajmuje 4. miejsce, po Python, C oraz Java. Od 2001 roku C++ nigdy nie spadł poniżej 5. miejsca, co świadczy o dużej popularności tego języka pomimo jego wieku (pierwsze pojawienie się w 1985 roku). C++ ma wiele zalet kluczowych dla rozwoju oprogramowania wymagającego wysokiej wydajności. Dlaczego więc potrzebuje następcy?Jak wyjaśnił Chandler Carruth, C++ nie spełnia w pełni głównych celów języka. Obejmują one wsparcie dla oprogramowania krytycznego pod względem wydajności, prostą składnię, ewolucję języka, nowoczesne systemy i solidne bezpieczeństwo. Specyficzne cechy języka i problemy biurokratyczne uniemożliwiają stopniowe doskonalenie C++. Jeśli chodzi o cechy języka, C++ nagromadził duży dług techniczny na przestrzeni swojego rozwoju. Co więcej, odziedziczył wiele funkcji z języka C. Dodatkowo użytkownicy C++ priorytetowo traktują kompatybilność wsteczną, aby wspierać istniejące ekosystemy C/C++. Jednocześnie kompatybilność wsteczna uniemożliwia usunięcie długu technicznego, przez co proces ewolucji C++ jeszcze bardziej utrudnia wprowadzanie usprawnień. Jeśli chodzi o kwestie biurokratyczne, proces doskonalenia C++ jest znacznie spowolniony przez komitet (WG21) skoncentrowany na standaryzacji, a nie na projektowaniu. WG21 stosuje powolne procesy wodospadowe, które prowadzą do opóźnień w podejmowaniu kluczowych decyzji. Ponadto komitet ma ograniczony dostęp do większości ekspertów C++ i reprezentuje tylko niektóre firmy i kraje, pomijając dużą społeczność C++.

Cele języka programowania Carbon

Jako następca języka, Carbon odziedziczył oryginalne cele C++ i otrzymał dodatkowy cel.
Język węgla
Opierając się na podejściu języka następcy, Carbon koncentruje się na 3 głównych kwestiach, które odpowiadają na istniejące wyzwania C++ i pozwalają nam uznać Carbon za obiecujący projekt: interoperacyjność, migracja i ewolucja języka. Opierając się na tych punktach, twórcy Carbon dążą do pozbycia się długu technicznego C++, utrzymania dostępu do istniejących ekosystemów, zapewnienia szybkich ulepszeń i uniknięcia wstecznej kompatybilności przy użyciu aktualizacji opartych na narzędziach.

Jakie są obietnice Carbon?

Dostępne obecnie informacje pozwalają uznać Carbon za bardzo obiecujący projekt. Jeśli chodzi o praktyczną stronę nowego języka programowania, Chandler Carruth twierdzi, że możemy spodziewać się po Carbon prostszej gramatyki, słów kluczowych wprowadzających (tj. fn i var), systemu generycznego sprawdzanego pod kątem definicji oraz stromej krzywej uczenia się. Carbon odziedziczy wysoką wydajność języka C i uniknie jego głównych wad.

Na dodatek, twórcy Carbon zapewniają, że będzie to otwarty język programowania, w pełni interoperacyjny z C++. Kod Carbon jest bardzo podobny do kodu C++, a w wielu przypadkach są one niemal identyczne. Co więcej, kod Carbon może być zintegrowany z kodem C++. Tak więc, deweloperzy C++, którzy chcą całkowicie przejść na Carbon, będą mieli zestaw narzędzi do automatycznego transliterowania bibliotek C++ na kod w nowym języku. Możliwa jest również migracja odwrotna. W przyszłości te biblioteki mogą być używane w istniejącym projekcie C++. Wszystkie narzędzia Carbon są hostowane na GitHubie i dystrybuowane na licencji Apache 2.0. Jak dotąd dostępny jest interpreter demonstracyjny Carbon.  

Ważną częścią eksperymentalnego projektu Carbon jest struktura zarządzania. Zespół Carbon kieruje się zasadami inkluzywności i otwartości. Struktura zarządzania Carbon została zaprojektowana z myślą o szybkim podejmowaniu decyzji, elastyczności i szybkim rozwoju projektu. Wszystkie kluczowe decyzje są podejmowane przez liderów Carbon, reprezentowanych obecnie przez Chandlera Carrutha, Kate Gregory i Richarda Smitha. Ponieważ projekt Carbon opiera się na modelu rozwoju open-source, każdy użytkownik może wysyłać żądania GitHub, aby zasugerować zmiany w projekcie i napędzać ewolucję języka Carbon.

Obecnie pracownicy Google pracują nad językiem programowania Carbon jako projektem wewnętrznym. Planowane jest jednak zmniejszenie poziomu zaangażowania firmy w projekt, ponieważ programiści rozumieją, że dla przyszłego sukcesu Carbon musi być projektem niezależnym i kierowanym przez społeczność.

Podsumowanie

Ważne jest, aby zrozumieć, że Carbon jest projektem eksperymentalnym i jest zbyt wcześnie, aby jednoznacznie stwierdzić, że Carbon jest pełnoprawnym następcą C++. Zgodnie z mapą drogową Carbon, rozwój głównych konstrukcji językowych powinien zostać zakończony do końca 2022 roku i jest to dokładnie czas, w którym Carbon 0.1 powinien zostać wydany. Potrzeba czasu, aby ocenić sukces projektu, ale już teraz możemy mówić o dużych perspektywach języka programowania Carbon jako następcy C++ w oparciu o zapowiedziane funkcje i zasady rozwoju.
Dziękujemy za ocenę!
Dziękuję za komentarz!

Spis treści

Oceń ten artykuł:

4/5

4.8/5 (45 opinii)

Powiązane treści

Wyzwanie dla nas?

    Prosimy o podanie szczegółów projektu, czasu trwania, stosu technologicznego, potrzebnych specjalistów IT i innych istotnych informacji.
    Nagraj wiadomość głosową na temat
    projekt, który pomoże nam lepiej go zrozumieć
    W razie potrzeby dołącz dodatkowe dokumenty
    Prześlij plik

    Można załączyć maksymalnie 1 plik o łącznej wielkości 2 MB. Ważne pliki: pdf, jpg, jpeg, png

    Informujemy, że po kliknięciu przycisku Wyślij Innowise będzie przetwarzać Twoje dane osobowe zgodnie z naszą Polityką prywatności w celu dostarczenia Ci odpowiednich informacji.

    Co będzie dalej?

    1

    Po otrzymaniu i przetworzeniu Twojego zgłoszenia skontaktujemy się z Tobą wkrótce, aby wyszczególnić potrzeby projektu i podpisać umowę o zachowaniu poufności, aby zapewnić poufność informacji.

    2

    Po przeanalizowaniu wymagań, nasi analitycy i programiści opracowują projekt z zakresem prac, wielkością zespołu, czasem i kosztami szacunki.

    3

    Umówimy się z Tobą na spotkanie, aby omówić ofertę i dojść do porozumienia porozumienia.

    4

    Podpisujemy umowę i rozpoczynamy pracę nad projektem tak szybko, jak to możliwe.

    Спасибо!

    Cобщение отправлено.
    Мы обработаем ваш запрос и свяжемся с вами в кратчайшие сроки.

    Dziękuję!

    Wiadomość została wysłana.
    Przetworzymy Twoją prośbę i skontaktujemy się z Tobą tak szybko, jak to możliwe.

    Dziękuję!

    Wiadomość została wysłana. 

    Przetworzymy Twoją prośbę i skontaktujemy się z Tobą tak szybko, jak to możliwe.

    strzałka