Проще сделать загрузку тайлами, когда изображение составляется из нескольких элементов. Как, например, подгружает карту google maps или Яндекс.Карты.
Это упростит и отдачу для сервера (не надо динамически нарезать 20 наборов), и жизнь устройствам (можно динамически определить разрешение экрана и запросить необходимые элементы)
Могу присоединиться как 2й iOS-разработчик )
> а вы уверены, что на телефонах/планшетах будет удобно всё это рассматривать? :)
На планшетах — да. Даже значительно удобнее, чем на нетбуке )
Задавший вопрос про возраст глиняных горшков не уточнил )
Хотя, кто его знает, может и ждёт своего часа в музее склянка со странными спиральными узорами… Вон, Троя (если не ошибаюсь) тоже считалось выдумкой Гомера, пока не нашёлся археолог-фанатик…
Слушайте, действительно, а в чём проблема?
Записать перед обжигом, всё равно они на гончарном круге делаются, а он крутится :) A снять потом вполне себе можно.
Точно. Как написал автор этого форка — начиная с версии X js lint заставляет писать не как хорошо, а как автор js lint.
Запустил, получил кучу ошибок «используйте запись 24 == value» и ещё подобных, удалил, поставил jshint.
Вообще, это очень интересный момент. Далеко не каждый начальник послушает такое утверждение, им далеко не каждый коллектив такое действие поймёт. Так что предложенное вами, в общем случае, риск рабочим местом.
Я бы не сказал, что это сознательная обфускация. Я себя тешу мыслью, что человеку просто не дано программировать. Как у кого-то нет слуха, а кто-то не умеет рисовать.
> В конторах, которым пофиг на код именно так и говорится
«Почему так долго? %name% писал весь модуль столько, а ты не можешь исправить единственный баг?» — «тут надо половину переписать, чтобы сделать хоть что-то» — «нафиг переписывать» — «существующий код ужасен» — «быть этого не может, %name% отличный программист» ;)
Вся проблема в том, что говнокод в виде чёрного ящика — скорее исключение, чем правило. Если вы глянете всё тот же код по ссылке, то найдёте там обращение к глобальным переменным. Этот проект можно в качестве образца использовать, ага.
> Третье для меня лишь причина применять организационные, дисциплинарные или административные меры
А разве может это сделать рядовой программист в команде? Вот именно поэтому и НЕНАВИСТЬ.
Есть кривой код, который написан из-за спешки. Это «технический долг». Это исправимая проблема.
Есть кривой код, который написан из-за неопытности — это исправляется объяснением автору код чем написанный код плох… Это рабочий момент.
Есть кривой код, который написае из-за нежелания писать хорошо вопреки здравому смыслу. И это НЕНАВИСТЬ.
> Оправданием говнокоду может служить простой фактор
А вы посмотрите ссылку pastebin.com/UaTdN6K2, ага ) Это особый сорт, возникающий отнюдь не из-за сжатых сроков или забивания кодером на качество.
> проблема того, кто заказал только функциональность без требований к качеству.
В теории — может быть. Но не на практике. В конторах, которым пофиг на код — время на устранение чужой кучи приходится выбивать самому программисту, и хорошо если удастся. Конкретно код по ссылке был заменён только потому, что переписать заново было значительно быстрее, чем модифицировать.
> без неожиданных побочных эффектов.
Мой опыт общения с подобным кодом показывает, что сторонние эффекты есть практически всегда. И хорошо если это нарушение порядка сортировки, но это может быть кривой менеджмент памяти. И тогда — привет SIGSEGV в рандомном месте.
Я не исключаю существования говнокода в форме чёрного ящика, но печаль в том, что если в проекте появляется говнокод — он имеет свойство распускать свои тентакли всюду.
В целом, я согласен с изложенным статье. Почти.
> Да, извините. Вы — отстой по части многих вещей.
Но я не пытаюсь зарабатывать ими на жизнь. Я в такие области пытаюсь вообще не лезть без необходимости.
И каждый раз, когда кто-то выдвигает оправдания существованию говнокода, мне хочется просто дать эту ссылку: pastebin.com/UaTdN6K2
Написанному там — нет оправдания, и что этот человек забыл в разработке — я решительно не понинаю.
Это упростит и отдачу для сервера (не надо динамически нарезать 20 наборов), и жизнь устройствам (можно динамически определить разрешение экрана и запросить необходимые элементы)
> а вы уверены, что на телефонах/планшетах будет удобно всё это рассматривать? :)
На планшетах — да. Даже значительно удобнее, чем на нетбуке )
Хотя, кто его знает, может и ждёт своего часа в музее склянка со странными спиральными узорами… Вон, Троя (если не ошибаюсь) тоже считалось выдумкой Гомера, пока не нашёлся археолог-фанатик…
Записать перед обжигом, всё равно они на гончарном круге делаются, а он крутится :) A снять потом вполне себе можно.
Запустил, получил кучу ошибок «используйте запись 24 == value» и ещё подобных, удалил, поставил jshint.
> В конторах, которым пофиг на код именно так и говорится
«Почему так долго? %name% писал весь модуль столько, а ты не можешь исправить единственный баг?» — «тут надо половину переписать, чтобы сделать хоть что-то» — «нафиг переписывать» — «существующий код ужасен» — «быть этого не может, %name% отличный программист» ;)
Вся проблема в том, что говнокод в виде чёрного ящика — скорее исключение, чем правило. Если вы глянете всё тот же код по ссылке, то найдёте там обращение к глобальным переменным. Этот проект можно в качестве образца использовать, ага.
А разве может это сделать рядовой программист в команде? Вот именно поэтому и НЕНАВИСТЬ.
Есть кривой код, который написан из-за неопытности — это исправляется объяснением автору код чем написанный код плох… Это рабочий момент.
Есть кривой код, который написае из-за нежелания писать хорошо вопреки здравому смыслу. И это НЕНАВИСТЬ.
А вы посмотрите ссылку pastebin.com/UaTdN6K2, ага ) Это особый сорт, возникающий отнюдь не из-за сжатых сроков или забивания кодером на качество.
> проблема того, кто заказал только функциональность без требований к качеству.
В теории — может быть. Но не на практике. В конторах, которым пофиг на код — время на устранение чужой кучи приходится выбивать самому программисту, и хорошо если удастся. Конкретно код по ссылке был заменён только потому, что переписать заново было значительно быстрее, чем модифицировать.
> без неожиданных побочных эффектов.
Мой опыт общения с подобным кодом показывает, что сторонние эффекты есть практически всегда. И хорошо если это нарушение порядка сортировки, но это может быть кривой менеджмент памяти. И тогда — привет SIGSEGV в рандомном месте.
Я не исключаю существования говнокода в форме чёрного ящика, но печаль в том, что если в проекте появляется говнокод — он имеет свойство распускать свои тентакли всюду.
> Да, извините. Вы — отстой по части многих вещей.
Но я не пытаюсь зарабатывать ими на жизнь. Я в такие области пытаюсь вообще не лезть без необходимости.
И каждый раз, когда кто-то выдвигает оправдания существованию говнокода, мне хочется просто дать эту ссылку:
pastebin.com/UaTdN6K2
Написанному там — нет оправдания, и что этот человек забыл в разработке — я решительно не понинаю.