Модераторы: LSD, AntonSaburov

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Хочу поучавствовать в проекте за опыт. 
:(
    Опции темы
AlexeyVorotnikov
Дата 17.11.2009, 10:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 658
Регистрация: 18.6.2007
Где: Москва

Репутация: 3
Всего: 18



Цитата(CaligoSpiritus @  17.11.2009,  01:29 Найти цитируемый пост)
А я-то надеялся тебя в свой проект заполучить

А что у вас за проект?


--------------------
RTFM!
Три источника и три составные части Java: The Java Language Specification, Java Platform API Specification, The Java Virtual Machine Specification
PM MAIL   Вверх
Myryan
Дата 17.11.2009, 10:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 6.10.2009
Где: СПб

Репутация: нет
Всего: нет



Поздновато вы батенька. Тема то когда была создана ;)
PM MAIL ICQ Skype   Вверх
Shaggie
Дата 17.11.2009, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Завсегдатай
Сообщений: 570
Регистрация: 21.12.2006
Где: outer space

Репутация: 2
Всего: 72



Какую тему проспал!
Знаю, что поздно, но мимо такого вброса пройти не могу.

Цитата(necromancer @  9.10.2009,  13:06 Найти цитируемый пост)
А так же тенденции в использовании новых "фич" языка =)
мало кто задумывался что 
Код

    for ( Iterator<String> flavoursIter = aFlavours.iterator(); flavoursIter.hasNext(); ) {
      System.out.println( flavoursIter.next() );
    }

медленне чем
Код

 for (int i=0; i< list.size() ; i++) {
  
 }

почти в 2 раза =) ладно бы еще медленнее, так код становится менее читабельным ИМХО ;)


Во-первых, можно использовать типизированный for, и с синтаксисом всё будет нормально. Кстати, внутри "более читабельного" цикла придётся много и с удовольствием кастовать руками.
Во-вторых, у этого быстрого кода есть свои проблемы. Самая очевидная - замена коллекции, например, на LinkedList. Гораздо более весёлая в отладке - последовательное удаление удовлетворяющих некоторому требованию элементов списка через метод remove().
В-третьих, новички и так для любой задачи втыкают ArrayList и бьются за каждый такт процессора, как раз сложнее бывает отучить их оптимизировать каждый чих.
В-четвёртых, на практике предельное быстродействие, выдаваемое прямым перебором элементов ArrayList, применить мне понадобилось ровно один раз, и там речь шла о почти реалтаймовой обработке большого количества данных. Обычные задачи все как одна решаются посредством итераторов безо всяких проблем с производительностью.


--------------------
Цитата(alina3000 @  6.3.2014,  10:47 Найти цитируемый пост)
Сорри что не по теме 
PM MAIL ICQ GTalk Jabber   Вверх
CaligoSpiritus
Дата 17.11.2009, 22:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 8.12.2006

Репутация: 1
Всего: 2



Цитата(AlexeyVorotnikov @ 17.11.2009,  11:18)
Цитата(CaligoSpiritus @  17.11.2009,  01:29 Найти цитируемый пост)
А я-то надеялся тебя в свой проект заполучить

А что у вас за проект?

Планируемые технологии:
Серверная часть
Spring Framework 3.0 (DI, persistence, MVC) SpringSource dm server, Persistence (ещё не определился - что именно), БД (изначально MySQL, затем, после публичного теста, если нужно будет, то PostgreSQL или даже Oracle)
Клиентская часть
Flash AS3, Adobe AIR, HTML(наверное, будет использоваться какой-нибудь простенький template engine)

Суть проекта открыть пока не могу. Сам по себе проект коммерческий, однако во-первых, заказчик пока ещё окончательно не определился - хочет ли он заказать его у меня или приобрести готовое решение. Кроме того проект носит и образовательный характер, так как из перечисленного я работал серьёзно лишь со Spring DI, Oracle (PL/SQL и Spring JdbcTemplate) и немного с MySQL smile

Вообще говоря, помощь со стороны я привлекать не собираюсь, после прочтения этой темки, родилась такая шальная идея, не знаю, на сколько она может себя оправдать. Так как для привлечения стороннего программиста, мне нужно будет жёстко модуляризировать систему, чтобы я мог передать этому человеку лишь часть проекта и не раскрывать полностью исходники. При этом я понимаю, что найти человека, которому будет интересно такое предложение довольно проблематично, труден и процесс разбивания проекта на подобные модули.
Однако эти мысли, к сожалению, пришли в голову уже после того, как я отписался в теме smile
PM WWW Skype GTalk   Вверх
Juggernaut
Дата 18.11.2009, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 48
Регистрация: 4.12.2005

Репутация: 1
Всего: 2



Давно хочу понабраться с опыта с PostgreSQL или Oracle ))

Я бы с Вами поработал, если бы удалось подобрать технологии, которые мне интересны. 

От себя могу предложить Spring (DI,MVC, немного Security), Hibernate, MySQL, MSSQL, Freemarker Template Engine. Все использовано в коммерческой разработке.


PM MAIL   Вверх
polosatij
Дата 18.11.2009, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: 3
Всего: 8



Цитата(CaligoSpiritus @  17.11.2009,  21:59 Найти цитируемый пост)
При этом я понимаю, что найти человека, которому будет интересно такое предложение довольно проблематично, труден и процесс разбивания проекта на подобные модули.


очень бы хотелось понять, каким именно образом (если естъ опыт, или даже пусть есть какие-то мысли) ты хочешь это сделать  smile 
меня очень сильно интересует эта тема  smile 


--------------------
PM   Вверх
polosatij
  Дата 19.11.2009, 21:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: 3
Всего: 8



Цитата(necromancer @  9.10.2009,  12:06 Найти цитируемый пост)
А так же тенденции в использовании новых "фич" языка =)
мало кто задумывался что 
Выделить всёкод Java
1:
2:
3:
    
    for ( Iterator<String> flavoursIter = aFlavours.iterator(); flavoursIter.hasNext(); ) {
      System.out.println( flavoursIter.next() );
    }

медленне чем
Выделить всёкод Java
1:
2:
3:
    
 for (int i=0; i< list.size() ; i++) {
  
 }

почти в 2 раза =) ладно бы еще медленнее, так код становится менее читабельным ИМХО ;)


где об этом можно почитать? мне казалось, что обращение к get(i) делается через такой же итератор.
как насчёт нового синтаксического сахава в ява 5 и скорости в for?

 smile 



--------------------
PM   Вверх
polosatij
Дата 24.12.2009, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: 3
Всего: 8



Цитата(Myryan @ 9.10.2009,  15:07)
Вот сижу на работе делать нечего.   smile 
Решил провести эксперимент:
Код

Long begin;
        ArrayList<String> foo = new ArrayList<String>();
        begin = System.currentTimeMillis();
        for (int i = 0; i < 1000000; i++) {
            foo.add(String.valueOf(i));
        }
        System.out.println("Время добавления: " + (System.currentTimeMillis() - begin));

        begin = System.currentTimeMillis();
        for (int i = 0; i < foo.size(); i++) {
            String s = foo.get(i);
        }
        System.out.println("Время чтения(без итератора): " + (System.currentTimeMillis() - begin));

        begin = System.currentTimeMillis();
        for (Iterator<String> it = foo.iterator(); it.hasNext();) {
            String string = it.next();

        }
        System.out.println("Время чтения(c итератором): " + (System.currentTimeMillis() - begin));

        begin = System.currentTimeMillis();
        for (String s : foo) {

        }
        System.out.println("Время чтения(for each): " + (System.currentTimeMillis() - begin));


Результат говорит сам за себя. 
Время добавления: 390
Время чтения(без итератора): 16
Время чтения(c итератором): 31
Время чтения(for each): 32


твой пример, как мне кажется, абсолютно не коректен. у тебя пустые операции внутри for, что не гарантирует то, что ява компилятор уберёт мусор.

вот пример:

Код

    public static void main(final String[] args) {
        Long begin;
        final List<Integer> foo = new ArrayList<Integer>();
        begin = System.currentTimeMillis();
        for (int i = 0; i < 1000000; i++) {
            foo.add(i);
        }
        System.out.println("add: " + (System.currentTimeMillis() - begin));
        begin = System.currentTimeMillis();
        for (int i = 0; i < foo.size(); i++) {
            Integer s = foo.get(i);
            ++s;
        }
        System.out.println("without iterator: " + (System.currentTimeMillis() - begin));
        begin = System.currentTimeMillis();
        for (final Iterator<Integer> it = foo.iterator(); it.hasNext();) {
            Integer string = it.next();
            ++string;
        }
        System.out.println("with iterator: " + (System.currentTimeMillis() - begin));
        begin = System.currentTimeMillis();
        for (Integer s : foo) {
            ++s;
        }
        System.out.println("for each: " + (System.currentTimeMillis() - begin));
    }


а вот результат:

add: 217
without iterator: 164
with iterator: 42
for each: 29

кто сказал тут, что get(x) будет работать быстрее?  smile 


--------------------
PM   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.1230 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.