Học python khó quá

Một câu trả lời phổ biến khác cho câu hỏi “Tôi nên đọc cuốn sách nào để học C?”, là cuốn Learn C the Hard Way của Zed Shaw, AKA “LCTHW. ”

Tìm hiểu C một cách khó khăn. Một văn bản thiếu sót với một chương trình nghị sự

Dù tiêu đề đó nghe có vẻ khắc nghiệt, tôi thực sự không cố gắng gây tranh cãi. Tôi không có ác cảm với Zed Shaw. Trên thực tế, tôi nghĩ anh ấy là một lập trình viên tài năng và là một giáo viên xuất sắc. Anh ấy đã giúp hàng ngàn người với hướng dẫn của mình, Tìm hiểu Python theo cách khó. Anh ấy đã làm được nhiều hơn để nâng cao giáo dục lập trình mà tôi có thể hy vọng. Chính vì những lý do này mà tôi ước mình có thể nói, “Học C theo cách khó khăn là đáng đọc. “Thật không may, nó không phải là

Tôi không đơn độc trong quan điểm này. Lời chỉ trích LCTHW nổi tiếng nhất [mặc dù theo ý kiến ​​của tôi là thiếu sót] là Learn C the Wrong way của Tim Hentenaar. Trong khi cáu kỉnh và thù địch, nó chứa đựng những lời chỉ trích hợp lệ. Chương về thiết lập khá kém. Chương gọi trình biên dịch thật tồi tệ. Nó chỉ nói về make, không gọi trực tiếp gcc hoặc clang. Về bản chất, nó giả vờ chỉ có một cách để gọi trình biên dịch. một hệ thống xây dựng và chỉ một hệ thống xây dựng. make. Tôi hoàn toàn ủng hộ các văn bản giới thiệu giữ cho mọi thứ đơn giản, nhưng điều đó đã đi quá xa. Tôi có thể liệt kê hàng chục vấn đề khác, nhưng phần lớn tôi muốn sao chép những nỗ lực của Hentenaar. Nói tóm lại, không có cứu vãn cuốn sách này

Nếu tôi có thể chắt lọc đánh giá của mình về LCTHW trong một câu, đó sẽ là. Shaw về cơ bản không đồng ý với phần lớn các lập trình viên C về cách viết C. Sự khác biệt lớn nhất đến từ việc anh ấy lên án các chuỗi kết thúc NULL. Ban đầu, LCTHW có một chương giới thiệu “phê bình” K&R. Phần lớn chương tóm gọn lại. Nếu bạn không NULL-chấm dứt thứ gì đó được cho là NULL-chấm dứt, tất cả những điều khủng khiếp có thể xảy ra. Tôi không chắc cảnh báo này dành cho ai. Bất cứ ai viết C sẽ nhanh chóng đốt cháy kiến ​​​​thức này vào não của họ. Khi nói đến chi tiết, bài phê bình của Shaw đầy sai lầm. Thay vì liệt kê tất cả, tôi sẽ chỉ liên kết đến những lần nó được thảo luận trên Hacker News. 1, 2, 3, 4. Hãy xem câu trả lời của Shaw. Họ làm cho trường hợp của tôi tốt hơn nhiều so với tôi có thể

Phản hồi của Shaw

Shaw cuối cùng đã nhận đủ những lời chỉ trích rằng anh ấy đã thừa nhận thất bại và xóa chương K&R. Trong bài đăng trên blog đó, anh ấy tiếp tục chê bai toàn bộ cộng đồng C và chính ngôn ngữ này

Nhưng C? . Đó là ngôn ngữ dành cho các lập trình viên cũ muốn tranh luận về phần A. 6. 2 đoạn 4 về hành vi không xác định của con trỏ. Câu đố hay. Tôi sẽ đi học Go

Phản ứng của Shaw đối với Tim Hentenaar cũng có sự khéo léo và duyên dáng như vậy. Thành thật mà nói, tôi thấy câu trả lời của Shaw thật khó hiểu. Anh ấy dành rất ít từ để giải quyết các lập luận kỹ thuật. Hầu hết các bài đăng là Shaw nói những điều tốt đẹp về bản thân và những điều xấu về Tim Hentenaar. Tim thiếu trình độ. Tim không hiểu cách dạy code. Tim kiêu ngạo. Tim là ngạo mạn. Tim không thể đánh vần. Tất cả những điều đó có thể đúng, nhưng chúng không giải quyết được các tranh luận. Vâng, Tim là một người hay cáu kỉnh, nhưng điều đó không làm cho lập luận của anh ấy sai

Chỉ có một lời chỉ trích mà Shaw thực sự giải quyết, và đó là sự bảo vệ của Hentenaar đối với các chuỗi kết thúc NULL. Shaw chỉ ra cách mà copy[] của Hentenaar có thể bị lỗi… nếu chuỗi nguồn bị hỏng. Khi tôi đọc phần này của bài đăng của Shaw, tôi đã nhớ đến một câu trích dẫn của Charles Babbage

Tôi đã hai lần được hỏi: “Xin cầu nguyện, ông. Babbage, nếu bạn đưa vào máy những con số sai, liệu câu trả lời đúng có xuất hiện không?” . 1

Nếu bạn sẵn sàng gán các đầu vào bị hỏng hoặc không hợp lệ cho một chức năng, tất cả các cược sẽ bị tắt. Không có cấu trúc dữ liệu sẽ cứu bạn. Thật thú vị, những lời chỉ trích ban đầu của Shaw về Hentenaar's copy[] là không chính xác. Về một vấn đề kỹ thuật mà Shaw tham gia, anh ấy đã nhầm. Người khác đã phải sửa anh ta. Đó hoàn toàn là bản cáo trạng về kiến ​​​​thức C của anh ấy. Nếu Shaw không thể bác bỏ chính xác một ví dụ về ngôn ngữ C, thì khả năng anh ấy viết một cuốn sách chất lượng về ngôn ngữ này là bao nhiêu?

Tại sao tôi viết cái này

Tôi không có con chó trong cuộc chiến này. Tôi chỉ không muốn người mới hiểu sai thông tin. 2 Như tôi đã nói trước đây, hướng dẫn của Zed Shaw đã giúp hàng ngàn. Nhưng khi nói đến C, anh ấy vừa lầm lẫn vừa kiêu ngạo. Tôi thực sự ước nó khác đi

  1. Những đoạn văn trong cuộc đời của một triết gia ↩

  2. Trên thực tế, tôi không biết gì về LCTHW hay vấn đề này cho đến khi ai đó yêu cầu “đánh giá ngang hàng” về LCTHW trong /r/C_Programming. ↩

    Đây là chuỗi hội thảo gồm 10 phần dạy những kiến ​​thức cơ bản về Vim. Nó bắt đầu với một khóa học nhanh về các lệnh chỉnh sửa cơ bản nhất, một chút lịch sử của Vim và chuyển qua các kỹ thuật ngày càng nâng cao hơn cho đến khi nó chỉ cho bạn cách trở thành một lập trình viên hiệu quả với Vim. Sẽ có khoảng 10-12 giờ video, với các Hội thảo được ghi trực tiếp trong lớp Learn Code Live. Sẽ có một video mỗi tuần cùng với các ghi chú và tệp cấu hình vim được đăng cho mỗi tuần. Bạn có thể đăng ký ngay bây giờ và nhận mỗi hội thảo vài ngày sau khi nó được ghi lại

    Học Python theo cách khó có phải là một cuốn sách hay không?

    Cuốn sách đóng vai trò là phần giới thiệu tuyệt vời về Python, nhưng nó là phần giới thiệu phụ về lập trình — trong nhiều trường hợp, khi Zed trình bày cho người đọc một khái niệm về khoa học máy tính, anh giải thích .

    Học Python theo cách khó như thế nào?

    Quan trọng nhất, bạn sẽ học những điều sau đây, những điều bạn cần để bắt đầu viết phần mềm Python xuất sắc của riêng mình. .
    Cài đặt một môi trường Python hoàn chỉnh
    Tổ chức và viết mã
    toán học cơ bản
    Biến
    Chuỗi và văn bản
    Tương tác với người dùng
    Làm việc với các tập tin
    Vòng lặp và logic

    Vật lộn với Python có bình thường không?

    Vất vả là điều bình thường . Và bạn càng đấu tranh và thành công, bạn càng trở nên tốt hơn và mạnh mẽ hơn. Đừng bỏ cuộc. Cho dù đó là Python hay bất cứ thứ gì khác.

    Học Python theo cách khó có miễn phí không?

    Tìm hiểu Python theo cách khó [Ấn bản thứ 3] - Tải xuống PDF miễn phí . Học cách viết mã cùng nhau.

Chủ Đề