Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
Да-да, побольше магических цифер в коде!!
Пусть те, кто читает, потом догадываются - это ваше любимое число, расстояние до вашей любимой звезды или день рождения вашей мамы.
Потери точности то нет, но
1. длина кода при делении была бы меньше
((filesize($file) * .0009765625) * .0009765625) * .0009765625
vs
filesize($file) / 1024 / 1024 / 1024
2. Каждый программист за наносекунду поймёт, что такое 1024
3. И всё таки лучше было определить константы
4. Зачем здесь тонна скобок?
я лично в качестве делителя пользуюсь либо 1000 либо (2*1024+512).
делитель 1000 ловит момент когда в десятичном пердставлении становится на одну цифру больше. иногда оно не катит (0.9МБ не всегда эротично либо 1.1МБ не достаточно точно), тогда я пользуюсь делителем 2.5К: до 2.5МБ все будет печататься в КБ. до 2.5ГБ - в МБ. и точности достаточно и как бы в общем случае красивше.
Для меня данный вариант является удобочитаемым на все 100% А если кому-то приходится думать, чтобы понять, что тут твориться, может стоит задуматься, знаете ли вы этот язык?
Хм, довольно длительное время пользуюсь нижеследующей функцией, но после приведенного здесь "сдвига" попробую сделать что-то другое ) Например завернуть в цикл )
А вообще я хотел быть участковым!
Пусть те, кто читает, потом догадываются - это ваше любимое число, расстояние до вашей любимой звезды или день рождения вашей мамы.
Можно было бы загнать это магическое число в отдельную переменную.
Не говнокод. Потери в точности нет.
1. длина кода при делении была бы меньше
((filesize($file) * .0009765625) * .0009765625) * .0009765625
vs
filesize($file) / 1024 / 1024 / 1024
2. Каждый программист за наносекунду поймёт, что такое 1024
3. И всё таки лучше было определить константы
4. Зачем здесь тонна скобок?
делитель 1000 ловит момент когда в десятичном пердставлении становится на одну цифру больше. иногда оно не катит (0.9МБ не всегда эротично либо 1.1МБ не достаточно точно), тогда я пользуюсь делителем 2.5К: до 2.5МБ все будет печататься в КБ. до 2.5ГБ - в МБ. и точности достаточно и как бы в общем случае красивше.
код должен быть удобочитаемым.
вот эти << 10 это не лучшая идея!!!
Для меня данный вариант является удобочитаемым на все 100% А если кому-то приходится думать, чтобы понять, что тут твориться, может стоит задуматься, знаете ли вы этот язык?
Код прикольный.
http://img-fotki.yandex.ru/get/4300/yrtimd.1/0_3b375_3f9c0bf5_XL
Я даже не знаю, что такое ноугрейд.