?

Log in

No account? Create an account
Paymentwall: я офигиваю. - здесь могла быть ваша реклама [entries|archive|friends|userinfo]
антон андреевич

[ website | My Website ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Paymentwall: я офигиваю. [Dec. 25th, 014|08:20 pm]
антон андреевич
https://github.com/paymentwall/paymentwall-java/blob/master/com/paymentwall/java/PaymentwallPingback.java
Ладно, если так пишут на PHP. Подозрительно, если так пишут на Python. Очень плохо, если так пишут на Java.

У меня есть только одна мысль, когда я вижу
public final int PINGBACK_TYPE_SUBSCRIPTION_CANCELLATION = 12;
public final int PINGBACK_TYPE_SUBSCRIPTION_EXPIRED = 13;
public final int PINGBACK_TYPE_SUBSCRIPTION_PAYMENT_FAILED = 14;
Это совместимость с Java 1.4. Но ведь следующая строчка
protected LinkedHashMap<String,ArrayList<String>> parameters = new LinkedHashMap<String, ArrayList<String>>();
это 1.5. WTF?! Почему не Enum?

Но следующие, что я увидел, меня просто убило. Из README:
setAmount(0.99);
setCurrencyCode("USD");

Ладно, если просто сохранить деньги в double. Но это провоцирует на
System.out.println(1.03 - .42);
0.6100000000000001
Почему нельзя было сделать BigDecimal?

API должен быть таким, что бы совершить было как можно сложнее. Тем более в строгой типизации с проверкой при компиляции.
LinkReply

Comments: