Всякий раз, когда я начинаю работать над достаточно сложными проектами, которые я не могу полностью держать в голове, мне нравится описывать, как приложение должно работать ... Обычно я обычно что-то делаю в текстовом редакторе:Какие инструменты вы используете для изложения проектов?
# Program is run
# check to see if database exists
# create database
# complain on error, exit
# ensure database is writable
# complain to user, exit
# check to see if we have stored user credentials
# present dialog asking for credentials
# verify credentials and reshow dialog if they're invalid
# show currently stored data
# start up background thread to check for new data
# update displayed data if new data becomes available
# ...
#
# Background service
# Every 15min update data from server
# Every 24 hours do a full sync w/ server
Et cetera (примечание: это комментарий, поэтому SO не будет анализировать его, а не потому, что я включаю его в качестве комментариев в код).
Мне интересно, как вы, ребята, это делаете. Существуют ли какие-либо инструменты для описания потока программы? Как вы описываете сложные проекты, чтобы, когда пришло время кода, вы можете сосредоточиться на коде, а не на дизайне/архитектуре всех маленьких кусочков?
И как бы вы использовать это для описания потока? Не могли бы вы привести пример? –