- 1
System.Console.WriteLine(System.String.Concat(System.Security.Cryptography.MD5.Create().ComputeHash(System.Text.Encoding.UTF8.GetBytes("hello world!")).ToList().ConvertAll(b => b.ToString("x2"))));
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+132
System.Console.WriteLine(System.String.Concat(System.Security.Cryptography.MD5.Create().ComputeHash(System.Text.Encoding.UTF8.GetBytes("hello world!")).ToList().ConvertAll(b => b.ToString("x2"))));
страшно?
abatishchev 07.11.2011 16:19 # −2
Вот так чуть правильнее:
lucidfoxGovno 07.11.2011 16:21 # −12
В "лиспободобной" структуре кода. Правильно: Одна строка - одно действие.
AnimeGovno-_- 07.11.2011 16:24 # −8
Ты ёбнутый.
KirAmp 07.11.2011 17:57 # −8
Ты ёбнутый
lucidfoxGovno 07.11.2011 18:36 # −13
чувствуй своё бессилие
abatishchev 07.11.2011 16:29 # 0
lucidfoxGovno 07.11.2011 16:31 # −2
abatishchev 07.11.2011 16:36 # −1
расстояние между этими понятиями - парсек
roman-kashitsyn 07.11.2011 16:38 # +5
abatishchev 07.11.2011 22:28 # 0
lucidfoxGovno 07.11.2011 16:45 # 0
Если в строчке будет более одной команды, то там уже на порядок больше парсеков. С каждой лишней командой в одной строчке - вероятность обезьянке разобраться в коде за приемлемое время - уменьшается.
AnimeGovno-_- 07.11.2011 16:53 # −3
>даже обезьянами
Тебе в раздел с названием PHP, быдло. И там записывай себе одну итерацию, одной строкой.
>С каждой лишней командой в одной строчке - вероятность обезьянке разобраться в коде за приемлемое время - уменьшается.
То есть с тысячей строк ассемблерного кода абизьяне вроде тебя просто разобраться?
lucidfoxGovno 07.11.2011 17:01 # +3
>//итд...
ты не верно оформил. Каждый результат отдельного действия нужно записать в отдельную переменную с говорящим именем
это основы самодокументирующегося кода
почитай Совершенный код Макконела на досуге
guest 08.11.2011 14:33 # −1
>Совершенный код Макконела
Не всё написанное там стоит принимать за чистую монету.
guest 08.11.2011 14:35 # 0
abatishchev 07.11.2011 16:54 # +2
касательно обезьянок - кто бы спорил
жить и писать код исходя из worst case - как-то глупо
roman-kashitsyn 07.11.2011 16:58 # 0
SmackMyBitchUp 07.11.2011 17:18 # +2
roman-kashitsyn 07.11.2011 17:21 # 0
не, меня в школе учили только тому, что реально в жизни пригодится
absolut 07.11.2011 20:40 # −3
Пшол нах, lucidfoxGovno.
daymansiege 07.11.2011 23:35 # +1
На счет "ToBase64String" - результаты немного разные: "fc3ff98e8c6a0d3087d515c0473f8677" и "/D/5joxqDTCH1RXARz+Gdw==" соответственно :)
abatishchev 08.11.2011 14:42 # 0
daymansiege 08.11.2011 15:33 # +1
Согласно спецификации он должен быть представлен набором 128-ми бит и в подавляющем большинстве случаев представляется 32-ух символьной строкой из шестнадцатеричных цифр (например, "fc3ff98e8c6a0d3087d515c0473f8677").
Лично я в виде Base64 никогда не встречал.
abatishchev 08.11.2011 15:48 # 0
но для хранения и передачи х-битного массива его удобно заворачивать в строку, для этого чаще всего применяется base64
гугл не против такой точки зрения http://www.google.com/search?q=md5+base64
daymansiege 08.11.2011 16:06 # 0
Просто не встречал дайджест в виде Base64.
roman-kashitsyn 08.11.2011 16:00 # 0
daymansiege 08.11.2011 16:07 # 0
>>Только у вас уж очень неправдоподобный результат.
Что вы имеете в виду?
roman-kashitsyn 08.11.2011 16:12 # 0
MaksTR 11.02.2012 03:26 # 0
guest 11.02.2012 10:46 # 0
roman-kashitsyn 07.11.2011 16:30 # +5
daymansiege 08.11.2011 16:58 # +1
неужели так лучше? :)
SmackMyBitchUp 08.11.2011 19:21 # −1
daymansiege 08.11.2011 19:57 # 0
Естественно, что читабельней было бы вот так:
open System
open System.Security.Cryptography
open System.Text
let getHash (inputBytes : byte array) =
(StringBuilder(), inputBytes
|> MD5.Create().ComputeHash)
||> Array.fold (fun builder hashByte -> builder.Append(hashByte.ToString("x2")))
|> string
getHash "hello world!"B |> System.Console.WriteLine
roman-kashitsyn 08.11.2011 20:01 # 0
Lure Of Chaos 08.11.2011 20:39 # 0
daymansiege 09.11.2011 00:10 # 0
Lure Of Chaos 09.11.2011 00:17 # 0
daymansiege 09.11.2011 20:12 # 0
daymansiege 09.11.2011 00:11 # 0
guest 19.11.2011 17:51 # 0
roman-kashitsyn 19.11.2011 18:00 # 0
Lure Of Chaos 07.11.2011 18:36 # −1
guest 19.11.2011 14:09 # 0
Lure Of Chaos 19.11.2011 17:03 # 0
guest 10.12.2011 07:13 # −1
MaksTR 11.02.2012 03:32 # 0
guest 11.02.2012 10:49 # −1