AIGC已经深入到方方面面,用好它能帮我们节省很多时间。特别是信息技术领域。AIGC的工具很多,这里主要使用Bito,当然也可以使用百度文小言、阿里通义、腾讯元宝、抖音豆包。Python是如今最流行的程序设计语言,多年的实践,已经积累并有了成熟的技术架构模式。这里是一个C/C++程序员,讲述基于AIGC和Python,快速搭建信息系统。
AIGC工具:bito
bito提供了很多形式的客户端,能够集成在集成开发环境(如idea、vscode)、作为浏览器插件(chrome)、直接在网页使用、也提供了命令行工具。用来辅助编程很不错。
https://bito.ai/
登录后的首页
Python技术架构
先用一张图描述下什么是Python技术架构。按照4A的设计理念,技术架构TA,与业务架构BA,应用AA,信息架构IA一起描述一个信息系统解决方案的系统架构。TA就是从使用的技术选择角度,要用合理的方式去支持解决方案的落地,基于一定的通用性,往往可以给出相对稳定的架构模式。下面的思维导图就是一种相对通用的架构模式,这里简单予以介绍:
Python技术架构模式
API
如果不知道RESTful、OAutp、OpenAPI是什么,可以直接询问bito。
基于web服务的API,经过多年实践,推荐使用RESTful架构风格。这种风格将API与具体的资源结合起来,提供统一的方法POST、PUT、DELTE、GET,与http协议配合,能够提供标准可靠、足够灵活的无状态服务,有利于系统基于功能和性能的扩展,并可以借助http头实现缓存。
RESTful是什么?
OAutp是一种开放标准,主要用于授权,允许第三方应用程序在不暴露用户凭据的情况下访问用户在其他服务上 的资源。它是一个广泛使用的协议,尤其在 Web 和移动应用中,用于安全地授权用户访问 API。
OAutp是什么?
OpenAPI由swagger发展而来,定义了描述RESTful的规范,使用 YAML 或 JSON 格式编写,描述了 API 的端点、请求和响应格式、参数 、认证方式等信息。并提供了工具生成客户端和服务端的代码,获得了页面很多工具的支持,能降低程序员的编码量。
OpenAPI是什么?
ORM
SQLAlchemy是一个小巧的ORM,能有效基于其他框架结合,不用理解数据之外的东西。
SQLAlchemy是什么?
DJango本来是一个WEB框架,内置了ORM。也提供了丰富的ORM能力。
DJango作为ORM,请详细介绍下
Event
Celery是一个强大的异步任务处理工具,Airflow是一个工作流调度器。类比于java的quartz和activiti。可以针对性选择使用用来解决事件触发的各类服务。
Celery是什么?
Airflow是什么
Testing
unitest是内置于python的单元测试工具,提供了测试断言用来编写测试用例。
unittest是什么
pytest提供了更加丰富的单元测试和功能测试。需要安装库pip install pytest
pytest是什么
参考资料
- 本文涉及的代码 https://gitee.com/wapuboy/learning-programming-with-gauss/tree/master/code/python
- AIGC工具 https://bito.ai/
- TOGAF https://www.opengroup.org/