All streams
Search
Write a publication
Pull to refresh
70
0
Sergey Solovyev @serso

User

Send message
Нисколько. Я им написал письмо, они ответили что понравилось. И добавили в следующий видео обзор.
Я думал уже о кастомизации операций на клавишах, но пока что это не в приоритете.
А правильный интерфейс может иметь еще бОльшее значение.
Да, пожалуй, в большинстве случаев это так, но многие пишут, что К++ используют только благодаря его функциональным возможностям: вычислению комплексных чисел, построению графиков, большому количеству вспомогательных функция.

Вот как раз и интересно кому?
В следующий раз кто-нибудь напишет — обязательно спрошу.

Кстати, в ближайшее время я подумываю о добавлении функций по вычислению часто используемых экономических величин: IRR, NPV и др.
Точность — double. 16 значащих цифр.

На самом деле это легко расширяемо, потому как напрямую с java.lang.Double работы не идёт — только через собственные обёртки, которые по необходимости могут быть заменены на BigDecimal.
Из любопытства!
Всю жизнь мечтал написать какой-нибудь математический редактор (я учился на кафедре «Прикладной математики») — так почему бы не воплотить свою мечту в жизнь?

Скажу больше — мне присылают очень много писем с благодарностями из разных стран мира, а это значит что кому-то такой гибрид нужен (кстати, число установок Handy Calc подтверждает эту гипотезу).
Да, я уже понял, что проблема только с e^(pi*i)+1. Всё остальное считается правильно =)
Для таких случаев у меня есть unit тесты и, знаете, они проходят. Только что проверил на своём телефоне — тоже работает! Попробуйте нажать кнопку =; если ничего не изменится, напишите, пожалуйста, мне письмо — будем разбираться.
Спасибо!
Кнопка оставлена на на всякий случай (результат строго говоря зависит не только от введённого выражения, но и от некого состояния, например, значения переменных, единиц измерений и т.д., и если по каким-то причинам результат не пересчитался при изменении этого состояния, пользователь сам может заставить его пересчитаться) и для использования операции упрощения .
Ни в коем случае не нажимайте кнопку '='! Калькулятор всё посчитает сам. Она там оставлена только на всякий случай и для использования операции упрощения.

PS А в статье-то об этом писалось…
Думал, но так проще =) К тому же из цветовой гаммы не выделяется.
Во-первых, для этого в конце статьи есть ссылка на исходный код (дублирую)
Во-вторых, вот моя статья, в которой приведены некоторые фрагменты исходного кода.

Что вас конкретно интересует?
Спасибо за комплименты.

Как вы видите, изначально, это всё было просто just for fun. Сейчас я всё чаще думаю о монетизации: скорее всего это будет классическое разделение приложения на два — первое, бесплатное, будет содержать рекламу, второе, платное, — нет.

Я точно не буду:
  1. Урезать функционал бесплатного приложения
  2. Размещать рекламу в главном окне
Добавлю свои 5 копеек про Андроид:

метод Thread#stop в виртульной машине dalvik не поддерживается вообще. Я задавал вопрос на stackoverflow, но никакого толкового ответа не получил (предложили просто убить приложение) и использовал следующее "грязное" решение:

Если приложение не серверное(в смысле оно относительно часто перезапускается) и его выполнение критично не зависит от работы сторонней библиотеки в которой произошло зависание можно просто выставить потоку минимальный приоритет.

Очевидные минусы: работающая нить тратит системные ресурсы (например, при выполнении на мобильном устройстве это может привести к ускорению разряда батарее).
5. Я не знаю как у вас используется FileUtils#copyStream(), но, что-то мне подсказывает, что скрывать IoException не правильно. Достаточно задать вопрос: будет ли приложение работать дальше нормально, если потоки не откопировались?
3. Фиговый Singleton из ImageLoader — возможна повторная инициализация (нет синхронизации)

4. PhotosQueue#clean(): гораздо красивее и более читабельно писать такие шутки через iterator:
Iterator<ImageView> it = photosToLoad.iterator();
while ( it.hasNext() ) {
   final ImageView imageView = it.next();
   if ( imageView == imageForRemove ) {
      it.remove();
   }
}

В вашем случае, по-моему, возможно падение с ConcurrentModificationException

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity