장점 덮어두고 단점만 짚음





일단 소유권으로 대표되는 메모리 관리가 존나 어려움

대표적으로 가변참조가 유일해야해서 다른 언어에선 밥먹듯이 하던 설계가 러스트에선 몸 비틀어야 하거나 아얘 못함




그 소유권에 맞춰서 타입들도 어려움

밑에있는 컨테이너같은거나 String/str 같은거 처음보면 뭔지 도통 알수가 없음




그리고 문법이 정확한걸 강요함 수명도 명시적 시그니쳐도 명시적 형변환도 명시적 에러처리도 명시적임
그래서 타이핑이 많음 제일 열받을땐 impl 블록들에 bound들 매번 쳐넣을때임 블록마다 다를수 있어서 생략못하는건 알겠는데 그래도 빡침
매크로가 있긴한데 얘도 정확한걸 강요해서 C처럼 전처리기가 바꿔치기 하는게 아니라 아무데나 못넣고 형식을 지켜서 써야됨


또 컴파일이 오래 걸리는데다 비례해서 링킹도 꽤 걸림 의존성이 세자리쯤 되거나 시퓨가 안좋으면 좀 거슬림
참고로 세자리 정도는 gui면 당연히 넘김


마지막으로 진입장벽 많이 높음 문법이나 소유권 이런거 영향도 있는데 심지어 서드파티 지향적이라 그외에도 알아야할게 좀 있음
serde같은 라이브러리야 다들 비슷하다쳐도 thiserror같은 매크로 유틸이랑 cargo-edit같은 바이너리 유틸들 모르면 매우 불편함