Rust, C/C++, Python 비교하기
Rust와 다른 언어를 비교하기 위해서는 디버그 툴을 설치해야 한다.
비교할 언어들
- C / C++
- Python
- Rust
운영체제별 메모리 사용량 확인
Window
ctrl + shift + esc 에서 프로세스 / 자세히 창에서 메모리 사용량 확인
Linux > Ubuntu, Unix, …
terminal 열고 top
입력해주면 해결 된다.
1
top
이렇게 보면 메모리 누수 정도는 확인할 수 있지만 메모리가 어떻게 할당되는지 확인할 수 없다. 그렇기 때문에 IDE 상에서 확인하는 것도 좋다.
IDE 상에서 확인하기
- Python : Pycharm이 가장 깔끔하다.
- C / C++ : Visual Studio Community 디버그 기능이 강력한 편이니 되도록이면 VS 사용을 권장한다.
- Rust : VSC (+ plugin : Rust-analyzer)
- 디버깅 방법 : https://velog.io/@pid011/rust-with-vscode-windows
Rust 공식문서
Learn Rust
A language empowering everyone to build reliable and efficient software.
C나 python 같이 강의도 많고 자료도 많고 커뮤니티 많은 언어는 개발자가 아니라면 굳이 공식문서를 참고할 필요가 없다. chatGPT 등장 이후로는 전세계적으로 자주 사용하는 프로그래밍 언어는 AI한테만 질문 던져주면 쓸만한 코드 초안과 라이브러리를 추전해준다.
하지만 Rust나 Svelte, Tauri 같이 아직 마이너한 쪽은 자료가 별로 없기 때문에 GPT마저 엉뚱한 대답을 놓을 때가 빈번해, 공식 문서에 의존할 수 밖에 없다. 공식문서가 대게 초보 친화적이지 못하지만 눈에 익혀 두면 필요한 내용만 찾아서 읽을 수 있을 것이다.
추후 작성할 내용
언제할 지는 모르겠지만 어떤 내용을 다룰지 까먹기 전에 어떻게 정리할지 미리 적어둔다.
- 소유권과 라이프타임 비교
- c++ 는
{}
안 변수를 다른 변수로 전달이 가능 - python은
{}
안 변수를 그냥 바깥으로 빼낼 수 있다. - rust는
{}
안 변수를 다른 변수로 전달하면 lifetime 에러가 발생한다.
- c++ 는
[String 문자열을 취급하는 방법]({{ site.baseurl }}/Rust-String)
작성 중..- String, String::Literal 도대체 무슨 차이냐
- ASCII, Unicode, UTF-8 인코딩 차이
- 메모리 할당 해제 방식
- 파이썬, JS GC 발생시키는 방법
- C++
- double free 에러
- Rust
- 자료구조 만들기
- 포인터 개념에 대해서 짚어보기
- Box, Rc, Refcell
- 포인터 개념에 대해서 짚어보기
- Rust만의 유니크한 기능
- Enum
- struct
- Trait
- impl
- Rust 관련 프로젝트?
This post is licensed under CC BY 4.0 by the author.