Cộng đồng Rails đã đầy đủ của những lời khuyên trái ngược nhau. Bạn sử dụng Minitest hay RSpec? Các đối tượng Ruby thuần túy của bạn có đi vào app/models
không , app/classes
hoặc lib/
?
Nếu các nhà phát triển có kinh nghiệm hơn liên tục tranh luận về những điều này, bạn có hy vọng gì để quyết định nên làm theo lời khuyên nào?
Bí mật là gì?
Đây là bí mật: chỉ chọn một mặt và làm theo nó.
Nó có vẻ giống như một cảnh sát. Nhưng đây là những tranh luận về những khác biệt nhỏ trong triết học. Lập luận càng mạnh thì sự lựa chọn càng ít quan trọng. Đặc biệt là trong các ứng dụng nhỏ, như những ứng dụng bạn sẽ bắt đầu.
Các nhà phát triển có kinh nghiệm đã có kinh nghiệm đó bằng cách nào đó. Họ học, họ viết mã, họ vận chuyển ứng dụng. Bất kỳ lựa chọn nào họ đưa ra đều không phá hoại sự tiến bộ của họ. Vì vậy, việc làm theo lựa chọn đó sẽ không làm hỏng sự lựa chọn của bạn.
Tôi là một người hâm mộ lớn của Minitest và không sử dụng RSpec khi tôi có thể tránh nó. Tôi đã viết rất nhiều về lý do tại sao tôi thích Minitest hơn RSpec. Nhưng nếu bạn quyết định rằng RSpec là khuôn khổ bạn nên sử dụng, bạn sẽ không gặp phải một ứng dụng không sử dụng được. Nếu bạn chuyển sang Minitest sau đó, bạn sẽ không bắt đầu lại từ đầu. Hầu hết các kỹ năng kiểm tra bạn đã học sẽ được thực hiện ngay. Vì vậy, chỉ cần chọn một. Lật một đồng xu nếu bạn phải. Bởi vì một trong hai lựa chọn tốt hơn là không có.
Thay đổi dễ dàng hơn bạn nghĩ
Sự lựa chọn phù hợp cho bạn phụ thuộc vào tính cách của bạn, môi trường của bạn, nhóm của bạn và những kinh nghiệm trong quá khứ của bạn. Những điều này sẽ thay đổi trong suốt sự nghiệp của bạn. Vì vậy, nếu bạn dành nhiều ngày để tìm hiểu tất cả nền tảng và sắc thái của mỗi bên và cuối cùng đưa ra lựa chọn hoàn hảo, lựa chọn đó cuối cùng có thể thay đổi.
Bạn sẽ đưa ra một số lựa chọn tồi. Một số nhà phát triển giỏi nhất mà tôi biết đã viết toàn bộ đá quý dựa trên các triết lý mà họ đang tranh cãi. Trong mã, một số ý kiến tồn tại mãi mãi.
Vì vậy, đừng cố gắng chọn bên phải trong một đối số Rails mà bạn chưa hoàn toàn hiểu. Nếu nó không thành công, bạn luôn có thể thay đổi quyết định của mình.