Słaby artykuł, autor ma swoje przeświadczenia, którymi się nie dzieli. Np. to, że python to jakiś święty gral programowania, gdzie ludzie piszą w językach staycznie typowanych nie dlatego, że są wydajne, tylko dla lepszej utrzymywalności
@milo1000: tendencja jest taka, że ludzie piszą statycznie typowane dokładki do dynamicznych języków, bo wkurzają ich bugi albo nie chce im się pisać i utrzymywać kodu/testów, które sprawdzają typy.
Python jest dominatorem w niszy data science i pisząć w tej niszy musisz lubieć ten język albo zwariujesz, ewentualnie możesz mieć na to wywalone.
Umiera, czy nie, jak mi przyjdzie zaprogramować jakiegoś STM-a 32, to jednak zostaje C++, a jak się da, to C i Assembler w krytycznych sytuacjach. Obawiam się że w czasach, kiedy nawet lodówka musi z Tobą gadać, a odkurzacz tworzyć mapy niczym Amerigo Vespucci, to te języki jeszcze długo będą w obiegu, szczególnie że w innych nie ma do niczego bibliotek. Bardziej od wymierania C++, które średnio lubię na architekturze x86 i
Narobiło się w tych czasach jakiś front/end-owców, androidowców i innych co myślą że wszystko co C czy C++ to złe. Jak dla mnie jest to typ ludzi którzy myślą że mięso bierze się ze sklepu i zapominają że gdzieś tam żeby to wszystko działało
@zrakiep: To jeden z wielu rankingów - wyszukiwanie google/deklarowane użycie przez programistów/ilość ogłoszeń o pracę itd. Żadne kryteria nie są idealne każde pokazują inny wynik, nigdzie c++ nie jest bliski pierwszego.
Jaranie się językami programowania to jakby stolarz jarał się młotkiem. Bierzesz taki, który lubisz albo pasuje do wymagań. I pisanie "jestem programistą C++". Albo jesteś programistą albo nie jesteś. A C++, Java, Kotlin, Python to są umiejętności a nie stanowisko.
@wfd: no nie do końca. Programowanie takie poważne wymaga specjalizacji i wątpię żeby jakiś architekt reacta i mikrofrontendow napisał sterownik do mikrokontrolera i na odwrót. To znaczy może i by napisał ale zajęłoby mu to 3 razy tyle czasu co ziomkowi co ogarnia daną specjalizację
@wfd: mam kumpla, który sobie zrobił stolarnię w piwnicy i potwierdzam, że jak najbardziej jara się młotkiem, piłą i innymi różnymi fajnymi obrabiarkami, które tam ma. Zresztą chyba w każdym zawodzie jest podobnie. Wejdź sobie na forum fotograficzne i tam też fotografowie będą gadać o tym który aparat / które szkło lepsze.
@Nady93: Też mnie zszokowało to stwierdzenie, ale autor pomylił operatory. Chodziło o * - 2 500 000 000 to 50000*50000. Wynik wyrażenia to int, który jest właściwie wszędzie 32-bitowy, i wszędzie ze znakiem. Od niedawna wszędzie jest 2s complement, a wczesniej był de facto wszędzie. 2.5e9 ma tę samą reprezentację bitową co -1794967296 dla 32-bitowych integerów. Warto jednak zaznaczyć, że wyrażenie, którego wynik przekracza zakres zmiennej ze znakiem (tu:
@HeloELo: gpt (czy co tam użyłeś) ma tu 2 błędy: - nie ma w oryginale nic o przypisywaniu rezultatu do zmiennej o określonym typie, a typem samego wyrażenia jest int, a więc (pomijając mikroprocesory z lat 80/90) typ, który jest w stanie wyrazić 100 000 - przepełnienie w przypadku liczb bez znaku jest w pełni przewidywalne, a więc wynik takiego działania jak w kodzie powyżej zdecydowanie da się przewidzieć.
Niestety, ale w tym przypadku niebezpieczeństwo = funkcjonalność. Każde "ulepszenie" "niebezpiecznych" technik będzie ograniczeniem funkcjonalności. C++ to low level i nie ma tam miejsca na zatajanie przed devem co się dzieje pod maską. W C# mnie to nie interesuje, ale też w C# nie programuje jądra. C++ ma swoje miejsce i nigdzie się nie wybiera. Próby detronizacji jego pozycji mają złe założenia. Upatrywałbym rewolucji w językach celowych, niż sytuacji, że powstanie język
@WhiskyRomeo: Rust jest równocześnie o wiele bezpieczniejszy i łatwiejszy niż C i C++ a daje tę samą funkcjonalność i tę samą wydajność (a potencjalnie nawet lepszą wydajność bo kompilator ma więcej informacji o np. aliasingu).
Google próbował zrobić równoległy silnik renderowania CSS w C++ i poległ. Mozilla zrobiła to samo w Rust i się udało - Stylo jest częścią Firefoxa.
Autor artykułu próbuje zaklinać rzeczywistość. Rust już jest killerem C i
Komentarze (267)
najlepsze
@milo1000: tendencja jest taka, że ludzie piszą statycznie typowane dokładki do dynamicznych języków, bo wkurzają ich bugi albo nie chce im się pisać i utrzymywać kodu/testów, które sprawdzają typy.
Python jest dominatorem w niszy data science i pisząć w tej niszy musisz lubieć ten język albo zwariujesz, ewentualnie możesz mieć na to wywalone.
Python może być beznadziejny dla typowego kodu enterprise, ale za to w środowiskach naukowych i wśród data engineerów jest top 1.
Smutne.
Bardziej od wymierania C++, które średnio lubię na architekturze x86 i
@KarmazynowyAstrofizyk:
Jeszcze długo nie umrze.
Narobiło się w tych czasach jakiś front/end-owców, androidowców i innych co myślą że wszystko co C czy C++ to złe.
Jak dla mnie jest to typ ludzi którzy myślą że mięso bierze się ze sklepu i zapominają że gdzieś tam żeby to wszystko działało
@mr_spook: to pokaż taką ofertę, bo nawet w Szwajcarii tyle nie zarabiają xD
@ShortyLookMean: Myślisz tu o programistach a to błąd. Z Matlaba korzystają głównie inżynierowie do pisania symulacji i jest tam wyjątkowo popularny.
Żadne kryteria nie są idealne każde pokazują inny wynik, nigdzie c++ nie jest bliski pierwszego.
uint16_t(50000) + uint16_t(50000) == -1794967296
@Bulldogjob*
- 2 500 000 000 to50000*50000
. Wynik wyrażenia toint
, który jest właściwie wszędzie 32-bitowy, i wszędzie ze znakiem. Od niedawna wszędzie jest 2s complement, a wczesniej był de facto wszędzie. 2.5e9 ma tę samą reprezentację bitową co -1794967296 dla 32-bitowych integerów. Warto jednak zaznaczyć, że wyrażenie, którego wynik przekracza zakres zmiennej ze znakiem (tu:- nie ma w oryginale nic o przypisywaniu rezultatu do zmiennej o określonym typie, a typem samego wyrażenia jest
int
, a więc (pomijając mikroprocesory z lat 80/90) typ, który jest w stanie wyrazić 100 000- przepełnienie w przypadku liczb bez znaku jest w pełni przewidywalne, a więc wynik takiego działania jak w kodzie powyżej zdecydowanie da się przewidzieć.
Google próbował zrobić równoległy silnik renderowania CSS w C++ i poległ.
Mozilla zrobiła to samo w Rust i się udało - Stylo jest częścią Firefoxa.
Autor artykułu próbuje zaklinać rzeczywistość. Rust już jest killerem C i
@WhiskyRomeo: xD z C ci się pomyliło
@WhiskyRomeo: w C++ też nie