`
zh_harry
  • 浏览: 102531 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
877aca81-daac-33c8-8bf9-3a886cebc6c3
自己动手写java 框架
浏览量:28436
社区版块
存档分类
最新评论

sparrow 支持JDK依赖注入功能

    博客分类:
  • JAVA
阅读更多

 

麻雀虽小,但五脏俱全

sparrow 源自中国俗语 麻雀虽小,但五脏俱全,全力打造一个全新的低耦合,0依赖的高性能java基础框架。

  • 有没有发现我们的工程代码其实很臃肿?
  • 有没有发现我们依赖了很多没有用的jar包?
  • 有没有发现在项目中因为jar 冲突而折腾很久?
  • 有没有想过我只依赖jdk 就实现一个WEB工程?
  • 有没有发现其实我们只需要一小块功能,而需要引入一个大框架?
  • 有没有发现其实有些功能非常简单,而被框架限制了?
  • 有没有发现其实有些功能原理不复杂,而框架实现很庞杂?因为不相信程序员!
  • 有没有发现相似的框架提供的业务功能是一致的?但对外的接口是不同的?想不想统一?
  • 有没有想过自己也实现一套JAVA-WEB 框架?

如果你也一样? 那么sparrow 非常适合你!

为此基于oop的基本思想,构建一层api,最大化的解耦。

架构图

框架特点

  • 相信程序员

通过对原理有了更深入的了解,对写程序来讲会更简单,高效,很多框架之所以很重,很重要的一个原因是不相信程序员,这个框架从jdk出发,尽量不依赖第三方jar 包,让程序能跑起来,让程序更快。

  • 从0开始

人脑思维是发散的,如果中间某个知识点断掉,可能就会产生知识盲点,这个盲点可能产生的影响很大的,尤其是技术更象是一层窗户纸,捅破了,简单,捅不破,如隔山。 所以我们从0开始,让知识连贯起来,消除盲点,不只让程序变得高效,更让程序员变得高效。

  • 0依赖

框架实现最简单的,最核心的功能,尽量不依赖任何框架,包括spring。

  • 解耦/隔离

sparrow模块 只定义了一些接口,具体实现在其他的模块中,是否依赖由业务端决定,最大化解耦。

  • 扩展

遵循开闭原则,对业务提供扩展点。

项目架构及远期规划

架构中大部分功能已具基本的使用框架,但还需要进一步完善和优化,具体内容可查看架构详细介绍

jedis和rocket mq 客户端已具备基本的生产环境使用条件

其它模块还需进一步完善,欢迎有兴趣的小伙伴,一起加入 email:zh_harry#163.com

Quick start

cd sparrow-bom
mvn clean install -Dmaven.test.skip
cd ..
mvn clean install -Dmaven.test.skip

项目demo演示

http://www.sparrowzoo.com

我们的愿景和未来

让程序员脱离spring, 也能写代码,而且更快,更优雅

0
0
分享到:
评论

相关推荐

    进销存管理程序 Sparrow

    3. 多维度数据分析:提供丰富的报表功能,支持多角度、多层次的数据分析,帮助企业发现经营问题,优化管理策略。 4. 自动化流程处理:自动化处理订单、入库、出库等业务流程,减轻人工工作负担,减少错误率。 5. ...

    SPARROW

    -OpenType字体扩展了TrueType,支持更多的字符集和复杂的排版功能,如连字、替代字形等。 -Web字体服务如Google Fonts和Adobe Fonts,允许网页设计师在网页上使用各种字体,无需用户机器上已安装。 4. 字体在IT中...

    Sparrow-Framework官网源代码

    4. **多平台兼容**:虽然主要针对iOS,但Sparrow也支持Android和其他平台,这使得游戏可以跨平台发布,扩大了潜在市场。 5. **强大的组件**:Sparrow包含一系列预先构建的组件,如精灵、纹理、粒子系统、物理引擎等...

    前端基础库Sparrow.js.zip

    Sparrow.js是一个短小精悍的前端基础库,它包含对DOM、CSS基本操作、多平台浏览器移动设备判断、Cookies操作、事件的绑定、日期、数字、字符串相关判断、以及浏览器自身函数不足所扩展的一系列功能。开发技术说明...

    Sparrow是一款针对移动webapp开发的前端轻量级框架

    这意味着它不会像一些大型框架那样带来大量的依赖和冗余代码,从而使得项目加载速度更快,占用的内存资源更少,这对于移动设备来说尤其重要,因为它们的硬件性能通常不如桌面设备强大。 在移动端组件库方面,...

    iOS游戏引擎 Sparrow Framework.zip

    iOS游戏引擎 Sparrow Framework ,Sparrow是一个基于Objective-C的开源的游戏引擎,完全为iOS设备构建。该项目可以让开...

    Sparrow Framework for iOS V0.9

    此外,Sparrow支持XML和JSON格式的数据解析,方便读取和存储游戏状态。 在集成开发环境Xcode方面,Sparrow Framework与Xcode的整合让开发者能够享受到一致且高效的开发流程。它支持Xcode的自动完成、调试工具以及...

    sparrow:Sparrow是用于创建功能强大的现代Go应用程序的工具包

    麻雀Sparrow是用于创建功能强大的现代Go应用程序的RAD库。目录配套 CFG更改文件后,cfg使用热重载功能实现一个简单的configraution装载程序。支持本地文件和远程存储。日志[WIP] log为标准log实现了增强的日志包装器...

    Sparrow MAC

    Sparrow-v1-6-4.dmg 在mac上安装的sparrow,一个邮件客户端。

    sparrow:麻雀静态分析仪

    麻雀依赖 要构建麻雀,您需要 > = 4.04.0 > = 1.2.2 > = 2.3.1 > = 1.7.3 > = 1.8.7 > = 0.9.10 > = 1.2.3 > = 0.1.3 > = 113.33 > = 4.1 (可选)您需要满足以下先决条件才能使用机器学习功能 Python > ...

    Sparrow OS 设计文档连载九:File System

    而ListFS的引入,则是为了便于在模拟器环境下测试和验证Sparrow OS的文件系统功能,同时减少了对实际存储介质的依赖。整体而言,Sparrow OS的文件系统设计凸显了模块化和可扩展性的特点,可以为其他嵌入式系统的设计...

    Sparrow Search algorithm (SSA).zip

    从麻雀的群体智慧、觅食行为和反捕食行为出发,提出了一种新的群体优化算法——麻雀搜索算法。在19个基准函数上进行了实验,测试了SSA算法的性能,并与其他算法如灰狼优化算法(GWO)、引力搜索算法(GSA)和粒子群...

    sparrow:允许控制多个“窗口”的功能测试框架

    #Sparrow 功能测试基于 jasmine 和 jQuery 的功能性网站测试框架。 Sparrow 旨在通过简化异步测试来解决网站测试中固有的异步测试问题。 麻雀: 使异步测试更容易允许同时测试多个页面,以便可以测试复杂的交互在...

    HTML5响应式模版Sparrow

    6. media/:音频和视频文件的存放位置,如果模板支持多媒体播放。 7. icons/:可能包含SVG图标或其他图标资源。 在实际应用中,开发者可以根据项目需求自定义和扩展Sparrow模板,例如修改颜色方案、添加新的页面...

    sparrowjs是一个前端基础库精简版的jQuery精简版lodash的合体

    Sparrow.js是一个专门为前端开发设计的基础库,它融合了jQuery和lodash两个知名库的精简功能,旨在提供轻量级但实用的工具集。在JavaScript开发领域,框架的选择至关重要,而Sparrow.js则为那些希望减少代码体积,...

    麻雀算法优化Sparrow-Search-Algorithm-Matlab-main.zip

    麻雀搜索算法(Sparrow Search Algorithm, SSA)是一种基于生物行为的优化算法,灵感来源于麻雀群体的行为特征,如觅食、避险和集体防御等。这种算法在解决复杂优化问题时展现出强大的能力,特别是在工程领域和数据...

    Python库 | sparrow-tool-0.3.5.dev2.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:sparrow-tool-0.3.5.dev2.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    Sparrow 1.5 破解版

    自测Sparrow1.5破解版本

    Sparrow OS 设计文档连载十:Interrupt Handling

    在Sparrow OS中,中断处理采用了多层次的中断处理架构,支持子中断处理(sub-interrupt),并且支持中断嵌套。这意味着操作系统不仅能够处理单个中断源,还能够处理一个中断源中的多个中断事件,并允许在处理一个...

Global site tag (gtag.js) - Google Analytics