Первоначально я реализовал приложение для захвата видео со всей камерой и логикой записи внутри действия. С моим пониманием шаблона проектирования MVP представление не должно содержать никакой логики, отличной от самого пользовательского интерфейса. Поэтому мне было рекомендовано скрыть логику камеры за интерфейсом. Я не понимаю, что это такое, скрывая его в интерфейсе. Означает ли это, что я должен создать интерфейс и иметь отдельный класс, реализующий функции, а затем подключаю его к активности. Может ли кто-нибудь привести меня к правильному пониманию этого заявления или предоставить любую внешнюю помощь по этой проблеме.Android скрывает андроид Api за интерфейсом
-1
A
ответ
0
Вот краткий пример, чтобы продемонстрировать, что было описано. Вы хотите иметь весь код, связанный с камерой, в отдельном классе и иметь интерфейс для описания методов.
interface Recorder {
void recordVideo();
void takePicture();
}
class CameraRecorder implements Recorder {
void recordVideo() { ... }
void takePicture() { ... }
}
// Existing activity
class Activity {
Recorder recorder;
void main() {
recorder.takePicture();
}
}
О, отлично, так что это в основном то, что я ожидал. Также возникает вопрос, какой компонент является этой логической частью в отношении дизайна MVP? – WilliamC
@WilliamC Я не эксперт, поэтому я не совсем уверен. Кажется, это может быть модель, но если есть значительная логика, ее можно считать контроллером. – Lorenzo