- 38
- 63
Всем
, решил залить бесплатную софтинку для оценки ваших Lua скриптов
Как оценить свои скрипты данной метрикой:
На мой взгляд, самая драгоценная характеристика здесь - это время на реализацию, чем она выше, тем больше усилий вы потратили на выполнение задачи.
Подробно о характеристиках вы можете узнать здесь. **Заметил, что в луа (а не в рандомном вкидыше файла) уровень реализации(L) всегда имеет диапазон от 0.004 до 0.1 и уровень языка(La) где-то между 2 и 4 (иногда этот показатель шалит и показывает большие значения).
Применение
1. Допустим, вы заказчик и не хотите переплачивать лишние деньги за простенький программный продукт (на lua 😀). Так вот, с помощью данной программы можно оценивать приблизительные труды программистов, посмотрев на время реализации (например, если время реализации составило 60 минут (1 час), то вы должны заплатить N-сумму и т.д. или же сравнить цену).
2. Для программиста же может быть программа интересна, если он хочет посмотреть количество используемых операндов и операций, которые он использовал в своем коде.
Ссылки: github
Операнд— это сущность, с которой оператор выполняет какие-либо действия (в нашем случае: числовые или строковые константы, идентификаторы(функций, переменных, таблиц, структур, классов и т.д.)).
Операция - способ работы между операндами.
Метрика Холстеда
Метрики Холстеда предлагают разумный подход к решению следующих задач:
-предсказание условий, необходимых для программирования по предложенным проектам;
-определение норм первоначальных ошибок;
-количественная оценка языков программирования и эффекта модульности;
-обоснование метода измерения различий между программами, написанными специалистами разного уровня.
В основе вычисления метрик Холстеда лежит концепция, согласно которой алгоритм состоит только из операторов и операндов (проверяется рассмотрением простых вычислительных машин с форматом команд, содержащим две части: код операции и адрес операнда).
Операция - способ работы между операндами.
Метрика Холстеда
Метрики Холстеда предлагают разумный подход к решению следующих задач:
-предсказание условий, необходимых для программирования по предложенным проектам;
-определение норм первоначальных ошибок;
-количественная оценка языков программирования и эффекта модульности;
-обоснование метода измерения различий между программами, написанными специалистами разного уровня.
В основе вычисления метрик Холстеда лежит концепция, согласно которой алгоритм состоит только из операторов и операндов (проверяется рассмотрением простых вычислительных машин с форматом команд, содержащим две части: код операции и адрес операнда).
1. Подается на вход папка или файл. Если папка, то просматриваются рекурсивно все директории и ищутся файлы с пометкой ".lua"(вы можете просто перетащить папку или файл на .exe-file).
2. Каждый файл открывается и читается сразу весь полностью, ищутся все операнды и операции языка, которые записываются в специальную таблицу.
3. Также создается вход-выходная таблица. Во входящих и выходящих аргументах (параметрах) пришлось намудрить, так как у языка нет встроенных модулей для принятия и вывода информации(за исключением print), но вы сами можете поменять шаблон поиска
.И далее все расчеты ведутся исходя из метрики Холстеда
4. Выводятся 3 таблицы (таблица операндов, таблица операций, таблица входных и выходных аргументов) и вместе с ними таблица результатов метрики Холстеда.
В выводе таблицы операндов: слева выводится операнд и справа через знак ":" выводится количество их количество.
В выводе таблицы операторов: слева выводится шаблон операции и справа через знак ":" выводится их количество.
2. Каждый файл открывается и читается сразу весь полностью, ищутся все операнды и операции языка, которые записываются в специальную таблицу.
3. Также создается вход-выходная таблица. Во входящих и выходящих аргументах (параметрах) пришлось намудрить, так как у языка нет встроенных модулей для принятия и вывода информации(за исключением print), но вы сами можете поменять шаблон поиска
4. Выводятся 3 таблицы (таблица операндов, таблица операций, таблица входных и выходных аргументов) и вместе с ними таблица результатов метрики Холстеда.
В выводе таблицы операндов: слева выводится операнд и справа через знак ":" выводится количество их количество.
В выводе таблицы операторов: слева выводится шаблон операции и справа через знак ":" выводится их количество.
Как оценить свои скрипты данной метрикой:
На мой взгляд, самая драгоценная характеристика здесь - это время на реализацию, чем она выше, тем больше усилий вы потратили на выполнение задачи.
Подробно о характеристиках вы можете узнать здесь. **Заметил, что в луа (а не в рандомном вкидыше файла) уровень реализации(L) всегда имеет диапазон от 0.004 до 0.1 и уровень языка(La) где-то между 2 и 4 (иногда этот показатель шалит и показывает большие значения).
Применение
1. Допустим, вы заказчик и не хотите переплачивать лишние деньги за простенький программный продукт (на lua 😀). Так вот, с помощью данной программы можно оценивать приблизительные труды программистов, посмотрев на время реализации (например, если время реализации составило 60 минут (1 час), то вы должны заплатить N-сумму и т.д. или же сравнить цену).
2. Для программиста же может быть программа интересна, если он хочет посмотреть количество используемых операндов и операций, которые он использовал в своем коде.
Ссылки: github
Вложения
Последнее редактирование: