 | 
Introduction |  | Categories |
|  |
Project Category:
Testing Tools
Target Release:
R 6.5.x, R 7.0.x, R 8.0.x, R 8.5.x
Primary Contact:
Anton Kovalenko
|
Details |
Автор: CV: Коваленко Антон Владимирович я в контакте
icq: 63343145 mra: prostopentium@mail.ru msn: toxarat@hotmail.com email: toxarat@gmail.com закрыть / close
Lotus Analyzer
Описание:
Эта утилита предназначена для проверки LS кода в выбранной базе посредством DXML экспортера а так же служит неким измерителем качества написанного кода.
Всё что необходимо это открыть эту базу в лотус клиенте начиная с версии 6.5, выбрать необходимую базу и смотреть полученный анализ.
Утилита ничего не меняет в выбранной базе, а лишь считывает всю информацию из всех её элементов дизайна.
Используется чистый Lotus Script без использования каких либо dll
Очень рекомендую использовать данную утилиту как новичкам лотуса так и профи.
Так же она поможет сделать выбор среди систем написанных на лотусе, если важным аргументом является качество и оптимизация написанного кода.
Минимальные требования:
- Lotus Notes 6.5 и выше
- доступ в необходимую базу
Краткая предыстория:
Занимаясь более 10 лет лотусом я сталкивался с разными продуктами. Часто встречался с откровенным БРедом и очень сильно хотелось иметь какое-то средство позволяющее сразу показать и по возможности вычистить всё ненужное и лишнее, а так же понять насколько качественный код я пишу и предоставляю заказчикам.
В моей работе чаще всего пользовался Teamstudio Analyzer (утилита позволяющая найти код, который где-то используется) и scanEZ (утилита позволяющая просмотреть всё изнутри).
Но как-то ни разу не наталкивался на утилиту, которая бы могла проверить синтаксис кода LS на предмет варнингов (не используемая переменная/функция, не задекларировано и т.д.), так как это сделано в C++ и других языках высокого уровня.
Подойдя к моменту, когда очередная моя система СЭД MasterDOC обросла большим количеством "фич" решил проверить её на мусор, качество и оптимизацию, для этого и пришлось начать писать эту утилиту, которая достаточно шустро пробегается по всему коду и показывает на что следует обратить внимание.
Ко всему прочему данная утилита предоставляется всем нашим заказчикам, чтобы они лично могли убедиться, что предоставляемая им система очень качественная и сравнить это со своими наработками в лотусе и при необходимости подправить и выйти на "планку качества".
Так как данная версия бесплатна, то я оставляю за собой право высылать полученный результат себе на почту - не бойтесь исходники ваши никуда не пересылаются, пересылается лишь результат оценки работы утилиты, дабы я знал правильно ли она работает и вел по ней статистику.
Если вдруг вам захочется сказать мне "спасибо" то лучше сделайте это в денежном эквиваленте, контакты мои у вас есть.
Версия 1.2 - 12.08.2009
- доработан поиск неиспользованных переменных
- теперь можно сканировать целую папку с базами, достаточно в пути указать название папки а не полный путь к базе
- теперь запись вида i=evaluate(), i=shell() не считается неиспользуемой переменной
- если елемент дизайна содержит весь код во внешнем файле (%include "*.lss") то этот елемент не анализируется
- исправлено когда хотспот наложнный четко на поле считался невидимым
- исправлен алгоритм поиска числовых переменных (var%)
- исправлено когда не искалось "option declare" в секции view при незаполненой секции global
- при ошибке "option declare" теперь указывается в каком элементе был найден lotus script (помогает когда возможно элемент был очищен не до конца)
- дополнена статистика
- defaulthotspot наложенный на картинку теперь воспринимается как отдельный объект
- исправлено когда игнорировался код если в элементе ничего не было заполнено в секции Global
- теперь анализируется Database Script
- добавлена проверка на отсутствие кода в обьекте
- добавлена проверка на наличие подряд двух и более пустых строк
- добавлена статистика по комментариям в коде
- изменен интерфейс на английский
Версия 1.1 - 24.07.2009
- исправлено когда файловый указатель считался не использованной переменной
- исправлено когда переменная не виделась в условии: цикла loop var, execute (dim var...)
- анализ используется ли библиотека где либо в базе
- добавлена обработка ошибки если елемент дизайна не удается обработать DXML экспортером
- теперь обьекты типа кнопок/полей/хотспот в формах/подформах/видах воспринимаются как отдельные обьекты и анализируются более корректно
- анализируются поля/кнопки/хотспоты содержащие в себе LS
- анализируются "невидимые" хотспоты - те у которых текст позднее был стерт и они не видны в дизайне, но присутствуют
- анализ используется ли локальная процедура/функция в данном элементе дизайна
- добавлена возможность не протоколировать выбранные ошибки
- добавлена возможность очистить протокол
- в утилиту добавлены скрытые "тестовые" ошибки, чтобы можно было протестировать всё на ней - Demo режим
- по умолчанию сервер/база указывают на утилиту
Версия 1.0 - 21.07.2009
- сканирование всех элементов дизайна прямо в памяти, создание соответствующих классов и процедур
- вырезание из анализа ремарков/комментариев (' %REM - %ENDREM)
- сбор в единое когда используется перенос строки (_)
- анализ элементов дизайна на наличие в них скрипта LS и если скрипт присутствует то проверка на обязательное наличие Option Declare, так как отсутствие этого часто ведет что переменная названа с ошибкой и функционал из-за этого начинает работать неверно или же используется неправильно задекларированный тип переменной
- анализ на поиск неиспользованных переменных/массивов внутри функций/процедур/классов
- анализ чтобы глобальная переменная не объявлялась в локальной процедуре с тем же именем
- анализ на поиск неиспользованных глобальных переменных/массивов внутри функций/процедур
Идеи и замечания высылайте на мои контакты
Lotus Analyzer
Description:
This utility is intended for verification of code LS in the chosen base by means of DXML of exporter and similarly serves as the
certain measuring device of quality of the written code.
All that is needed it to open this base in a lotus client since a version 6.5, to choose a necessary base and look the got analysis.
An utility changes nothing in the chosen base, and only reads all information from all its elements of design.
Clean Lotus Script is used without the use what or dll
I very recommend to use this utility as to the novices of lotusa so profi.
Similarly she will help to do a choice among the systems written on lotuse, if an important argument is quality and optimization of the written code.
Minimum requirements:
- Lotus Notes 6.5 and higher
- access in a necessary base
Short history:
Zanimayas' more than 10 years of lotusom I ran into different products. Often met with frank Delirium and it was so much desirable to have some mean allowing at once to show and on possibility clean all unnecessary and superfluous, and similarly to understand as far as
I write a high-quality code and give customers.
In my work more frequent than all Teamstudio Analyzer (an utility allowing to find a code which is somewhere used) used and scanEZ (an utility allowing to look over everything from within).
But somehow never came across an utility which would check the syntax of code of LS for the article of varningov (not used variable/function, it is not declared and etc), because it is done in C++ and other high-level languages.
Walking up to the moment, when my next system of SED MasterDOC became overgrown with plenty of "fich" decided to check her for garbage, quality and optimization, for this purpose and it was necessary to begin to write this utility which is smartly enough run about on all code and shows on what note should be taken.
To all other this utility gets all our customers, that they personally could be argued that the system given by him is very high-quality and to compare it to the works in lotuse and if necessary to touch up and go out on the "slat of quality".
Because this version is free of charge, I abandon after itself a right to send the got result to itself on mail - be not afraid source codes your are nowhere sent, the result of estimation of work of utility is sent only, in order I knew how correctly
she works and conducted statistics on her.
If suddenly you will want to say me "thank you" better do to it in a money equivalent, contacts you have my.
Version 1.2 - 12.08.2009
- the search of the unused variables is finished off
- it is now possible to scan whole folder with bases, on the way enough to specify the name of folder instead of complete way to the base
- now record of type of I=evaluate(), I=shell() it ignores a not in the use variable
- if element design contains weigh code in an external file (%include "*.lss") to this element is not analysed
- it is corrected when khotspot nalozhnnyy expressly on the field considered invisible
- the algorithm of search of numerical variables is corrected (var%)
- it is corrected when "Option declare" was not searched in the section of view at the nezapolnenoy section of global
- at the error of "Option declare" now specified in what element was found lotus script (helps when possibly an element was cleared to the not end)
- statistics are complemented
- defaulthotspot imposed on a picture now perceived as a separate object
- it is corrected when a code was ignored if in an element nothing was filled in the section of Global
- Database Script is now analysed
- checking for absence of code is added in ob'ekte
- verification is added in the presence of in succession two and more null strings
- statistics are added on comments in a code
- an interface is changed on English
Version 1.1 - 24.07.2009
- it is corrected when a file pointer was considered the not used variable
- it is corrected when a variable was not seen in a condition: cycle of loop var, execute (dim var...)
- an analysis whether is used library where or in a base
- treatment of error is added if an element design does not succeed to be processed DXML by an exporter
- now objects of type of the buttons / field / hotspot in forms / subforms / view perceived as separate objects and analysed more correctly
- the are analysed fields / buttons / hotspoty containing LS
- "invisible" hotspoty is analysed - those at which a text was later effaced and they are not visible in a design, but present
- an analysis whether is used local procedure/function in this element of design
- possibility not to report the chosen errors is added
- possibility to clean protocol is added
- to the utility the hidden errors of "tests" are added, that it is possible it was to test everything on her - Demo mode
- by default a server/base is specified on an utility
Version 1.0 - 21.07.2009
- scanning of all elements of design is straight in memory, creation of the proper classes and procedures
- excision from the analysis of ремарков/комментариев (' %REM - %ENDREM)
- collection in single when the line folding is used (_)
- analysis of design elements on a presence in them script of LS and if a script is present to checking for the obligatory presence of Option Declare, because absence of it often conducts that a variable is adopted with an error and the functional from it begins to work incorrectly or the wrong declared type of variable is used
- analysis on the search of the unused variables / arrays into functions / procedures / classes
- analysis that a global variable was not declared in local procedure with the tem name
- analysis on the search of the unused global variables / arrays into functions / procedures
Send ideas and remarks on my contacts |
|  |
|