recoder: (donkey)
recoder ([personal profile] recoder) wrote2004-12-24 01:19 pm

Жаба sucks

Нет, друзья мои. Что бы вы не говорили, а всё-таки Java сосёт.

Свежий пример (FYI: на Жабе пишу ~ пять лет).

Нашёл багу в своём энкодере строк для JavaScript - с кем не бывает... По ходу дела понадобилось сделать две задачки: есть текущий символ типа char и надо в одном месте из него сделать строку, а в другом - отдать его в некую функцию как long. Тривиальные задачки? А вот фиг! Полчаса почти просидел, коллег поспрашивал - еле выяснил...

Очевидное new String( c ) не прокатило. Тупое c.toString() тоже. После некоторых раздумий, пришлось сделать new Character( c ).toString().

Вторая задачка оказалась сложнее. В классах Integer и Character ничего не нашлось. То есть нашлось много интересных методов, которые мало кто понимает зачем нужны. Полазил по туториалам на java.sun.com - не помогло. Начал ходить по офису и озадачивать всех. Ответ оказался элементарным, но знали его далеко не все: typecast! Оказалось, надо было написать (long) c - и всё.

В общем, или лыжи не едут... Или я Java-incompatible.

coding

[identity profile] crazyshura.livejournal.com 2004-12-27 05:52 pm (UTC)(link)
Да нет - всё вроде логично.
Просто как и ко всему - привыкнуть нужно.
Вторая задачка не отличается от ANSI С.

Ну а насчёт perl - тут много говорить можно :)))
Сам язык Java достаточно неплохой - хотя глюки конечно как и везде есть :)
Мне например не нравиться отсутствие static Object.equals(Object o1, Object o2) как в C#.


Наверно очевидность возникает после прочтения N страниц документации..
( а по perl'у я всё никак прочесть книжку не могу ;))) - времени не хватает
)

Короче - я пошёл читать доки :)