묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결
머신러닝/딥러닝 기초 강사 잇잇쌤입니다.
안녕하세요 ~코딩박사 잇잇쌤입니다!강의문의는 sap.con.jen@gmail.com14년차 개발 프리랜서 강사 이고, IT 용어부터 간단명료하게 쉽게 진입 장벽을낮춰드리는 매직을 부리겠습니다!( 아 잇잇쌤은 IT를 Eat 냠냠 하는 과정을 표현했습니다!! )블로그(파이썬 기초 강의가 있긴 하지만..)랑 youtube(파이썬 AI 강의가 있긴 하지만..)도 있는데 제발 들어오지 마세요! 너무 구독자 수가 적어요 😂😂제가 IT업계에 들어온 계기는...19살때, 해커학원? (그때는 코딩강의가 없고 오프라인 학원이 다 해커학원이었다는.. 당시... C언어가 재밌었던 이유가 포인터때문에 ..나홀로 여자혼자 배운다..라는 자부심도 있었던 것 같음) C언어를 배운 것을 시작으로, 대학교때 안드로이드 1 개발 을 시작으로, 외국계 테스팅 을 위해서 인턴쉽도 경험도 쌓고, 그 이후, 2012년도에 중견 IT업계 System Integration 회사에 입사해서 밤샘도 많이 했으며, System Management 를 다년간 경험하면서 느낀 험난했던 과정 속 나도 모르게 노하우를 쌓아왔습니다. (좋코딩에서, 웹드라마 주인공이 과거의 딱 저라는...)이후 대기업에서 IT관련 강의, 지식을 공유 흥미를 느껴,프리랜서로 나와, IT 관련 수업도 진행하면서 내가 그동안 배웠던 언어들 JAVA, Javascript, ABAP,C, Database 등을 정리하면서 코로나의 블루를 타파하고자 미니 프로젝트등을 진행 했었고,파이썬 등, 알고리즘, AI 머신러닝 , 딥러닝 기술 등을 숨고를 통해 나눈 경험이 있습니다.안티에이징을 위해서 마치 백신 주입하듯이 , 신기술을 배워야 살아 남는게 이 업계의 특성인데, 가장 쉽게 배우는 방법을 터득하면서 여러분들과 소통하고 싶어 졌습니다 !~!!이후, 코로나가 끝나고 운 좋게, 강의를 촬영해커스 HRD 에서 "Rust 기초부터 실무까지 과정"https://www.hackershrd.com/lecture_240216.php?mode=lecView_240216&pcate=cate&scate=002&product_key=01::nref%3E0%3EB007%3EM056&p_id=0000000000&s_id=Y24M062602메가스터디아카데미 "인공지능 기초" 과정https://megastudyacademy.co.kr/camp/lecture/801멋사넥스트 (멋쟁이사자처럼) "AI를 활용한 파이낸셜 모델링(PF) 과정"https://www.likelion-next.com/classes/215041한빛앤 과 다수 협업하면서 VOD강의를 출시하기도 하였습니다!!이제는 인프런에서 여러분들과 만날 수 있게 되어 영광입니다.저는 5시간 동안 카메라 앞에 서서 여러분들께 설명하는데 너무 즐거워서 지치지 않습니다.저의 강의에 대한 지치지 않고 포기하지 않는 열정!열정!열정!으로당신이 허락한 시간 안에 모든걸 쏟아 붇겠다라는 마음 가짐으로 항상 임해오고 있습니다.나중에 기회되면 라이브 강의에서 만나면!반갑게 알아봐 주시면 너무!너무!너무! 반가울 것 같습니다 !인공지능이 도대체 뭐길래 배우는 거지? 🔎비전공자 분들, 향후에 미래에 어떤 언어들이 유망한지, 현업이신데 엑셀 로만 데이터를 분석하고 계신 분들, 개발자 10년이상되셔서 좀 변화가 필요하신 분들은 PM님 C레벨 이사님들! 모두 모두 이 강의를 주목해주세요.저도 14년차 개발자로, 일해오면서 안티에이징 (똑같은 업무에 질려 노화되는 현상) 을 위해서 많은 노력을 해왔어요.그중에 가장 특효약이 바로 인공지능 기초과정 (머신러닝,딥러닝,신언어1개 배우기) 였어요!제가 그동안 Java나 C++,자료구조 많이 가르쳐봤는데!Rust나 AI 과정을 준비하면서 너무 신세계인거에요!이렇게 운영체제 모르고 코딩했구나... 이렇게 효율적인 메모리 언어를 그동안 몰랐구나,CTO가 결정한 솔루션이 사용하라는 대로 그 언어만 계속 사용해 왔구나! 밤샘으로 후회스럽더라구요!하면서, 앞으로는 다양한 좋은 언어들 배워 봐야 겠다 라는 욕심이 생겼어요!그래서 다양한 강의를 만들면서 가르치고 알려주고 상대방과 소통하면서 이해가 된다고 개발 커리어를 위해서다양한 과정들을 도움이 되었다고 할 때, 너무 행복함을 느꼈답니다!여러분들의 로드맵 참여는 저에게 큰 힘이 됩니다!!!많은 관심 주시면 저도 다양한 강의가 준비되어있으니까 앞으로 인프런에 강의도 기회되면 올릴거고 다양하게 만날 수 있게 노력하겠습니다~숨고 후기보기 ! : https://soomgo.com/profile/users/1949734?from=portfolio뭐 어쨌든 결론은 !!! 저의 로드맵에 참여해주세요~ 😍😍▼▼▼▼▼▼▼▼▼https://inf.run/9Vjfz
-
미해결우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
메모리 관리규칙에서 질문드립니다.
fn main() { let s: String = String::from("헬로"); let (s, len) = string_length(s); println!("문자열 {}의 길이는 {}", s, len);}fn string_length(s: String) -> (String, usize) { (s, s.len())}string_length 함수에서 선생님께서 쓰신 코드와 순서를 바꿔 입력하였을때 오류가 발생합니다. 선생님: (s.len(), s)저 :(s, s.len()) 물론 메인함수의 (s, len) 순서도 수정하였으며, string_length 함수의 반환타입도 순서도 수정하였습니다.
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
튜플과 구조체 차이 설명에 관한 질문
안녕하세요. 좋은 강의 감사합니다.12번째 구조체 기초 강의에서 튜플과 구조체의 차이에 대해서 말씀해주셨는데, 여기서 두 가지의 질문이 있습니다.첫 번째로는 강의에서 튜플과 구조체의 차이에 대한 예시로, "구조체는 이름을 따로 붙여줌으로서 Color가 들어갈 자리에 Point가 들어가거나 Point가 들어갈 자리에 Color가 들어가게 되는 문제를 일으키지 않는다" 라고 하셨습니다.이때, 앞선 6번째 강의에서 튜플을 정의했던 내용을 활용하여let point: (i32, i32, i32) = (2, 2, 2);let color: (i32, i32, i32) = (255, 255, 255);하는 식으로 정의를 한다면 말씀하신 문제에 대해서는 방지가 가능하다고 생각하는데, 제가 어느 부분에서 잘못 이해하고 있는 것인지 궁금합니다.두 번째로는 일반 Struct를 정의하실 때는 struct User { name: String, email: String, active: bool, }으로 뒤에 세미콜론을 따로 사용하지 않으셨는데,튜플 구조체에서는 struct Color(i32, i32, i32);처럼 뒤에 세미콜론을 사용하신 부분에서,명령문과 표현식에 있어 세미콜론 유무에 대한 차이가 있다는 것은 어느 정도 알겠지만, 이 부분에선 어떤 이유로 차이가 있는 것인지 궁금합니다.감사합니다!
-
미해결우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
튜플과 배열 강의 4:50에서 벡터 나중에 설명해주신다고 하셨는데
벡터에 대한 설명이 강의에 없습니다...ㅠㅠ 가능하시다면 추가 부탁드립니다.
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
trait를 인자로 받을 때 &impl과 &dyn차이
Trait강좌에서 &impl만을 사용해 trait를 구현한 객체를 함수인자로 전달 받았는데 &dyn을 사용했을 때 차이가 궁금합니다.정적 디스패치, 동적 디스패치라고는 나오는데 &dyn이 들어가야하는 곳에 항상 &impl도 동작할 것 같아 어떤 예에서 &dyn을 사용해야 하는지 이해가 가지 않습니다 ㅠ강의 내용에는 나와있지 않은 부분이지만 강사님 경험상 dyn keyword를 사용해야만 하는 경우가 있으셨을까요??
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
구조체는 언제나 Heap에 저장되나요??
사각형 너비와 높이로 면적 구하는 예제에서struct Rectangcle { width : u32, height : u32, } fn main() { let rect = Rectangcle{ width:20, height:30, }; println!("가로가 {}, 세로가 {}인 사각형의 면적은 {}이다.", rect.width, rect.height, area(rect)); print!("{:?}", rect.width); } fn area(rect : Rectangcle)->u32 { rect.width*rect.height }위와 같이 만들었더니 소유권 이전이 일어나더라고요.크기가 정해진 자료형으로만 이루어진 튜플이 Stack에 저장되는 것 처럼 Rectangle 구조체는 크기가 정해진 자료형이라 Stack에 저장될거라고 생각했는데 소유권 이전이 일어나는 걸 보면 Heap에 저장되는 건가 싶어서 질문 드립니다. Stack에 저장되는 자료형은 Copy 되고,Heap에 저장되는 자료형은 소유권 이전이 되는 방식이라고 생각해서 든 의문인데 제가 잘못 알고 있는 부분이 있을까요??좋은 강의 잘 듣고 있습니다.
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
Lifecycle 강의에서 두 문자열 슬라이스를 비교해 긴 문자열 슬라이스를 리턴하는 것 관련 질문
강의 내용에서는 어떤 값이 길지 컴파일러가 예측하지 못하기 때문에 라이프사이클을 명시해야한다고 했는데 이 부분이 이해가 되지 않습니다로컬변수를 리턴하려고 하는 게 문제가 되는게 아닌가요?
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
혹시 어떤 폰트일까요?
궁금해요!
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
build 오류
cargo add ... 이후 build는 정상적으로 되는데, cargo lambda build --release --arm64 에서 많은 라인의 error와 함께 컴파일하지 못하네요... 구글링해봐도 잘 모르겠어요 error 마지막 몇라인을 첨부합니다...... error[E0425]: cannot find function drop in this scope --> /.cargo/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/src/race.rs:401:21 |401 | drop(unsafe { Box::from_raw(ptr) }); | ^^^^ not found in this scopeerror[E0425]: cannot find function, tuple struct or tuple variant Ok in this scope --> /.cargo/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/src/race.rs:405:13 |405 | Ok(unsafe { &*ptr }) | ^^ not found in this scopeSome errors have detailed explanations: E0405, E0408, E0412, E0425, E0432, E0463, E0531.error: could not compile once_cell (lib) due to 241 previous errors
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
웹 어플리케이션 개발에도 잘 사용되나요?
러스트의 매력을 느껴서 학습 중에 있긴 한데 해당 언어가 웹 어플리케이션 만들 때에도 잘 활용될 수 있는지가 궁금합니다.국내에선 해당언어로 웹어플리케이션을 만들었다는 얘기를 거의 듣지는 못해서 좀 궁금하네요.가능하다면 해외에서는 어느정도로 활용되는지도 궁금해요!
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
임대값의 수명 강의가 재생이 안되고 있습니다~
임대값의 수명 강의 보는 차례인데,재생이 안되어서 확인 부탁드립니다~!
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
임대값의 수명에 대한 강의는 언제쯤 볼 수 있을까요?
섹션7에 제네릭, 트레이트 강의는 있는데 임대값의 수명 강의는 아직 없는 것 같습니다. 언제쯤 볼 수 있을지 궁금합니다.
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
문자열 리터럴이 너무 어려워요ㅠㅠ
문자열 리터럴이 뭘 뜻하는지 잘 모르겠어요.리터럴이 말 그대로 데이터 값 그 자체라고 생각했는데요 (ex 2, 4, "hello") 그런데 강의 중 "문자열 리터럴이 특정 영역에 있는 문자열 데이터를 참조하고 있는 값"이라고 설명하셔서 혼란스러워요.그럼 문자열 리터럴은 결국 문자열을 가리키고 있는 포인터인가요?let hello: &str = "hello" 그리고 "문자열 리터럴이 특정 영역에 있는 문자열 데이터를 참조하고 있는 값" -> 여기서 특정 영역은 data 영역을 말하는 것일까요?리터럴이라는 용어 자체가 그냥 데이터 값이라고 알고 있었는데, 리터럴이 참조 값이었고 타입은 문자열 슬라이스 타입이어서 헷갈려요ㅠㅠ 도와주세요
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
Integer는 자동으로 copy되서(copy type)(integer 는 stack에 할당되서)
예문을Integer먼저 넣고 두번째 변수는 String 이게 더 좋지 않을까요? 출처 https://www.reddit.com/r/rust/comments/up1yhg/rust_ownership_for_integer_vs_string_literals/What’s going on under the covers is that when a variable who’s type has a constant length (like an integer) gets passed to a function, rust allocates space on the call stack for that variable and copies it’s value into the function’s call stack. Thus the instance of X that your function gets is different (is at a different memory address) than the copy of X that was passed to it. For strings, the compiler doesn’t know how much space to allocate (because the function could be called with your constant length string or any other string).
-
해결됨우아한 고성능 프로그래밍 언어 Rust 입문 및 활용
명령어를 입력 한 후 source "$HOME/.cargo/env" 이 명령어를 입력해야 합니다.
명령어를 입력 한 후 source "$HOME/.cargo/env" 이 명령어를 입력해야 합니다. 해당 설명이 누락되어 있는 것 같아서요.! 참고로 저는 m1 입니다!