Skip to content

Issues #1

@GeorgiPachov

Description

@GeorgiPachov

public void addGameObject - защо някой да добавя на DrawingView-то? (което забележи, само по име е View в тази архитектура, и то защото от него ни идва Canvas, иначе хич нямаше да се занимаваме с view-та)

backgroundSound() - ужасно име на метод. В име на метод трябва да имаш действие, глагол.

В activity-то MediaPlayer -а private, другото - не.

    PointF getPosition() {
        return null;
    }
  • много лоша идея. По контракт (a.k.a interface или абстрактен метод) ти се задължаваш всеки наследник на GameObject да има позиция. Да направиш override с null е ужасна идея. Бекгранда си има локация и тя е 0,0.
public Obstacles(Context context) {
    }
  • dafuq?

Половината константи чисълца изхакани в кода на най-различни места, другите като променливи. Неконсистентност.

position.y > -51 - you are kidding me, right?

BackGroundTextures(Bitmap _textures) - the hell?
public void setWidthAndHeight - setDimensions(int w, int h), може би?
PointF position = new PointF(); - след като всеки GameObject има позиция, защо просто не я пазиш в базовия клас, а всеки да си пази позиция? (Тука въобще не говоря, че не е private..)

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
        for(GameObject obj : gameObjects){
            obj.draw(canvas);       // passes through all objects and write them to the canvas
        }

        invalidate(); // set the change of draw
    }

Не. Така правиш асинхронен безкраен цикъл. Това ще продължи да точи CPU и батерия дори след като минимизираш app-а, да не говорим, че вероятно ще се вика и повече от 60 пъти в секунда.

Дъна, не са добре стилово нещата и някои ООП забележки. За съжалание не мога да погледна по-важното, а именно features и какви решения си избрал за проблемите - нямам времето. Напомни ми следващия път като дойдеш.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions