简历应答准备
首行占位
自我介绍
专业技能
1.常用模块
2.os:与操作系统交互的一个接口 ,例:os.getcwd()
3.time:time.time()时间戳
4.hashlib:加密
5.random:随机
6.json:json.dumps(dict)、json.loads(str)
7.logging:日志
2.Django介绍、Flask概况与web开发流程
Django介绍:
使用Python编写的开源的Web应用框架,采用MTV的模式(增加一个URL分发器),特点是大而全
优点:功能齐全,提高开发效率;社区活跃文档健全,帮助开发者快速解决问题
缺点:高耦合,扩展性不强;笨重,过多不必要的功能
MTV:
M:模型(Model),负责业务对象和数据库的关系映射(ORM)
T:模板(Template),负责把页面展示给用户(html)
V:视图(View):负责业务逻辑,在适当时候调用Model和Template
除了以上三层之外,还需要一个URL分发器,将一个个URL的页面请求分发给不同的View处理,View再调用相应的Model和Templat
Flask:
基于Python的微型Web框架,微型是指它的核心非常简单,同时具有很强的扩展能力,它几乎不给使用者做任何技术决定
优点:低耦合,扩展能力强,兼容多种数据库、模板;入门简单
缺点:需要设计路由映射的规则,否则导致代码混乱;
Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架
Web开发流程:
1.需求确定
2.分析与设计:
1.架构分析与设计
2.业务逻辑分析与设计
3.数据库分析与设计
3.开发环境搭建
4.开发-测试-上线-文档编写
5.迭代开发,维护
3.RESTful、DRF与RPC
RESTful设计风格:
RESTful(资源状态转换)是一种Web API设计风格,特别适用于前后端分离的应用模式中,把后端所有的数据/文件都看成资源,客户端访问的url路径就表示目标资源,通过http请求动词来说明对资源进行哪一种操作
DRF:
DRF是一个建立在Django基础之上的Web应用开发框架,可以快速的开发RESTful风格的API。提供了序列化器帮助我们简化序列化和反序列化的过程,还提供了丰富的类视图,扩展类,视图集来简化视图的编写工作,还有过滤、分页等功能。提供了一个API 的Web可视化界面来方便查看测试接口
RPC:
远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。
REST调用及测试都很方便,RPC就显得有点繁琐,但是RPC的效率是毋庸置疑的,所以建议在多系统之间的内部调用采用RPC。对外提供的服务,Rest更加合适。
4.MySQL、Redis和MongoDB
MySQL的CRUD:
MySQL的事务:
MySQL的存储过程:
MySQL的存储过程是一组为了完成特定功能的SQL语句集,经过编译之后存储在数据库中,当需要使用该组SQL语句集的时候用户只需要通过指定存储过程的名字并给定参数就可以调用执行,简而言之就是一组已经写好的命令,需要的时候拿出来用就可以了
优点:只需要编译一次,提高数据库执行速度,一般SQL语句每次执行都需要编译;可重复使用
缺点:语句复杂,可读性差,可维护性比较差
MySQL的索引:
5.Linux常用命令与GIT
6.Docker与Nginx
Docker:
docker是linux容器的一种封装,提供简单易用的容器使用接口、它是最流行的Linux容器解决方案
作用:
1.持续部署,测试
2.轻松迁移
3.应用隔离
Nginx:
开源的,支持高性能,高并发的web服务器,处理http请求与响应
作用:
1.反向代理
2.负载均衡