LINUX.ORG.RU — Русская информация об ОС Linux

[#]  
eros2

Светлое будущее Java

В статье (на русском) "по косточкам" разобрана стратегия Oracle касательно Java-платформы (и сопутствующих инструментов разработчика) после поглощения корпорацией компании Sun Microsystems.

От себя добавлю, что несколько дней назад Oracle объявила о переносе проектов и функциональности kenai.com (который уже успели объявить "первой жертвой" оракла) на java.net.

>>> Подробности

Метки: java, oracle, sun

eros2 (10.02.2010 21:12:53)
Проверено: maxcom (10.02.2010 22:49:36)
Juick

[#] Ответ на: комментарий от eros2 11.02.2010 11:36:45  
>>-----Цитата---->>

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

<<-----Цитата----<<

Но ведь OpenJDK это практически тот же Sun JDK. В чём причина не очень хорошей работы OpenJDK?

den2 (11.02.2010 11:55:02)
[#] Ответ на: комментарий от rtvd 11.02.2010 10:42:26  

>Вопрос №1:

>Вопрос №2:

man grep (+ regexp) -> номер строки (доступ к шелу есть из обоих)

man vim || emacs

сам пользовался - вполне устраивало...

xvost (11.02.2010 11:56:26)
[#] Ответ на: комментарий от matumba 11.02.2010 11:28:12  

> Даже не могу смеяться на такую глупость. Т.е. сотни функций-дубликаторов друг друга - это "понятнее", а ОДНА функция с явно указанными умолчаниями - это типа дебри? Ню-ню...

если вам требуется сотня дубликаторов для одной функции, то проблема в дизайне функции. Нехрен делать функции на 100 параметров!

VoDA ** (11.02.2010 11:59:12)
[#] Ответ на: комментарий от xvost 11.02.2010 11:56:26  

>man grep (+ regexp) -> номер строки (доступ к шелу есть из обоих)

что и ожидалось :))))))

>сам пользовался - вполне устраивало...


в 10 тыщах классов? нуну

thevery **** (11.02.2010 12:05:36)
[#] Ответ на: комментарий от den2 11.02.2010 11:55:02  
rtvd

> Но ведь OpenJDK это практически тот же Sun JDK. В чём причина не очень хорошей работы OpenJDK?

Почти != такой же самый.

AFAIK часть классов отличается. В частности, используются другие алгоритмы рендеринга. В википедии есть подробный список отличий.

rtvd ** (11.02.2010 12:05:43)
[#] Ответ на: комментарий от xvost 11.02.2010 11:56:26  
rtvd

>>Вопрос №1: >>Вопрос №2:

> man grep (+ regexp) -> номер строки (доступ к шелу есть из обоих) > man vim || emacs

> сам пользовался - вполне устраивало...

Не надо меня манами кормить. Подозреваю, что когда я начал пользоваться vim, emacs, sed и awk, кое-кого еще на свете не было.

Если так крут - плиз, к-во нажатий клавиш в студию. А я посмеюсь.

rtvd ** (11.02.2010 12:08:44)
[#] Ответ на: комментарий от rtvd 11.02.2010 12:08:44  

> Не надо меня манами кормить. Подозреваю, что когда я начал пользоваться vim, emacs, sed и awk, кое-кого еще на свете не было.

Фанатики устаревших редакторов умиляют. Сам когда-то надрачивал на Emacs. Моей конфигурацией пользуются по всему миру, а я уже давно редактирую в нем только LaTeX и текстовые файлы.

faustus * (11.02.2010 12:24:34)
[#] Ответ на: комментарий от thevery 11.02.2010 12:05:36  

> что и ожидалось :))))))

рот не порви , что не так ? кол-во нажатий почти == длине искомой строки... по скорости _у_меня_ получиться быстрее чем мышкой (особенно если код не знаком)

> нуну не то что в 10K классах... правда хорошенький рейд стоял.

ну тэги построй , алиасы для grep-а (если еще одним пальцем по клаве); учитывая , что имя ф-ла == имя класса и автокомплит то №1 - это не вопрос , а упражнение для освоения IDE (или структуры проекта)

не о чем мне тут спорить , спросили - ответил.. ;)

xvost (11.02.2010 12:28:24)
[#] Ответ на: комментарий от VoDA 11.02.2010 10:52:53  
annulen

>Если нужны аргументы по умолчанию, то можно сделать это через дополнительную функцию-обертку. Результат тот-же, но код более понятен.

Не всегда. В некоторых случаях такое решение выглядит стопудовым костылем (когда перегруженная функция просто вызывает другой вариант себя с меньшим числом аргументов)

annulen ** (11.02.2010 12:30:56)
[#] Ответ на: комментарий от eros2 11.02.2010 11:36:45  
annulen

>Вполне возможно, у меня OpenJDK вообще отрисовывал свинговый гуй очень криво

У меня все работает. Что я делаю не так?

annulen ** (11.02.2010 12:32:27)
[#] Ответ на: комментарий от AX 11.02.2010 10:31:08  
annulen

>Зачем нужна ява, когда есть D?

по тем программам, которые я видел, кажется, что Д это ява для тех кому хочется юзать WinAPI без гемора

annulen ** (11.02.2010 12:36:01)
[#] Ответ на: комментарий от xvost 11.02.2010 12:28:24  
rtvd

>> что и ожидалось :))))))

> рот не порви , что не так ? кол-во нажатий почти == длине искомой строки... по скорости _у_меня_ получиться быстрее чем мышкой (особенно если код не знаком)

>> нуну не то что в 10K классах... правда хорошенький рейд стоял.

> ну тэги построй , алиасы для grep-а (если еще одним пальцем по клаве); учитывая , что имя ф-ла == имя класса и автокомплит то №1 - это не вопрос , а упражнение для освоения IDE (или структуры проекта)

> не о чем мне тут спорить , спросили - ответил.. ;)

Не виляйте, товарищ :-)

Есть ли у вас вариант для vim/emacs лучше чем это:

find -name 'ThisIsAnotherUsefulThing.*'

vim com/megacorp/product/package1/package2/ThisIsAnotherUsefulThing.java

find -name '.*Mupppet.*'

vim com/megacorp/product/package1/package2/LittleMupppet.java

Если нет, то эпичный слив засчитан :) Не согласны - пример в студию, причем с к-вом нажатий клавиш. И да, никакой мыши. А я покажу, как то же самое делается в eclipse.

rtvd ** (11.02.2010 12:43:20)
[#] Ответ на: комментарий от annulen 10.02.2010 23:37:34  

> Отличный язык, но некоторых возможностей С++ не хватает. Ну что им, впадлу было добавить значения аргументов по умолчанию?

C# 4.0 - это правильная жаба

yk4ever * (11.02.2010 12:49:06)
[#] Ответ на: комментарий от den2 10.02.2010 23:54:46  

> Что плохого в автокомплишене? Очень удобно, экономит время.

Вылазит когда не надо.

Освойте слепой метод набора и будьте быстрее автокомплишена.

yk4ever * (11.02.2010 12:52:06)
[#] Ответ на: комментарий от den2 10.02.2010 23:52:18  

> У нас (в этой стране) большинство жабу не может осилить - слишком сложная для них.

Большинство людей - тупые. Это факт жизни.

yk4ever * (11.02.2010 12:52:45)
[#] Ответ на: комментарий от rtvd 11.02.2010 12:43:20  

> Если нет, то эпичный слив засчитан :)

Бессмысленный спор же - в Emacs'е всегда можно написать еще одну функцию, и повесить ее на комбинацию клавиш. Алсо, в Emacs'е можно поставить, например, ECB - это такой недо-IDE.

faustus * (11.02.2010 12:53:07)
[#] Ответ на: комментарий от yk4ever 11.02.2010 12:52:06  

> Освойте слепой метод набора и будьте быстрее автокомплишена.

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

faustus * (11.02.2010 12:54:14)
[#] Ответ на: комментарий от faustus 11.02.2010 12:54:14  
robot12

>Основная ценность комплита - не нужно помнить

А если ещё приплюсовать не обязательность понимания ... ваще тогда самое то !

robot12 ***** (11.02.2010 13:05:00)
[#] Ответ на: комментарий от faustus 11.02.2010 12:53:07  
rtvd

> Бессмысленный спор же - в Emacs'е всегда можно написать еще одну функцию, и повесить ее на комбинацию клавиш. Алсо, в Emacs'е можно поставить, например, ECB - это такой недо-IDE.

Не бессмысленный. Илита кичится тем, что наконец-то научилась запускать emacs и vim. Но до сих пор не смогла внятно ответить на поставленный вопрос. И не привела цифры. Уверен, цифры будут убогими. :-) Но всегда готов переменить мнение, если будет достойный аргумент. Может и я тогда буду всегда пользоваться vim да emacs.

Вариант с написанной функцией я бы принял. Но желаю видеть:

1. саму функцию

2. пример использования

3. к-во нажатий клавиш для обоих случаев

А гнуть пальцы в стиле "а мой имакс может даже кофе со сливками готовить" каждый ламер может.

rtvd ** (11.02.2010 13:06:29)
[#] Ответ на: комментарий от robot12 11.02.2010 13:05:00  
rtvd

> А если ещё приплюсовать не обязательность понимания ... ваще тогда самое то !

Понимания чего? Того, как кнопочки нажимаются?

rtvd ** (11.02.2010 13:11:10)
[#] Ответ на: комментарий от rtvd 11.02.2010 13:06:29  

> Но до сих пор не смогла внятно ответить на поставленный вопрос. И не привела цифры. Уверен, цифры будут убогими. :-)

Не, конечно же цифры JDE vs. Eclipse или того паче Idea будут убогими. Но точно так же убого будет выглядеть Eclipse vs. emacs + ctags для тех языков, которые пока в Eclipse не поддерживаются так же хорошо, как Java.

У Emacs есть миллион недостатков и одно их всех перевешивающее преимущество - в нём есть моды для всего. Вообще всего. И их не надо настраивать. Так что выбор ленивых - Emacs. Я бы давно слез с него, если бы не лень. Просто, поскольку мне не приходится программировать на Java или C#, у меня нет пока достаточно сильной мотивации. Стал бы писать на Java, в миг бы пересел на Eclipse.

lisprocks (11.02.2010 13:14:31)
[#] Ответ на: комментарий от yk4ever 11.02.2010 12:52:45  

> Большинство людей - тупые. Это факт жизни.

Большинство людей вполне умны, просто им забыли вовремя об этом сообщить. Вот и не научились они думать как следует, считая себя тупыми.

Клинических отклонений (идиотизм, кретинизм, и т.п.) - меньше процента. Остальные нормальные, умные, только необученные.

lisprocks (11.02.2010 13:17:14)
[#] Ответ на: комментарий от eros2 11.02.2010 0:14:22  

> Вау, закос под Луговского!

Нет, слишком грамотная речь.

LamerOk **** (11.02.2010 13:18:01)
[#] Ответ на: комментарий от lisprocks 11.02.2010 13:17:14  

> Большинство людей вполне умны, просто им забыли вовремя об этом сообщить.

Тут можно спорить - не верили, что могут научиться, или тупо не хотели.

Факт остаётся фактом - тупых на рынке труда много.

> Остальные нормальные, умные

Если человек без отклонений - это ещё не значит, что он обладает большим умственным потенциалом.

yk4ever * (11.02.2010 13:24:12)
[#] Ответ на: комментарий от faustus 11.02.2010 12:24:34  
Binary

>Фанатики устаревших редакторов умиляют. Сам когда-то надрачивал на Emacs. Моей конфигурацией пользуются по всему миру, а я уже давно редактирую в нем только LaTeX и текстовые файлы.

Как странно, в текстовом редакторе редактируют текстовые файлы! я шоке...

Binary * (11.02.2010 13:24:27)
[#] Ответ на: комментарий от Nagwal 11.02.2010 1:52:30  

> > тот, кто пишет "джава" -- быдло

>А как надо писать, о великое небыдло? Жаба?


очевидно, что "небыдло" пишет только "Java". :)

Предвосхищая следующий вопрос - и произносит тоже как "Java", так что не придерешься :))

aff (11.02.2010 13:25:24)
[#] Ответ на: комментарий от den2 11.02.2010 0:01:12  

> Я не знаю как у вас в Израиле (не бывал), но у нас в замкадье всё обстоит именно так, как я описал. В Москве не лучше.

В России вообще удивительный дефицит жабокодеров.

Объясним, пожалуй, тем, что международный маркетинговый бабах Сана сюда не докатилсо.

yk4ever * (11.02.2010 13:26:29)
[#] Ответ на: комментарий от xvost 11.02.2010 12:28:24  

>кол-во нажатий почти == длине искомой строки...
а релевантность?

>по скорости _у_меня_ получиться быстрее чем мышкой (особенно если код не знаком)


а причём тут мышка-то? ctrl+N, вводим имя класса (с кегэкспами и автокомплишеном)

>что имя ф-ла == имя класса


а если класс внутренний? тут-то кто-то и сел в лужу...

thevery **** (11.02.2010 13:30:16)
[#] Ответ на: комментарий от rtvd 11.02.2010 10:42:26  
vasily_pupkin

M-x find-grep :D

vasily_pupkin *** (11.02.2010 13:34:20)
[#] Ответ на: комментарий от yk4ever 11.02.2010 13:24:12  

> Тут можно спорить - не верили, что могут научиться, или тупо не хотели.

Не верили, не хотели - какая разница? Главное, что могли. И даже все еще могут.

lisprocks (11.02.2010 13:38:35)
[#] Ответ на: комментарий от yk4ever 11.02.2010 13:26:29  

> Объясним, пожалуй, тем, что международный маркетинговый бабах Сана сюда не докатилсо.

Я думаю, у вас просто очень инертное образование, и отсутствие квалифицированных кадров, которые могут преподавать новый материал.

В моем универе заменили Паскаль Явой на вводном курсе в 97-м году.

faustus * (11.02.2010 13:43:35)
[#] Ответ на: комментарий от lisprocks 11.02.2010 13:38:35  

> Не верили, не хотели - какая разница? Главное, что могли. И даже все еще могут.

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

Ситуация на рынке ЯП отражает распределение умственного потенциала. Умные выбирают себе эффективные инструменты, а дебилам вручают простые и/или безопасные. Так и живём.

yk4ever * (11.02.2010 13:44:14)
[#] Ответ на: комментарий от faustus 11.02.2010 13:43:35  

> Я думаю, у вас просто очень инертное образование, и отсутствие квалифицированных кадров, которые могут преподавать новый материал.

Это да. Но - кадры и "неинертное" образование не из воздуха берутся. Они реагируют на обстановку в индустрии. А она реагирует на маркетинг.

В России в 90-х не было серьёзной индустрии разработки, соответственно и маркетинга тоже.

yk4ever * (11.02.2010 13:47:05)
[#] Ответ на: комментарий от vasily_pupkin 11.02.2010 13:34:20  
rtvd

> M-x find-grep :D

Тут таких умников как ты - половина ЛОРа.

Примеры с к-вом нажатий клавиш в студию. Не можешь - в сад.

rtvd ** (11.02.2010 14:02:44)
[#]  
vada

Ааааааааааааааааааааааааааа!!!!!!!!!!!!!
Oracle что-то сломал!!!!!!!!!

org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsf/core cannot be resolved in either web.xml or the jar files deployed with this application

Проект с прошлого года не трогал. Опаньки! :(

vada **** (11.02.2010 14:14:24)
[#] Ответ на: комментарий от rtvd 11.02.2010 12:43:20  

Вы явно меня с кем-то путаете .

Имея тэги я могу перейти к нужному классу не парясь с поиском ф-ла . Так что №1 по прежнему надуман и очень красноречиво отражает опыт запостившего и иже с ним .

"Никакой мыши" - это вы сами придумали ? или ИДЕ = мышь ?? уже скучно или мы с Вами в разных мирах живем . Если уж Вы в именах классов цититруете махабхарату то 3 клика на копи-паст разрешаю .

Вопрос в том как быстрее ( кол-во нажатий считайте сами ) и об этом я уже все сказал .

xvost (11.02.2010 14:32:05)
[#] Ответ на: комментарий от xvost 11.02.2010 14:32:05  
rtvd

> Имея тэги я могу перейти к нужному классу не парясь с поиском ф-ла . Так что №1 по прежнему надуман и очень красноречиво отражает опыт запостившего и иже с ним .

> "Никакой мыши" - это вы сами придумали ? или ИДЕ = мышь ?? уже скучно или мы с Вами в разных мирах живем . Если уж Вы в именах классов цититруете махабхарату то 3 клика на копи-паст разрешаю .

> Вопрос в том как быстрее ( кол-во нажатий считайте сами ) и об этом я уже все сказал .

Вы утверждаете что Eclipse и компания нафиг не нужны и в emacs/vim все делается проще. Я привел пример того, что нужно делать регулярно. Жажду чтобы мне показали по пунктам, как это _эффективно_ делается в emacs/vim. Причем хочу знать, сколько кнопок прийдется нажать. Конкретную цифирь хочу, а не бог знает что.

Но Вы не в состоянии показать мне адское превосходство emacs/vim даже на таком простом примере. Следовательно, emacs и vim - отстой по крайней мере для Java. А Вы просто гнете пальцы без оснований на то.

Считать сам цифры для вашего примера я не намерен. В конце-концов вы свой инструмент знаете лучше. Будьте добры посчитать сами и показать мне. Тогда я посчитаю для Eclipse и все станет на свои места.

rtvd ** (11.02.2010 14:49:27)
[#] Ответ на: комментарий от rtvd 11.02.2010 14:49:27  

>Вы утверждаете что Eclipse и компания нафиг не нужны... PROOF ! предупреждал , что путаете ...

Не так , были представлены 2 вопроса с понтами . Я на них ответил . Не верите , что мне так проще/удобнее ? Смотрите сами , сравнивайте ...

xvost (11.02.2010 14:59:35)
[#] Ответ на: комментарий от xvost 11.02.2010 14:59:35  
rtvd

> Не так , были представлены 2 вопроса с понтами . Я на них ответил . Не верите , что мне так проще/удобнее ? Смотрите сами , сравнивайте ...

Понты у вас. Я уже посмотрел и не обнаружил в emacs/vim способа найти несчастный клас быстрее чем в eclipse.

А то, что илита не может посчитать к-во нажатий клавиш, является следствием либо неспособности считать, либо отвечать за свои слова.

Долбите emacs и дальше. :-) Может удастся надолбить на еду.

rtvd ** (11.02.2010 15:06:48)
[#] Ответ на: комментарий от rtvd 11.02.2010 14:02:44  
vasily_pupkin

У меня тут нет проекта на джаве на 10k. Вышлешь? :] Или может посмотрим как эклипс ляликс кернел индексирует, как потом там ищет и померяем скорость? )

Я не буду спорить, что наличие быстрого индексатора - круто. Особенно при наличии в IDE нормального редактора. Может быть для джавы так оно и есть. Но для моего быдлокернелизвращения, как не печально, удобно использовать емакс.

vasily_pupkin *** (11.02.2010 15:08:59)
[#] Ответ на: комментарий от rtvd 11.02.2010 15:06:48  

Да успокойся ты. Для Java emacs не годится, Eclipse лучше подходит. Для Си от Eclipse никакого толку нет, зато Emacs справляется неплохо. Нет универсальных инструментов.

lisprocks (11.02.2010 15:12:17)
[#] Ответ на: комментарий от rtvd 11.02.2010 15:06:48  

Из моего опыта следует , что изучать незнакомый проект очень удобно средствами типа grep / dba_source - вижу не только объявление но сразу и варианты использования ( и вывод поиска не мешает , переключаться мне легче м/у окнами приложений а не внутри одного и шелл ведь всегда запущен ), все в целом делает мне удобнее использовать так как я написал .

Всегда лучше открывать по своему ИДЕ на каждый чих ? Или одновременно всегда открываем для явы - Eclipce , для оракла - JDeveloper и еще JEdit на всякий случай...

Ну как хотите ;) "долбить" ? хех...

Похоже что Вы путаете не только меня с кем-то , но и предмет разговора , тут IDE vs CLI . Как всегда правда в умении пользоваться , у кого кун-фу лучше у того и обед вкуснее :)

xvost (11.02.2010 15:31:37)
[#] Ответ на: комментарий от xvost 11.02.2010 15:31:37  
rtvd

> Из моего опыта следует , что изучать незнакомый проект очень удобно средствами типа grep / dba_source - вижу не только объявление но сразу и варианты использования ( и вывод поиска не мешает , переключаться мне легче м/у окнами приложений а не внутри одного и шелл ведь всегда запущен ), все в целом делает мне удобнее использовать так как я написал .

А из моего опыта следует обратное. А также то, что опыт любителей превозносить emacs, обычно невелик. Мягко говоря.

> Всегда лучше открывать по своему ИДЕ на каждый чих ? Или одновременно всегда открываем для явы - Eclipce , для оракла - JDeveloper и еще JEdit на всякий случай...

Лучше не закрывать. Использовать более эффективный инструмент - всегда хорошая идея.

> Ну как хотите ;) "долбить" ? хех...

Это Ваша судьба, раз Вы даже считать не научились.

> Похоже что Вы путаете не только меня с кем-то , но и предмет разговора , тут IDE vs CLI . Как всегда правда в умении пользоваться , у кого кун-фу лучше у того и обед вкуснее :)

Да, это оффтоп. Но Вы решили гнуть пальцы и кормить манами. Посему - welcome отвечать за свои слова. А не можете - в детсад. Там спрос поменьше будет.

rtvd ** (11.02.2010 15:44:03)
[#] Ответ на: комментарий от rtvd 11.02.2010 15:44:03  

Не о чем говорить . Вы мереете эффективность в кол-ве нажатия - этим все сказано , скорость наверно - в километрах . Чувствую себя как-то глупо , извините , но продолжайте без меня .

xvost (11.02.2010 15:53:11)
[#] Ответ на: комментарий от rtvd 11.02.2010 15:44:03  

> А также то, что опыт любителей превозносить emacs, обычно невелик. Мягко говоря.

Это мягко говоря чушь. Большинство любителей emacs сидят на нём по привычке. Которая сформировалась за годы до того, как появились первые IDE с поддержкой семантики.

lisprocks (11.02.2010 15:53:33)
[#] Ответ на: комментарий от mono 10.02.2010 22:56:36  
Jayrome

> над могилкой жабки поставят неоновую подсветку?

Нет, твоей кошке заплатят. :))

Jayrome ***** (11.02.2010 15:56:28)
[#] Ответ на: комментарий от VoDA 11.02.2010 10:57:10  
annulen

>Если проект написан на java, то хрена два заказчик разрешит переписать его на С++

однако, между этими языками можно переносить весьма значительные фрагменты кода практически без изменений

annulen ** (11.02.2010 15:58:08)
[#] Ответ на: комментарий от faustus 11.02.2010 11:39:12  
www_linux_org_ru

>> Даже не могу смеяться на такую глупость. Т.е. сотни функций-дубликаторов друг друга - это "понятнее", а ОДНА функция с явно указанными умолчаниями - это типа дебри? Ню-ню...

> Разработчики языка Java умнее тебя. Прими это как данность.

О-ло-ло-ло-ло!

Когда я писал о Божественной Яве, Ниспосланной Гениальными Ее Разработчиками, я и не думал, что кто-то счиает так на полном серьезе. И вот такой человек нашелся!

www_linux_org_ru **** (11.02.2010 17:31:40)
[#] Ответ на: комментарий от anonymous 11.02.2010 0:25:26  
www_linux_org_ru

>> У кода на жабе есть предел качества сверху

> Давай так. Чтобы ты тут больше не срал. Для начала дай определение "Качества кода сверху".

Очевидно, что сверху относится к пределу, а не качеству кода. Но в вашем 5-а классе это еще не проходили.

www_linux_org_ru **** (11.02.2010 17:35:49)
[#] Ответ на: комментарий от RedPossum 11.02.2010 0:18:56  
www_linux_org_ru

>> У кода на жабе есть предел качества сверху. Дальше не улучшить независимо от профессионализма. Потому как выразительные средства языка ограничены.

> простите, что вмешиваюсь, но назовите хоть один язык, для которого это не высказывание не будет верным

для этого язык должен быть хотя бы с расширяемым синтаксисом (но одного этого мало)

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

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

www_linux_org_ru **** (11.02.2010 17:43:56)

О Сервере - Правила форума
http://www.linux.org.ru/

Rambler's Top100 Рейтинг@Mail.ru