Giter Club home page Giter Club logo

musical-structure-app's Introduction

Musical-Structure-App

PROJECT SPECIFICATION Musical Structure App

App Design

CRITERIA

Suitability

The app’s structure is suitable for a music player app. A similarly structured app which focuses on audiobooks, podcasts, or other audio media is also acceptable.

Clarity

The purpose of each activity is easy for a user to understand through the UI design and feature labeling.

Number of Activities

The app contains 2 to 6 activities

Layout

CRITERIA

Structure

The app contains multiple activities, each labelled, which together make a cohesive music app.

Labelling

Features in the app are clearly defined either by labelling or images. For example, a button to play music could use a universally recognized triangular "Play" symbol or could have the text label "Play".

Buttons

Each activity contains button(s) which link it to other activities a user should be able to reach from that activity. For instance, a ‘Library’ activity might contain a button to move to the ‘Now Playing’ activity.

Layout Best Practices

The code adheres to all of the following best practices:

Text sizes are defined in sp Lengths are defined in dp Padding and margin is used appropriately, such that the views are not crammed up against each other. Functionality

CRITERIA

Runtime Errors

The code runs without errors

OnClickListeners

Each button’s behavior is determined by an OnClickListener in the Java code rather than by the android:onClick attribute in the XML Layout.

Intents

Each button properly opens the intended activity using an explicit Intent.

Custom Adapter

App uses a custom adapter to populate the layout with views based on instances of the custom class.

Data Storage and Retrieval

Information about instances of the custom class are stored in an appropriate data structure (e.g. ArrayList, Array).

When the information needs to be displayed, it is efficiently retrieved (e.g. Looping).

Custom Class

Data about each song (or equivalent audio media such as podcast episode) should be stored in a custom class that contains at least 2 states (e.g. Song Name, Artist Name)

If images are included (e.g. Album Art), they are stored as drawables. All drawables are stored at multiple densities. Images are not required.

Code Quality

CRITERIA

Code Formatting

The code is properly formatted:

No unnecessary blank lines No unused variables or methods No commented out code The code also has proper indentation when defining variables and methods.

Readability

Code is easily readable so that a fellow programmer can understand the purpose of the app.

Naming Conventions

All variables, methods, and resource IDs are descriptively named so that another developer reading the code can easily understand their function.

musical-structure-app's People

Contributors

aishpn5 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.