myaasiinh / Mobile-Programming-2024-2025

Repository untuk mata kuliah mobile programming dan praktikum bertanya materi dan fixing bug
0 stars 0 forks source link

Supriyatin Podcast Hub Mobile App 32602200015 Kelas Reguler #72

Open Suprey11 opened 1 month ago

Suprey11 commented 1 month ago

'Podcast App' image

lib: core:

Analisis dan penjelasan:

  1. Core:

    • Global components seperti Typography.dart, ButtonComponent.dart, dll. dapat digunakan di seluruh aplikasi.
    • EpisodeCardWidget.dart ditambahkan ke global components karena terlihat digunakan di beberapa layar.
  2. Data:

    • Model dan dummy data untuk podcast, episode, dan profile sesuai dengan konten yang terlihat di gambar.
  3. Features: a. podcast_discovery:

    • Menampilkan layar utama dengan featured podcast ("The Best Podcast of the Year").
    • FeaturedPodcastWidget.dart untuk menampilkan podcast unggulan dengan gambar besar.
    • PodcastCardWidget.dart untuk menampilkan podcast dalam format kartu yang lebih kecil.

    b. episode_list:

    • Menampilkan daftar episode baru dan saran podcast.
    • NewEpisodesWidget.dart untuk menampilkan avatar-avatar episode baru.
    • PodcastSuggestionWidget.dart untuk menampilkan saran podcast ("Podcasts You May Like").

    c. podcast_player:

    • Layar pemutaran podcast dengan kontrol player dan visualisasi audio.
    • PlayerControlsWidget.dart untuk tombol kontrol pemutaran.
    • AudioVisualizerWidget.dart untuk menampilkan visualisasi audio.

    d. profile_management:

    • Meskipun tidak terlihat langsung di gambar, fitur ini mungkin diperlukan untuk manajemen profil pengguna.

Fungsi yang dapat digunakan di banyak halaman dan dibuat sekali:

  1. ButtonComponent.dart: Untuk tombol seperti "Let's Listen" dan "Follow".
  2. ProgressBarComponent.dart: Untuk visualisasi audio di layar pemutaran.
  3. AvatarComponent.dart: Untuk menampilkan avatar di berbagai bagian aplikasi.
  4. NetworkImageLoader.dart: Untuk memuat gambar podcast dan episode secara efisien.
  5. EpisodeCardWidget.dart: Untuk menampilkan informasi episode di berbagai layar.
  6. Typography.dart: Untuk konsistensi gaya teks di seluruh aplikasi.

Komponen-komponen ini dibuat sekali dalam folder core/global_component dan dapat dipanggil dari berbagai fitur dan layar sesuai kebutuhan, memastikan konsistensi UI dan mengurangi duplikasi kode.