1 web应用
-桌面应用(GUI),Tkinter,pyqt(qt平台) 单机版(文件,sqlite,mysql)
-C/S架构:socket,Http
-B/S架构:http协议
2 Http协议:面试重点(请求头,响应头里有什么,http版本的区别)
3 web框架:任何语言都会有自己web框架
-java中:
-jdk(java开发工具包,java开发必须装),jre(java运行环境,java程序运行),jvm(java虚拟机)
-java:javaSE(基础),javaEE(web),javaME(移动开发,淘汰了)
-ssh框架:spirng, structs,hibernate(orm框架) war包
-ssm框架:spring,springMVC,mybatis(orm框架,写原生sql) war包
-springboot:类似于django,大而全,约定大于配置,默认集成了tomcat jar包
-springcloud:微服务,完整的微服务解决方案
-go中:
-go基础,web框架
-Beego(中国人,大而全),gin(大学生,偏多,小而精flask),Iris,Echo,Revel
-python中:
-Django:MTV(mvc)
-flask(小而精)
-tornado(逐渐下滑)
-sanci(逐步上升,不支持windows,异步版本flask)
-fastapi(异步版本flask)
4 django开发之路
-安装,创建项目,启动,配置,目录结构
-MTV架构
-路由urls.py
-url,path,re_path
-有名无名分组,路由分发,名称空间
-转换器,自定义转换器
-视图Viwes.py
-请求对象(http的请求)
-响应对象(http响应)
-四件套
-cbv和fbv
-文件上传(编码方式)
-模板层Templages文件夹
-模板语言(DTL)
-xx.html (字符串替换)
-变量,变量深度查询
-标签
-过滤器
-自定义标签,过滤器
-render()--->页面静态化
-模型层
-orm:能创建表,新增删除字段,不能创建数据库
-单表
-数据库连接(mysql)
-创建表模型(字段,字段参数)
-多表
-三个关系
-Meta:表名,联合索引,联合唯一,排序
-查询方法:api
-单表的__模糊查询
-多表的__连表查询
-多表基于对象的跨表查询
-聚合
-分组
-F和Q
-高级部分
-ajax(js的,jq的ajax方法,axios),异步,上传文件,json格式(django内置的序列化器)
-分页器
-forms:数据校验和模板渲染,局部,全局钩子函数(源码分析)
-cookie和session,token,django中如何操作cookie,session
-中间件:最重要的两个
-Auth:django内置app,用户相关
-BBS项目(前后端混合开发)
-django 2.0.7+mysql5.6+bootstrap3.x