Pull to refresh
19
0
Максим Пономарев @maxvipon

User

Send message
На днях пробовал — не канает: там при регистрации требуется указать номер кредитки даже если выбираешь бесплатный план; кредитки из РФ не проходят, указание номера российской кредитки с американским или другим доступным заграничным адресом тоже не проходят (пробовал с двумя банками и виртуальной визой Qiwi). Все мануалы, как зарегистрироваться на Google Music через VPN описывают старые диалоговые окна регистрации. Видимо ребята из гугла прикрыли эту лавочку.
Я думаю, вам стоит оформить это как инициативу, сказать об этом здесь и мы ее поддержим — мысль-то здравая, ибо на госуслугах зарегистрироваться не так-то просто, нужны реальные документа, плюс код подтверждения приходит по почте обычным бумажным письмом. Т.е. данные о голосах проверить очень даже реально.
«Только до конца весны скидка в Мвидео на бытовые электроприборы на колесах 30%!»
Газировка в статье — это аллегория. Просто подставьте везде вместо газировки «нормальный обед» и все для вас встанет на места.
И ссылку на хорошую блогозапись о написании и тестировании директив: blog.angularjs.org/2012/11/about-those-directives.html
Это да. Недавно натолкнулся на хороший проект angular-translate, рекомендую.
Потому что советские системы релейной централизации создавались с 300% надежностью и 100 летним сроком службы. И новые микропроцессорные не смогут их переплюнуть впринципе.
Действительно, пока еще кода немного, переименовать стоит. Яп вам не зря говорил.
Смысл описанной выше ситуации иной: трудовая функция остается прежней, меняется способ ее выполнения (если это можно назвать способом). Перемещение в другую местность также не происходит. Но, по аналогии, это также, наверное, можно оформить доп. соглашением с прописанием всех особенностей.
А мне вот интересен такой момент:
Предположим, некий человек уже работает по трудовому договору в конторе «Рога и Копыта», ходит он работать в офис с девяти до шести с понедельника по пятницу. Случаются некоторые обстоятельства, человек не может в течение полугода ходить работать в офис, но может продолжать работать в конторе дистанционно. По истечении полугода, по окончанию обстоятельств, человек может продолжить ходить работать в офис.

Как такую ситуацию вообще регламентировать? Доп. соглашение к текущему трудовому договору? Перезаключать трудовой договор на эти полгода?

Я, конечно, на досуге почитаю закон, но из статьи я понял, что трудовой договор о дистанционной работе — это «специальный» такой трудовой договор с присущими особенностями про орудия труда, результаты работы и т.п.

Запускаться-то он запускается, только вот, например, на windows 7 x64 я несколько раз сталкивался с тем, что не мог установить пакеты, точнее они не компилировались. Один из последних — node-canvas. Вообще, последнее время все больше работаю с опен-сорс продуктами и windows все больше тяготит — то это на windows запустить нельзя, то другое, то третье не компилируется, то пятое работает непойми как. И это понятно, люди, которые пишут опен-сорс, делают это в основном не на windows. Поэтому сейчас я пока на виртуалках, но уже чувтвую, что скоро совсем смогу отказаться от платформы win.
На этом и закончим.
Не обижайтесь, но мне кажется у вас приступ отрицания, потому что на самом-то деле вы хорошо понимаете, что 5000 элементов в массиве для современной ЭВМ это пшик, ничто! Откройте консоль и сгенерируйте этот массив, посмотрите, сколько это займет времени у вашего компьютера. Мы ж не о десяти миллионах речь ведем ей богу… Оптимизировать 5000? Не смешите меня. Используя VanillaJS я даже не задумывался об этом, взял Angular и уперся в это ограничение. И вы мне будете говорить о плохой архитектуре? Это просто ограничение инструмента и я это воспринимаю как должное. На нет, как говорится, и суда нет.
Тогда вам тоже вопрос для размышление: если бы Angular позволял без вреда для производительности держать в Scope массив в 5000 элементов, мы бы сейчас вели этот разговор? И мааленький подвопросик: что вообще такое для современного компьютера массив из 5000 элементов?
Александр, а почему бы вам не выложить исходники и документацию не github? Тем более вы пишете на форуме: «Бесплатное коммерческое использование, распространение, изменение и все остальное тоже». Как-то зело ломает качать зипы, распаковывать, редактор открывать.

И еще такой вопрос: в первой части вы пишите «Так появился StateController v2», а на форуме заголовок «StateController v5» — где правда? (:
Ну погнали вникать… Вы пишите:
Потому что scope — это не модель. Об этом заявляется, например, вот здесь в документации, и подробно подчеркивается в официальном видео Best Practices. Постарайтесь вникнуть в эту мысль, она все объясняет. В модели могут жить 50 тысяч, 100 тысяч объектов любой сложности, и ограничивает это только память. А scope — это некоторая транзитная сущность для связки модели и отображения, можем называть ее моделью отображения (View-Model). Модель отображения не должна хранить ничего, что не требуется отображать.

Из ваших слов я понимаю, что есть некая Модель и какой-то Scope, Модель — это контейнер всех данных, а Scope — это такая штуковина, в которую я засовываю либо какие-то данные из Модели, либо ссылки на какие-то данные, которые отображаются на экране.

Идем по первой ссылке, читаем:
In Angular, a model is any data that is reachable as a property of an angular Scope object. The name of the property is the model identifier and the value is any JavaScript object (including arrays and primitives).

The only requirement for a JavaScript object to be a model in Angular is that the object must be referenced by an Angular scope as a property of that scope object.

А вот здесь написано, что Модель в Angular — это свойство объекта Scope, будь то объект, массив или примитив.

То есть все что я указал в Scope является моделями для отображения.

И если я хочу отобразить список из 5 000 элементов, я кладу в Scope массив из 5 000 элементов. Это моя модель для отображения.

Далее… В презентации Miško написано:
Treat scope is read-only in templates & write-only in controllers
— The purpose of the scope is to refer to the model not to be a model
— The model is your JavaScript objects

Этот слайд он сопровождает примерно следующими словами:
Scope has references to the model. So you create your own model object, manually put the reference to the model object to the scope. In view you say «model dot whatever property in a model you want to access». Similary if you have a form, you should have a model «form» and in a scope basically say «model dot property X» and view is updating property in a model, not a propery of a scope.

Первый пункт слайда — это точь-в-точь то, о чем вы пишите.

А Miško говорит примерно следующее: «так быть не должно…
$scope.firstName = "Bob";
$scope.lastName = "Dylan";
$scope.age = 71;

…должно быть так
$scope.form = {
  firstName: "Bob",
  lastName: "Dylan",
  age: 71
}

Из этого монолога я опять делаю вывод, что любая единичная сущность в Scope — это модель.
Смысл то в том, что в этом списке не нужны observers, потому что он не изменен, он только отображается, а Angular вотчеры содает автоматом при использовании ngRepeat. Т.е. асли бы была у этой директивы встроенная опция staticBind, то этого диалога, возможно, вообще бы не было (:
Это уже все обсуждено выше, приведены хорошие ссылки. Я думаю наши с вами комментарии к топику будут весьма полезны кому-то в будущем: есть, что почитать, посмотреть и пощупать руками.
Angular очень хорошо подошел для этого проекта, за исключением обсуждаемого списка, но так как это было первое его серьезное применение, то обучение шло параллельно и, соответственно, проблемы решались как решались. Теперь уже, вникнув в особенности фремворка, конечно же, некоторые момент можно сделать более правильно.

Вот, кстати, полезный набор watch-fighter директив, аналогичный по сути вашему bindStatic.

Information

Rating
Does not participate
Registered
Activity