Nhận một đánh giá ngang hàng cho plugin mới của tôi?


8

Cách tốt nhất để khiến một nhà phát triển WordPress có kinh nghiệm xem qua plugin của tôi và đưa ra những lời chỉ trích mang tính xây dựng là gì? Tôi đã viết mã để giải quyết một số câu hỏi của mình trên trang web này và tôi nghĩ chúng cũng có thể hữu ích cho những người khác. Tuy nhiên, vì chúng sẽ bằng các plugin WordPress công khai đầu tiên của tôi và tôi đã thấy nhiều ví dụ không hay trong thư mục WordPress công cộng, tôi muốn biết "tôi đang đứng ở đâu" và làm thế nào tôi có thể cải thiện các plugin của mình. Tôi đã đọc danh sách các thực tiễn tốt nhất và vẫn cần áp dụng một số trong số chúng, nhưng tôi cũng muốn có một câu trả lời cho câu hỏi chung chung hơn "Đây có phải là cách tốt để giải quyết vấn đề này không?"

Tôi vừa đọc lại các cuộc thảo luận liên quan trênwp-hackers (Tôi không nhận ra rằng những người tham gia cũng tham gia vào trang web này và câu hỏi "thực tiễn tốt nhất" là kết quả trực tiếp của nó). Tôi không chắc nhu cầu của mình sẽ được bảo vệ bởi một hệ thống như vậy và tôi đồng ý với những lo ngại của Paul :

Khi tôi đọc các nhận xét ban đầu về chủ đề này vào tuần trước, tôi mặc dù mục đích là để kết hợp một quy trình đánh giá ngang hàng, nơi nhà phát triển plugin có thể đưa ra lời khuyên cho các nhà phát triển plugin khác khi xem xét mã của họ. Ban đầu tôi đã lấy lời khuyên này như một cái gì đó dọc theo dòng chữ "Chà, mã của bạn hoạt động nhưng tập các thói quen bạn đã viết sẽ được phục vụ tốt hơn nếu bạn chỉ cần móc vào bộ lọc WP này và thử kỹ thuật này (xem ví dụ về plugin xxx) ". Mục tiêu tôi nghĩ là chia sẻ kiến ​​thức phát triển plugin WP và làm cho bất kỳ nhà phát triển plugin tầm thường nào trở thành nhà phát triển tốt hơn. Như bản thân mình.

Đây sẽ là một phạm vi khác với thực hiện đánh giá danh sách kiểm tra từng điểm, nó sẽ giống như một "cố vấn". Dường như có nhiều người sẵn sàng làm điều này, và (thậm chí tốt hơn) nhiều người trong số họ tham gia ở đây trên trang web này, vậy làm thế nào chúng ta có thể biến tất cả năng lượng đó thành một thứ cụ thể?

Ví dụ hiện tại của tôi là ba plugin tôi đã viết để giải quyết vấn đề "thay đổi kích thước hình ảnh" của mình . Tôi đã viết các bình luận giới thiệu dài cho mỗi plugin, điều này (tôi hy vọng) giúp dễ hiểu ý định của tôi hơn mà không cần đọc mã đầy đủ. Có điều gì khác tôi có thể làm để giúp người khác nhìn vào nó dễ dàng hơn không? Hãy bỏ qua yêu cầu cụ thể hiện tại của tôi. Không chỉ là quá sớm đối với họ, mà tôi còn thay đổi quyết định và không muốn làm hỏng cuộc thảo luận chung với tình huống cụ thể của mình.


Dường như có một số lập trình viên plugin kỳ cựu ở đây, vậy tại sao không hỏi ở đây?
Raphael

2
@Raphael: Tôi vừa làm, phải không? :-) Nhưng tôi muốn khái quát hóa câu hỏi của mình, vì vậy những người khác cũng có thể thấy nó hữu ích. Có thể có một số nguyên tắc chung mà người ta có thể làm theo để làm cho plugin của họ dễ xem xét hơn.
Jan Fabry

4 năm sau ... bạn đã bao giờ phát hành các plugin đó chưa? Các chuyên gia cho rằng họ vẫn đi được nửa đường, nhưng có vẻ như đó vẫn là một ý tưởng hay.
moraleida

@moraleida Google là bạn của bạn - gist.github.com/janfabry
patrickzdb

Câu trả lời:


4

Cách dễ nhất là cách tiếp cận hai bước:

  1. Phát hành trình cắm của bạn ra công chúng. Khi nó hoạt động, bạn sẽ bắt đầu nhận phản hồi từ người dùng cuối cùng với các nhà phát triển. Nếu bạn muốn, hãy phát hành nó dưới dạng phiên bản "beta" và nhấn mạnh điều đó trong tệp readme.
  2. Hỏi. Có những nhà phát triển WordPress kỳ cựu ở khắp mọi nơi: ở đây, trong danh sách WP-Hackers, tại các công việc WordPress , rình rập @wordpress trên Twitter, v.v ... Đó chỉ là vấn đề ném plugin của bạn ra đó và yêu cầu phản hồi.

Nói chung, hãy làm theo các bước tương tự như bạn sẽ nhận được một bản vá Core được xem bởi nhà phát triển:

  • Viết nó
  • Tài liệu nó
  • Liên hệ với nhà phát triển (rộng rãi thông qua một trong các kênh trên hoặc trực tiếp nếu bạn có thể) và yêu cầu phản hồi

Theo như chuyển đổi loại "cố vấn" xảy ra trên trang web này thành một cái gì đó cụ thể hơn, đó sẽ là một quá trình hữu cơ. Như bạn đã đề cập, những nỗ lực tạo ra một loại quy trình xem xét trình cắm trước khi thực sự xem xét mọi thứ dường như đã bị đình trệ. Cách duy nhất để có được bất cứ điều gì từ mặt đất là thực sự bắt đầu làm điều đó. Vì vậy, đừng chỉ nói về việc tìm kiếm một nhà phát triển kỳ cựu và nhận phản hồi, đi ra ngoài, tìm một người, nhận phản hồi của bạn và viết ra quá trình đã diễn ra như thế nào.

Sau đó, nó có thể được lặp lại với các trình cắm thêm trong tương lai và các nhà phát triển trong tương lai. Nhưng bạn phải bắt đầu ở đâu đó ...


Cảm ơn vi đa trả lơi. Một điều khiến tôi không thể trực tiếp hỏi bạn, Mike hoặc những người đóng góp cao cấp khác ở đây là tôi không muốn áp đặt bạn và "ép buộc" bạn làm điều gì đó mà bạn không muốn làm, nhưng quá lịch sự với từ chối. Và có thể tốt hơn để có được một số phản hồi trước khi tôi phát hành plugin, để ngăn tôi và người dùng của nó khỏi những sự ngu ngốc có thể.
Jan Fabry

1. Không làm việc cho tôi. Tôi đã có hàng trăm lượt tải xuống nhưng thậm chí không có một phiếu bầu nào trên wordpress.org.
Raphael

@Raphael Bình chọn trên WordPress.org không phải là phản hồi thực sự để bắt đầu. Việc bạn chưa nhận được khiếu nại hoặc nhận được bất kỳ báo cáo lỗi nào có nghĩa là rất có thể nó đang hoạt động và người dùng cuối của bạn hài lòng. Tuy nhiên, giờ đây nó đã có trong kho lưu trữ, các nhà phát triển dễ dàng lấy và xem nguồn hơn. Tại thời điểm này, bạn nên chuyển sang bước 2 và yêu cầu một nhà phát triển kỳ cựu xem xét và cung cấp một số phản hồi.
EAMann

1

Sau khi xem nhanh https://gist.github.com/675437 tôi thấy một số điểm nhỏ, chủ yếu là về khả năng đọc:

  • Viết tài liệu mã tốt: Docblocks Nhận xét và bình luận nội tuyến bất cứ khi nào điều gì đó không hoàn toàn rõ ràng.
  • Chia chức năng looong thành các chức năng riêng biệt ngắn hơn. Chúng dễ đọc hơn và giải quyết trong các bình luận của người đánh giá.
  • Căn chỉnh toán tử gán của bạn, thêm khoảng trắng giữa các dấu ngoặc đơn.
  • Độ dài dòng 80 ký tự, xin vui lòng! Nhật thực vẫn không thể bao bọc các hàng dài. :
  • Giữ mã của bạn »còn lại«, lưu thụt lề. Thay vì:

.  

public function checkUrl()
{
    if (is_404()) {
        // code
    }
}

Viết viết

public function checkUrl()
{
    if ( ! is_404() ) {
        return;
    }
    // code
}

Tôi vừa mới viết một plugin mới tối nay và tôi tự hỏi liệu tôi có thể hỏi chính xác câu hỏi của bạn không. Thời gian tốt. :)


Cảm ơn ý kiến ​​ban đầu của bạn. Có lẽ tôi đã hơi sớm, vì tôi thực sự cần phải chỉnh sửa kỹ lưỡng để làm cho mã nội tuyến với các tiêu chuẩn mã hóa để dễ tập trung vào nội dung hơn. Điểm hay về quy tắc "rời sớm để lưu thụt lề", nhưng tôi cho rằng thêm 4 khoảng trắng trên mỗi dòng của ví dụ thứ hai của bạn là vô tình?
Jan Fabry

Uhm, vâng, Markdown đọc sai định dạng sau danh sách. Tôi sẽ sửa chữa nó.
fuxia

Cảm ơn bạn đã góp ý, nhưng tôi đã đọc lại cuộc thảo luận ban đầu trong danh sách tin tặc wp và quyết định mở rộng phạm vi loại bỏ yêu cầu cụ thể của tôi khỏi câu hỏi. Điều này có nghĩa là câu trả lời của bạn không còn phù hợp nữa, có lẽ bạn có thể muốn xóa nó.
Jan Fabry

0

Nó chỉ khiến tôi nghĩ về Appscan: http://www01.ibm.com/software/rational/products/appscan/source/ ; http://www-01.ibm.com/software/rational/products/appscan/source/features/ dùng thử phiên bản ánh sáng: http://www-01.ibm.com/software/awdtools/appscan/express/

Điều này có thể làm php và người ta có thể đặt các quy tắc bổ sung trong đó để kiểm tra mọi thứ. Theo cách đó, một phần có thể được tự động hóa (như một số thực tiễn tốt nhất như trong câu trả lời từ toscho), nó có thể kiểm tra bảo mật, tiêu chuẩn mã hóa, tối ưu hóa, v.v ...

Tôi chỉ nói rằng: nếu một công cụ có thể kiểm tra 80% thì 20% kiểm tra kiểm tra thủ công cho một bậc thầy sẽ ít hơn. Nó cũng sẽ giúp tạo các báo cáo tuân thủ để sử dụng một plugin trong một công ty lớn đòi hỏi những thứ này xung quanh mã bổ sung.

Chúng ta tự động hóa mọi thứ cho người khác, tại sao không cho chính chúng ta?

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.