У меня наоборот бывают пролеты — оценил доработку в 2 дня, сделал за 15 минут. Но, как правило, это потому что забыл уже как оно там устроено. А оказывается, что устроено все удачно. Ну классика — оценил в 2 недели, на деле вышло 4 месяца, конечно тоже бывает, ну за первых две недели задачка успевает подрасти просто :-).
Ну и по названиям функций/полей мешанина — тяжело врубится потом будет, что они на самом деле делают. getFilter — возвращает тип сортировки, а называется… filterSimple — как бы и не фильтр совсем — это вид представления. Сомнения вызывает способ переключения между упрощенным и… не упрощенным видом. Обычно для этого применяют шаблоны. Возможно тут достаточно просто переключить CSS класс, но обычной практикой я бы назвал шаблоны.
1. Завернуть весь код в self-invoking функцию
2. Функции сортировки, если больше нигде не используются вполне могут быть использованы по месту.
3. В Java Script есть оператор switch case, чтоб не писать вот это
if (sortType == 'asc')
viewModel.items.sort(sortAsc);
else if (sortType == 'date')
viewModel.items.sort(sortDate);
Проверил заметки по номерам удаляются. Но записывать тяжело, каждый раз переспрашивает… На вопросы Да или Нет надо добавить кнопки. Но оставить и голос.
Согласен — для поиска еще туда сюда. Остальное тяжело использовать.
Было бы неплохо добавить возможность формирования списка одинаковых вещей. Чтоб активировалось словом список и потом идет перечисление, как там уж отделять не знаю, чтоб сама распознавала или отдельными фразами, хотя надо и так и так. И конец списка тоже ключевыми словами понимать (повтори последнее, конец, все, повтори все). И не надо после каждого элемента списка проговаривать длинную фразу, надо выводить на экран и угукать в подвтерждение (лучше чтоб отключалось). Ну и редактирование списка — удалить, заменить, вставить по номерам. Чтоб можно было быстро! надиктовать ей список вещей. Тогда можно будет делать нормальные заметки, задачи, рассылки. А так гугловского распознавания хватает на одну короткую фразу — и все.
А в целом глобально — такая штука, чтоб хорошо работала, должна тебя хорошо знать, знать привычки, понимать с полуслова и не отвечать пространными фразами не во вренмя. Иначе будет непонимание и тяжело назвать это асистентом:-) Не знаю возможно ли это в принципе.
Мне кажется что судебные процессы проходят медленнее развития технологий. Судится смысла нет — пока решат кто кому что должен уже будет не актуально. Даже в деньгах не актуально — экономическая ситуация меняется тоже быстрее. Впрочем, когда суд вводит запрет на продажу гаджетов до выяснения ситуации — это таки может повлиять на судьбу продукта. Ну точнее судится то смысл есть, но цели — добиться справедливости — достичь не удастся, так… попортить жизнь конкуренту…
Как-то много всего наворотили. Как бы в этом всем не погрязнуть. Опять свой forEach… зачем…
Почему $scope это не this? Или this там еще для чего то можно использовать?
Ну с другой стороны не надо писать var self = this;. Но не знаю… не уверен… надо пробовать…
Судя по статье, в Ember нет бОльшей части функционала Backbone. В Backbone хорошо реализованы модели, наследование, коллекции. Есть синхронизация модели с сервером из коробки. При этом они никак не завязаны на отображение. Это именно средства для описания предметной области — модели данных. С другой стороны отображения (Views) в Backbone многим кажутся громоздкими. Я думаю им стоило бы изобразительную часть сделать опциональной.
Я использую сейчас связку: Backbone + Knockout через надстройку Knockback. При этом есть еще одна надстройка над Backbone — Backbone-Relational. Более того серверная часть на NodeJS, так что модель данных для сервера и клиента у меня описывают одни и тот же файлы. Для сервера модели дополнительно расширяются. A Backbone-Relational в автомате помогает поддерживать связи между моделями. Пока что все красиво, но и не без особенностей. Knockback используется на клиенте — он просто позволяет облегчить конвертирование моделей Backbone в ViewModels Knockouta.
2. Функции сортировки, если больше нигде не используются вполне могут быть использованы по месту.
3. В Java Script есть оператор switch case, чтоб не писать вот это
Было бы неплохо добавить возможность формирования списка одинаковых вещей. Чтоб активировалось словом список и потом идет перечисление, как там уж отделять не знаю, чтоб сама распознавала или отдельными фразами, хотя надо и так и так. И конец списка тоже ключевыми словами понимать (повтори последнее, конец, все, повтори все). И не надо после каждого элемента списка проговаривать длинную фразу, надо выводить на экран и угукать в подвтерждение (лучше чтоб отключалось). Ну и редактирование списка — удалить, заменить, вставить по номерам. Чтоб можно было быстро! надиктовать ей список вещей. Тогда можно будет делать нормальные заметки, задачи, рассылки. А так гугловского распознавания хватает на одну короткую фразу — и все.
А в целом глобально — такая штука, чтоб хорошо работала, должна тебя хорошо знать, знать привычки, понимать с полуслова и не отвечать пространными фразами не во вренмя. Иначе будет непонимание и тяжело назвать это асистентом:-) Не знаю возможно ли это в принципе.
Почему $scope это не this? Или this там еще для чего то можно использовать?
Ну с другой стороны не надо писать var self = this;. Но не знаю… не уверен… надо пробовать…
Я использую сейчас связку: Backbone + Knockout через надстройку Knockback. При этом есть еще одна надстройка над Backbone — Backbone-Relational. Более того серверная часть на NodeJS, так что модель данных для сервера и клиента у меня описывают одни и тот же файлы. Для сервера модели дополнительно расширяются. A Backbone-Relational в автомате помогает поддерживать связи между моделями. Пока что все красиво, но и не без особенностей. Knockback используется на клиенте — он просто позволяет облегчить конвертирование моделей Backbone в ViewModels Knockouta.
так еще лучше
jsfiddle.net/k93Qa/2/