23.04.2016 / 01:12 | |
DominaN Пользователь Сейчас: Offline
Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
| Ну Hashtable это самое простое, я бы свою реализацию написал, конечно. В том же After Engine я несколько разных пулов запилил, IntPool в том числе.
|
23.04.2016 / 08:09 | |
aRiGaTo Пользователь Сейчас: Offline
Имя: Snork Откуда: Yerevan Регистрация: 03.02.2010
| Зачем вообще здесь писать свои хэшмэпы или «эмулировать» их? Как понимаю, проверять длительность нажатия нужно только для пары кнопок. Почему тогда не сделать это вообще отдельными полями? ...
private int key0Pressed = 0;
private int key1Pressed = 0;
...
Расширяемость - это, конечно, хорошо, но не для устройств с малым количеством доступных ресурсов. __________________
don't tread on me |
1.05.2016 / 14:28 | |
RooMeN Пользователь Сейчас: Offline
Откуда: Нижний Новгород Регистрация: 18.01.2010
| Снова наткнулся на подобную проблему... Разве так трудно определить, какую именно функцию я хочу вызвать? private Map<String, Integer> _integer = new HashMap<>();
private Map<String, Float> _float = new HashMap<>();
private Map<String, String> _string = new HashMap<>();
public int get(String name) {
return _integer.get(name);
}
public float get(String name) {
return _float.get(name);
}
public String get(String name) {
return _string.get(name);
}
|
1.05.2016 / 14:35 | |
Витаминыч Супермодератор Сейчас: Offline
Имя: Василиус Откуда: RZN Регистрация: 20.04.2012
| Да назови по человечьи, к чему извращаться и создавать путанницу?
__________________
わからない!! |
1.05.2016 / 14:53 | |
aRiGaTo Пользователь Сейчас: Offline
Имя: Snork Откуда: Yerevan Регистрация: 03.02.2010
| RooMeN, да, трудно. Перегрузка по типу возвращаемого значения (такое вообще где-нибудь реализовано? Динамическая типизация не считается) - это больно. Как ты вообще собираешься в таком случае их вызывать? В зависимости от контекста? String foo = MyMegaMap.get("Bar")? А если будет такой код - float foo = 42 + MyMegaMap.get("Bar")? Как результат ты ожидаешь? Такое решается другим способом: 1. Бросаешь жаву и берёшься за языки с динамической типизацией (Python, PHP, JavaScript, etc.), 2. Делаешь обёртку для всех возвращаемых значений (либо реализуешь их от одного интерфейса, если это возможно): public interface Value {
int asInteger();
float asFloat();
String asString();
}
public class Int32 implements Value { ... }
public class FP implements Value { ... }
public class Str implements Value { ... }
public class SomeStruct implements Value { ... }
...
private final Map<String, Value> map = new HashMap<>();
public Value get(final String name) {
return map.get(name);
}
3. Как-то пытаешься реализовать через generic'и. __________________
don't tread on me Изменено aRiGaTo (1.05 / 14:56) (всего 1 раз) |
1.05.2016 / 17:57 | |
DominaN Пользователь Сейчас: Offline
Имя: Кирилл Откуда: Смоленск Регистрация: 28.09.2011
| я думаю, проще реально назвать функции нормально
|
1.05.2016 / 18:01 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| Или писать сразу в байткоде. JVM позволяет создавать методы с одинаковым именем, аргументами, но отличающиеся по возвращаемому типу.
__________________
let live |
3.05.2016 / 20:14 | |
Naik Пользователь Сейчас: Offline
Имя: %name% Регистрация: 14.03.2010
| Есть ли реализация сервера Socket.io с поддержкой механизмов работы Spring (контролёры, конвертация из/в json, spring sequrity)? Есть SockJS, но мне так и не удалось заставить работать hello world, просто запросы не доходят https://spring.io/guides/gs/messaging-stomp-websocket/Нашёл только такую реализацию https://github.com/mrniko/netty-socketio |
3.05.2016 / 20:56 | |
Naik Пользователь Сейчас: Offline
Имя: %name% Регистрация: 14.03.2010
| Или может есть альтернативы для реалтайм действий работающие в браузере, Android, ios
|
5.05.2016 / 20:08 | |
Naik Пользователь Сейчас: Offline
Имя: %name% Регистрация: 14.03.2010
| Проблема решена, оказывается в том примере нужны не просто веб сокеты, а протокол STOMP поверх них. Кстати SockJS на бекенде понимает и самые обычные веб сокеты, достаточно добавить к пути /websocket.
Нашёл 2 либы, которые удалось запустить на Android для сокетов, сам stomp пришлось вручную писать, что в принципе не сложно, протокол текстовый. Интересно, что на java есть его реализация поверх сокетов лишь на бекенд (spring), на клиент ничего не нашёл. Как допилю может выложу как либу если кому нужно.
Изменено Naik (5.05 / 20:11) (всего 2 раза) |