Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > Оцените


Автор: biophreak 15.5.2008, 15:29
Хотелось бы услышать мнения по коду...задача была - как можно меньший размер, и скорость работы...
Знаю что код нечитаем...так что этот критерий не обязательно включать в оценку smile)

http://phreak.nkoort.ru/source

ЗЫЖ Знаю, есть жесть типа
Код

    my $u = sprintf("%08x",$uin);
    $u =~ /^(\w\w)(\w\w)(\w\w)(\w\w)$/io;

Но на большее мозгов не хватило smile)
Буду оч. благодарен, если еще и посоветуете что поправить smile

Автор: arto 15.5.2008, 15:42
убрать io

Автор: biophreak 15.5.2008, 15:44
Мелкие исправления сделал smile

Автор: FooBar 15.5.2008, 20:02
substr($password^"\xF3\x26\x81\xC4\x39\x86\xDB\x92\x71\xA3\xB9\xE6\x53\x7A\x95\x7C",0,length $password);
константы для ксора пароля можно сократить до 8, так как максимальная длинна пароля всё равно 8 символов

Код

sub get_cookies
{
    my $cookie = shift;
    for (my $i = 0;;$i++) {return substr($cookie,$i+4,256) if substr($cookie,$i,4) eq "\x00\x06\x01\x00"}
}


получение куки можно заменить регулярным выражением

 /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):(\d{1,5})\x00\x06\x01\x00(.{256})/so;

Автор: GoDleSS 15.5.2008, 20:03
Код вполне себе читаельный в таких малых объемах, но общее впечатление "жесткости", "сухости" от него, какой-то он паскале-подобный :(

Похожие операции, которые идут на пол сорса заменить бы циклом с предварительной структурой по сему делу ;)

Автор: tolkien 16.5.2008, 09:40
напиши все в одну строку будет короче ^_^

Автор: biophreak 16.5.2008, 16:22
Хм, ну хз - мне читать так код немного удобнее...с таким форматированием

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)