В настоящее время я нахожусь в процессе оценки различных фреймворков веб-приложений для клиента. Проблема, с которой мы сталкиваемся, заключается в том, что клиент требует, чтобы веб-приложение было доставлено в виде устанавливаемого пакета для всех основных операционных систем (Windows, MacOS X и различных разновидностей Linux), которые будут установлены их пользователями, которые могут быть не слишком технически продвинуты. . Поскольку проект должен быть кроссплатформенным, я думаю, мы можем исключить ASP.NET, и по какой-то причине они не слишком любят Java. Так что же это нам оставляет?
Чтобы немного уточнить приложение, которое мы собираемся написать, это будет базовый пользовательский интерфейс поверх существующего серверного приложения, к которому мы можем получить доступ через SOAP API. Сервер имеет немного другое представление о мире, чем мы хотим представить пользователю, поэтому веб-серверу придется выполнить некоторую перетасовку данных и кэширование, но веб-интерфейс, вероятно, будет простым «выбрать элементы из списка и выполнить». действия по их делу с добавлением некоторых глазных конфет AJAX. Поскольку мы не разговариваем с базой данных напрямую, ORM и возможность быстро отображать схему базы данных для просмотра не так уж важны для нас, и поскольку будет один веб-сервер, работающий в каждом офисе клиента, и серверное приложение выполняет всю тяжелую работу, масштабируемость не является большой проблемой. Основная проблема, которую нам нужно решить в первую очередь, — это требование «устанавливаемости». Практически все остальные переменные (язык, дизайн, функции и т. д.) вторичны.