All streams
Search
Write a publication
Pull to refresh
633
0
Тагир Валеев @tagir_valeev

Программист

Send message
Для программиста стол плохой. Парное программирование практически невозможно: двум человекам будет тесно. Выкиньте дурацкие полочки справа лесом, пользы от них никакой, только вред.

А ещё будут постоянно мучаться люди, желающие вытянуть ноги — подъём стопы будет упираться в косую деревяшку, которая там неясно зачем.
Хотелось бы, чтобы ещё голос за комментарий можно было исправить, хотя бы в течение нескольких минут. Кнопочки рядом, я пару раз банально промахивался :(
У вас уже +6, переносите быстро свои посты, пока есть возможность :-)
> ни один вменяемый JS программер её не юзал
Эк вы людей обидели :-) А тем временем невменяемые программеры сделали на коленке немало красивеньких сайтов.

Впрочем, данный плагин к самой jQuery никакого отношения не имеет и мог бы существовать без неё.

> вот вы тоже пытаетесь JS превратить в Java, но зачем?
Я не пурист, а практик. Есть много готового кода, который внезапно захотелось выполнять на клиенте (java-апплет не надо советовать). Перенос с сохранением Java-концепций и исходных интерфейсов выполняется быстро и почти автоматически. Пока мы будем писать аналогичный, но концептуально прекрасный JS-код, конкуренты уйдут вперёд :-)
> BaseClass.prototype..call(this, ...)
Галочки Хабр скушал. Следует читать:
BaseClass.prototype.<MethodName>.call(this, ...)
В целом согласен, хотя это всё равно полиморфизм, как отметил zvulon. Изменил «полиморфизм» на «перегрузку» в названии и в тексте один раз и добавил тегов. В коде уж менять не буду, пусть остаётся :-)
А при JSON-передаче данных редакторы подскажут список параметров?

В моём случае, кстати, редакторам будет несложно подтянуться, если вдруг штука станет популярной :-) А с JSON вообще непонятно. Писать перед функцией комментарий в определённом формате, чтобы редактор узнал возможные прототипы функции?

А с перформансом, мне кажется, многие не заморачиваются. Вот тестировал на днях jQuery-inheritance. Там на вызов метода, который вызывает себя же в базовом классе (this.__base(...)), оверхед примерно такой же, как у меня (по сравнению со стандартной некрасивой записью типа BaseClass.prototype..call(this, ...)). То есть чисто красота вызова метода базового класса стоит тех же микросекунд. И ничего, люди пользуют и хвалят :-)
И так можно. Пример есть по ссылке, я в статье не написал, чтобы статья вышла покороче. В принципе вы можете написать:
var getRectangleArea3 = polymorph();

getRectangleArea3.update(
  function(width, height) {
    return width * height;
  },
  function(x1, y1, x2, y2) {
    return (x2-x1)*(y2-y1);
  }
);

* This source code was highlighted with Source Code Highlighter.

Работает точно так же.
А конструировать объект тоже объектом? У вас в каждой функции один параметр? :-)
Не сработает в Gecko, пытался. Он выкусывает комментарии в .toString (стандарт не регламентирует, можно ли это делать).
У них семантика должна быть одинаковая. А интерфейс может быть разный. Это удобно. Нередко все перегруженные функции вызывают одну из них, которая реализует фактическую функциональность.
Можно попытаться сгенерировать тело новой функции, активно используя toString и new Function. А как прототип класса функции может увеличить быстродействие? Можно пример?
Ага… не по тем ключевым словам искал. Спасибо. Ну хоть контроля типов там нет :-)
Я думал над этим, но это лишняя зависимость. В принципе это делается добавлением одной строчки в код, а так как лицензия MIT, то кто угодно может этим заняться :-) Возможно, добавлю в SVN jQuery-версию дополнительно к обычной.
Только начал использовать, пока доволен. Мы портируем Java-библиотеку на JS, а в ней есть классы с десятью конструкторами. Эта штука серьёзно облегчает жизнь :-)
Браузер сам распакует, вы даже не заметите :-) Пропишите только в ответе Content-Encoding: gzip, и дело в шляпе :-)
По поводу Плетень О.И. Я не юрист, но это стандартная формулировка договоров «юрлицо такое-то в лице директора такого-то». Подразумевается человек, имеющий право ставить печать организации без доверенности (либо должна быть подпись «в лице такого-то, действующего на основании доверенности такой-то от такого-то числа»). Эксперт, который просто является сотрудником предприятия, не имеет такого права, а раз на экспертизе стоит печать, то за неё отвечает предприятие и лично директор, даже если фактически делал не он. Не думаю, что в этом следует месте искать подвох.
Sleep(100);

Опять поллинг. Можно ведь точно посчитать, сколько осталось до звонка и спать именно это время. Текущая реализация будет регулярно требовать к себе внимания, а значит никогда не ляжет спокойно и целиком в виртуальную память. Если в это время компьютер будет делать что-то ресурсоёмкое, текущая реализация будет регулярно свопиться и подниматься из свопа назад, усугубляя положение дел. А если помножить на общее количество всякой мишуры, которая висит в трее и регулярно чего-нибудь опрашивает из-за лени программистов… А потом все жалуются, что система тормозит и память жрёт.
В таких делах главное, чтобы поняли, конечно :-) Если поняли, то всё нормально. А формально да, совсем плохо :-)
Лоббировать закон об оценке реальной, а не иллюзорной упущенной выгоды в таких делах выгодно бедным студентам и невыгодно богатым правообладателям. А власти прислушаются ко вторым :-)

Information

Rating
Does not participate
Location
Новосибирск, Новосибирская обл., Россия
Registered
Activity