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
Thank you!

The form has been successfully submitted.
Please find further information in your mailbox.

Innowise jest międzynarodową firmą tworzącą oprogramowanie w pełnym cyklu założona w 2007 roku. Jesteśmy zespołem ponad 2000+ 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 2000+ 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.
Google's Carbon language

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.
Carbon language
Based on a successor language approach, Carbon focuses on 3 major issues that address the existing C++ challenges and allow us to consider Carbon as a promising project: interoperability, migration, and language evolution. Drawing on these points, Carbon creators strive to get rid of C++ technical debt, keep access to existing ecosystems, ensure rapid improvements, and avoid backwards compatibility using tool-based upgrades.

Jakie są obietnice Carbon?

The information available at the moment allows us to consider Carbon as a very promising project. As for the practical side of the new programming language, Chandler Carruth claims that we can expect from Carbon a simpler grammar, introducer keywords (i.e. fn and var), a definition-checked generics system, and a steep learning curve. Carbon will inherit C’s high performance and avoid its major drawbacks.

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

It is important to understand that Carbon is an experimental project and it is too early to state unequivocally that Carbon is a full-fledged successor to C++. According to the Carbon roadmap, the development of the main language constructions should be completed by the end of 2022, and this is exactly the time when Carbon 0.1 should be released. It will take time to assess the success of the project, but we can already talk about the high prospects of the Carbon programming language as the successor to C++ based on the announced features and principles of development.
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.

    Potrzebujesz innych usług?

    Спасибо!

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

    Dziękuję!

    Wiadomość została wysłana.
    We’ll process your request and contact you back as soon as possible.

    Dziękuję!

    Wiadomość została wysłana. 

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

    arrow