Подтвердить что ты не робот

Какие инструменты RAD есть?

Мы все знаем упражнение: у вас есть (небольшая) модель, вам нужно ее сохранить, вам нужен пользовательский интерфейс (веб, рабочий стол, мобильный, некоторые из первых, все).

Это такой повторяющийся процесс, что я не могу не задаться вопросом, почему мы все еще зацикливаемся на POJO, OR mappers и кодировании пользовательских интерфейсов от руки (поскольку большинство дизайнеров UI даже не знают о наследовании, и вам нужно для создания каждого диалога ОК/Отмена с более чем одним полем с нуля). RAD инструменты/платформы обещают исправить это, но я пока ничего не видел. Идея этой вики состоит в том, чтобы собрать все инструменты, которые позволят вам воплотить идею за несколько минут и построить оттуда. Простые вещи (например, создание простого пользовательского интерфейса для вашей модели или сохранение его в базе данных) должны быть простыми. Прикрепление довольно сложного объекта к диалогу для его редактирования должно занимать одну строку кода или меньше;)

Итак, вот вызов: какие инструменты RAD существуют, которые позволяют построить небольшое приложение, например, через 8 часов. Чтобы дать вам представление о том, что он должен делать, вот спецификация:

  • У вас есть узлы "знаний". Каждый такой node имеет имя и длинное описание, прикрепленное к нему (однострочная и многострочная строка)

  • Каждое знание node может иметь любое количество узлов знаний в качестве дочерних элементов (соотношение 1: * с родительским/дочерним отношением). Ребенок-узлы должны поддерживать порядок (т.е. Использовать список, а не набор)

  • Каждое знание node может иметь любое количество прикрепленных к нему тегов (1: * неупорядоченное отношение между различными типами)

  • Любые два узла знаний могут быть связаны с любым числом отношений (отношение n: m)

  • Должна быть возможность загрузки/сохранения модели из/в формате XML и из/в базе данных с минимальными усилиями

  • Пользователи ожидают отменить/повторить сегодня

Пользовательский интерфейс должен предлагать стандартные операции: создавать, изменять порядок и удалять узлы знаний. Переупорядочение должно использовать drag'n'drop. Он должен позволять добавлять/удалять теги из узлов знаний. Должен быть простой способ связать два узла знаний по отношению (например, перетащив один node на другой в специальном режиме).

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

В чем проблема? Как обычно, предпочитается OSS.

Справочная информация. Я разрабатываю программное обеспечение уже более 25 лет. Тем не менее, это простое приложение занимает несколько недель, если не месяцев, чтобы закодировать на любом языке, с которым я столкнулся до сих пор: Groovy, Java, Python, Tcl/Tk, Grails, OpenOffice, MS Access, TreeLine, [TurboGears] [10], [Enthought Traits] [11],.net.

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

Groovy Хороший язык, компактный код. Закрыть, но не хватает в отделе пользовательского интерфейса. Они работают над этим, но просто нет. Для настойчивости, только сериализация Java из коробки.

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

Python Получил почти все, что ему нужно, но по какой-то причине он никогда не становился как основной, как, скажем, Java. Получил хороший набор пользовательских интерфейсов с PyQt4, классный конвертер OR с SQLAlchemy, но, тем не менее, мы не видим, чтобы он полностью ударил дроссель до полной скорости. Только с появлением модульных испытаний стало возможным писать большие проекты. Слишком низкий уровень для задачи.

Tcl/Tk Хороший виджет установлен, но язык засасывает, когда размер кода превышает некоторую точку. Показывает свой возраст.

OpenOffice. Начиная с версии 2.0, OO поставляется со встроенной базой данных и средством "Access-like". Это в зачаточном состоянии, но они доберутся... в конце концов. Не удалось обработать отношения между родителями и дочерними элементами, потому что пользовательский интерфейс не позволяет их указывать (видеть ошибку). Исправлено в 3.1. С помощью 3.1 вы можете создать модель, но пользовательский интерфейс все равно займет много времени.

MS Access Почти все, что нам нужно, но параметры пользовательского интерфейса довольно ограничены. Разочарование.

TreeLine. Невозможно реализовать отношения и слишком ограничено для большинства других случаев использования (вы просто не можете делать с ним ничего другого)

.net У меня нет опыта работы с этим, главным образом потому, что это только Windows. Я думаю, что этот человек может быть довольно близок, но пусть сталкивается с этим: какой смысл блокировать четверть человечества?

4b9b3361

Ответ 2

WAVEMAKER - лучший инструмент, который когда-либо создавался. Что вы сказали, может быть сделано через пару часов.

Ответ 3

Это зависит от того, кто ваш рынок. Я могу сказать вам одно: ваш рынок никогда не будет состоять из всего человечества. Так что тот факт, что, возможно, 25% людей на планете не используют Windows, не должны иметь для вас никакого значения.

Для вас важно, сколько людей на вашем рынке использует какую-либо ОС? Если вы пишете бизнес/финансовое приложение и работаете только с Windows, то, вероятно, вы оставите около 0,05% вашего рынка (потому что когда вы в последний раз слышали о бухгалтере, который использует Mac или Linux?).

Однако, если вы пишете программу для создания музыки (например, FruityLoops), и вы пишете только Windows, тогда вы, вероятно, оставите больше, чем 50% вашего рынка.

Ответ 4

Microsoft Lightswitch. Трудно представить что-либо "более быстрое".

Ответ 5

Magic uniPaas: использовал его на моей первой задаче для разработки графического интерфейса пользователя. Это не ерунда RAD Tool, где все основано на таблицах. Он также обеспечивает среду выполнения. Тогда это называлось Magic eDeveloper.

Ответ 6

Я думаю, что WinDev следует за идеей RAD.

Примечание. Работает только в Windows, цены начинаются от 990 евро. Поставляется с широким спектром инструментов.

Ответ 7

Visual Studio - Руки вниз с лучшей студией RAD. Если вы считаете, что он используется не только для инструментов разработки Microsoft, Delphi Prism использует его, а инструменты SQL Management для SQL Server все это используют, вы получаете представление о его гибкости. Он также бесплатный (инструмент RAD/IDE - не инструмент разработки).

Ответ 8

Clarion (http://softvelocity.com).

Я мог бы/мог бы получить демонстрацию, ударяемую вместе для такого проекта в считанные часы.

Один недостаток перспективы заключается в том, что он создает исполняемые файлы Win32. Конечно, это можно решить, создав с ней веб-систему.

Другим является то, что Clarion определенно не является открытым исходным кодом. Который положил бы много народа.


Хорошо. Мой последний комментарий был около 2 часов назад. Итак, в то время, вот что мне удалось сделать в Clarion.

http://125.214.67.190:5824/

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

Система "Знание" - очень демонстрационная версия. Вы можете добавлять только теги и отношения к родительским узлам. Не существует надлежащего поиска Tag/Relation (только единственного числа). Нет изображений или достойного графического дизайна или пользовательского интерфейса.

Но основа, фундамент есть.

Ответ 9

Oracle Application Express (http://htmldb.oracle.com/pls/otn/f?p=4600:6: 171781307324519:: NO::)

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

Используйте простые мастера и декларативное программирование для создания мощных приложений для создания отчетов и ввода данных. Вы можете создавать приложения из загрузок электронных таблиц или существующих таблиц базы данных и представлений. Oracle Application Express включает SQL Workshop для создания и управления объектами базы данных, которые поддерживают ваше приложение.

С помощью приложения Express кодирование является декларативным. Это означает, что никакой код не генерируется и не компилируется. Вы взаимодействуете с мастерами и листами свойств. Поскольку язык SQL используется для определения отчетов и диаграмм, некоторые знания SQL полезны. Если необходима логическая процедура, вы можете написать фрагменты кода с использованием PL/SQL. Декларативный код дает меньше различий между разработчиками и эта последовательность делает приложения Express Express удобными для обслуживания и управления.

Ответ 10

REALbasic инструмент инструмента RAD - его компилятор создает собственные исполняемые файлы. И это тоже кросс-компилятор, что означает, что вы можете строить с любой платформы для любой платформы.

Доступ к полной базе данных поддерживается только в Professional Edition (400 евро). Персональная версия составляет 75 евро и может подключаться к REALSQLDatabase (которая также принадлежит ребятам RealSoft).

В отличие от Hibernate или SQLAlchemy, вы должны сами написать слой DB.

Ответ 11

Netbeans Matisse визуальный редактор отлично подходит для разработки Swing.

Ответ 12

Grails - это основа для быстрой сборки веб-приложений. Он основан на Groovy. Вы определяете модель, запускаете две команды из командной строки, и вы устанавливаете простой CRUD, где вы можете редактировать свою модель в веб-браузера.

Только веб-сайт, много хороших идей, но у вас не может быть родительских/дочерних отношений из-за эта ошибка, которая, мы надеемся, будет исправлена в версии 1.0.5. Для серьезного развития вам понадобится один из плагинов AJAX/Rich Client, потому что у Grails не очень мощные виджеты.

Ответ 13

Lazarus LCL - это Delphi, например VCL, над существующими наборами виджетов.

Это могут быть GTK1, GTK2, QT, Win32/64, WinCE и Carbon. Есть и другие (например, мост COCOA), но они в основном только на начальных этапах.

Ответ 14

Qt Toolkit, найденный по адресу: http://qt.nokia.com/products, для кросс-платформенного графического интерфейса С++ также отлично подходит для создания настольных и мобильных приложений.

Ответ 15

XPower ++ из ++ Technologies - Cross Platform IDE для Windows, Linux, Mac, Android, iOS и т.д.

Ответ 16

Этот ответ напрямую не связан с вашим вопросом, но похож. Для моих проектов самым близким, что я использовал, является NEsper, который представляет собой платформу обработки сложных событий с открытым исходным кодом (CEP), В течение последних двух вечеров я построил backtester для торговой системы, которую я собираю, и это было NESper, что сделало так быстро - я думаю, что я сделал это в течение вашей 8-часовой цели.

Ответ 17

TurboGears - это основа для быстрой сборки веб-приложения с использованием Python. Основные возможности: вы определяете модель, TG создает все остальное, которое затем может приспосабливаться к вашим потребностям. Изменения в модели требуют перезапуска сервера разработки, все остальное происходит при следующей перезагрузке в веб-браузере (TG позволит вам узнать, когда вам нужно перезапустить).

Большой шаг вперед, особенно релиз 2.0 (который должен выйти "сейчас скоро", не обижайтесь, ребята, я знаю, что вы много лет работаете над этим в течение нескольких лет... но для меня нет TG 2.0 в течение нескольких лет, либо:() Только в Интернете. Поэтому нам пришлось бы реализовать все drag'n'drop самостоятельно, найти способ рисовать навигационный график. Разочарочно закрыть.

Ответ 18

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

Но нет постоянной базы данных. На самом деле, никакой настойчивости вообще. Вы должны написать код, чтобы сохранить/загрузить свою модель самостоятельно. Выполнение этого для XML довольно просто (есть абстрактный API, который работает для любого объекта в вашей модели), поэтому вам просто нужно написать один класс с, скажем, 50 строками кода, независимо от того, насколько сложна ваша модель.

Элементы управления пользовательского интерфейса нелегко расширить, поэтому, если вам нужно что-то, что не приходит с ним, удачи.

Вышеупомянутая модель может быть реализована менее чем за час, еще один час для чтения/записи из/в XML. Графическая навигация для отношения займет пару дней, используя виджет холста из Qt.

Ответ 19

Panther (и это версия OSS POSSL), похоже, является основой для создания веб-приложений. Я не смог установить его, поскольку он поставляется только с оболочкой Unix script в качестве установщика. С кем-нибудь еще сталкивается с этим? Затем отредактируйте эту запись.

Ответ 20

Я думаю, nbandroid стоит упомянуть. Его RAD-инструмент для разработки программного обеспечения Google Android с использованием среды IDE NetBeans.

Ответ 21

Visual DataFlex - отличный инструмент RAD, который мы используем. Он специально нацелен на создание бизнес-приложений, основанных на базе данных. К сожалению, это не бесплатно, но это отличная среда/язык и Data Access дает хорошую поддержку.

Ответ 22

DragonRAD было объявлено только для разработки Blackberry App. В закрытой бета-версии прямо сейчас.

Ответ 23

Boa Constructor - это кросс-платформенная среда разработки Python IDE и wxPython GUI Builder.

Он упоминается как перекрестная платформа RAD в Википедии, но я предполагаю, что это скорее IDE (вместо того, где вы можете создать приложение, описанное выше в течение нескольких часов).