metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2014-05-25 12:43 am

И о говнокоде

Если вам случайно понадобится использовать 7z из дотнета - постарайтесь не связываться с либой SevenZipSharp (враппер вокруг 7z.dll).
Давненько я не видел настолько мерзкого кода, с отсутствием потокобезопасности, глупыми ошибками обработки путей и прочим угребищем, перепутанными табами и пробелами и множеством прочих уродств.
Наверно правы люди, которые всякие архиваторы отличные от zip и tar.gz ненавидят как потустороннее зло.

[identity profile] psilogic.livejournal.com 2014-05-24 09:55 pm (UTC)(link)
шо то я ни понял логику: говнокод в обертке на шарпе вокруг 7z, из этого как следует, что сам 7z - гуано?

[identity profile] vaddimka.livejournal.com 2014-05-24 10:57 pm (UTC)(link)
я как-то выдирал сам lzma из исходников 7-зипа
всего 4 файлика на си, вполне внятные

[identity profile] oldmann.livejournal.com 2014-05-25 02:14 am (UTC)(link)
ребе, tar.gz и есть zip.

[identity profile] max630.livejournal.com 2014-05-25 05:36 am (UTC)(link)
ещё у 7z дурацкий cli, который спамит списком файлов в stdout

[identity profile] justy-tylor.livejournal.com 2014-05-25 08:48 am (UTC)(link)
Без 7z или rar нельзя. Древние говны типа zip и tar пишут в локальной кодировке. Зазиповали что-то с русскими именами на винде - будет хренпоймичто вместо имён на маках, и наоборот. А уж если файлы от корейцев пришли...

Кривые врапперы - отдельный вопрос. Может оказаться кошернее выдрать оттуда сигнатуры нативных вызовов и сделать напрямую.

[identity profile] 4dghh3s.livejournal.com 2014-05-25 10:13 am (UTC)(link)
ты не настоящий метакласс.