Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет kouzdra ([info]kouzdra) в [info]ljr_todo
@ 2005-07-20 22:30:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Постинги пользователей из LJ
Я вдруг подумал, что должно быть не оченть сложно разрешить LJ-юзерам постить комменты
"под собой" - просто вместо окошечка с LJR user/password, предлагать LJ user/password
(ну у линков параметр соотвествующий сделать - что отвечает человек из LJ). Проверить
login/пароль на валидность LJ API позволяет вполне штатно.


(Читать комментарии) - (Добавить комментарий)


[info]drz
2005-07-21 14:35 (ссылка)
"Синтаксис - неимоверно громоздкий"

Хм... Ну, вот у XSLT я понимаю, громоздкий синтаксис. А здесь... Все нормальные идешки умеют делать автокомплит...

"Невозможно оттюнить представление данных"

Что под этим подразумевается?

"когда массив структур раскладывается на пачку паралельных массивов примитивных типов, только чтобы не заводить кучу ненужных оъектов."

Не понял. Не было ни разу таких проблем. Массив структур - однозначно коллекции, например, ArrayList.

"А "вещь в себе" - именно что "платформа". В 90% случаев это ни на хрен не надо."

Всё-таки очень полезная вещь. Конечно, можно долго спорить, но не хочу, мне достаточно того, что на своём опыте я убедился в полезности именно такого подхода.

"Но уродства языка это не извиняет."

Я ещё не встречал языка совсем без уродств.

"В сложных случаях написать тип или понять, что ему там не нравится - головоломка даже для тех, кто вывод этих типов писал."

У меня почему-то всё просто. Может быть, дело в писателях? :)

А "вывод типов" - зачем? Куда?

"И замечательные плюшки типа выражений, у котороых в Java невозможно написать тип (то есть - выражение, которое нельзя выделить в пемеренную)."

Тоже ничего не понял. Как это "выражение, которое нельзя выделить в пемеренную"?

"Людей, которые такие хаки вставляют в компилятор надо убивать на месте."

Мне вот сишные генерики никогда не нравились. Здесь, конечно, тоже не фонтан, но, опять-таки, жить можно. Вот будет адекватная альтернатива яве, будем посмотреть. А так, деваться некуда, работы море, а успевать надо всё. И успевается. Вот сейчас заканчиваем АСУ "Деканат" разрабатывать, на вебе, разумеется (про работу деканатов рассказывать можно долго, и это просто ужас какой-то), если бы выбрали что-то отличное от явы, сейчас бы сидели в лучшем случае на половине пути и кусали локти от невыразимой сложности вылавливания багов.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]kouzdra
2005-07-21 15:17 (ссылка)
Ну вот пример про массив - нужен
массив из class { int no; Seg ind; int hash; }
где class Index { int no; int len; }

Типы от балды, но точно воспроизводящий реальный пример. И из него надо устроить массив. Содержательный размер элмента - 16 байт, тут - сверху - 4 байта ссылка в массиве, два объекта (каждый - минимум +4 байта сверху, если не 8), и еще одна ссылка. - то есть - как минимум - еще столько же. Плюс к этому в С я могу уплотнить это дело.

2-3 раза - величина весьма значимая. Если массив большой, а так часто бывает, надо что-то делать. Единственный способ - массив разваливается на 4 паралельных, с правкой всего кода. Тогда в С довольно много вещей делаются вообще прозрачно. С С#, кстати, тоже.

Если речь идет не о массиве, а просто о структуре - там вообще никак не выкрутиться. А такие вещи довольно часто означают ухудение характеристик в несколько раз. То есть - Java не очень плоха, пока ресурсы не поджимают, но они почему-то рано или поздно всегда начинают поджимать. Вот с NPJ-то видно, что Миша был прав и у npj действительно начинаются проблемы с производительностью.

Платформа - это тоже не подарок. Например - необходимо поставлять JRE вместо с продуктои, да и вообще - javaские продукты несколько, ээээ, кривовато вписываются в внешнюю среду. Уши jvm торчат.

Про вывод типов - консилиум с участием человека, который просто писал проверку типов в generic - ну был довольно штатным мероприятием. Неочевидно. С++ шаблоны по крайней мере не содержат хаков, да и вообще - и проще и практичнее.

По поводу getClass - прелесть же там в том, что нет у этого метода никакого типа результата. Есть хак в компиляторе, который и описан в доке. Описать такой же в своей программе невозможно. Хотя в O'Caml например - такое вполне делается. А язык проще.

То есть - большой проект бы я на Java делать не стал. Жопа будет. Разве что очень припрет с библиотеками. Есть у нее еще достоинство - на Java можно сажать "тупых" программистов. Облажаться на ней довольно трудно. В этом смысле - да - такой Visual Basic с более все-таки пристойным синтаксисом.

А про "выражение, которое нельзя выделить в переменную" - это очень просто - именно так - у него тип есть, но на Java переменную с таким типом описать нельзя. То есть - в Java 1.5 в общем случае корректный introduce variable невозможен. Бывает и довольно часто вокруг <? extends T>. Пример рожу как соберусь Java отставить. Оно не то, чтобы, на практике смертельно, но generic'и с такими пенками назвать простой конструкцией - никак невозможно.

На самом деле пример того, как можно - вот я O'Caml-евскую программку постил - это не скриптовый язык. Это статически типизированный язык (вообще без всякой runtime type information), который компилится в нативный код (хороший код, кстати). Когда Саны Java рожали - это уже лет 15 как было придумано - в смысле семейство ML. Собственно сейчас-то и C# и Java те самые люди и наворачивают, но когда навороты вставляют задним числом всегда кривь получается.

То есть Java ругать можно очень много за что. Пока я на ней не пописал - тоже думал - С++ плохо, Java - хорошо (ну люблю я и GC и надежную типизацию). В общем - в долгосрочной перспективе с Java imho шаносов влипнуть в серьезные проблемы больше.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]drz
2005-07-21 15:30 (ссылка)
"Единственный способ - массив разваливается на 4 паралельных, с правкой всего кода."

Я вообще не могу себе представить ситуацию, когда нужен этот самый массив.

"Вот с NPJ-то видно, что Миша был прав и у npj действительно начинаются проблемы с производительностью."

НПЖ - на пхп. И этим всё, увы, сказано.

"Например - необходимо поставлять JRE вместо с продуктои"

Вы опять ушли в тему клиентских приложений, я уже высказывался, что клиентские приложения на яве суть зло. Сервер - вот среда обитания явы.

"писал проверку типов в generic"

Не понял. Компилятор ведь сам проверяет.

"То есть - большой проект бы я на Java делать не стал"

Я бы - ровно наоборот :) . Уже объяснил, почему. Сопровождение проектов на яве проще в разы по сравнению со всем, что сейчас есть.

"на Java можно сажать "тупых" программистов."

Вот это - ни в коем случае! А то вся организация будет завалена горами оторванных рук.

"А про "выражение, которое нельзя выделить в переменную" - это очень просто - именно так - у него тип есть, но на Java переменную с таким типом описать нельзя."

Всё-таки примера конкретного хочется.

"который компилится в нативный код (хороший код, кстати)."

Ява тоже в нативный код компилит. И летает весьма шустро. См. HotSpot.

"То есть Java ругать можно очень много за что"

Если это делать как Максим Кизуб, там действительно здравые наезды.

"В общем - в долгосрочной перспективе с Java imho шаносов влипнуть в серьезные проблемы больше."

Хм... с 98-го года некоторые проекты наши работают, до сих пор некоторые улучшаем (т.е. добавляем функциональности), про другие уж и забыли, люди просто пользуются и не жалуются.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]kouzdra
2005-07-21 15:58 (ссылка)
А может лучше по email? - а то, честно говоря, не хочется флудить здесь избитой и левой темой. Оно как-то начало разрастаться.

Мне можно писать на msk собака oktetlabs точка ru

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]drz
2005-07-22 05:58 (ссылка)
Лучше в НПЖ:
http://npj.ru/drz/diskussija_o_jave

Или в РЖЖ, но у меня:
http://lj.rossia.org/users/drz/2975.html

(Ответить) (Уровень выше)


(Читать комментарии) -