Текст текстом, так хрен кто без 24'' прочитает.
https://pastebin.com/gVDYAicw
Вау, какой код, я его в рамочку поставлю. Мне особенно нравится функция генерации случайных IP адресов
Что это значит?
Глобальные IP
Кароче, мои советы: 1. Используй проект, а не скрипт. mix new в помощь 2. Используй враппер над :ftp. Например, FTPoison 3. Тебе тут нужно отлавливать падения залинкованных процессов. Это нужно очень аккуратно делать через trap_exit, для этого нужно отказаться от тасок 4. Stream.run 5. У Enum.random линейная сложность, используй :rand.uniform 6. :inet_parse.address 7. Можно матчить в аргументах функции 8. catch, rescue и after можно вынести в конец функции, без try do
Ни от кого ещё не получал такой полноценный код-ревью на свои поделки☺️ Буду учиться. По 7. у меня "для скорости" ipa используется далее 1. да, после простых скриптиков перешёл на проект, но попался вот на исходную проблему, которую описал. Теперь понятно, что проблема совсем не в отлове ошибок. 2. а чем враппер лучше? 6. я крутил этот модуль как мог, но не нашёл как сделать int в IPAddress
6. :inet_parse.ntoa {1, 2, 3, 4}
Был бы обычный рандом 0-255, то да
Я про 6-ую строку твоего скрипта
А, всё. Понял. Это я с туториалов подглядел. ntoa понятнее чище, да.
ntoa и aton это древний сленг. Типа number to array и array to number
Да, это я к тому что именно я путаю их, только a для меня это альфа-символы
вместо ~c"" можно просто использовать ''
Во, хоть в Elixir одинарным кавычкам особое значение (я про мейнстрим языки сейчас)
Что за редактор кода?
vim на termux + JetBrains Mono шрифт
Обсуждают сегодня