Khóa học python cs50 có tốt không?

Giới thiệu về Khoa học Máy tính của CS50 là một khóa học trực tuyến miễn phí dựa trên một trong những khóa học phổ biến nhất trong khuôn viên trường Đại học Harvard. Trong khóa học này, bạn có thể tìm hiểu về các khái niệm khoa học máy tính cốt lõi, chẳng hạn như

  • Các thuật toán - tìm kiếm nhị phân, sắp xếp bong bóng, sắp xếp hợp nhất, v.v.
  • Cấu trúc dữ liệu - danh sách được liên kết, bảng băm, v.v.
  • Bộ nhớ - ngăn xếp và đống

Các ngôn ngữ được sử dụng là C, Python, SQL, cộng với một số ngôn ngữ khác dựa trên những gì bạn chọn cho bản nhạc cuối cùng [CẬP NHẬT. Có vẻ như họ đã loại bỏ các bản nhạc cho phiên bản 2021]. Có vô số các khóa học CS miễn phí có sẵn trực tuyến, nhưng đây là khóa học thú vị và hấp dẫn nhất mà tôi đã tìm thấy cho đến nay

Tôi đã viết "nhà phát triển tự học" trong tiêu đề vì tôi nhận thấy rằng những người không được đào tạo chính quy về CS sẽ ít có cơ hội tiếp xúc sâu với các chủ đề này. Nhưng tất nhiên, tôi muốn giới thiệu nó cho bất kỳ ai quan tâm đến những chủ đề này

Đây là ba điểm mà tôi yêu thích về khóa học này và hai nhược điểm tiềm năng

ưu

  1. Triết lý của họ
  2. Các bài giảng là một niềm vui để xem
  3. Các nhiệm vụ là sáng tạo

[Tiềm năng] Nhược điểm

  1. Có thể không hữu ích cho công việc hàng ngày của bạn
  2. Bạn không được xem các giải pháp do nhân viên triển khai cho các nhiệm vụ

ưu

1. Triết lý của họ

Khóa học này hướng tới mọi người ở mọi cấp độ lập trình. Họ nói với bạn trong tuần đầu tiên

điều cuối cùng quan trọng trong khóa học này không phải là bạn kết thúc ở đâu so với các bạn cùng lớp mà là bạn kết thúc ở đâu so với chính bạn khi bạn bắt đầu

Chỉ để tham khảo, tôi có 1 năm kinh nghiệm chuyên môn, mặc dù không có kinh nghiệm về C hoặc Python. Một số bài tập vẫn còn rất khó đối với tôi và khóa học trị giá một tuần sẽ khiến tôi mất khoảng 10 giờ để hoàn thành, tùy thuộc vào tài liệu [Là một nhà phát triển Ruby, công cụ Python trực quan hơn nhiều so với C. ]

Khóa học thực hiện rất tốt việc thân thiện với người mới bắt đầu và đồng thời cũng đầy thách thức, bởi vì các bài giảng hướng dẫn bạn nội dung tốt nhưng các bài tập đòi hỏi bạn phải thực sự suy nghĩ và nghiên cứu nhiều hơn. Ngoài ra, họ thường cho bạn lựa chọn hai nhiệm vụ, tùy thuộc vào việc bạn "thoải mái hơn" hay "kém thoải mái hơn"

2. Các bài giảng là một niềm vui để xem

Ngoài việc cung cấp thông tin, các bài giảng của Giáo sư David Malan còn có nhịp độ tốt, sinh động và sáng tạo. Xem bất kỳ video nào trong số chúng và có thể bạn sẽ đồng ý [cũng có sẵn trên Youtube]

3. Các nhiệm vụ là sáng tạo

Thay vì các nhiệm vụ nhàm chán như "lặp lại mảng này trong C", bạn có thể triển khai các chương trình như bộ lọc ảnh, trình kiểm tra chính tả, hệ thống bỏ phiếu và cơ sở dữ liệu học sinh Hogwarts, sử dụng các khái niệm mà bạn đã học được trong quá trình thực hiện

Một điều khác tôi thích là hệ thống thử nghiệm của họ có tên là Check50, cung cấp cho bạn phản hồi tức thì khi bạn gửi mã của mình. Thật hài lòng khi cuối cùng bạn đã vượt qua tất cả các bài kiểm tra để trả về một khuôn mặt cười màu xanh lá cây. ]

Thí dụ

[Tiềm năng] Nhược điểm

1. Có thể không hữu ích cho công việc hàng ngày của bạn

Dù tốt hay xấu, đây không phải là một khóa học cấp tốc. Nếu bạn muốn tìm hiểu một chủ đề cụ thể một cách nhanh chóng, chẳng hạn như React, có các hướng dẫn trực tuyến tốt hơn [hoàn toàn lạc đề, nhưng tôi thực sự khuyên dùng Scrimba để học các ngôn ngữ/khung giao diện người dùng bao gồm cả React]

Điều đó đang được nói, tôi nghĩ rằng việc học các khái niệm cốt lõi về khoa học máy tính này sẽ có lợi cho bất kỳ nhà phát triển nào theo một cách nào đó
Ví dụ: tôi đã sử dụng hàm băm [từ điển] của Ruby trong một thời gian dài và tôi biết rằng việc tìm giá trị từ hàm băm bằng khóa của nó nhanh hơn nhiều so với việc tìm giá trị từ một mảng. Nhưng trước khi tôi tham gia khóa học này, tôi đã không hiểu cách thực hiện hàm băm. Tìm hiểu về các bảng băm và thực sự triển khai một bảng cho phép tôi hiểu rõ hơn về các hàm băm của Ruby

2. Bạn không được xem các giải pháp do nhân viên triển khai cho các nhiệm vụ

Như tôi đã đề cập, khi bạn gửi bài tập trực tuyến, mã của bạn sẽ được kiểm tra thông qua một hệ thống có tên là Check50. Bạn không được xem giải pháp mà nhân viên đã nghĩ đến hoặc so sánh song song với giải pháp của bạn

Đây không phải lúc nào cũng là vấn đề và tôi hiểu lý do của họ, nhưng có một dịp đặc biệt khi tôi ước mình có thể thấy các giải pháp do nhân viên thực hiện. khi tôi đang viết các truy vấn SQL. Các truy vấn của tôi đã hoạt động và vượt qua các bài kiểm tra Check50, nhưng không có cách nào để biết liệu chúng có thể được tối ưu hóa hơn nữa hay không. Xem câu trả lời do nhân viên thực hiện sẽ giúp ích ở đó

Nếu khóa học này có vẻ thú vị với bạn, tôi thực sự khuyên bạn nên xem nó trên edX. Và nếu bạn quyết định lấy nó, chúc bạn may mắn

Giới thiệu về lập trình bằng ngôn ngữ có tên Python. Tìm hiểu cách đọc và viết mã cũng như cách kiểm tra và “gỡ lỗi” mã đó. Được thiết kế cho sinh viên có hoặc không có kinh nghiệm lập trình trước đó muốn học Python cụ thể. Tìm hiểu về hàm, đối số và giá trị trả về [oh my. ]; . Tìm hiểu cách xử lý ngoại lệ, tìm và sửa lỗi cũng như viết bài kiểm tra đơn vị; . Cơ hội thực hành để thực hành nhiều. Các bài tập lấy cảm hứng từ các vấn đề lập trình trong thế giới thực. Không yêu cầu phần mềm ngoại trừ trình duyệt web hoặc bạn có thể viết mã trên PC hoặc Mac của riêng mình

Trong khi bản thân CS50x tập trung vào khoa học máy tính nói chung cũng như lập trình với C, Python, SQL và JavaScript, thì khóa học này, hay còn gọi là CS50P, hoàn toàn tập trung vào lập trình với Python. Bạn có thể lấy CS50P trước CS50x, trong CS50x hoặc sau CS50x. Nhưng để giới thiệu về khoa học máy tính, bạn vẫn nên dùng CS50x

Xem giới thiệu

Làm thế nào để tham gia khóa học này

Ngay cả khi bạn không phải là sinh viên của Harvard, bạn vẫn được hoan nghênh “tham gia” khóa học này miễn phí thông qua OpenCourseWare này bằng cách thực hiện theo cách của bạn trong mười tuần tài liệu của khóa học. Nếu bạn muốn gửi các bộ vấn đề của khóa học và dự án cuối cùng để nhận phản hồi, hãy nhớ tạo một tài khoản edX, nếu bạn chưa có. Đặt câu hỏi trên đường đi thông qua bất kỳ cộng đồng nào của khóa học

Cách dạy khóa học này

Nếu bạn là giáo viên, bạn có thể áp dụng hoặc điều chỉnh các tài liệu này cho khóa học của riêng mình, theo giấy phép

CS50 Python có đáng không?

Đúng. Trên thực tế, khoảng 2/3 số sinh viên đăng ký CS50 chưa bao giờ tham gia khóa học về khoa học máy tính trước đây. Vì vậy, nếu bạn là người mới trong lĩnh vực này và muốn tìm hiểu những điều cơ bản, bạn sẽ có một công ty tốt. Điều đó đang được nói, đừng mong đợi khóa học sẽ dễ dàng

CS50 AI với Python có tốt không?

CS50AI, một phần của chương trình Chứng chỉ chuyên nghiệp trên edX kết hợp với CS50, là một nguồn tuyệt vời đưa bạn theo nhiều chủ đề AI có sẵn. I recommend the course to anyone looking to dip their toes in the field and see if that is something you would enjoy.

CS50 Python có khó không?

Đây là khóa học cấp đại học dành cho người mới bắt đầu về các nguyên tắc cơ bản của Khoa học máy tính & lập trình dành cho những người có ít hoặc không có kinh nghiệm. Hai phần ba học sinh CS50 chưa bao giờ học CS trước đây. Điều này không có gì sai khi nói rằng CS50 rất dễ dàng, khác xa với nó. Nó rất khó khăn nhưng theo một cách rất bổ ích

Tôi nên bắt đầu với Python hay CS50?

CS50 sẽ cung cấp cho bạn phần giới thiệu thú vị về lập trình, dưới dạng một khái niệm, phù hợp và được khuyên dùng cho những người mới bắt đầu viết mã . Khi bạn hoàn thành CS50, bạn có thể sử dụng Learn Python the Hard Way để học Python và hiểu cách thức hoạt động của Pythonic.

Chủ Đề