PHP 중국어 홈페이지 여러분 안녕하세요! 저는 잘생긴 청년입니다. 오늘은 저를 반성하게 만드는 매우 감동적인 이야기를 여러분께 가져왔습니다. 오늘 제가 말씀드릴 것은 아버지께서 저에게 프로그래머가 되는 법을 가르치기 위해 어떻게 액션을 사용하셨는지에 대한 것입니다.
오래된 테스트
둥근 인터페이스 키보드, 2003
누군가 질문함 이 키보드가 지워지지 않았다면? 아니, 지울 수 없는 시간의 흔적이다. 세부 사항에주의를 기울이는 친구들은 프로그래머가 어떤 키를 가장 많이 사용하는지 알아낼 것입니다. (ASDW, YUHJ, 어렸을 때 King of Fighters를 플레이하면서 남겨진 것들)만 빼고요. 이 키보드는 낡았지만 아버지는 버리지 않으셨습니다. 2003년에 그는 중고 시장에서 주 주파수 486Cpu의 중고 컴퓨터를 구입하고 독학으로 조립을 배우기 시작했습니다. 우리 아버지는 중학교 교육만 받으셨습니다. 하지만 그는 뛰어난 실무 능력을 가지고 있습니다.
프로그래밍 기반 제로로 임베디드 개발 입문
2003년에 전자공장에서 막 사표를 냈는데, 전자공장에서 이런 마이크로 컨트롤러를 봤거든요. 토이는 엔지니어들의 임금과 혜택을 보았고, 당시 그는 단지 조립 라인의 납땜인에 불과했지만, 자신의 직업의 한계도 느꼈습니다. (이것은 또한 우리에게 폭로를 가져옵니다. 남자로서 경력에 끝이 없다고 느끼면 가능한 한 빨리 직업을 바꾸십시오. 그렇지 않으면 앞으로의 가족 압력에 타협을 선택하고 결코 결코하지 않을 것입니다. 끝을 보세요.), 그는 사임한 다음 날 486 펜티엄 시리즈의 중고 컴퓨터, 시뮬레이션 프로그래밍 기계(칩에 프로그램을 쓰는 기계), 조립 입문서를 다시 구입했습니다. 그는 임베디드 개발 분야에서 12년 간의 경력을 시작했습니다. (여기서 저에게 영감은 대화를 통해 배우는 것입니다. 어떻게 시작해야 할지 고민하지 말고 시작하는 가장 좋은 방법은 시작하는 것입니다.)
복습하는 이상한 남자 도서관에 있던 책들
이건 신화서점에서 C언어 배울때 몰래 베껴온 책입니다
제가 중학교때 아버지가 기억나네요 매주 토요일마다 저를 신화서점에 데려가서 책을 읽고 거기에 가면 사서가 오냐고 매번 저에게 물어보더니 이 코드 조각을 복사하는 데 집중하곤 했습니다. 이제 농담입니다. 어떤 웹 사이트를 열면 코드가 쌓여 있습니다. 그런데 이 소스 코드에서 무엇을 배웠습니까? 이전의 학습 방법에서 일부를 기록할 수 있습니까? 사용된 코드 조각은 여전히 필요합니다. github에 자신만의 코드 조각 세트가 있습니까? 그렇지 않은 경우 빨리 수집하십시오!) 그런데 아버지가 어떤 프로젝트인지 물어볼 때마다 아주 명확하게 기억할 수 있다고 하셨습니다. 물론, 그가 시작했을 때 그는 영어 한 마디도 이해하지 못했기 때문에 매우 고통스러웠습니다. 하지만 다들 기초가 우리 아빠보다 훨씬 높아야 하니까 프로그래밍을 배울 수 있는지 의심하지 마세요. 분명 배울 수 있을 거예요.
프로그래머의 특기-집중력
친척들이 늘 저한테 "오래 앉아 있으면 일어나서 좀 더 돌아다녀라"고 하더군요. 자주 살펴보세요. 멀리 있는 것이 좋습니다.” 하지만 대부분의 프로그래머는 프로그래밍을 멈출 수 없기 때문에 그렇게 할 수 없다고 생각합니다. 한번 시작하면 계속 만들고 싶다는 생각이 들기 때문입니다. 이것이 프로그램 작성에서 나오는 집중력이다. 이에 대해 저는 여러분에게 "몇 시간 동안 집중할 수 있습니까? "라고 묻고 싶습니다. 아버지 께이 질문을했는데 아버지는 미소를 지으며 "가스를 사용하고 바닥에 물을 채 웁니다. 얼마나 오래?"라고 말씀하셨습니다. 냄비가 다 타는 데 시간이 걸리나요?" 이것은 그가 겪은 실제 경험이었습니다. 그는 어셈블리 언어로 MP3 플레이어를 작성하고 있었습니다. 다행히도 그는 물을 끓이고 있다는 사실을 잊어버렸습니다. 이 이야기를 드리고 싶습니다. "프로그램을 작성할 때는 높은 집중력을 유지해야 하지만, 피로에 너무 집중하면 안 됩니다.
프로그래밍에는 프로세스 리엔지니어링이 필요합니다." 🎜>
소프트웨어 엔지니어링은 아키텍처와 매우 유사하며 둘 다 실제 기술을 기반으로 최고의 솔루션을 구축합니다. "철근과 콘크리트"는 모두 준비되어 있으며 프로그래밍 및 임베디드 개발에도 동일하게 적용됩니다. UCOSII 시스템을 이식한 STM32 실험보드입니다이 보드에는 동시에 여러 작업을 수행하고 작업 우선 순위를 지정할 수 있는 UCOSII 시스템이 내장되어 있습니다. 평신도의 관점에서 말하면 음악을 듣는 것과 동시에 타이핑을 할 수 있습니다. 낮은 수준인 것처럼 보이지만 임베디드가 바로 그것입니다. 엄청 고급스러운데 아빠한테 물어보니 이 보드는 어떻게 만들었나요? 운영체제를 C언어로 정말 잘 만드시나요?
보드도 직접 그리고, 다른 칩도 사고, CPU 프로그램도 직접 작성했어요. 임베디드 개발이 하는 일은 각 기능 모듈을 합리적으로 설계하고 이를 프로그램으로 스케줄링하는 것이라는 사실이 밝혀졌습니다. 요즘 성숙한 칩에는 제조업체가 작성한 프로그램이 있고 외부 호출 인터페이스를 제공합니다. 개발자는 칩을 개발하기 위해 내부 내용을 이해할 필요가 없습니다. 이는 앞으로 프로그래밍을 배우는 데 많은 영감을 주었습니다. 선생님께서 이렇게 말씀하신 적이 있습니다. "소프트웨어 엔지니어가 실제 문제를 해결하는 프로그램을 작성할 수 있는 이유는 프로세스 리엔지니어링을 이해하고 이 프로세스를 실현하기 위해 실제 바퀴(기술)를 사용하기 때문입니다". 소프트웨어 엔지니어가 되고 싶은 첫 번째는 프로그래밍 언어 실력이 아니라 컴퓨터 과학을 통해 실생활에서 지루한 프로세스를 단순화하는 방법이 진정한 소프트웨어 엔지니어라고 생각합니다. 아버지의 프로그래밍 기반은 나만큼 강력하지는 않지만 리엔지니어링을 처리하는 능력은 나보다 훨씬 뛰어납니다. 아마도 이것은 경험일 것이다.
이것은 나에게 제공한 직렬 포트 응답 전송 프로세스입니다(틀렸을 수 있음)
아버지를 의사 풀 스택에 강제로 넣었습니다
대학 2학년 때 C#을 배워서 간단한 윈폼 프로그램을 할 수 있게 됐고, 그때 아빠가 너무 기뻐서 직접 자랑도 하게 됐다. 진짜 프로젝트, 진짜 돈과 은을 당시 나는 어리석게도 동의했습니다. 실제 프로젝트이기 때문에 프로그램의 내결함성이 매우 높을 것입니다. 몇 번의 클릭만으로 예외를 던질 수는 없습니다. 그러나 제가 한 프로젝트는 모두 소꿉놀이를 위한 실험이었지만 선생님은 이것을 칭찬하셨습니다. 대학에서의 쇼맨십은 그렇지 않습니다. 실제로 유용하게 사용되면 창백하고 약해 보입니다. 물론, 내 프로그램은 결코 제시간에 완료되지 않을 것입니다. 아버지는 그것을 깨닫고 미소를 지으며 "나에게 C#을 가르쳐 주면 우리가 이 프로그램에 대해 함께 논의할 것입니다."라고 말했습니다. 일주일 후에 아버지는 C#을 병행해서 배우기 시작하셨습니다. 나. 개발, 같은 무대에서 아빠와 함께 일했던 최고의 기억입니다. 왜 아빠는 일주일 만에 C#(기본 C 음성만)을 배울 수 있었나요?
언어는 똑같고 표현방식만 바뀔 뿐 사고와 과정은 변하지 않습니다
처음부터 선생님께서 간단한 그림을 그리라고 가르쳐주셨어요. 흐름도, 그러나 우리 중 많은 사람들은 그것이 너무 단순하고 흥미롭지 않다고 생각하여 호기심과 헛된 마음을 만족시키기 위해 표면적으로 화려한 인터페이스를 추구하기 시작하지만 그들이 그리워하는 것은 진정한 프로그래밍 기술, 그것이 바로 그때의 나입니다. 많은 사람들은 대학 과정이 매우 기초적이고 실제로 프로젝트에 사용되는 경우가 거의 없으며, 책에서 가르치는 내용은 구식이라고 생각합니다.
사실 책에서 가르치는 것은 글쓰기 자세(방법)(프로그래밍), 펜 잡는 방법(프로그램 작성), 글을 잘 쓰는 방법(좋은 프로그램)입니다. 좋은 캘리그라피(좋은 프로그램)를 쓸 수 있어요. 그러므로 서예(프로그래밍)를 잘 쓰지 못하는 사람들, 즉 어릴 때 서예를 연습하고(프로그래밍 초보) 성공을 열망하고 놀고 싶어(뽐내고 싶어) 하는 사람들이 많다. 이것은 나의 깊은 반성이자 모든 초보자를 위한 최고의 조언입니다. 프로그래밍을 할 때는 외로움을 견뎌야 합니다!
프로그래머는 항상 자기 자신을 알아야 한다
당시에는 좀 자만하고 나도 할 수 있겠다는 생각이 들었다. 그 결과, 다행히도 아버지는 훌륭하셨습니다. 그렇지 않으면 돈을 잃었을 것입니다. 프로그래머로서 당신은 자신의 상한선을 알아야 합니다. 자신과 적을 알고(나는 할 수 있지만 당신은 할 수 없음) 위험 없이 싸울 수 있습니다(나는 단지 많은 돈을 원할 뿐입니다). 네, 항상 자신의 레벨 상한선을 알고 있으면 자신의 가치를 평가하는 데 도움이 됩니다. 시장 가격을 결정하는 것은 회사 자체가 아니라 사회적으로 필요한 노동 시간(다른 프로그래머가 이를 수행하는 데 걸리는 시간)입니다. 이해하는 가장 좋은 방법은 최신 기술을 살펴보고 업계 동향을 이해하는 것입니다. 이번에야말로 고소득층에 자리잡을 수 있다.
약속을 지키는 프로그래머가 되세요
그때 아버지께서 제게 말씀하셨습니다. "약속했으니까 수만가지 이유가 있어도 다른 사람을 위해 완성해야 합니다. 완성하지 못한다면 그것은 당신이 그들에게 약속한 것이기 때문에 당신의 잘못입니다.” 이것은 윤리에 관한 것이 아니라 프로그래머의 직업 윤리에 관한 것입니다. 이 때문에 아버지는 많은 아웃소싱 프로젝트를 맡을 수 있었습니다. 왜냐하면 아버지는 다른 사람들의 눈에 "신뢰할 수 있는"이라는 두 단어만 갖고 있기 때문입니다. 어쩌면 프로그래머의 개인 브랜드일지도 모르겠습니다. 회사에 그런 브랜드가 있으면 승진할 수 없겠죠?
"지금 프로그래밍을 배우기엔 너무 늦은 걸까요?", "서른 살이 되어도 프로그램을 계속 작성할 수 있나요?", "프로그래밍을 읽고 나면 어려운가요?"라고 묻는 분들이 늘 계십니다. 이 기사에서는 여러분이 다시 묻지 않을 것이라고 믿습니다. 프로그래밍을 정말 좋아한다면 제 아버지처럼 현실에 아무리 강요당하더라도 초심을 잊지 마세요. 아버지와 말로는 별로 소통하지 않았지만, 오랜 세월의 노출만으로도 나는 “아버지의 지시를 따르고 초심을 잊지 말라”고 말할 수 있을 만큼 충분했다.