Расположение внутреннего кода Firebase в Android Studio

Я работаю над проектом колледжа, моя команда и я разрабатываем приложение, которое включает в себя пользователей и группы, мы используем Firebase для регистрации через Facebook, и почти каждое действие должно получать данные из базы данных Firebase в реальном времени. Мне интересно, существует ли соглашение о кодировании для написания кода манипулирования базой данных. Например, многие примеры кода выглядят так:

createGroupBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

        group.addUser(firebaseuser.getUid());
            //add group to firebase
            String groupId=FirebaseDatabase.getInstance().getReference().child("Groups").addGroup(group);

            //set user's group id for this id
            FirebaseDatabase.getInstance().getReference().child("Users").child(firebaseuser.getUid()).child("groupId").setValue(groupId);

Я думаю, что это очень грязный и не правильный способ доступа к базе данных (внутри файла класса activity.java). Я не могу думать о хорошем способе организации кода и создания слоя доступа к данным, который сделает код лучше и облегчит процесс разработки. Любые предложения помогут.

2 ответа

Решение

Оберните вызовы Firebase в сервисный уровень и предоставьте сервисные методы.

Когда я разрабатываю приложение для Android, я всегда стараюсь следовать шаблону MVP (Model View Presenter). Таким образом, вы должны разделить все эти 3 внутри разных пакетов.

Для Firebase я использую папку со всеми функциями Firebase. Эти функции Firebase вызывают CallBack, который является ссылкой на докладчика.

Я не знаю, лучший ли это путь, но он мой и уважает модель MVP

Другие вопросы по тегам