Полагаю, это больше вопрос шаблона проектирования, чем вопрос кодирования. Итак, поехали ... У меня есть приложение для Android, которое содержит много классов и занятий. У меня есть классы, сгруппированные внутри каталога в соответствии с их функциями, например: DownloadTask, ScanTask внутри каталога AsyncTask. Тогда у меня есть все все действия в каталоге действий и так далее. Но я замечаю, что большая часть моего кода повторяется. Например, у меня есть 3 действия PingActivity, NetstatActivity, WhoisActivity, которые в основном выглядят одинаково с точки зрения кода. Единственное отличие состоит в том, что они используют команду, например: ping host для PingActivity, netstat -ant для NetstatActivity и т. Д. Все они создают представления из макета xml, который выглядит очень похоже, поскольку у меня есть только EditText, button и TextView. И классы вызывают AsyncTask для выполнения фонового процесса отдельно от основного потока. За исключением WhoisActivity, использующего службу rest api для запроса доменного имени. Итак, мой вопрос: как я могу упростить мой дизайн? я могу использовать один отдельный класс и передать команду или API в зависимости от того, какой пункт меню выбран пользователем? Как мне это сделать? спасибо