Nie jestem zawodowcem, o ile się orientuję, to jednym z większych problemów z C++ jest to, że nie ma kontroli zarządzania pamięcią ani w formie sprawdzenia przy kompilacji ani jako garbage collector. Co stoi na przeszkodzie dodania sprawdzania w czasie kompilacji jak np w Rust? Na przykład w formie opcji, ktoś chce się upewnić to włącza sprawdzenie przy kompilacji, jak nie to zostaje przy starym kompilatorze. Trochę to wydłuży kompilację, ale wydajność
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Goglez: W nowoczesnym C++ problemy z kontrolą pamięci praktycznie nie występują.

Co stoi na przeszkodzie dodania sprawdzania w czasie kompilacji

Nie da się w pełni sprawdzić czegoś, co dzieje się w runtimie. Można jedynie posłużyć się sanitizerami, albo jakimś valgrindem.
  • Odpowiedz
Co stoi na przeszkodzie dodania sprawdzania w czasie kompilacji jak np w Rust?


@Goglez: Niedostatecznie ekspresywny system typów w C++, który nie rozumie pojęcia czasu życia wartości. Musiałbyś robić analizę całego programu a to z kolei nie jest możliwe ze względu na specyficzny sposób budowania projektowe C++ gdzie pliki są kompilowane osobno.
  • Odpowiedz
@Krolik: prowadzisz moze jakis blog? bo ciekawie sie czyta twoje wpisy czy komentarze dotyczace programowania, a z wykopu slabo by bylo korzystac do tego celu ;/
  • Odpowiedz
Pare pytań do osob z #embedded #clang #c #rust #rustlang
Zaczełem troche czytać o embedded i RTOS, RISC-V, ARM i nawet ciekawe się to wydaje.

1. Trudno się dostać na juniora do embedded?
2. Lepiej uczyć się C czy lepiej Rust?
3. Co bardziej pracodawcy wymagają ARM czy RISC-V?
4. Godne książki polecenia w tym temacie?
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@open-alpha: C++ jest trudny i mimo, że jestem bardzo dużym entuzjastą tego języka, na bieżąco go śledzę i wydaje mi się, że mam całkiem dobrą wiedzę to powoli męczy mnie to, że legacy jest jednak dużym bagażem, który trzeba za sobą ciągnać i coraz częściej czuje się lepiej grzebiąc w C.

Ja też parę lat temu jeszcze pracowałem w webach :) Później przeskoczyłem na C++ i teraz embedded. Pomogły własne projekty
  • Odpowiedz
Hej! Generalnie programuję już trochę czasu, działam w tym na co dzień, ale ostatnio interesuje mnie dość mocno temat #elektronika, o którym nie wiem właściwie nic. Chcę w to wejść, aby finalnie być może zbudować/budować coś swojego w fizycznej formie i w połączeniu tego z #programowanie w językach niższego poziomu.

Oczywiście słyszałem na temat kursu od @Forbot:
https://forbot.pl/blog/kurs-elektroniki-dla-poczatkujacych-id5151

Pytani jednak moje jest o sprzęt
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Muszę przyznać, że programuje sobie w #rustlang i wygodny ten #bingai. Postanowiłem tez poużywać go do wyszukiwania różnych rzeczy jak "o której skoki narciarskie" itd i muszę przyznać, że wszystko dokładnie wyszukał. Mógłby być trochę szybszy, ale może za kilka lat wyprze to całkowicie wyszukiwarki jakie znamy :)
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#mstarzecnews #webdev #coding #nodejs #javascript #go #rustlang #it #bash #aws #apple #windows #electronics

## JS/Web:
- Copilot for interface design - https://www.usegalileo.ai/
- NestJS: The Good, The Bad, and The Ugly - https://betterprogramming.pub/nestjs-the-good-the-bad-and-the-ugly-d51aea04f267
- 16 bit ANSI C99 x86 compiler, assembler and virtual machine written entirely in TypeScript -
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Tauri – nowy rustowy framework chce zastąpić Electrona

Electron pozwolił przenieść aplikacje webowe na pulpit, ale są one mało resposywne i zużywają sporo RAM-u. Chce to zmienić nowy, opensource'owy framework Tauri, pozbawiony tych wad.

#rustlang #programowanie #naukaprogramowania #programista15k #it #frontend #webdev #technologia
Bulldogjob - Tauri – nowy rustowy framework chce zastąpić Electrona

Electron pozwoli...

źródło: 100223_codalejpoelektronie_(1)

Pobierz
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Bulldogjob: zobaczymy, z doświadczenia wiem że korpobeton w sprawie electrona jest mocny, i jeśli konkurencja i użytkownicy tego nie wymusza, to nic się nie zmieni w najpopularniejszych aplikacjach jak Teams, Discord, Slack etc...
  • Odpowiedz
zastanawiam się nad wejściem w #rustlang najpierw hobbistycznie, a potem może kto wie zawodowo. jakie macie wrażenia z używania tego języka, wsparcia community, bibliotek i ich dodawania do projektu, wsparcia cross-compile?

do tej pory zawodowo robiłem w C++, dość mnie to zaczęło męczyć pisanie w nim, sporo rzeczy trzeba od zera robić. trochę w pythonie robiłem, ale brak typowania zmiennych czy nawet czasami brak bindingów do bibliotek jest dla mnie
  • 41
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mapache: piszę w tym zawodowo od pewnego czasu. Na początku trochę zajmuje przyzwyczajenie się do borrow checkera i nauczenie się pewnych charakterystycznych idiomów. Potem idzie już bardzo gładko. Ogólnie na plus: dobry tooling (cargo), całkiem szybki kompilator przyrostowy, chyba najlepsze komunikaty o błędach jakie kiedykolwiek widziałem, bardzo wysoka wydajność generowanych programów, język na tyle wysokopoziomowy, że pisze mi się w nim szybciej i. wygodniej niż w Javie, zwłaszcza biorąc pod
  • Odpowiedz
@mapache: Rust nie jest OOP w sensie Javy, więc wzorce Javowe / GoF radzę odstawić na półkę. Generalnie kodowanie w Rust w stylu jakby to była Java to proszenie się o bęcki od kompilatora. Projekt nad którym pracuje, to proxy o ultra niskich opóźnieniach na potrzeby rozproszonego systemu baz danych w chmurze, umożliwiające mirroring ruchu.
  • Odpowiedz
@placebo_: ten przełom już nastąpił, Rust jest pierwszym językiem innym niż C który został dodany oficjalnie do kernela Linuksa. Nie udało się to wcześniej ani C++ ani D.
  • Odpowiedz
choćby brakuje mu abstract class/interface i nie jest w ogóle ogarnięty na pracę OO.


@sorek: Że jak? Przecież ma traity, które są o wiele silniejszym mechanizmem abstrakcji niż interfejsy z języków C++ i Java; zwłaszcza że niedawno dodali też generic associated types, przez co Rust jest już prawie jak Haskell / Scala.

Miałeś na myśli może że nie ma dziedziczenia, ale to jest zaleta a nie wada. OO w takiej
  • Odpowiedz
: lepiej opakować w Either[Throwable, T]


@farmac: przecież to jest właśnie odpowiednik rustowego Result. Oczywiście są drobne różnice w szczegółach, ale zasadniczo koncepcja jest ta sama. Co do kumulowania errorów to zdaje się anyhow to umie.
  • Odpowiedz
Co do kumulowania errorów to zdaje się anyhow to umie.


@Krolik: tu chodzi o inny rodzaj. Z tego co widzę to anyhow wspiera łancuch errorów przez co dany error trzyma w sobie przyczynę. W przypadku wspomnianego Validated chodzi o operację łączenia błędów w taki sposób, że wystąpienie pierwszego nie prowadzi do short circuitingu tj. kolejne funkcje sprawdzające się nie odpalą.

Rustowy Result ma metodę and_then, która jest operacją monadyczną
  • Odpowiedz