Статический анализ пользовательского интерфейса с моими собственными правилами грамматики (хочу сделать проверку правил визуального пользовательского интерфейса затмения Android)
Я хочу создать плагин eclipse или отдельное приложение, которое поможет пользователю проверить, соответствуют ли файлы макета Android xml правилам пользовательского интерфейса Android (которые я добавил ранее). Пользователь также может ввести свои собственные правила в существующие правила грамматики. Также он может выбрать несколько шаблонов руководств по пользовательскому интерфейсу (те, которые созданы для его компании или некоторые существующие). Какой лучший подход к разработке этого приложения? Какой самый простой и быстрый способ? Какой язык / подход я должен выбрать? Можете ли вы предоставить мне, если возможно, некоторые учебники / книги / примеры для этого? Я обнаружил, что это можно сделать с помощью JavaCC(но это сложно, пользователь должен редактировать / создавать правила грамматики). Также я нашел несколько рекомендаций, чтобы сделать это с DSL(специфичными для домена языками) генераторами кода, но я не знаю, как это сделать. Я делаю UI Checker для моей магистерской диссертации. Это должно включить общий анализ кода на следующих этапах - для некоторых других студентов (тезисы) продолжить этот проект (отслеживание навигации, стиль кодирования и т. Д.). Я делаю часть, которая проверяет XML-файлы с моими правилами грамматики (которые могут быть добавлены, отредактированы пользователями) и визуально показывает в графическом редакторе, где есть предупреждение (слишком большой шрифт, несовместимые цвета и т. Д.). Мой чекер подойдет для андроида, но другие студенты сделают это для ios и windows phone. Заранее спасибо.
1 ответ
Этот инструмент уже существует, он называется "Lint" и уже автоматически создается и выполняется средами разработки Android: http://tools.android.com/tips/lint
Инструмент предназначен для того, чтобы вы могли добавлять свои собственные правила и проверки: http://tools.android.com/tips/lint/writing-a-lint-check
Существуют и другие инструменты статического анализа (PMD, FindBugs и т. Д.), Которые также можно использовать с Eclipse, которые также могут быть расширены для ваших целей. Я не думаю, что вы хотите создать свой собственный плагин, но должны расширить существующие инструменты.