Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Ruby

Làm chủ Rails: Tại sao tốc độ quan trọng và cách tăng tốc phát triển

Bạn tự tin về các ý cốt lõi đằng sau Rails. Bạn có thể viết mã hoạt động, không vấn đề. Và bạn đang học thêm về chất lượng mã, refactoring, viết test tuyệt vời, và thiết kế hướng đối tượng.

Đến thời điểm này, bạn bắt đầu cảm thấy như bạn đang hiểu, rằng bạn đang trên con đường trở thành chuyên gia. Khi bạn nhìn lại, bạn thấy bạn đã đi được bao xa, và bạn khá hài lòng với tiến bộ của mình.

Vậy tại sao bạn cảm thấy chậm như vậy? Bây giờ bạn quan tâm đến test, khả năng bảo trì, và thiết kế, nó cảm thấy như nó mất nhiều thời gian hơn nhiều để ship bất cứ thứ gì!

Có thể ship mã chất lượng cao nhanh chóng không?

Đó là một phần của quy trình

Cảm giác này khó để tin, không quan trọng bạn đang học gì.

Bây giờ bạn không còn là người mới, bạn bắt đầu thấy tất cả các hình dạng khác nhau mà mã của bạn có thể có. Bạn có nhiều lựa chọn thay thế để suy nghĩ qua bất cứ khi nào bạn đặt một dòng mã. Bạn phải test các trường hợp biên bạn chưa bao giờ nhận ra trước đây.

Bạn đã học rất nhiều kỹ năng hữu ích. Nhưng ngay bây giờ, chúng vẫn tốn nhiều suy nghĩ. Bạn phải cân nhắc mọi quyết định bạn làm, vậy bạn cảm thấy thoải mái rằng bạn đang làm quyết định đúng dựa trên những gì bạn đã học.

Nó sẽ nhanh hơn, tuy nhiên. Những kỹ năng bạn đã học sẽ trở nên tự động hơn. bạn sẽ xây dựng trực giác. Và bạn sẽ có thể làm quyết định tốt hơn nhanh hơn.

Điều đó hay để biết, nhưng nó không giúp bạn ngay bây giờ. Vậy bạn có thể làm gì bây giờ, để kết thúc mọi thứ nhanh hơn?

Làm theo giai đoạn

Nếu bạn ám ảnh viết mã hoàn hảo, chất lượng cao, khả năng bảo trì cao mỗi lần bạn đặt ngón tay lên bàn phím, bạn sẽ không bao giờ xong bất cứ điều gì.

Khi tôi bị mắc kẹt, tôi viết mã theo cùng cách tôi viết bài. Bạn sẽ bắt đầu với bản thảo thô. Có thể phác thảo một số test, mã, hoặc comment. Hoặc thậm chí viết một số ý tưởng ra giấy. Tại thời điểm này, bạn không lo về cấu trúc, bạn chỉ dùng mã để làm rõ những ý tưởng mơ hồ trong đầu bạn.

Sau đó, tôi biến những ý tưởng đó thành một triển khai thẳng tiến. Cái bạn có thể gọi "Điều đơn giản nhất có thể hoạt động." Nó không hoàn hảo, và không gần đúng. Nhưng đừng lo lắng. Bởi vì một khi mã hoạt động, bạn sẽ làm một lượt dọn dẹp. TDD trường hợp biên, refactor mã rõ ràng xấu, hoặc làm tên rõ ràng hơn.

Những "bản thảo tinh chỉnh" này thường đủ tốt để ship. Nhưng tôi thường làm thêm vài lượt. Không quá nhiều, tuy nhiên – bạn sẽ sớm thấy lợi ích giảm dần. Bạn sẽ mất nhiều thời gian dọn dẹp mã hơn nó đáng giá.

Sau đó, nếu bạn thực sự muốn kết thúc với mã sạch nhất có thể, hãy để nó yên một chút. Quay lại nó sau vài tuần hoặc tháng, và làm thêm một lượt. Đến lúc đó, bạn sẽ biết nhiều hơn về hệ thống của bạn, và bạn sẽ học thêm về cách viết mã tuyệt vời, khả năng bảo trì cao. Vì vậy bạn sẽ làm công việc tốt hơn nữa.

Giống như viết, quy trình đó là:

  1. Phác thảo रूपरेखa thô, bản thảo, hoặc prototype.
  2. Viết triển khai đơn giản, không chỉnh sửa, thẳng tiến (thường hướng dẫn bởi TDD, hoặc viết cùng test).
  3. Tinh chỉnh, refactor, và dọn dẹp triển khai đó một chút.
  4. Để nó yên.
  5. Quay lại nó, và làm thêm một lượt.

Nghe có vẻ như nhiều việc hơn. Nhưng khi bạn đi theo giai đoạn như thế này, bạn sẽ di chuyển nhanh hơn, mà không phải luôn tự đặt câu hỏi bản thân. Và bạn sẽ không kết thúc overthinking quyết định giữa vài lựa chọn cũng tốt như nhau.

Bài viết này được cảm hứng bởi một câu hỏi từ Topher trên trang advice của tôi. Nếu bạn bị mắc kẹt với câu hỏi về Ruby và Rails, và cần giúp đỡ hoặc lời khuyên, hãy hỏi tôi ở đó!