|
Software Frameworks Comparision: |
|||||||||||||||||
|
|
Legende: |
||||||||||||||||
|
WF AF DF DDD MDD OOP |
|
Webframework Application Framework Domain Framework Domain Driven Design Model Driven Development Object-Oriented Programming |
MP PP FP лЕ лллЕ лллллЕ |
Meta Programming Procedural programming Functional programming low middle high |
|||||||||||||
Programming language |
Adobe Flash / Actionscript |
C/C++ |
C# |
e30 |
Erlang |
JAVA |
JavaScript |
Objective-C |
Perl |
PHP |
Python |
RPG |
Ruby |
|||||
Framework type |
AF, WF |
AF, WF |
AF, WF |
AF,
DF |
WF |
AF, DF, WF |
WF |
AF, WF |
WF |
WF |
AF, WF |
аPP, FP |
WF |
|||||
Frameworks |
Apache Flex (WF), Granite data services (AF) |
CppCMS (WF), CSP (WF), Microsoft Foundation Classes (AF), Q't (AF), wxWidgets (AF) |
Microsoft .NET (AF,WF), Spring.NET (AF) |
e30(AF,
DF) |
ChicagoBoss (WF), Nitrogen (WF), Zotonic (WF) |
Apache Isis (DF), Apache Wicket (WF), Eclipse Rich
Client Platform (AF), Java Server Faces (WF), JBoss Seam (WF), Spring (AF,WF), Struts
(WF) |
ExtJS (WF), Google Web Toolkit (WF), jQuery (WF), Prototype (WF), Scriptaculous
(WF) |
Cocoa (AF), Frothkit
(WF) |
Catalyst (WF), Dancer
(WF), Gantry (WF), Mojolicious
(WF) |
CakePHP (WF), Drupal
(WF), Joomla (WF), Symfony
(WF), TYPOллл Flow
(WF), Yii (WF), Zend (WF) |
Django (WF), Grok
(WF), Pylons (WF), PyQt
(AF), Pyramid (WF), Tkinter
(AF), Zope (WF) |
IBM visual Age
RPG ASNA visual RPG Infinite400 Rational |
Camping (WF), Nitro
(WF), RubyOnRails (WF), Sinatra (WF) |
|||||
Development paradigms |
OOP |
OOP, PP |
DDD/MDD, OOP |
DDD/MDD,
MP |
FP |
DDD/MDD, OOP |
OOP, PP |
OOP |
FP, OOP, PP |
DDD/MDD, FP, OOP, PP |
OOP, PP |
DDD/MDD, MP |
OOP, PP |
|||||
Compiling vs. interpreting |
needs compilation |
needs compilation |
needs compilation |
intepreted |
needs compilation |
needs compilation |
intepreted |
needs compilation |
intepreted and/or compiled
(Perl6) |
intepreted |
needs compilation/span> |
needs compilation |
intepreted and/or compiled |
|||||
Flexiblity in data structure modification |
unflexible, needs compilation |
unflexible, needs compilation |
unflexible, needs compilation
|
dynamic runtime adaptation |
unflexible, needs compilation |
unflexible, needs compilation |
dynamic runtime adaptation |
unflexible, needs compilation |
dynamic runtime adaptation |
dynamic runtime adaptation |
unflexible, needs compilation |
unflexible, needs compilation
|
dynamic runtime adaptation |
|||||
Data migration |
not supported |
not supported |
ллл |
ллллл |
not supported |
ллл |
ллл |
лл |
лллл |
ллллл |
ллллл |
|
лллл |
|||||
Modularitфt |
лллл |
лл |
ллллл |
ллл |
лл |
ллллл |
ллл |
лллл |
ллл |
лллл |
лллл |
|
лллл |
|||||
Supported server platforms |
Mac OS, Unix/Linux, Windows, IBM System
i |
Mac OS, Unix/Linux, Windows |
Mac OS, Unix/Linux, Windows |
Unix/Linux,
Windows, IBM System i |
Mac OS, Unix/Linux, Windows |
Mac OS, Unix/Linux, Windows, IBM System
i |
Mac OS, Unix/Linux, Windows, IBM System
i |
Mac OS, Unix/Linux |
Mac OS, Unix/Linux, Windows, IBM System
i |
Mac OS, Unix/Linux, Windows, IBM System
i |
Mac OS, Unix/Linux, Windows, IBM System
i |
Windows, IBM System i (Unix/Linux) |
Mac OS, Unix/Linux, Windows, IBM System
i |
|||||
Supported client platforms |
Mac OS, Unix/Linux, Windows, Mobile |
Mac OS, Unix/Linux, Windows, Embedded |
Mac OS, Unix/Linux, Windows, Mobile |
Mac
OS, Unix/Linux, Windows, 5250 |
Mac OS, Unix/Linux, Windows, Embedded,
Mobile |
Mac OS, Unix/Linux, Windows, Embedded,
Mobile |
Mac OS, Unix/Linux, Windows, Mobile |
Mac OS, Unix/Linux, Mobile |
Mac OS, Unix/Linux, Windows, Embedded,
Mobile |
Mac OS, Unix/Linux, Windows, Mobile |
Mac OS, Unix/Linux, Windows, Mobile |
5250, Windows |
Mac OS, Unix/Linux, Windows, Mobile |
|||||
Supported DBMS |
JDBC-compatible: DB2, Oracle, MS
Access, MS SQL Server, Informix, InstantDB,
Interbase, MySQL, PostgreSQL, Sybase,
Е |
ODBC compatible: DB2, Oracle, MS Access,
MS SQL Server, Informix, InstantDB, Interbase,
MySQL, PostgreSQL, Sybase,
Е |
ODBC-compatible: DB2, Oracle, MS
Access, MS SQL Server, Informix, InstantDB,
Interbase, MySQL, PostgreSQL, Sybase,
Е |
DB2,
MS Access, MS SQL Server, MySQL, PostgreSQL, Е |
CouchDB, MongoDB,
MySQL, PostgreSQL |
JDBC-compatible: DB2, Oracle, MS
Access, MS SQL Server, Informix, InstantDB,
Interbase, MySQL, PostgreSQL, Sybase,
Е |
PouchDB, SQLite, TaffyDB, Web SQL Database |
SQLite, indirectly also ODBC-compatible |
Perl-DBI: DB2, Oracle, MS Access, MS
SQL Server, Informix, InstantDB, Interbase, MySQL, PostgreSQL, Sybase, Е |
ODBC-compatible: DB2, Oracle, MS
Access, MS SQL Server, Informix, InstantDB,
Interbase, MySQL, PostgreSQL, Sybase,
Е |
ODBC-compatible: DB2, Oracle, MS
Access, MS SQL Server, Informix, InstantDB,
Interbase, MySQL, PostgreSQL, Sybase,
Е |
|
DB2, Firebird,
FrontBase, MySQL, OpenBase,
Oracle, PostgreSQL, SQLite,
Microsoft SQL Server, and Sybase |
|||||
Developing environment: supported developing processes |
ллл |
лллл |
ллллл |
ллллл |
л |
ллллл |
ллл |
ллллл |
лллл |
лллл |
лллл |
ллллл |
лллл |
|||||
Code documentation |
supported (FlashDoc) |
supported (Doxygen) |
supported |
supported |
supported (EDoc) |
supported (JavaDoc) |
supported (JSDoc) |
supported (HeaderDoc) |
supported (POD) |
supported (PHPDoc) |
supported (PyDoc) |
supported (RDoc) |
||||||
Application documentation |
not supported |
not supported |
not supported |
supported |
not supported |
not supported |
not supported |
not supported |
not supported |
not supported |
not supported |
not supported |
||||||
ERP support |
not supported |
not supported |
ллл |
ллллл |
ллл |
лллл |
not supported |
not supported |
not supported |
ллл |
ллл |
л |
ллл |
|||||
Multilingualism |
ллл |
ллллл |
ллллл |
лллл |
ллллл |
ллллл |
л |
ллллл |
ллллл |
ллллл |
ллллл |
лл |
лллл |
|||||
Application transparency |
л |
лл |
ллл |
ллллл |
ллл |
ллл |
лл |
л |
ллл |
лллл |
лллл |
ллл |
ллл |
|||||
Maintainability |
ллл |
лл |
ллл |
ллллл |
лл |
ллл |
ллл |
ллл |
лл |
ллл |
лллл |
ллл |
ллл |
|||||
Support |
ллл |
лллл |
ллллл |
лллл |
лл |
ллллл |
лллл |
ллл |
ллл |
ллллл |
лллл |
ллл |
||||||
Rapid Application Development |
ллллл |
ллл |
ллллл |
ллллл |
л |
ллллл |
ллллл |
ллллл |
ллллл |
ллллл |
ллллл |
ллллл |
||||||
Portability |
ллллл |
ллл |
ллл |
ллллл |
лл |
ллллл |
лллл |
л |
ллллл |
лллл |
ллллл |
л |
ллл |
|||||
Testing environment |
ллллл |
ллллл |
ллллл |
ллл |
ллл |
ллллл |
ллллл |
ллллл |
ллллл |
ллллл |
ллллл |
ллллл |
||||||
Deployment
support |
лллл |
ллл |
ллллл |
ллллл |
not supported |
лллл |
лллл |
лллл |
лллл |
лллл |
лллл |
л |
ллллл |
|||||
Configuration management |
indirectly |
indirectly |
integrated |
integrated |
not supported |
integrated |
integrated |
integrated |
indirectly |
integrated |
indirectly |
integrated |
||||||
User/Access management |
лл |
л |
ллллл |
ллллл |
not supported |
ллллл |
indirectly |
л |
лллл |
ллллл |
ллллл |
ллллл |
||||||
Free of redundancy |
ллл |
ллл |
лллл |
ллллл |
лл |
лллл |
ллл |
ллл |
ллл |
ллл |
лллл |
лл |
лллл |
|||||
Integration into heterogeneous environments |
indirectly |
ллл |
ллллл |
ллллл |
л |
ллллл |
indirectly |
л |
лллл |
ллл |
лллл |
лл |
лл |
|||||
Interoperability/span> |
л |
лллл |
ллллл |
ллллл |
л |
лллл |
ллл |
л |
ллллл |
лллл |
лллл |
ллл |
||||||
Software Lifecycle support /
Backward compatibility |
л |
л |
лл |
ллллл |
л |
ллл |
лл |
л |
л |
лл |
ллл |
л |
лл |
|||||
Programming experience / Learnability |
basic ллл |
advanced л |
advanced лл |
not needed ллллл |
advanced л |
advanced лл |
basic ллл |
advanced лл |
advanced л |
basic ллл |
basic ллл |
advanced лл |
basic ллл |
|||||