SxGeo.php -- один сплошной баг

Что-то не работает? Пишите здесь.

SxGeo.php -- один сплошной баг

UNREAD_POST wasa » 01.12.2018 07:33:42

интересно, хоть кто-нибудь, кроме меня, разбирался в этом скрипте? ну так, чисто поржать, неужели за всё это время никто не заинтересовался? это один сплошной баг, такое писать написать мог разве что школьник, только что прочитавший книгу "похапэ за 21 день". отвратительно всё.
а вот это вот на сайте "В Sypex Geo всё максимально упрощено, просто сравнение двух 3-байтовых строк, в том же виде в котором они прочитаны из файла - никаких преобразований." -- просто шедевр.
для думающих: сравнение двух чисел 0x373530 и 0x37392e, какое будет больше? правильный ответ -- второе, но только не в этом гениальном скрипте, в этом гениальном скрипте "При поиске нужного IP не производится преобразование из бинарной строки в целое число (как это делается у всех конкурентов, а зачастую еще и с этими числами потом какие-то арифметические операции делаются)". файл SxGeo.php строки 120 и 123 -- здесь вас ожидает увлекательный мир багов.
wasa
 
Сообщения: 2
Зарегистрирован: 01.12.2018 07:16:45

Re: SxGeo.php -- один сплошной баг

UNREAD_POST tavel » 02.01.2019 14:57:41

wasa писал(а):интересно, хоть кто-нибудь, кроме меня, разбирался в этом скрипте? ну так, чисто поржать, неужели за всё это время никто не заинтересовался?

Ну я разбирался, когда для Delphi переписывал. Скрипт, конечно, кривой, но и писался он в 2005-м году, когда и PHP-то на 5-ю ветку не совсем перешел еще. А что такое PHP 4, я думаю, тут никому рассказывать не надо.

К сожалению, проект Sypex Geo заброшен, авторы на форуме не отписывались с 2016-го года, насколько я понимаю.
Возможно, это связано с тем, что zapimir (автор проекта) - из Украины (Донецк или где-то рядом), а мы с вами прекрасно знаем, что происходит в Донецке :(
Аватара пользователя
tavel
 
Сообщения: 4
Зарегистрирован: 09.07.2018 15:35:40

Re: SxGeo.php -- один сплошной баг

UNREAD_POST wasa » 30.01.2019 20:34:58

дело не в PHP (хотя и в нём тоже), а в самом алгоритме, для переписывания на другом языке необходимо полностью писать другой алгоритм, чтобы не повторять баги. собственно, я их нашёл только потому, что мне надо было базу загнать в другой формат, и когда при проверке в диапазонах пошли странные скачки, пришлось разбираться детально.
я привел только один пример кривой шняги, а там их море. и почему для двоичного поиска применяется два цикла для меня остается тайной покрытой страшным мраком.
wasa
 
Сообщения: 2
Зарегистрирован: 01.12.2018 07:16:45


Вернуться в Проблемы и баги

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Яндекс.Метрика