Un microframework es un término utilizado para referirse a marcos de aplicaciones web minimalistas, y se contrasta con los marcos completos.
A diferencia de un marco de aplicación completo, un microframework carece de la mayor parte de la funcionalidad de abstracción de amplio espectro, enfocándose exclusivamente en el manejo de solicitudes HTTP. Funcionalidades (generalmente) no incorporadas en un microframework:
Sistema de usuarios: Cuentas, autenticación, autorización, roles. Abstracción del modelo, como por ejemplo el manejo de base de datos a través de un sistema de mapeo relacional de objetos u ORM. Funciones utilitarias para validación y saneamiento de datos. Abstracción de la vista mediante un motor de plantilla web.
Por lo general, un microframework facilita el intercambio de solicitudes HTTP: recibe la solicitud, enruta al controlador designado y devuelve una respuesta. Los microframeworks se utilizan a menudo para construir APIs para otros servicios o aplicaciones. Por ejemplo, el microframework Lumen está diseñado para el desarrollo de microservicios y APIs.
Ejemplo de pseudocódigo require "foo.php";
foo::get("/hello/{name}", function($name) { return "Hello $name!"; });
Microframeworks
Frameworks completos .NET ASP.NET (Core, AJAX, Dynamic Data, MVC, Razor, Web Forms), Blazor, DNN, BFC, MonoRail, OpenRasta, Umbraco, WebSharper C++ CppCMS, Drogon, Pistache, Wt ColdFusion CFWheels, ColdBox Platform, ColdSpring, Fusebox, Model-Glue Common Lisp Caveman2, CL-HTTP, Weblocks Haskell Yesod, Snap Java AppFuse, Flexive, Grails, GWT, ICEfaces, ItsNat, JavaServer Faces, JHipster, Jspx, JWt, OpenXava, Play, Remote Application Platform, RIFE, Seam, Sling, Spring, Stripes, Struts, Tapestry, Vaadin, Vert.x, WebWork, Wicket, WaveMaker, ZK JavaScript Angular/AngularJS, Backbone.js, Chaplin.js, Closure, Dojo Toolkit, Ember.js, Express.js, Ext JS, jQuery, Knockout.js, Meteor, MooTools, Node.js, OpenUI5, Prototype, React, Rico, script.aculo.us, Sencha Touch, SproutCore, Svelte, Vue.js, Wakanda Perl Catalyst, Dancer, Mason, Maypole, Mojolicious, WebGUI PHP CakePHP, CodeIgniter, Drupal, Fat-Free, FuelPHP, Flow, Grav, Gyroscope, Horde, Joomla, Kohana, Laravel, Lithium, Lumen, Midgard, MODX, Nette, Phalcon, PHP-Fusion, Pop PHP, PRADO, ProcessWire, Qcodo, Silex, SilverStripe, Symfony, TYPO3, WordPress, XOOPS, Yii, Zend Framework Python BlueBream, Bottle, CherryPy, Django, Flask, Grok, Nevow, Pyjs, Pylons, Pyramid, Quixote, TACTIC, Tornado, TurboGears, web2py, Webware, Zope 2 Ruby Camping, Merb, Padrino, Ruby on Rails, Sinatra Rust Actix, Rocket Scala Lift, Play, Scalatra Smalltalk AIDA/Web, Seaside Otros lenguajes Vibe.d (D), Application Express (PL/SQL), Grails (Groovy), Kepler (Lua), OpenACS (Tcl), Phoenix (Elixir), SproutCore (JavaScript-Ruby), Yaws (Erlang)
Referencias
Categoría:Frameworks para aplicaciones web