• Suco


    Suco是一个能够让GWT客户端实现代码简洁与模块化的框架。Suco主要关注两个方面:一.保持系统的模块化(使用IoC模式实现)。二.提供一个简单并且可扩展的publisher/subscriber(Event/Listener)机制。Suco IoC完全基于Google's Guice IoC框架的思想,拥有Container、Provider、Factory和Scope等概念。

    A micro library that helps to maintain your GWT client code clean and modular.

    Suco is focused in two areas:

        * keep your app modular (using a IoC pattern)
        * provide a simple and extensible publisher/subscriber (Event/Listener) mechanism

    The module system allows to create a clean and maintainable architecture with defined dependencies, and the event system helps to create loosely coupled components.

    Suco IoC is heavily based on ideas of Guice, and provides Container, Provider, Factory and Scope (called Decorator in Suco) abstractions.

    The event/listener system is a micro construction that solves some of the problems using classical Listeners implemented by interfaces (as most java apps do).

    Both IoC and Event modules provides helper classes and methods to make test-driven-programming easier.

    The source code is well documented using javadoc. There is a guide and some examples explained in the wiki.

    It makes extensive use of generics, so GWT 1.5 is required.

    点击次数   官方主页【官方主页】   下载地址【下载地址】

    网友留言/评论

    我要留言/评论

    相关开源项目

    joywindow: joywindow是的目标是用java语言与HTML显示来构建桌面应用程序.通过它,开发者可以用WEB开发的MVC模式构建桌面应用程序,可以有效提升开发速度.
    它实现了模型,控制,显示层的分离,可以让界面设计者与程序开发者的分工.并且在界面设计上,可以充分利用web开发的javascript,css,flash,HTML等技术,实现丰富多彩的界面效果.
    joywindow内置一个类struts2.0的基础框架(wox),可以自动封装输入值,并通过配置进行逻辑跳转.joywindow虽然不如java web一样支持jsp动态页面,但是集成了velocity作为动态页面解析语言.工作原理:joywindow原理是java内嵌浏览器做界面展示,通过一个simpleServer来作为传递资源,响应事件的中间处理,在base版本中,simpleServer也是开发的重点.
    Hocate:Hocate web framework是一套给予java的快速高效、构建web应用程序的框架,在框架的设计过程中,框架设计构思来源于国内众多项目实践,研究了(struts、jsf、Myface等)著名成熟的框架并继承了他们的优点,但也回避了些许他们弱点,利用FreeMarker作为页面模版解析引擎,实现一个页面及代码完全分离的简化的MVC开发框架。旨在构建一个能实现高效Web应用系统快速开发的简易Web框架。
    Induction:Induction是一个强大,高性能的Java MVC Web应用开发框架。支持动态重新加载。基于类型的依赖注入。模型、视图、控制器之间的依赖分析。Induction的目标是简化开发复杂、高性能、可维护的Web应用。
    JNex:JNex是实现MVC设计模式的纯Java框架.它可以使用三种视图(view):Swing,HTML,和Canoo ULC.
    Gwittir:Gwittir项目为开发基于GWT的应用程序提供一组代码生成器,基础框架,工具类和一个MVC框架。
    JVC:JVC(Java View Control) Java(视图-控制)开发框架的目的是构建一个快速开发、可维护的、稳定的web开发框架,并开放源代码,互相促进开发技术。目前比较流行的web开发框架有WebWork、Struts、Spring,这几个都是非常好的开发框架,都能实现MVC模式.参考上述几个框架的思想,开发简化了的视图-控制框架,弱化了模型层,为什么要弱化模型层,这是因为往往在模型中大部分是重复的工作。
    Apusic OperaMasks:Apusic OperaMasks包括一个提供原生Ajax支持的JSF引擎,以及在此引擎上开发的富客户端组件(Rich Component)。Apusic OperaMasks在引擎级别提供对Ajax的良好支持,并提供一组功能丰富的UI组件,旨在降低Web开发的复杂度,真正使Web开发变得轻松起来。 Apusic OperaMasks提供以下的功能特性: * 标准兼容的JSF引擎 不依赖于应用服务器,在Servlet 2.5兼容的容器中均能运行。 * 容器级别Ajax支持 在引擎级别对Ajax予以支持,实现了对Ajax的无缝集成。 * Annotation形式的ManagedBean声明 无须维护faces-config.xml文件,在POJO类上声明 @ManagedBean 即可定义一个ManagedBean,使得开发更加快捷。 * 统一的资源和皮肤管理 依赖于特有的资源管理机制,Apusic OperaMasks的皮肤管理独立于应用之外,灵活并具备非常好的扩展能力。 * 丰富的UI组件 提供一组功能丰富的UI组件(Rich Components),包括BorderLayout,Menu,Tree,DataGrid,DataView,ComboBox,DateFiled,CaculatorField等。
    EasyJWeb:EasyJWeb是基于java技术,应用于WEB应用程序快速开发的MVC框架,框架设计构思来源于国内众多项目实践,框架充分借签了当前主要流行的开源Web框架(Struts、JSF、Tapestry 、Webwork),吸取了其优点及精华,利用Velocity作为模板页面引擎,是一个实现了页面及代码完全分离的MVC开发框架。是一个能实现中小型Web应用系统快速开发的简易Web框架。

      通过EasyJWeb Tools提供的配套开发工具,可以实现基于EasyJWeb框架的Web应用快速开发,包括常用应用软件的代码自生成、数据库添删改查(CRUD)代码生成、自动页面模版生成、配置文件管理等。

      框架特点:

      1、零配文件置支持。以前我们每接触一个框架,开始总都要被他的配置文件折腾一番。EasyJWeb实现零配置支持,可以不写一句配置文件就在框架基础上构建你的运用。(适合小型网站系统)。

      2、简易的模板页面设计支持:放弃使用jsp,使用简单Velocity脚本语言作为页面模板。

      3、页面程序完全分离:实现显示页面与程序逻辑的完全分离,克服了传统jsp页面难于维护的问题。

      4、基于页面组件的框架。灵活的页面组件配置,可以直接通过配置文件设置字段级的事件组件。

      5、快速开发支持:通过EasyJWeb Tools,可以自动生成应用软件模板代码,定制并管理自己的J2EE代码模板,代码生成模板支持最流行的实用Java开发框架(如hibernate、Spring等)实现快速开发。
    GrailsUI: GrailsUI(GUI)是一个Grails插件,封装了YUI和 YUI 扩展(Bubbling),将二者的组件以Taglib的形式提供给用户,让Web页面UI的开发变得方便快捷。
    Webx: Webx是建立在Java Servlet API基础上的的通用WEB框架。用Webx搭建的应用可以运行在任何一个标准的WEB应用服务器上面:Tomcat、Jetty、Jboss、Weblogic……。 是一个在阿里巴巴集团内部广泛使用的,层次化、模块化的一个Web框架。Webx是基于经典MVC设计模式的WEB框架,推崇页面驱动和约定胜于配置的理念。 Webx是一个基于Spring的组件框架。组件是一个软件包,它可以被其它组件扩展,也可以扩展其它组件。利用这些特性,Webx不仅能够用来开发高度可定制的Web应用(这是它的主要功能),也能够用来帮助你开发高度可扩展的非WEB的应用。