项目前置知识
MVC模式
为什么要使用mvc模式:为了提高开发效率,专业的人负责专业的模块。
比如我们的工厂,在一条生产线,每一个模块的安装都是为了固定几个人去负责。一是为了提高每个人的效率,二是出了错误就找到负责人身上。
打游戏:组合(战法牧)【铁三角】
战士—抗伤害
法师—打输出
牧师—辅助(奶妈)
mvc指在开发期,把项目模块分成三个部分,
m : Model 模块层(负责处理数据的对接,让数据在前后端之间进行交互,操作数据库。)
其中,前端:用户看到的内容;后端:实现用户的需求。
v : View 视图层(负责给用户看到的东西,都是视图层,网页内容。)
c : Controller 控制器(功能性代码的实现,例如:注册、跳转、激活等等各种功能写在控制层。)
---------------------------------------------------------------------------------------------------------------------------------
1.view(视图):用来显示数据的.
2. model(模型):处理一些数据逻辑的,一般用于处理 sql数据.
3. controller(控制器):负责交互,好比如我们的requests传输,发送数据的.
比如:网页发送请求执行顺序:
1.URL—>发送请求—>controller(控制器).
2.controller进行判断(请求判断)从model中取出数据(访问数据库)
3. controller 再根据业务逻辑,选择合适的view视图呈现给客端,
4.view 返回给客端
程序断点debug
bug的由来,首先,bug是臭虫的意思。之前有一台计算机内部发现一次计算错误,很多工作人员排查
结果一直没有排查出错误。最后只能把电脑拆开,检查一下计算机内部,发现一只虫子在晶体管被电死了,
引起了短路,发现的人看到了,大声说了句:我发现了错误原因,是一个bug(虫子).
断点:1、让程序一步一步地执行,可以实时知晓代码的运行过程。
2、可以实时知道数据的变化
例如:
- a=123
- print(a) 注意:这个断点的点是红色的。
- a=456
- print(a)
主流编程语言技术方向
提前:听不懂无所谓,了解即可.
C/C++:编程的一哥,是底层计算机语言,可以实现一些硬件层面。
C:
1.硬件开发、单片机(摄相机(镜头)),需要一些功能)
2.系统底层开发,windows 编程
3.逆向开发,(网络渗透),针对内存做操作
4.服务器开发,要linux的服务器
C++:
1、图片处理,
2、游戏开发.
3、客户端开发→QT可视化界面开发(99、网易云客户端)
C#:一出来就奔干掉java,后面跟全java来做.
1.window开发—>在windows 操作系统环境的软件开发
2.游戏开发—>unity3D
go:对标C/C++.
主要做服务器开发,信息并发
java:一人之下,万人之上。
1.大数据:→spark,scala,hadoop底层.
2.web 后台开发
3.大型服务器部署
PhP:网页开发→对应的小型网页服后台部署
---------------------------------------------------------------------------------------------------------------------------------
项目开发流程:
项目立项阶段:
1.产品部门会先进行一个市场调研,提出一个想法进行内部开发。
2.跨部门开会:产品、设计、开发、运维的负责人去开。
项目开发阶段:
UE→产品原型图,设计一个概念图。有具体的排版,参数,细节说明.
UI→美工,用户可视化界面开发素材,画效图
FE→前端开发→网站、用户可视化界面开发。
RE→后端开发→功能开发实现
QA→测试→各种方法折磨项目,看有没有bug(测试是后端的爸爸)
QP→运维→管家保险(姆).负绩线上的项目,优化,维护
程序员的悲剧:
1.bug家桶,修好一个bug,又来3个bug
2.没有思路.
3.改需求,要求重写,修改起来很麻烦
所以,在大多数开发项目时,都在写bug。
养成一个好习惯:
1.先做好架构分析,框架设计:我要做个项目,适合用么语言,框架,数据库,操作,底层设计,中间件。
2.做好项目的分成,拆分: 你的项目有什么组成,可以拆成多少个模块。
3. 整理好思路,看雷同网页,可以去跑路。
4.写一份readme.md文档→说明文档→项目使用说明。
5.脑海中有一个实现后的效果印象。
项目文件来规范
命名规则→符合标识符规范 →顾名思义
api→应用程序编程接口→专门处理用户的业务逻辑相关的功能,存钱和取钱.
user_i.py(i>interface)→用户的业务逻辑.
bank_i.py→ 银行的业务逻辑.
confing→配置信息(数据库账号,python版本信息,数据储存配置)
setting.py→项目配置的意思、.
core→核心文件,写用户可视化(View层)
src.py →功能文件
DB→database(数据库),储存数据或操作数据,因为我们没有学习数据库,现在用json文件保存.
dbHandle.py→数据处理层,责数据增删改查 user_data→保存用户数据的文件夫。
lib→功能模块→把-至些功能插件写进来,装饰器
common.py→项目会用的功能都会在这里,生成验证码。密码加密判断是否登陆.
run.py→运行文件
readmy.md→项目的说明文档