Size: a a a

2020 October 10

ch

central hardware in learn.java
Albert Abdullin
ну норм, давайте не будет писать нормальный код а использовать костыль
источник

T

Tagir in learn.java
Albert Abdullin
Ну в принципе моя телепатия оказалась верной
источник

AA

Albert Abdullin in learn.java
central hardware
ну норм, давайте не будет писать нормальный код а использовать костыль
Ну в Андроиде это связано с тем, что при каждом повороте экрана объект, который отвечает за прорисовку экрана, уничтожается и создаётся новый
источник

T

Tagir in learn.java
central hardware
ну норм, давайте не будет писать нормальный код а использовать костыль
Что такое нормальный код в данном контексте?
источник

AA

Albert Abdullin in learn.java
Tagir
Ну в принципе моя телепатия оказалась верной
А что там понимается под глобальным объектом класса?
источник

T

Tagir in learn.java
Ну они имеют в виду сам окружающий класс со своими метаданными и статическими полями
источник

AA

Albert Abdullin in learn.java
Спасибо
источник

T

Tagir in learn.java
Вообще не знаю как на Андроиде, но в нормальной джаве это неверно
источник

T

Tagir in learn.java
Хотя у них всё равно один загрузчик класса и через загрузчик есть неявная ссылка. Но явно nested class не ссылается на outer
источник

VJ

Vladimir J in learn.java
askjar fhnj
я дурак, извините
😱
источник

AS

Alexey Stepanov in learn.java
Оффтоп немного, подскажите, какие рекомендации по написанию тестов есть касательно такой проблемы
Нужно протестировать некоторый метод, который зависит от состояния объекта (к примеру, чтобы протестировать удаление - нужно учесть непустое состояние, а значит как-то нужно наполнить прежде, задействуя другие методы, тем самым они лишаются независимости? )
источник

a

alexme951 in learn.java
Не совсем понимаю проблему. Для данного конкретного метода класса готовишь объект по-разному для разных тестовых методов, проверяешь, что объект получился таким, как ожидалось.
источник

a

alexme951 in learn.java
После того, как ты применил к нему метод класса
источник

DC

Denis Chikanov in learn.java
Alexey Stepanov
Оффтоп немного, подскажите, какие рекомендации по написанию тестов есть касательно такой проблемы
Нужно протестировать некоторый метод, который зависит от состояния объекта (к примеру, чтобы протестировать удаление - нужно учесть непустое состояние, а значит как-то нужно наполнить прежде, задействуя другие методы, тем самым они лишаются независимости? )
0) не оффтоп :)
1) по возможности неплохо организовывать код так, чтобы вызов метода не ломался вне зависимости от состояния - как ты и отметил, наличие таких зависимостей не очень приятно там, где этого можно избежать - но очевидно, избежать их можно не везде
2) вообще нет ничего плохого в том, чтобы в тесте там, где надо, перед непосредственно тестируемым кодом сделать вызовы, которые "подготовят" объект/класс к тестированию - но, во-первых, если эти вызовы - часть его логики, их тоже надо отдельно оттестировать, во-вторых, надо, чтобы тесты не зависели друг от друга по порядку исполнения
источник

AS

Alexey Stepanov in learn.java
Denis Chikanov
0) не оффтоп :)
1) по возможности неплохо организовывать код так, чтобы вызов метода не ломался вне зависимости от состояния - как ты и отметил, наличие таких зависимостей не очень приятно там, где этого можно избежать - но очевидно, избежать их можно не везде
2) вообще нет ничего плохого в том, чтобы в тесте там, где надо, перед непосредственно тестируемым кодом сделать вызовы, которые "подготовят" объект/класс к тестированию - но, во-первых, если эти вызовы - часть его логики, их тоже надо отдельно оттестировать, во-вторых, надо, чтобы тесты не зависели друг от друга по порядку исполнения
А что имеется ввиду под «подготовить»?
Просто получается, удаление зависит от способов добавления
И если у меня поломается добавление, я не смогу протестировать удаление
Что логично с одной стороны
источник

DC

Denis Chikanov in learn.java
Alexey Stepanov
А что имеется ввиду под «подготовить»?
Просто получается, удаление зависит от способов добавления
И если у меня поломается добавление, я не смогу протестировать удаление
Что логично с одной стороны
Да, логично.
Подготовить - значит в самом тесте (можно вынеся в приватный метод, но не суть) добавить то, что будешь удалять, это как раз нормально.
источник

AS

Alexey Stepanov in learn.java
Понял, спасибо
источник

af

askjar fhnj in learn.java
кто создаёт библиотеки?

Способен ли обычный программист создать свою библиотеку?
источник

DC

Denis Chikanov in learn.java
askjar fhnj
кто создаёт библиотеки?

Способен ли обычный программист создать свою библиотеку?
Да
источник

Lr

Larymar r.sorokin in learn.java
askjar fhnj
кто создаёт библиотеки?

Способен ли обычный программист создать свою библиотеку?
Конечно, это просто джарник
источник