|
|
|
Рефакторинг(кода) двух функций - подскажите?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, у меня есть два объекта которые 1 в 1 только это разные объекты, и мне нужно над ними делать действия которые ниже в функциях. Можно ли как-то рефакторизировать код, без применения интерфейсов или абстарктного класса. Например с помощью generic? Заранее благодарен. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 13:07 |
|
||
|
Рефакторинг(кода) двух функций - подскажите?
|
|||
|---|---|---|---|
|
#18+
_webdev_, можно вот так скрестить ежа с удавом, если Bookmark и RecentActivity имеют общий базовый класс или имплементят один и тот же интерфейс(иначе сорт не прокатит) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. и оно возможно даже взлетит :) но я бы так делать не стал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 14:42 |
|
||
|
Рефакторинг(кода) двух функций - подскажите?
|
|||
|---|---|---|---|
|
#18+
_webdev_, можно кстати заимплиментить Comparable в Bookmark и RecentActivity это позволит избавиться от анонимного компаратора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 15:59 |
|
||
|
Рефакторинг(кода) двух функций - подскажите?
|
|||
|---|---|---|---|
|
#18+
На уровне архитектуры приложения всё-таки стоит объявить базовый интерфейс IBookmarkOrActivity. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 16:27 |
|
||
|
Рефакторинг(кода) двух функций - подскажите?
|
|||
|---|---|---|---|
|
#18+
maytonНа уровне архитектуры приложения всё-таки стоит объявить базовый интерфейс IBookmarkOrActivity. - спасибо, я уже так и понял, что лучшего варианта я не найду. DDiverможно кстати заимплиментить Comparable в Bookmark и RecentActivity это позволит избавиться от анонимного компаратора. - хорошая идея, пас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 16:31 |
|
||
|
Рефакторинг(кода) двух функций - подскажите?
|
|||
|---|---|---|---|
|
#18+
_webdev_, всё что одинаковое в методах - выносится в единственный общий метод. всё что разное - уносится в разные классы. Если не можешь менять, сущности, то используй новый класс. Разница сводится к 3м операциям 1) Конструктор - пердаём типизированую фабрику 2) Компаратор - можно целиком вынести из метода 3) Создание массива - та же фабрика. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. Но по хорошему здесь надо больше классов. Например форматированию тут не место. В целом, не понятно зачем такой огород, если на Apache Digester XML конвертируется в объекты клевыми правилами, которые всё умеют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2015, 17:26 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38861919&tid=2125896]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
155ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 465ms |

| 0 / 0 |
