Rust RoadMap|🔝|
러스트 x 계정(예전 트위터)에서 BlueSky로 갈아탐|🔝|
- 250714 기준
- 머스크 형 손절 각 !!
Rust 한글 Eng설명서|🔝|
https://github.com/YoungHaKim7/YouTubeContents_GlobalYoung
-
코딩Coding-Rust러스트 | 러스트_프로그래밍Rust(GlobalYoung)
Effective Rust|🔝|
https://www.lurklurk.org/effective-rust/
Rust for Rustaceans 책에 나오는 학습 리소스 정리|🔝|
러스트 간단히 소개 Rust for Beginners – Get Started with the Most Loved Programming Language | FreeCodeCamp|🔝|
https://www.freecodecamp.org/news/rust-getting-started-with-the-most-loved-programming-language/
이제 손으로 짜는 코딩은 ByeBye) What you do use, you couldn’t hand code any better(당신이 사용하는 것, 당신은 더 나은 코드를 만들 수 없습니다)|🔝|
(출처 which Dr. Bjarne Stroustrup, father of C++, explains (see pg. 4)
-
사람이 할 일은 전체적으로 컨셉만 잡고 큰 틀만 잡지 세부적인 코딩은 AI에게 맡기면 된다. 그리고 10명에서 짤 코드를 혼자서도 코딩할 수 있는 대단한 AI 시대가 오고 있다.(땡규 GPT,BingAI) 결국 Polyglot만이 살길 (그냥 혼자만의 생각)
-
전체적인 코드를 이해하는 자만이 앞으로의 미래를 지배한다. 결국 Polyglot (그냥 혼자만의 생각)
-
https://github.com/jhartzell42/rust-c-book/blob/main/src/intro.md
-
What you don’t use, you don’t pay for (and Dr. Stroustrup means "paying" in the sense of performance costs, e.g. in higher latency, slower throughput, or higher memory usage)
-
What you do use, you couldn’t hand code any better
There is also an executive summary of the concept at CppReference.com.
-
Rust atomics & Locks 집중 분석|🔝|
-
Rust Atomics and Locks (Low-Level Concurrency in Practice by Mara Bos)
Isabella Muerte(@slurpsmadrips) August 1, 2019|🔝|
- Rust Programmers, if the Rust commuity wants to hide horrors, fight to prevent a major catastrophe, and unite humanity so we don't have to feel pain or be alone, that's not language evangelism. That's language evangelionism.
Before we get started... Some tips | Ryan Levick|🔝|
-
Rust Before Main - Ryan Levick - Rust Linz, July 2022
-
Computers are not magic
-
All of this is understandable
-
Everything you see here was made by humans
-
It's all a mix of deliberate choice & choice & random circumstance
-
At any given point, it's not always easy to tell which ?
-
Unfortunately, explanations are not always the best
-
컴퓨터는 마법이 아니다
-
이 모든 것은 이해할 수 있다
-
여기 보이는 모든 것은 인간이 만든 것이다
-
그것은 모두 의도적인 선택과 선택 그리고 무작위적인 상황의 혼합이다
-
어느 시점에서든 어느 것이 항상 구별하기 쉽지는 않다?
-
불행하게도, 설명이 항상 최선은 아니다
- 빠르지만 급하지 않게. 여유롭지만 결코 느리지 않게
- 출처: -얼어붙은 플레이어의 귀환 13화-
-
Programming is the art of transforming thought into code to accomplish a desired goal.
- 프로그래밍은 원하는 목표를 달성하기 위해 생각을 코드로 바꾸는 기술이다.
- 다음에서 발췌 Math for Programming | Ronald T. Kneusel.
-
- 러스트는 완전히 새로운 사고방식을 요구하는 언어로, 마음가짐이 학습 속도에 큰 영향을 줌
- 컴파일러와 친해지는 것이 핵심이며, 오류 메시지를 단순히 고치는 것이 아니라 이유를 이해하는 태도가 중요함
- 초반에는
clone()
,unwrap
등을 적극적으로 사용해 **작게 시작하고 점진적으로 … - https://corrode.dev/blog/flattening-rusts-learning-curve/
Tutorial Rust ___Easy Rust (My teacher스승님 최고 ❤️)|🔝|
2021-12-10 : Rust 기초 강의 시작
- 유튜브 주소(한글 강의)
- 1강
- https://www.youtube.com/watch?v=W9DO6m8JSSs
- 유튜브 주소(English Ver.영어 강의)
- 1강
- https://www.youtube.com/watch?v=-lYeJeQ11OI&list=PLfllocyHVgsRwLkTAhG0E-2QxCf-ozBkk&index=1
-Easy Rust eBook
google(comprehensive-rust) 구글팀에서 만든 러스트 4일 완성 tutorial|🔝|
https://google.github.io/comprehensive-rust/
comprehensive-rust (other resources)|🔝|
https://google.github.io/comprehensive-rust/other-resources.html
Comprehensive Rust 🦀(구글팀에서 만듬)|🔝|
https://google.github.io/comprehensive-rust/ko/other-resources.html
기타 등등 Rust tutorial|🔝|
-
tutorialpoint
Rust Doc std(standard Library DOC)|🔝|
https://doc.rust-lang.org/std/
DOCS.RS(rust 기타 crate문서들)|🔝|
Rust Language Cheats Sheet|🔝|
https://github.com/ralfbiedert/cheats.rs/
awesome rust|🔝|
https://github.com/awesome-rust-com/awesome-rust
Lincence라이센스 표시|🔝|
https://gist.github.com/lukas-h/2a5d00690736b4c3a7ba
https://shields.io/category/license
shields (뱃지 아이콘(toml, Crate Dependencies 기타 등등) 만들때 굿shields.io/) |🔝|
Rust eBook(Freely available programming books, 무료 배울 수 있음)|🔝|
Rust 공식 Learn 채널|🔝|
https://www.rust-lang.org/learn
Rust 공식 eBook eng.|🔝|
https://doc.rust-lang.org/book/
Experiment: Improving the Rust Book|🔝|
Clippy|🔝|
https://doc.rust-lang.org/nightly/clippy/index.html
https://rust-lang.github.io/rust-clippy/master/index.html
awesome rust|🔝|
https://github.com/awesome-rust-com/awesome-rust
Rustlings|🔝|
Presentation by Rust|🔝|
Rust is a system programming language, compiled and multi-paradigm. It is a cross between imperative language (C), object (C++), functional (Ocaml) and competitor (Erlang). It draws on the theories of the languages of recent years and the most popular programming languages in order to achieve three objectives: speed, security (in particular memory) and competitor (secure data sharing between tasks).
Rust's development was initiated by Graydon Hoare in 2006, particularly in order to resolve security flaws in Firefox without negatively impacting performance. To follow this tutorial, it is highly recommended that I have already developed in at least one other language (C, C++, Java, JavaScript, Python, etc.) because I will only briefly go through the basics. Its strengths are:
Managing ownership of variables Memory management Static typing Type inference Pattern matching filtering Genericity We'll review all of this in more detail. Some useful links:
-
Website: rust-lang.org
-
The documentation (always useful to have it on hand!)
-
Github repository (to view source code)
-
The rustbook (the official "course" in English)
-
Rustlings (a program of interactive exercises to accompany learning)
-rust by example (A compilation of rust examples)
- Reddit (to ask a question)
Rust 무료로 배울 링크|🔝|
-
러스트Rust❤️👍 기초 다 배우고 간단한 프로그램 만들면서 감 잡기
모든 언어를 무료로 공부할 수 있다.|🔝|
출처 : stackoverflow.com 알게 된 링크
역시 갓 스택 오버플로우
- Github 주소
https://github.com/EbookFoundation/free-programming-books
- EbookFoundation
https://ebookfoundation.github.io/free-programming-books/
모든 언어 기초 배우고 기초적인 프로그램 만들기 awesome for beginners 너무 좋다.❤️👍|🔝|
https://github.com/MunGell/awesome-for-beginners
Rust 공식eBook에 나오는 String개념|🔝|
https://doc.rust-lang.org/book/ch08-02-strings.html
러스트의 String 종류 ㅋㅋ|🔝|
String, &str
CStr, CString
Cow<'_, str>
Path, PathBuf
Vec<u8>
&[u8]
OsStr
- 보통 코딩 언어들은 2개지만
String
&str
-
17분 28초에 나옴 Rust❤️String 넣는 방법
.to_string()
.to_owned()
.into()
String::from()
format!()
YouTubeContents_GlobalYoung|🔝|
https://github.com/YoungHaKim7/YouTubeContents_GlobalYoung
소유권 규칙|🔝|
먼저, 소유권에 적용되는 규칙부터 살펴보자. 앞으로 살펴볼 예제들은 이 규칙들을 설명하기 위한 것이므로 잘 기억하도록 하자.
- 러스트가 다루는 각각의 값은 소유자(owner)라고 부르는 변수를 가지고 있다.
- 특정 시점에 값의 소유자는 단 하나뿐이다.
- 소유자가 범위를 벗어나면 그 값은 제거된다.
Ownership Rules|🔝|
First, let's take a look at the ownership rules. Keep these rules in mind as we work through the examples that illustrate them"
- Each value in Rust has a variable that's called its owner.
- There can only be one owner at a time.
- When the owner goes out of scope, the value will be dropped.
Borrowing rules|🔝|
-
At any given time, you can have either one mutable reference or any number of immutable references.
-
References must always be valid.
Borrow Checker(Rustlang)|🔝|
Rust Borrow Checker (해외 유튜버 자료) | |
Date | Title & Link |
21-5-15(sat.) | The Rust Borrow Checker - A Deep Dive A Deep Dive - Nell Shamrell-Harrington, Microsoft |
23-1-21(sun.) | Sneaking By The Rust Borrow Checker - Interior Mutability Code to the Moon |
https://doc.rust-lang.org/book/ch04-01-what-is-ownership.html
What is Ownership? - The Rust Programming Language
Ownership is a set of rules that governs how a Rust program manages memory. All programs have to manage the way they use a computer’s memory while running. Some languages have garbage collection that constantly looks for no-longer used memory as the prog
-
소유권자의 수명이 다하기 전에 갚아야 합니다.
-
무효화
메모리를 빌려간 참조가 있는 동안은 변경할 수 없습니다. 컴파일러가 참조의 수명을 추척합니다.
Ownership(Rustlang)|🔝|
Rust Option | |
Date | Title & Link |
22-3-19(sun.) | rust한글강의_러스트_오너쉽개념Borrowing이해하기_메모리할당_What is Ownership_rust programming#rust #ownership #borrowing |
22-6-07(tue.) | 자바(Java)_vs_러스트_비교하면서 러스트오너쉽개념이해_기본syntax연습하기part3_#java #rust #ownership |
rust -memory-container|🔝|
https://github.com/usagi/rust-memory-container-cs
- small size ver.
Ownership Concept Diagram|🔝|
220607자바(Java)vs러스트비교하면서 러스트오너쉽개념이해기본syntax연습하기part3_#java #rust #ownership
출처
Rust for Java Developers 3/3 - Understanding Ownership https://youtu.be/Vg1LGHuAPP8
Rust소유권 규칙Ownership Rules & Borrowing rules https://economiceco.tistory.com/12591
Rust) shared reference ❤️ unique reference https://youtu.be/Bfqx_V2gp1Y
Easy Rust|🔝|
- 프로그래밍 언어 러스트를 배웁시다! 019 Easy Rust in Korean: references and shadowing
Easy Rust 모아보기|🔝|
https://www.youtube.com/watch?v=oOXM9Aafem8&list=PLfllocyHVgsSJf1zO6k6o3SX2mbZjAqYE&index=20
Understanding Ownership in Rust | Let's Get Rusty|🔝|
같이 보면 좋은 자료|🔝|
-
stack&heap메모리개념잡기 https://youtu.be/OwQxo4sGVWo
-
깊은 복사 vs 얇은 복사 이해 Shallow_Copy VS Deep_Copy https://youtu.be/J11bAkyMbN0
Rust소유권 규칙Ownership Rules &Borrowing rules
★★★Rust Toturial 로드맵(Road Map)첫시작!-★★★(총정리)Rustacean이 되어 보자!!Let's go!
Option (Rustlang)|🔝|
Rust Option | |
Date | Title & Link |
22-5-9(mon.) | 한글Rust러스트_013_Option_총정리_part1 #rustlang #rust #option |
22-5-11(wed.) | 한글Rust러스트_014_Option_part2 _Rustonomicon_unsafe_RawVector#rustlang #rust #option |
22-5-11(wed.) | 한글Rust러스트_015_Option_part3_Implementing_Vec_Rustonomicon_#rustlang #rust #option #unsafe |
22-5-13(fri.) | 한글Rust러스트_016_Option_part4_메모리관리Management_Memory_rustonomicon_ pointer_leak memory #rust #rustlang |
Easy Rust|🔝|
- 프로그래밍 언어 러스트를 배웁시다! 046 Easy Rust in Korean: Option
- Rust_Option❤️정리_data_type_converters_transformers_accessor_exporter
Rust 공식 문서|🔝|
이 문서를 뼈대로 설명해도 됨. 예문까지 깔끔
https://doc.rust-lang.org/std/option/
Rust's Option❤️in One Figure(Reddit자료)|🔝|
Rust's Option in One Figure Posted in r/rust by u/arsdragonfly
Design-Patterns (Rustlang)
|🔝|
https://refactoring.guru/design-patterns/rust
이건 러스트 디자인 패턴 다른 자료 ebook|🔝|
https://rust-unofficial.github.io/patterns/intro.html
https://rust-unofficial.github.io/patterns/additional_resources/design-principles.html
-
Single Responsibility Principle (SRP): A class should only have a single responsibility, that is, only changes to one part of the software's specification should be able to affect the specification of the class.
-
Open/Closed Principle (OCP): "Software entities ... should be open for extension, but closed for modification."
-
Liskov Substitution Principle (LSP): "Objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program."
-
Interface Segregation Principle (ISP): "Many client-specific interfaces are better than one general-purpose interface."
-
Dependency Inversion Principle (DIP): One should "depend upon abstractions, [not] concretions." DRY (Don’t Repeat Yourself)
"Every piece of knowledge must have a single, unambiguous, authoritative representation within a system"
KISS principle|🔝|
most systems work best if they are kept simple rather than made complicated; therefore, simplicity should be a key goal in design, and unnecessary complexity should be avoided
Law of Demeter (LoD)|🔝|
a given object should assume as little as possible about the structure or properties of anything else (including its subcomponents), in accordance with the principle of "information hiding"
Design by contract (DbC)|🔝|
software designers should define formal, precise and verifiable interface specifications for software components, which extend the ordinary definition of abstract data types with preconditions, postconditions and invariants
Encapsulation|🔝|
bundling of data with the methods that operate on that data, or the restricting of direct access to some of an object's components. Encapsulation is used to hide the values or state of a structured data object inside a class, preventing unauthorized parties' direct access to them.
Command-Query-Separation(CQS)|🔝|
“Functions should not produce abstract side effects...only commands (procedures) will be permitted to produce side effects.” - Bertrand Meyer: Object-Oriented Software Construction
Principle of least astonishment (POLA)|🔝|
a component of a system should behave in a way that most users will expect it to behave. The behavior should not astonish or surprise users
Linguistic-Modular-Units|🔝|
“Modules must correspond to syntactic units in the language used.” - Bertrand Meyer: Object-Oriented Software Construction
Self-Documentation|🔝|
“The designer of a module should strive to make all information about the module part of the module itself.” - Bertrand Meyer: Object-Oriented Software Construction
Uniform-Access|🔝|
“All services offered by a module should be available through a uniform notation, which does not betray whether they are implemented through storage or through computation.” - Bertrand Meyer: Object-Oriented Software Construction
Single-Choice|🔝|
“Whenever a software system must support a set of alternatives, one and only one module in the system should know their exhaustive list.” - Bertrand Meyer: Object-Oriented Software Construction
Persistence-Closure|🔝|
“Whenever a storage mechanism stores an object, it must store with it the dependents of that object. Whenever a retrieval mechanism retrieves a previously stored object, it must also retrieve any dependent of that object that has not yet been retrieved.” - Bertrand Meyer: Object-Oriented Software Construction
Rust
vs Haskell
|🔝|
https://serokell.io/blog/rust-vs-haskell
Haskell & Rust mind map|🔝|
https://forum.cardano.org/t/haskell-and-rust-mind-map/20212
Rust Mind Map|🔝|
https://github.com/ItFlyingStart/Rust
Rust Mind Map 2|🔝|
https://www.aloneguid.uk/posts/2021/01/rust/
Save space by cleaning non-essential files from software projects.|🔝|
- 러스트 프로젝트가 많아지면 target폴더 지워야하는데
kondo
라고 치면 다 지워준다. 최고!!💕
kondo
-
Cleans unneeded directories and files from your system.
윈도우 파웨셀에서 원하는 폴더 강제로 지우기(pwsh.exe) WindowsOS에서|🔝|
- rm -Force 지우고 싶은 폴더
rm -Force .\read_line03
윈도우 파웨셀에서 .gitignore 만들기 /target세팅 (pwsh.exe) WindowsOS에서|🔝|
- WindowsOS윈도우에는 touch가 없으니 echo를 활용하면 된다. 신기한건 Linux나 macOS에서도 되서 신기했다. 무조건 touch로 해야하는줄 알았는데 ㅋㅋ
echo /target >> .gitignore
or
echo "/target" >> .gitignore
윈도우 파워셀에서 러스트 target폴더 지우기(pwsh.exe) WindowsOS에서|🔝|
- 상위 폴더에서 하면 하위 폴더에 있는 target 폴더 다 지워진다. ㅎㅎ 편하네 ㅋㅋ 개꿀!!
Get-ChildItem -Filter ./target -Recurse -Force | Remove-Item -Recurse -Force
윈도우 파워셀에서 러스트 target폴더 찾기(pwsh.exe) WindowsOS에서|🔝|
dir .\ -r -i "target"
Tutorial Rust(다른 외국 유튜버 깃허브Rust정보)|🔝|
https://github.com/GuillaumeGomez/tuto-rust-fr
https://github.com/0atman/noboilerplate
LetsGetRusty Cheat Sheet 얻기|🔝|
https://www.youtube.com/c/LetsGetRusty/featured
https://letsgetrusty.kartra.com/page/GWh4
https://letsgetrusty.kartra.com/page/XDk8
시작 예제 some, None ex)(외국 유튜버 설명)|🔝|
https://economiceco.tistory.com/m/6140
https://economiceco.tistory.com/8614
Rust __Unstable - Book|🔝|
https://doc.rust-lang.org/beta/unstable-book/the-unstable-book.html
Rust 코스 모음$|🔝|
-
Easy Rust 유료 버젼Learn Rust in a Month of Lunches
-
딥 다이브 느낌의 완벽한 러스트Complete-Rust-Programming-Reference-Guide
-
최상급자 코스