Отладочная печать
От: Lazy Cjow Rhrr Россия lj://_lcr_
Дата: 17.04.11 03:23
Оценка: -1 :))) :))) :))) :))) :))
от наших загорелых зарубежных коллег...
        String printable = "Historic Avg = ((Count * Wt)/N) ";
        DecimalFormat format = new DecimalFormat("0.0000");
        for (int i = 0; i < searchTermHistoric_Counts.length; i++) {
            printable += "(" + searchTermHistoric_Counts[i] + " * " + format.format(historicWeights[i]) + ")";
            if (i < searchTermHistoric_Counts.length)
                printable += " + ";
            historicAverage += searchTermHistoric_Counts[i] * historicWeights[i];
        }

        historicAverage = historicAverage / searchTermHistoric_Counts.length;
        printable += "/ " + searchTermHistoric_Counts.length + " = " + format.format(historicAverage);
        if (logger.isDebugEnabled())
            logger.debug(printable);
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re: Отладочная печать
От: invisibleshadow Россия  
Дата: 17.04.11 03:35
Оценка: +1
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>от наших загорелых зарубежных коллег...

LCR>
LCR>        String printable = "Historic Avg = ((Count * Wt)/N) ";
LCR>        DecimalFormat format = new DecimalFormat("0.0000");
LCR>        for (int i = 0; i < searchTermHistoric_Counts.length; i++) {
LCR>            printable += "(" + searchTermHistoric_Counts[i] + " * " + format.format(historicWeights[i]) + ")";
LCR>            if (i < searchTermHistoric_Counts.length)
LCR>                printable += " + ";
LCR>            historicAverage += searchTermHistoric_Counts[i] * historicWeights[i];
LCR>        }

LCR>        historicAverage = historicAverage / searchTermHistoric_Counts.length;
LCR>        printable += "/ " + searchTermHistoric_Counts.length + " = " + format.format(historicAverage);
LCR>        if (logger.isDebugEnabled())
LCR>            logger.debug(printable);

LCR>

Вам бы это... Отдохнуть — во!
Re: Отладочная печать
От: frogkiller Россия  
Дата: 17.04.11 06:38
Оценка: +1
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>от наших загорелых зарубежных коллег...

LCR>
LCR>        // heavy printable initialization ...
LCR>
LCR>        if (logger.isDebugEnabled())
LCR>            logger.debug(printable);
LCR>


Как-то не смешно.
Но руки отрывать за такое надо, да.
Курица — это инструмент, с помощью которого одно яйцо производит другие.
Re: Отладочная печать
От: tlp  
Дата: 17.04.11 07:40
Оценка: :)
А по-моему, это правильно.

Если бы под if-ом был весь кусок кода, поведение проги менялось бы в заисимости от настроек логгера (например, мог бы вылететь exception при делении на 0), а так — поведение различается минимально, меньше сюрпризов.

Сам по себе код оставляет желать лучшего, коненчо.
Re: Отладочная печать
От: Young yunoshev.ru
Дата: 17.04.11 09:26
Оценка:
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>от наших загорелых зарубежных коллег...

LCR>
LCR>        String printable = "Historic Avg = ((Count * Wt)/N) ";
LCR>        DecimalFormat format = new DecimalFormat("0.0000");
LCR>        for (int i = 0; i < searchTermHistoric_Counts.length; i++) {
LCR>            printable += "(" + searchTermHistoric_Counts[i] + " * " + format.format(historicWeights[i]) + ")";
LCR>            if (i < searchTermHistoric_Counts.length)
LCR>                printable += " + ";
LCR>            historicAverage += searchTermHistoric_Counts[i] * historicWeights[i];
LCR>        }

LCR>        historicAverage = historicAverage / searchTermHistoric_Counts.length;
LCR>        printable += "/ " + searchTermHistoric_Counts.length + " = " + format.format(historicAverage);
LCR>        if (logger.isDebugEnabled())
LCR>            logger.debug(printable);

LCR>



Погоди, погоди. А что если isDebugEnabled возвращает константу какую либо этот кусок не будет в java выкинут? Тут же явно видно что, printable не используется?
Re[2]: Отладочная печать
От: Jack128  
Дата: 17.04.11 09:53
Оценка:
Здравствуйте, Young, Вы писали:

Y>Здравствуйте, Lazy Cjow Rhrr, Вы писали:


Y>Погоди, погоди. А что если isDebugEnabled возвращает константу какую либо этот кусок не будет в java выкинут? Тут же явно видно что, printable не используется?



char key = Console.ReadKey(); // key — дальше нигде используется.
Как считаешь — можно эту строку выкинуть???
Re[3]: Отладочная печать
От: Young yunoshev.ru
Дата: 17.04.11 10:02
Оценка: +1
Здравствуйте, Jack128, Вы писали:

J>Здравствуйте, Young, Вы писали:


Y>>Здравствуйте, Lazy Cjow Rhrr, Вы писали:


Y>>Погоди, погоди. А что если isDebugEnabled возвращает константу какую либо этот кусок не будет в java выкинут? Тут же явно видно что, printable не используется?



J>char key = Console.ReadKey(); // key — дальше нигде используется.

J>Как считаешь — можно эту строку выкинуть???

Нельзя. И компилятор это прекрасно понимает, потому что ReadKey меняет состояние объекта. Это не константная функция.
А вот есть Console.ReadKey бы не меняло состояние объекта и всегда бы возвращала константу — то таки да — можно было бы выкинуть.

Короче, к исходному примеру какое отношение имеет?
Re: Отладочная печать
От: LuciferSaratov Россия  
Дата: 17.04.11 10:10
Оценка: 1 (1) +3 :))) :))) :)))
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>от наших загорелых зарубежных коллег...


Re[4]: Отладочная печать
От: . Великобритания  
Дата: 17.04.11 12:53
Оценка: -1
On 17/04/11 11:02, Young wrote:

> Нельзя. И компилятор это прекрасно понимает, потому что ReadKey меняет состояние объекта. Это не константная функция.

> А вот есть Console.ReadKey бы не меняло состояние объекта и всегда бы возвращала константу — то таки да — можно было бы выкинуть.

> Короче, к исходному примеру какое отношение имеет?


А как узнать что меняет состояние, а что не меняет? Компилятор не бог... стоит вот вызов new DecimalFormat() и format.format() и уже хз что там у неё в нутре.
Если только hotswap догадаться сможет...
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[2]: Отладочная печать
От: о_О
Дата: 17.04.11 12:57
Оценка: -2
Здравствуйте, LuciferSaratov, Вы писали:

LS>Здравствуйте, Lazy Cjow Rhrr, Вы писали:


LCR>>от наших загорелых зарубежных коллег...


http://www.funny-potato.com/blog/wp-content/uploads/2008/02/funny-programmer.gif

ненене, вот от таких:

Re[2]: Отладочная печать
От: Кондраций Россия  
Дата: 17.04.11 15:16
Оценка:
Здравствуйте, tlp, Вы писали:

tlp>А по-моему, это правильно.


tlp>Если бы под if-ом был весь кусок кода, поведение проги менялось бы в заисимости от настроек логгера (например, мог бы вылететь exception при делении на 0), а так — поведение различается минимально, меньше сюрпризов.


Таки имелось в виду, что if нужно в метод debug поместить.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Сообщение заговорено потомственным колдуном, целителем и магом в девятом поколении!
Модерирование или минусование сообщения ведет к половому бессилию, венерическим заболеваниям, венцу безбрачия и диарее!
Re: ...Отладочная печаЛь
От: ononim  
Дата: 17.04.11 20:12
Оценка: :)))
Как много веселых ребят, и все делают велосипед...
Re[2]: Отладочная печать
От: Eugeny__ Украина  
Дата: 18.04.11 15:59
Оценка:
Здравствуйте, Young, Вы писали:


Y>Погоди, погоди. А что если isDebugEnabled возвращает константу какую либо этот кусок не будет в java выкинут? Тут же явно видно что, printable не используется?


Компилятор жабы вообще не пытается заниматься оптимизациями. Ну, разве что кроме замен цепочек конкатенации на StringBuilder-ы. Оптимизация производится JIT-ом на основе данных в рантайме.

Например, код
public class Comp {
    public static void main(String[] args) {
        foo();
    }
    private static void foo() {
    }
}


После декомпиляции:

public class Comp
{

    public Comp()
    {
    //    0    0:aload_0         
    //    1    1:invokespecial   #8   <Method void Object()>
    //    2    4:return          
    }

    public static void main(String args[])
    {
        foo();
    //    0    0:invokestatic    #16  <Method void foo()>
    //    1    3:return          
    }

    private static void foo()
    {
    //    0    0:return          
    }
}
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Re[5]: Отладочная печать
От: . Великобритания  
Дата: 18.04.11 18:39
Оценка:
On 17/04/11 13:53, . wrote:

Любопытно, с чем господин Mazay не согласен?
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[3]: Отладочная печать
От: Lazy Cjow Rhrr Россия lj://_lcr_
Дата: 20.04.11 14:29
Оценка:
о_О,

LCR>>>от наших загорелых зарубежных коллег...

о_О>ненене, вот от таких:
Так ты посмотри на их загар!
quicksort =: (($:@(<#[),(=#[),$:@(>#[)) ({~ ?@#)) ^: (1<#)
Re[4]: Отладочная печать
От: о_О
Дата: 20.04.11 14:43
Оценка:
Здравствуйте, Lazy Cjow Rhrr, Вы писали:

LCR>о_О,


LCR>>>>от наших загорелых зарубежных коллег...

о_О>>ненене, вот от таких:
LCR>Так ты посмотри на их загар!
фиг ли занар, коль руки из жопы :о)
Re[3]: Отладочная печать
От: blackhearted Украина  
Дата: 20.04.11 15:08
Оценка:
Здравствуйте, Кондраций, Вы писали:

К>Здравствуйте, tlp, Вы писали:


tlp>>А по-моему, это правильно.


tlp>>Если бы под if-ом был весь кусок кода, поведение проги менялось бы в заисимости от настроек логгера (например, мог бы вылететь exception при делении на 0), а так — поведение различается минимально, меньше сюрпризов.


К>Таки имелось в виду, что if нужно в метод debug поместить.


это еще зачем?
Re[4]: Отладочная печать
От: Кондраций Россия  
Дата: 26.04.11 19:27
Оценка:
Здравствуйте, blackhearted, Вы писали:

...
К>>Таки имелось в виду, что if нужно в метод debug поместить.

B>это еще зачем?

Чтобы не повторять его везде.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
Сообщение заговорено потомственным колдуном, целителем и магом в девятом поколении!
Модерирование или минусование сообщения ведет к половому бессилию, венерическим заболеваниям, венцу безбрачия и диарее!
Re[5]: Отладочная печать
От: Ромашка Украина  
Дата: 26.04.11 20:00
Оценка:
17.04.2011 15:53, Здравствуйте, . :
> А как узнать что меняет состояние, а что не меняет? Компилятор не бог...

А ты бог? Ты знаешь, что меняет состояние? Отдашь аппендикс на отсечение
что, скажем, перехваченный эксепшен в индексере historicWeights не
взводит isDebugEnabled == true?

ЗЫ. Код странный. Но обсуждение еще более странное.
Posted via RSDN NNTP Server 2.1 beta


Всё, что нас не убивает, ещё горько об этом пожалеет.
Re[6]: Отладочная печать
От: . Великобритания  
Дата: 26.04.11 20:52
Оценка: +1
On 26/04/11 21:00, Ромашка wrote:

> А ты бог? Ты знаешь, что меняет состояние? Отдашь аппендикс на отсечение

> что, скажем, перехваченный эксепшен в индексере historicWeights не
> взводит isDebugEnabled == true?
Если так, то таких писателей гнать в шею надо.

> ЗЫ. Код странный. Но обсуждение еще более странное.

Код нелепый, автор не читатель, достаточно прочитать доку для isDebugEnabled и становится всё очевидным.
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.