Tôi đã có quy trình 6 bước.
Tôi muốn tìm ra mối quan hệ và sử dụng mô hình trước khi thực hiện bất kỳ điều gì. Nói chung, tôi cố gắng xác định các mô hình thành các đơn vị có chứa các khối thông tin mạch lạc. Thông thường, điều này bắt đầu bằng cách xác định các tài nguyên trực giao mà ứng dụng của tôi sẽ cần (Người dùng, Bài đăng, v.v.). Sau đó tôi tìm ra thông tin mà mỗi tài nguyên đó cần (các thuộc tính) và có khả năng cần (các liên kết), và thông tin đó sẽ được vận hành như thế nào (các phương pháp), từ đó tôi xác định một tập hợp các quy tắc để điều chỉnh tính thống nhất tài nguyên (các xác nhận hợp lệ)).
Tôi thường lặp lại thiết kế của mình một vài lần vì hành động xác định các mô hình khác thường làm cho tôi suy nghĩ lại những gì tôi đã thực hiện. Một khi tôi có một thiết kế mô hình tôi thích, tôi sẽ bắt đầu tái cấu trúc hoặc chuyên (subclassing) mô hình để làm rõ thiết kế.
Tôi viết di chuyển và tạo bộ xương cho các kiểu máy của mình. Tôi thường sẽ không viết các bài kiểm tra cho đến khi tôi có bản thảo đầu tiên về các phương pháp và xác thực được thực hiện. Nó không phải luôn luôn rõ ràng như thế nào để thực hiện những điều cho đến khi cho nó một số suy nghĩ vừa phải.
Tiếp theo là bộ thử nghiệm. Không quan trọng những gì tôi sử dụng để viết các bài kiểm tra, miễn là tôi có thể chắc chắn phụ trợ là lành mạnh.
Đây là khi tôi kết hợp với luồng điều khiển. Điều gì xảy ra với yêu cầu thành công? Yêu cầu không thành công? Hành động điều khiển nào sẽ liên kết với người khác? Thông thường có một ánh xạ 1-1 giữa các bộ điều khiển và các mô hình (không tính các lớp con của mô hình), tôi thường gặp phải các tình huống mà tôi cần phải thực hiện trên nhiều kiểu mô hình, vì vậy tôi có thể tạo một bộ điều khiển mới. Tùy thuộc vào mức độ phức tạp của ứng dụng của tôi, tôi có thể mô hình luồng như một máy trạng thái.
Cuối cùng tôi tạo chế độ xem.Tôi bắt đầu bằng cách phác thảo giao diện người dùng dựa trên đó bị ảnh hưởng nặng nề bởi các mối quan hệ và thuộc tính của mô hình của tôi. Tóm tắt các phần phổ biến, sau đó viết các khung nhìn.
Đánh dấu giao diện người dùng. Tôi tạo một CSS và bắt đầu thay thế các liên kết bằng các cuộc gọi từ xa hoặc thậm chí chỉ cần javascript khi thích hợp.
Tôi có thể xen kẽ các bước 2 và 3. Tôi thấy rất dễ dàng để viết bài kiểm tra ngay sau khi tôi viết mã cần kiểm tra. Đặc biệt là bởi vì tôi thường thử nghiệm mọi thứ trong một bàn điều khiển như tôi viết, và một nửa thử nghiệm được viết bằng cách dán từ giao diện điều khiển.
Tôi cũng có thể chia nhỏ các bước 4 và 5 cho mỗi mô hình/bộ điều khiển. Bất kỳ điểm nào tôi có thể quay trở lại và sửa đổi, một quyết định trước đó, và tuyên truyền những thay đổi đó thông qua các bước của tôi.
Tôi nghĩ đây nên là cộng đồng wiki. –