freeCodeCamp의 Javascript 알고리즘 및 데이터 구조 과정을 통한 나의 여정
승리! 자바스크립트 인증서
(But more importantly, some good programming practice.)
다른 사람의 샘플 코드를 조회하지 않는 것이 이 프로젝트에서 가장 중요하다는 것을 알았기 때문에 최소한의 코드가 포함되었습니다. 속담의 벽에 머리를 부딪히는 행위는 프로그래밍 개념을 배우는 데 있어 무엇보다 중요했습니다.
그래서 시간이 오래 걸렸습니다.
저는 2016년에 freeCodeCamp에 다시 가입했고 코딩에 익숙해지기 위해 사용한 몇 안 되는 도구 중 하나였습니다. 그러나 지난 몇 년(2019-2021)이 되어서야 웹 개발과 컴퓨터 프로그래밍을 배우는 것에 대해 아무렇지도 않게 진지하게 생각하게 되었습니다. 그리고 저는 Codecademy에서 Udemy, EdX, MITx, Google 및 YouTube에 이르기까지 수많은 리소스를 계속 사용했습니다.
작년에 저는 부트캠프에 매료되어 거의 한 커플에 등록할 뻔했습니다. 하지만 인터넷에서 무료로 사용할 수 있는 지식의 폭과 깊이를 알았을 때 가격표를 정당화할 수 없었기 때문에 반대 결정을 내린 것에 감사합니다.
그래서 freeCodeCamp로 돌아왔습니다.
Javascript Algorithms and Data Structures 자료를 통해 언어의 일부와 프로그래밍 메커니즘을 배울 수 있는 짧은 강의에 감사했습니다. 그러나 그 이상으로 프로젝트는 진정한 테스트가 존재한다고 말할 수 있는 곳이었습니다. 그들은 항상 쉽게 통과할 수 없을 만큼 충분히 도전적이었지만, 이해하기 불가능하지도 않았습니다.
우아? 로마 숫자 변환기
최종 프로젝트에서 나는 내 자신의 아마추어 능력을 확실히 볼 수 있지만 코드가 아무리 복잡하더라도 작동하는 코드의 스릴을 과대평가하기는 어렵습니다. 로마 숫자 변환기 문제의 경우 주어진 숫자를 로마 숫자로 변환하는 작업을 받았습니다. 지금 내 코드를 되돌아보면 내 솔루션을 함께 붙인 로마 숫자의 다양한 반복을 포함하는 거대한 개체를 따르는 긴 if 문이 엉망입니다.
내 일부는 해결책에 도달하는 더 우아한 방법이 있다는 것을 알고 있지만 외부의 도움을 구하지 않고 혼자서 이 문제를 해결하는 것이 진정으로 학습이 이루어진 곳이었습니다.
let rules={
0: "",
1: "I",
2: "II",
3: "III",
4: "IV",
5: "V",
6: "VI",
7: "VII",
8: "VIII",
9: "IX",
10: "X",
20: "XX",
30: "XXX",
40: "XL",
50: "L",
60: "LX",
70: "LXX",
80: "LXXX",
90: "XC",
100: "C",
200: "CC",
300: "CCC",
400: "CD",
500: "D",
600: "DC",
700: "DCC",
800: "DCCC",
900: "CM",
1000: "M",
2000: "MM",
3000: "MMM"
}
댓글 ftw! 금전 등록기 프로젝트
댓글이 중요한거 압니다. 나는 항상 내 자신의 최고의 지식을 따르지 않습니다. 5개의 프로젝트를 진행하는 동안 저는 실제로 댓글을 잘 작성하는 능력이 점차 향상되었습니다. 부부에게는 (적어도 내 생각에는) 코드를 통해 메모를 하지 않아도 될 만큼 간단했습니다. 특히 전체 프로젝트가 20~30줄로 완료될 수 있는 경우에는 더욱 그렇습니다. 그러나 금전 등록기 문제로 인해 나는 내 자신의 이익과 모범 사례를 위해 논평했습니다.
금전 등록기는 완료하는 데 이틀이 걸렸고 세 번 완전히 다시 시작했습니다. 문 밖에서 댓글을 달고 의사 코딩을 시작했다면 내 수고가 줄어들었을 것입니다. 그럼에도 불구하고 나는 결국 승리했고, 나의 실화는 나의 배움에 도움이 되었다.
솔루션에 약간의 console.log-ing이 남아 있는 것을 포함하여 결승선에 도달하는 데 89줄의 코드가 필요했습니다. 이 솔루션에 도달하는 더 우아하고 압축된 방법이 있을 것이라고 생각하지만 저는 for 루프의 기능적 지구에 기반을 둔 마음을 가진 단순한 사람입니다.
console.log("=====================")
console.log("Original Amounts: ")
console.log("=====================")
console.log("price:", price, "\ncash:", cash, "\ntotal in drawer:", total, "\nchange:", change)
console.log(`cash in drawer:`, cid)
console.log("=====================")
console.log("Computations:")
console.log("=====================")
테이크아웃
Reference
이 문제에 관하여(freeCodeCamp의 Javascript 알고리즘 및 데이터 구조 과정을 통한 나의 여정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sieis/freecodecamp-javascript-3fcd텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)