Калькулятор Windows получит графический режим +14





Не так давно на Хабре публиковалась новость о раскрытии кода Калькулятора Windows, одной из наиболее известных программ в мире. Исходный код этого ПО выложен на GitHub.

Тогда же говорилось о том, что разработчики программы предлагают всем желающим вносить свои пожелания и идеи относительно функциональности программы. Из большого числа на данный момент выбрана пока одна. Автор ее предлагает добавить в калькулятор графический режим.

Собственно, здесь все понятно — графический режим даст возможность визуализировать уравнения и функции, примерно то же, что делает Plotting Mode в Matlab. Функция была предложена инженером корпорации Microsoft Дейвом Грочоски (Dave Grochocki). По его словам, графический режим не будет слишком уж продвинутым. Он позволит учащимся строить графики по алгебраическим уравнениям.

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

«Графические калькуляторы могут быть весьма дорогими, программные решения требуют лицензирования, онлайн-сервисы не всегда являются оптимальным решением», — продолжает свою мысль Грочоски.

По словам представителей Microsoft, именно графический режим является одним из наиболее часто запрашиваемых возможностей в приложении Feedback Hub, куда пользователи программных продуктов корпорации сбрасывают свои предложения.

Цели, которые ставят перед собой разработчики:

  • Обеспечение базовой визуализации в Калькуляторе Windows;
  • Поддержка основных учебных программ по математике в США (к сожалению, пока функциональность Калькулятора будет планироваться, исходя из нужд учащихся этой страны), включая умение строить и интерпретировать функции, понимать линейные, квадратичные и экспоненциальные модели, изучение при помощи калькулятора тригонометрических функций и понимание концепции уравнений.

    Что еще получит пользователь:
    • Возможность ввести уравнение для построения соответствующего графика.
    • Возможность добавить несколько уравнений и визуализировать их, чтобы сравнить между собой графики.
    • Режим редактирования уравнений, чтобы можно было видеть, что изменяется при внесении определенных модификаций в исходное уравнение.
    • Изменение режима просмотра графиков — разные участки можно будет просмотреть в разной степени детализации (т.е. речь идет о масштабировании).
    • Возможность изучения различных типов графиков.
    • Возможность экспортировать полученный результат — теперь визуализациями функций можно будет делиться в Office / Teams.
    • Пользователи могут легко манипулировать вторичными переменными в уравнениях, что даст возможность понять, как изменения в уравнениях влияют на график.

    Насколько можно судить, графики можно будет строить для не очень сложных функций.

    Сейчас разработчики Калькулятора пытаются показать, что с течением времени программа совершенствуется. Она появилась на свет в качестве элементарного помощника для выполнения арифметических действий. Сейчас же это надежный научный калькулятор, который может использоваться широким кругом пользователей для решения весьма серьезных задач. В дальнейшем ПО будут улучшать и дальше.

    Что касается открытия исходного кода, то это сделано для того, чтобы любой желающий мог ознакомиться с такими технологиями Microsoft как Fluent, Universal Windows Platform, Azure Pipelines и другими. Благодаря этому проекту разработчики могут больше узнать о том, как выполняется работа по созданию тех либо иных проектов в Microsoft. С подробным анализом исходного кода Калькулятора Windows можно ознакомиться здесь, прямо на Хабре.

    Программа написана на С++ и содержит более 35000 строк кода. Для компиляции проекта пользователям необходима Windows 10 1803 (или более новая) и последняя версия Visual Studio. Со всеми требованиями можно ознакомиться на GitHub.

Вы можете помочь и перевести немного средств на развитие сайта



Комментарии (40):

  1. fedor2612
    /#19932498 / +3

    Пусть стандартный калькулятор останется калькулятором, а если, например, нужны графики — берите GeoGebr'у, решать уравнения — Maxim'у или SageMath, и. т. д. У каждого инструмента должна быть своя область, потребностям которой он удовлетворяет. Область определения стандартного калькуятора — простые вычисления, для большего есть свои инструменты, которые будут лучше, разработчики которых уже поняли, «методом проб и ошибок», каким именно должен быть инструмент, и тратили все время на движение в этом направлении.

    • GeMir
      /#19932860

      Упомянутая вами GeoGebra из одного приложения (GeoGebra Classic) как раз постепенно превращается в семейство приложений, состоящее из приложения для динамической геометрии, графического, а так же CAS-«калькулятора».

    • Exchan-ge
      /#19932974 / +1

      Область определения стандартного калькуятора — простые вычисления, для большего есть свои инструменты


      Как я мог заметить, люди, профессионально использующие компьютер — уже давно не заморачиваются на Калькулятор: делают все вычисления в Excel. Так как и быстрее и проще. (И повторяемость процесса лучше )

      И да, Калькулятор должен быть простым — он для тех, кому Excel сложен.

      • GeMir
        /#19932998

        делают все вычисления в Excel
        Wolframalpha.com?

        • Valle
          /#19933114 / +2

          я вот сейчас попробовал на него зайти. 25 секунд он открывался. 2+2 он считал более двух минут и так и не посчитал. После полной перезагрузки это заняло секунд 30. Впрочем и в лучшие времена выдать что-то быстрее двух секунд он никогда не мог. Создать табличку в гуглдрайве существенно быстрее.

          • vyo
            /#19933932

            Странно. Открылся за пару секунд, 2+2 посчитал секунд за 5 (но при обилии итоговой инфы это даже простительно).
            Да и Exel оффлайновый, кто мешает wolfram alpha тоже поставить и не напрягаться?

            • Valle
              /#19935150

              Да, сейчас очухался и открывается/считает быстро. Наверное авария была.

        • Exchan-ge
          /#19934008 / +1

          Wolframalpha.com?


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

      • Alex_ME
        /#19933754

        Если мне надо посчитать что-то совершенно простое — обычный калькулятор, а более сложное — Python repl.

      • Error1024
        /#19936052 / +1

        Боюсь в Excel и других электронных таблицах можно получить весьма «странные» для калькулятора результаты, ввиду двоичной, а не двоично-десятичной арифметики.

        • saboteur_kiev
          /#19936242

          Галочка «точность как на экране» не включена =)

          • p_fox
            /#19936858

            А что, в таком простом вычислении бывает какая-то альтернативная точность, кроме очевидного результата "0,1"?

            • Exchan-ge
              /#19941386

              А что, в таком простом вычислении бывает какая-то альтернативная точность, кроме очевидного результата «0,1»?


              Мне так и не удалось воспроизвести показанный на вашей иллюстрации результат.

              • saboteur_kiev
                /#19941916

                Да ладно. Сделайте все как на картинке и кнопочкой «увеличить разрядность» добейте до 15-20 знаков после запятой.

              • p_fox
                /#19942488

                Но это не моя иллюстрация. :)

  2. Diordna
    /#19932550 / +1

    Еще бы функции конвертора физ величин добавить.

    • Butt--Head
      /#19932932 / +2

      Так ить давно уже есть, как минимум со времён Windows XP:Calculator Windows XP


      Или что — эту функциональность Microsoft умудрилась по пути благополучно похеритьтерять?

      • Andy_U
        /#19932972

        Нет, сохранилась, но только систему СГС/CGS эта софтина не знает. Про вязкость тоже понятия не имеет. И много про что еще. Я обычно Maple для этого использую.

  3. qark
    /#19932552 / +2

    С подробным анализом исходного кода Калькулятора Windows можно ознакомиться здесь, прямо на Хабре.
    Сложно назвать поиск «пахнущего» кода подробным анализом.

  4. saboteur_kiev
    /#19932748 / +6

    Лучше бы сделали адекватный режим для конвертации hex-dec-oct-bin, а то при переходе из режима в режим теряются данные, для выбора системы счета нет хоткеев, отображение числа идет только в текущем и двоичном виде, почему бы сразу все четыре не показывать?
    Настолько мелкие доработки, что есть впечатление, что проектировал «режим программист» тот, кто им никогда не пользовался.

    Добавить графику в принципе было бы неплохо. Лишь бы не на электроне реализацию делали.

    • Andy_Big
      /#19933002 / +1

      для выбора системы счета нет хоткеев

      hex — F5, dec — F6, oct — F7, bin — F8. Или Вы не про это?

      • saboteur_kiev
        /#19933032 / +2

        Ок хоткеи есть, хотя и вообще не интуитивные. Но почему бы сразу не выводить число

        • Andy_Big
          /#19934094 / +1

          С этим я не спорю, было бы очень удобно :) Как и со многими другими претензиями, высказанными тут — например, работа с дробными числами в счислениях, отличных от десятичного :)

    • Inanity
      /#19933050 / +2

      Тоже добавлю (жутко бесит лично меня).

      1. Будет круто, если калькулятор, наконец таки научится из буфера обмена вынимать число, несмотря на префиксы/постфиксы, т.е. пора бы уже нормально считывать «0x1234», «h1234», «1234h», «b1010», «1001b». Я уже не говорю о том, чтобы по префиксам догадаться о системе счисления. И даже из «ijoefjw1234fojwef» неплохо бы уже считать подстроку с числом.

      2. Куда и зачем убрали ROR и ROL из режима программиста? Если кнопочек не жалко, то можно добавить ещё NOR с NAND.

      • M_AJ
        /#19933796

        И даже из «ijoefjw1234fojwef» неплохо бы уже считать подстроку с числом.

        Много вариантов: 1234(8), 1234(10), 1234(16), 1234f(16).

      • HandleX
        /#19934220

        И десятичный разделитель понимает из буфера обмена только запятую (для русской венды) — вот тоже бесит.

    • nerudo
      /#19933394 / +1

      А меня бесит, что не поддерживает дробную часть в режимах отличных от dec.

  5. yulai-b
    /#19933170

    По-моему, шикарная идея. С такой наглядной визуализацией калькулятору даже считать необязательно:)

  6. orion76
    /#19933262

    Как в том анекдоте про АК-47:
    За что бы не брался Microsoft, все равно получается Windows-)

  7. kovserg
    /#19933418

    Следующий шаг это ненавязчивая реклама в калькуляторе и интеграция со skype-ом?

    ps: Берём обычный скриптовый языка типа Lua,Python и т.п. и получаем калькулятор на порядок лучше, удобнее с возможность автоматизировать действия.

  8. Alex_ME
    /#19933770

    Калькулятор Windows 10 какой-то отстой. Раньше у нас был просто гребаный калькулятор, а теперь это калькулятор с кучей графических свистоперделок. Который хоть и потребляет памяти сущие копейки в масштабе системы, все равно как-то дофига для такого примитивного инструмента. Ну, и как выяснилось, содержит просто дофига кода.


    Например, в убунтовском калькуляторе есть очень удобный клавиатурный режим. Зачем кнопочки на экране, если можно набрать на клавиатуре?

    • VJean
      /#19934630

      Кнопочки для устройств с сенсорным экраном.

      • snizovtsev
        /#19934800

        Ага, предусмотрели такой задел на будущее ещё в 95м году :)

      • geher
        /#19935572

        На устройствах с сенсорным экраном обычно есть виртуальная клавиатура.

        • VJean
          /#19935586

          На мелкоэкранных устройствах ею не очень удобно пользоваться, т.к. отжирает большую часть экрана. У самого asus t91mt и долгое время пользовался t101mt.

          • geher
            /#19937128

            Калькулятору выражений хватит двух строк на экране — ввод и результат.
            Опционально можно добавить несколько стрьк истории.
            Пользовал на мобильном разные калькуляторы (в том числн вообще без кнопок). Бвло нормально.

    • advan20092
      /#19939276

      А винда в поиске не считает? В макоси и на айпаде можно так считать. На худой конец у гугле.

  9. MOPOH
    /#19933778

    А мне в стандартном калькуляторе не хватает запоминания предыдущих настроек. Например, в конвертере величин по дефолту открывается «вес/масса (гектограмм)» и каждый раз приходится выставлять требуемые параметры преобразования.

  10. kovserg
    /#19938248

    image
    Кстати, где названия осей, где единицы измерения, где сетка и названия кривых?
    Справа три прямые, а слева какая-то кривая типа логарифма. Это дизайнерский прототип или так и будет?