>백엔드 개발 >C++ >Harvard CS에 대한 솔직한 리뷰: 팁, 지침 및 무료 인증서

Harvard CS에 대한 솔직한 리뷰: 팁, 지침 및 무료 인증서

WBOY
WBOY원래의
2024-08-30 11:07:501129검색

2024년 5월, 3개월 간의 노력 끝에 드디어 Harvard CS50X 과정을 수료했습니다. 마침내 나는 모든 여정을 마치고 하버드로부터 무료 수료증을 받았습니다. 그것은 내가 수강한 최고의 강좌 중 하나였습니다. 여기 제 증명서가 있습니다

My Honest Review of Harvard’s CS: Tips, Guidelines & Free Certificate

여기에 계시는 것으로 보아 CS50x에 대해 어느 정도 알고 계시리라 짐작됩니다. 프로그래밍 세계의 기초를 가르치는 하버드 대학의 프로그래밍 입문 과정입니다. 시작하기 전에 제가 가졌던 오해가 많이 보입니다. CS50x를 완전히 이해할 수 있도록 포괄적인 개요와 일반적인 지침을 제공하려고 노력할 것입니다. 결국 나처럼 하버드에서 무료로 자격증을 취득할 수 있다. 시작해 보세요

개요:

그럼 CS50은 뭔가요? 하버드는

이것은 사전 프로그래밍 경험이 있든 없든 집중하는 사람과 비집중하는 사람 모두를 위한 컴퓨터 과학 및 프로그래밍 기술의 지적 기업에 대한 하버드 대학교의 CS50 소개입니다.

이 과정은 11주(부분)의 학습 자료로 구성되며, 각 부분마다 AI나 다른 방법의 도움 없이 스스로 풀어야 하는 문제 세트가 제공됩니다. 마지막 11주차에는 창의성을 발휘하여 완성해야 할 최종 프로젝트를 제출해야 합니다.

My Honest Review of Harvard’s CS: Tips, Guidelines & Free Certificate

CS50의 전문 분야 중 하나는 강사 David Malan과 지원하는 CS50 팀입니다. David Malan의 교육 스타일에 푹 빠지게 될 것입니다. 그의 발표와 가르침은 훌륭했습니다. 저는 이 강좌의 가르침에 대해 불만이 없습니다.

11주:

다음은 전체 주간에 대한 철저한 개요입니다. 건너뛰셔도 됩니다. 이 섹션을 에이스로 활용하는 방법은 이 블로그 뒷부분에서 설명합니다

  1. **0주차 스크래치:
    **이 섹션에서는 컴퓨팅 사고력, 문제 해결, 바이너리, ASCII, 유니콘드, 알고리즘 등과 같은 컴퓨터 과학의 몇 가지 입문 개념을 배우게 됩니다.
    David는 스크래치라는 아기 언어를 통해 프로그래밍의 기본에 대한 생각을 보여줄 것입니다. 챌린지로 자신만의 스크래치 프로젝트를 제출해야 합니다. 재미있네요 TBH.

  2. **1주차 C:
    **이 섹션에서는 실제 프로그램을 작성하게 됩니다. C로 프로그래밍하는 방법을 배우게 됩니다. 여기에는 조건문, 루프, 변수, 데이터 유형, 기본 터미널 명령과 같은 프로그래밍 언어의 기본 사항이 포함됩니다. Malan은 정수 오버플로 및 잘림과 같은 몇 가지 심층적인 개념을 자세히 알아볼 것입니다.
    여기서 완성해야 할 문제는 마리오, 현금, 크레딧입니다.
    마리오와 현금은 간단하지만 신용은 까다롭습니다.

  3. **2주차 어레이:
    **처리 및 컴파일 단계, 디버깅, 그리고 배열 및 문자열과 같은 중요한 프로그래밍 개념을 배우게 됩니다. 수업시간에는 'greet.c'와 'touppercase' 두 가지 프로그램을 만들어 보겠습니다
    문제는 스크래블과 가독성입니다. 가독성이 어렵다는 점에 유의하세요. 또한, 다음 프로젝트 중 하나를 제출해야 합니다.
    카이사르(비교적 쉬움)와 대체(어려움++).

  4. 3주차 알고리즘:
    수업에서는 알고리즘 효율성을 계산하는 점근 표기법을 배우게 됩니다. 비디오에서는 선형 검색, 이진 검색, 버블 정렬, 병합 정렬 및 선택 정렬과 같은 검색 작업 및 정렬을 보여줍니다. 재귀라는 프로그래밍의 아름다운 개념도 여기에 표시됩니다.
    정렬 및 복수성을 필수로 완료해야 합니다. 선택 사항은 Runoff와 Tideman입니다. 둘 중 하나를 완료해야 합니다. 내 조언은 Runoff를 완료하는 것이 더 쉽다는 것입니다. Tideman은 인생에서 직면하게 될 가장 어려운 문제 중 하나입니다.

  5. 4주차 추억:
    이번 주에 Malan은 기억이 어떻게 작동하는지 가르칩니다. 여기에서는 포인터, malloc, 무료 및 힙 및 스택과 같은 기본 메모리 실행을 다룹니다. 또한 메모리 누수, 가비지 값 및 파일 I/O 작업에 대해서도 알아봅니다.
    문제는 볼륨, 복구 및 필터 중 하나의 버전을 제출해야 한다는 것입니다. 필터 문제 2개 모두 제출했습니다.

  6. 5주차 데이터 구조:
    데이터 구조의 몇 가지 기본 사항을 배우게 됩니다. 큐, 스택, 힙, 연결 목록, 검색 트리, 해시 테이블 및 시도와 같은 개념은 여기에서 다룹니다
    문제는 이전 문제보다 비교적 간단한 Speller와 Inheritance입니다. 여기까지 오셨다면 전체 여정을 완수할 수 있는 역량을 갖추셨다고 확신합니다.

  7. 6주차 Python:
    이전 프로그래밍 언어 개념을 적용하지만 훨씬 쉬운 언어인 Python을 사용하게 됩니다.
    문제 세트는 쉽습니다. 실제로 이전 pset 솔루션을 Python으로 다시 작성하고 있습니다. DNA 문제는 다소 까다로울 수 있습니다.

  8. 6.5주차 인공지능:
    현대 AI가 어떻게 결정을 내리고 그 뒤에 작동하는지 배우게 됩니다. 여기에서는 프롬프트 엔지니어링, 머신 러닝, 딥 러닝 및 생성 AI의 몇 가지 기본 사항을 논의합니다.
    여기에는 문제가 없습니다.

  9. 7주차 SQL:
    관계형 데이터베이스의 세계를 자세히 살펴보겠습니다. sqlite3 데이터베이스의 기본과 테이블, 행, 인덱스, 함수, 주입 공격 등과 같은 개념을 배우게 됩니다.
    비디오의 주제에 집중했다면 문제 세트를 해결하기가 너무 쉽습니다. 문제는 노래, 영화, 피프티빌입니다.
    저는 FiftyVille을 정말 좋아해요. 여러분도 좋아하실 거라 믿습니다.

  10. 8주차 HTML, CSS 및 JavaScript:
    인터넷 작동 방식, TCP, IP, HTTP 등과 같은 기본 웹 개념이 비디오에서 논의됩니다. 그런 다음 HTML, CSS 및 JavaScript인 웹 사이트의 구성 요소를 배우게 됩니다. 이러한 기술에 대해서는 간략하게만 이해하게 될 것입니다.
    퀴즈와 홈페이지 두 가지 문제에 대한 답을 제출해야 합니다. 이 문제를 해결하려면 HTML, CSS, Javascript를 사용하여 맞춤형 웹사이트를 만들어야 합니다

  11. 9주차 플라스크:
    Flask는 웹사이트를 동적으로 만들기 위해 Python을 기반으로 구축된 라이브러리입니다. 이 동영상은 Flask, Route, Requests, Response, Sessions, Cookies와 같은 주제를 다루고 기본 Jinja 구문을 보여줍니다.
    플라스크와 진자를 사용하여 두 개의 동적 웹사이트를 만들어 생일과 금융이라는 두 가지 문제를 해결해야 합니다. 금융은 어려운 문제지만 재미있습니다.

  12. 10주차 사이버 보안:
    사이버 보안의 기본 사항이 비디오에서 다루어지며 이 비디오에는 완료해야 할 사이버 보안 관련 문제가 없습니다. 전체 과정을 완료하려면 최종 프로젝트를 완료해야 합니다. 여기에서 AI의 도움을 받을 수 있지만 프로젝트는 고유해야 합니다. 프로젝트를 만들려면 만들고 싶은 것이 무엇이든, 선택하고 싶은 기술이 무엇이든 선택할 수 있습니다.

CS50이 나에게 적합합니까?

Cs50이 대부분의 사람들에게 도움이 될 수 있지만 시작하기 전에 고려해야 할 몇 가지 사항이 있습니다. 그렇지 않으면 실망감을 느끼거나 코스를 마치지 못하고 시간을 낭비할 수도 있습니다.

CS50은 확실히 당신을 위한 것입니다.

  1. **이전에 코딩을 해본 적이 없습니다:
    **코딩 경험이 조금 있으면 시간이 많이 절약되지만, 코딩을 해본 적이 없다면 CS50부터 시작하는 것이 좋습니다. 끝까지 완수할 수 있다면 막을 수 없을 것입니다. 대부분의 초보자들은 너무 어려워서 코스를 마치지 못한다는 점을 참고하세요.

  2. **프로그래밍 세계에 대한 포괄적인 이해를 원하는 경우:
    **귀하가 직원이든, 창의적인 작업자든, 대학생이든 상관없이 CS50은 프로그래밍 세계에 대한 올바른 이해를 구축하는 데 도움이 될 것입니다. 진로를 개척할 수 있는 방법을 찾을 수 있습니다. 저처럼요.
    저는 프론트엔드 개발자였으며 ​​주로 프론트엔드 작업을 하고 멋진 UI를 구축했습니다. CS50을 마치고 백엔드로 향하기 시작했습니다.

  3. 문제 해결 능력을 키우고 싶은 경우:
    CS50에는 해결해야 할 엄청난 문제가 있습니다. 매주 문제는 더욱 어려워지고 흥미로워집니다. 프로그래밍 세계의 개요를 배우면서 문제 해결 능력을 향상시키고 싶다면 CS50이 확실히 좋은 방법이라고 확신합니다.

  4. 공인 자격증 취득:
    하버드 자격증을 취득하는 것은 인생에서 달성할 수 있는 환상적인 일입니다. 이렇게 생각해보세요
    귀하가 HR이고 단일 위치에 두 명의 후보자를 채용하기로 선택한 경우 이전에 CS50을 완료한 사람이 항상 귀하의 목록에서 편리한 위치에 올 것입니다. 다른 요소도 중요하지만

CS50은 다음과 같은 경우에 적합하지 않습니다.

  1. **특정 분야의 전문가를 찾고 싶은 경우:
    **중요한 사항입니다. 제 경험으로 볼 때 CS50x는 특정 분야에 전문성을 갖게 해주는 코스가 아니라고 말씀드릴 수 있습니다. 웹 개발이든, 모바일이든, 백엔드 개발이든 상관없습니다. 기술 세계에 대한 기본적인 개요만 제공합니다. 프로그래밍 세계에 대한 폭넓은 지식을 얻게 됩니다. 그런 다음 귀하의 임무는 분야를 선택하고 해당 분야에 대해 자세히 알아보는 것입니다. CS50에는 자체 Python 또는 웹 강좌도 있습니다. 확인하실 수 있습니다.

  2. 빨리 취업을 원하는 경우:
    나는 여러분에게 이 중요한 메시지를 전하고 싶습니다. 앞서 말했듯이 CS50x는 전문 과정이 아니기 때문에 전문가가 되지도 않고 특정 분야에 대한 철저한 지식을 제공하지도 않습니다. 그러기에 당신의 지식은 그다지 완전하지 않습니다. 제가 커뮤니티에서 흔히 발견하는 오해입니다. 직업을 원한다면 가능한 한 빨리 다른 완전한 과정이나 학습 경로를 찾으십시오. CS50에는 Python, R 또는 Web과 같은 코스가 있습니다. 당신은 그들을 확인할 수 있습니다. 하지만 예외 없이 CS50x만으로 취업하기는 어렵습니다. 이 문제에 대해 도움을 드릴 수 있도록 트위터로 DM을 보내주세요.
    참고: CS50의 인증서는 인터뷰 최종 후보에 오르는 데 도움이 될 수 있습니다

  3. 헌신할 시간이 없습니다:
    처음 시작할 때 엄청나게 열심히 공부하면 이 과정을 1달 안에 끝낼 수 있을 거라 생각했습니다.
    CS50은 어려운 코스이며 이것이 그 코스의 특징이라는 점을 명심하십시오. 완료하려면 시간이 필요합니다. 때로는 개념을 이해하기 위해 강의를 다시 들어야 할 수도 있습니다. 이를 완료하려면 최소 2개월의 헌신적인 작업이 필요합니다. Ngl CS50을 완료하는 데 3개월이 걸렸습니다. 시간 약속이 필요합니다.

  4. 기타 요인:
    일정이 바쁘거나 프로그래머이고 C와 같은 저급 언어를 깊이 배우고 싶지 않은 경우.
    어쩌면 당신은 이미 무언가를 배우는 과정에 있고 끊임없이 CS50에 대해 요구하는 무언가가 마음속에 있을 수도 있습니다. 먼저 학습을 완료하면 언제든지 CS50에 올 수 있습니다.

내 지침:

이미 과정을 완료했으므로 CS50을 완료하기 위한 몇 가지 팁과 지침을 알려드리겠습니다. 이러한 팁 중 일부를 더 일찍 알았더라면 좋았을 텐데요. 그 과정에서 도움이 되리라 믿습니다.

우리가 CS50을 선택한 이유는 쉽기 때문이 아니라 어렵기 때문입니다.

  1. 주의사항: 쉽지 않습니다
    한 가지는 귀하가 초보자이고 프로그래밍에 대한 사전 지식이 없는 경우 CS50은 완료하기 어려운 과정임을 상기시키는 것입니다. 나에게 많은 도움이 되는 개념이 있는 JavaScript를 배운 배경 지식이 있다는 것은 행운이었습니다. 결국에는 상황이 어려워질 수도 있고 좌절감을 느낄 수도 있습니다. 하지만 당신만 그런 것이 아니니 걱정하지 마세요. 우리 모두 그런 경험이 있었고 이를 극복했습니다.

  2. **CS50 자체 홈페이지에서 강좌를 이수하세요
    **EDX에서 전체 과정을 무료로 완료할 수 있지만 CS50 웹사이트에서 완료하는 것이 훨씬 더 간단하다고 생각합니다. 그것은 전적으로 당신의 선택입니다.

  3. 도전하세요
    CS50x를 완료하는 데 3개월이 걸린 이유 중 하나는 옵션 항목을 포함하여 거의 모든 pset를 완료했기 때문입니다. 나는 모든 문제 작업을 완료하기 위해 나 자신에게 도전을 던졌습니다. 이것은 또한 나의 지식을 향상시켰습니다. 적어도 선택 사항이나 필수 사항에 관계없이 모든 pset을 완료해 보시기 바랍니다.

  4. 메모:
    개념을 다시 한 번 이해하기 위해 전체 비디오를 다시 시청하지 않도록 강의에서 다루는 각 중요한 주제를 메모해야 합니다.
    CS50 비디오는 다소 복잡합니다. 때로는 비디오를 다시 시청해야 할 때도 있습니다. 메모를 하면 동영상을 다시 시청하지 않고 메모만 훑어볼 수도 있습니다. 이것은 도움이 됩니다. 나는 개념에 대해 메모했습니다. 원한다면 트위터로 DM을 보내주세요. 공유해드리겠습니다.

  5. Lloyed의 설명을 건너뛰지 마세요:
    매주 David의 수업 후에는 주제를 더 잘 이해할 수 있도록 몇 가지 추가 동영상이 제공됩니다. Doug Lloyd는 발표자이며 몇 가지 예를 들어 주제에 대한 개요를 제공하려고 합니다. 제 제안은 이를 건너뛰지 말라는 것입니다.

  6. 선택적 문제에 갇히지 마세요:
    필수 문제 세트를 완료해야 하지만 일부 문제로 인해 시간이 많이 소모됩니다. 특히 “더 편한 것”. **이것은 제가 저지른 실수 중 하나입니다. 나는 단 하나의 문제를 해결하기 위해 몇 주 동안 갇혀 있었습니다. 그러지 마세요. 때로는 건너뛰는 것이 현명한 선택입니다.
    팁은 다음과 같습니다. 너무 어려워 보이는 선택 항목은 제출하지 마세요. Google에서 해결책을 찾고 실수가 무엇인지 이해하려고 노력하십시오. **참고: 해당 솔루션을 제출하지 마세요.

  7. 타이드맨은 터프해요!!
    3주차 Pset에서는 Runoff와 Tideman 중 하나를 제출해야 합니다. **Tideman은 너무 터프합니다. 너무 힘들다고 반복합니다.
    **저는 고집이 세서 거의 17일 동안 노력하고 막혔습니다. 이 문제의 해결은 재귀를 통해 이루어집니다. 그런 다음 계속 진행해야했습니다. 이것이 어렵다고 생각된다면(분명히 그렇습니다), 계속 진행하세요. 결선을 완료하고 계속 진행하세요. 누군가가 이전에 나에게 이런 말을 해줬더라면 좋았을 텐데요.

  8. 불화로부터 법적 도움 받기
    CS50의 디스코드 커뮤니티는 매우 도움이 됩니다. 막혔거나 문의사항이 있으면 서버의 도움을 받으세요. 하지만 전체 솔루션을 공유해서는 안 됩니다. 그것은 불법입니다.
    링크: CS50 디스코드

  9. 솔직하게
    CS50에는 학문적 정직성 정책이 있습니다. 다른 소스의 코드를 복사하여 자신이 작성한 것처럼 솔루션을 제출하는 것은 절대 불법입니다. CS50 팀은 이에 대한 귀하의 인증서를 실격 처리할 수 있습니다.
    또한, 당신은 배우기 위해 여기에 있습니다. 여기서 왜 부정직하게 행동하나요?

  10. 최종 프로젝트 제출 팁:
    자신만의 기술 제품을 만드는 것처럼 시간을 들여 사랑과 창의성을 담아 최종 프로젝트를 제출해야 합니다. 깊이 생각해보고 멋진 프로젝트를 만들어보세요.
    팁: 최종 프로젝트를 제외한 다른 모든 pset는 CS50.dev를 통해 수행할 수 있습니다. 로컬 환경에서 최종 프로젝트를 생성해야 합니다. 그리고 최종 프로젝트를 푸시하고 750단어의 긴 readme.md 파일을 생성하고 이에 대한 영상을 녹화해야 합니다.
    그런 다음 제출하세요. 하지만 여기에서는 어려움에 직면할 수도 있습니다. 이를 위해 수동으로 제출해야 했습니다.

인증서 받기

cs50.me에서는 GitHub로 로그인해야 성적표를 볼 수 있습니다. 각 필수 pset과 최종 프로젝트를 완료한 후 Harvard로부터 무료 인증서를 받을 수 있습니다. 그것은 당신 것입니다!

결론

이 글을 읽어주셔서 감사합니다. 하버드에서 자격증을 취득하시기 바랍니다. 그러나 이것은 인증서에 관한 것이 아닙니다. 최고의 강사로부터 귀중한 지식을 배우는 것입니다. 당신은 여행 전체를 좋아하게 될 것입니다.

읽어주셔서 감사합니다. 이 모든 것은 제 쪽에서 온 것입니다. 이 기사에서 통찰력 있는 내용을 발견하셨기를 바랍니다. 다른 문제에 직면했거나 더 많은 질문이 있는 경우 트위터(Shihab Haque)에서 DM을 보내주세요
표지 출처: freecodecamp

위 내용은 Harvard CS에 대한 솔직한 리뷰: 팁, 지침 및 무료 인증서의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.