一个自动生成web和微服务项目代码工具sponge

sponge 是一个快速生成web和微服务项目代码工具,也是一个基于gin和grpc封装的微服务框架。sponge拥有丰富的生成代码命令,一共生成12种不同功能代码,这些功能代码可以组合成完整的服务(类似人为打散的海绵细胞可以自动重组成一个新的海绵)。微服务代码功能包括日志、服务注册与发现、注册中心、限流、熔断、链路跟踪、指标监控、pprof性能分析、统计、缓存、CICD等功能。代码解耦模块化设计,很容易构建出从开发到部署的完整项目代码,让使用go语言开发项目更便捷、轻松、高效。

项目地址:https://github.com/zhufuyi/sponge
使用文档:https://go-sponge.com/
视频教程:https://space.bilibili.com/1440482691/video
在线生成代码demo: https://go-sponge.com/ui/


sponge 生成命令框架

生成代码基于YamlSQL DDLProtocol buffers三种方式,每种方式拥有生成不同功能代码,生成代码的框架图如图1-1所示:

sponge-framework
图1-1 sponge生成代码框架图


微服务框架

sponge生成的微服务代码框架如图1-2所示,这是典型的微服务分层结构,具有高性能,高扩展性,包含常用的服务治理功能。

microservices-framework
图1-2 微服务框架图


微服务主要功能:


代码目录结构遵循 project-layout,代码目录结构如下所示:

.
├── api            # proto文件和生成的*pb.go目录
├── assets         # 其他与资源库一起使用的资产(图片、logo等)目录
├── build          # 打包和持续集成目录
├── cmd            # 程序入口目录
├── configs        # 配置文件的目录
├── deployments    # IaaS、PaaS、系统和容器协调部署的配置和模板目录
├─ docs            # 设计文档和界面文档目录
├── internal       # 私有应用程序和库的代码目录
│ ├── cache        # 基于业务包装的缓存目录
│ ├── config       # Go结构的配置文件目录
│ ├── dao          # 数据访问目录
│ ├── ecode        # 自定义业务错误代码目录
│ ├── handler      # http的业务功能实现目录
│ ├── model        # 数据库模型目录
│ ├── routers      # http路由目录
│ ├── rpcclient    # 连接rpc服务的客户端目录
│ ├── server       # 服务入口,包括http、rpc等
│ ├── service      # rpc的业务功能实现目录
│ └── types        # http的请求和响应类型目录
├── pkg            # 外部应用程序可以使用的库目录
├── scripts        # 用于执行各种构建、安装、分析等操作的脚本目录
├── test           # 额外的外部测试程序和测试数据
└── third_party    # 外部帮助程序、分叉代码和其他第三方工具

web服务和rpc服务目录结构基本一致,其中有一些目录是web服务独有(internal目录下的routers、handler、types),有一些目录是rpc服务独有(internal目录下的service)。


生成项目代码界面

生成12种不同功能代码命令都已经做了UI界面,使用起来更加方便,在线生成代码demo: https://go-sponge.com/ui/,可以下载sponge在本地使用。

例如创建web服务完整项目如下图所示:

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
微信小程序自动切片生成布局软件是一款根据效果图像画画一样来设计微信小程序,自动生成导出前端页面的快速开发工具。可以很方便、快速地生成小程序的wxml,wcss,js文件。可以大大提高您的工作效率,减少前端布局的编写工作。 功能如下: 1.切片功能:原来手工写的这部分工作,可以用切片软件的方法来切。切好后,可以自动生成wxml,wcss,js文件。 2.文字识别功能:效果图上的文字可以通过自动文字自动识别识别出来,提高录入速度,减轻工作量。 3.存档功能:设计好的切片文件可以存档,以便下次编辑。只要有切片文件在,换了程序员也可以修改和编辑。 软件操作步骤说明: 1.在微信工作者工具中添加新页面的目录,添加新的页面; 2.打开切片软件,导入小程序效果图,设置好名称、.wxml、后台代码类型。再设置好页面设置中的四个路径参数; 3.通过拉框线设置好布局,设置好属性; 4.点工具栏上的刷新、生成、导出; 安装最低配置: 1. 支持操作系统:windows xp/vista/windows2003/win7/win8 2. IE, Firefox, Mathxon等浏览器 3. 512M RAM 内存,80G硬盘,100Mbps 网卡 4. .net4.5以上框架 安装说明: 1. 先安装本软件,WIN7/WIN8建议不要装在c盘,安装完成后右键以管理员身份运行 2. 如果不能运行,请安装.net4.5框架,推荐下载地址:http://www.crsky.com/soft/4818.html 常见问题: 1.切片规则 2.操作流程 小程序关键词: 小程序前端制作 小程序前端代码生成 小程序前端模板制作 小程序前端模板生成 小程序前端工具 小程序前端快速生成工具 小程序前端自动生成工具 小程序前端开发工具 小程序前端框架 小程序前端开发框架 小程序前端布局页面工具 小程序前端布局自动生成工具 小程序制作工具 小程序制作工具官方网站 小程序定制开发工具 小程序定制快速开发工具
### 回答1: 我不太清楚如何用 Python 写一个海绵宝宝的代码,但是我可以给你一些提示:你可以用 Python 的 Turtle 模块来绘制海绵宝宝的图像,还可以用 Tkinter 模块来设计海绵宝宝的用户界面。 ### 回答2: import random class SpongeBob: def __init__(self, name): self.name = name self.mood = "happy" self.energy = 100 def play(self): if self.energy > 20: self.energy -= 20 self.mood = "excited" print(f"{self.name}很高兴地玩耍!") else: self.mood = "tired" print(f"{self.name}太累了,需要休息一下。") def eat(self): if self.energy < 100: self.energy += 20 self.mood = "happy" print(f"{self.name}吃得很开心!") else: self.mood = "full" print(f"{self.name}已经吃饱了,不需要再进食。") def sleep(self): self.energy = 100 self.mood = "happy" print(f"{self.name}睡了一会儿,精神焕发!") def check_mood(self): print(f"{self.name}当前的心情是{self.mood}。") # 测试代码 spongebob = SpongeBob("海绵宝宝") for _ in range(3): action = random.choice(["play", "eat", "sleep"]) if action == "play": spongebob.play() elif action == "eat": spongebob.eat() else: spongebob.sleep() spongebob.check_mood() ### 回答3: 当然可以!以下是一个简单的海绵宝宝代码示例: ```python class SquarePants: def __init__(self, name, age): self.name = name self.age = age def laugh(self): print("哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈") def cry(self): print("呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜呜") def say_hi(self): print(f"嗨,我是海绵宝宝,我叫{self.name},今年{self.age}岁了!") def jellyfishing(self): print("我要去玩捕水母!") def krabby_patty(self): print("我最喜欢吃蟹堡啦!") ``` 你可以创建一个实例来调用这些方法,例如: ```python spongebob = SquarePants("海绵宝宝", 20) spongebob.say_hi() # 输出: 嗨,我是海绵宝宝,我叫海绵宝宝,今年20岁了! spongebob.laugh() # 输出: 哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈 spongebob.jellyfishing() # 输出: 我要去玩捕水母! spongebob.krabby_patty() # 输出: 我最喜欢吃蟹堡啦! ``` 这只是一个简单的示例,你可以根据需要自定义更多的方法和属性,使海绵宝宝的代码更加丰富和有趣!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值