路飞项目day01 软件开发流程、PIP永久换源、虚拟环境、路飞项目开始
一、软件开发流程(重要)
我们作为一个后端,虽然一般情况下只专注自己的那一部分事情,但是有时候小公司,人员架构没那么细化,或者老板就是想省钱少招点人,我们就得大致熟悉软件开发流程,知道上司、其他同事在干嘛
重点词汇:原型图、分任务开发、联调
流程
# 真正的企业里软件从立项到交付整个过程
-立项:确定公司要开发这个软件 公司高层
-软件来源
-产品经理设计出来的----》互联网项目 互联网公司
-用户(医院,政府部门,企业。。) 传统软件公司
-需求分析
# 互联网项目
-需求调研和分析:产品经理设计出来的
# 传统软件
-需求调研和分析:市场人员跟客户对接
-产品经理 ,开发人员跟客户对接,生成需求文档
-原型设计:产品经理
-懂业务
-画出原型图:app,网页款
-分任务开发
-UI设计
-根据原型图设计 切图
-前端团队
-前端拿着切图写代码(pc,小程序,移动端)
-mock数据:搞假数据,先把功能开发出来
-后端团队(我们,甚至只是极小极分化的一个后端是我们)
-组里开会,需求文档和原型图,设计后台
-架构,数据库设计
-分任务开发:用户,商品板块
-测试(质量控制部)
-普通功能测试
-接口测试
-压力测试,jmeter
-自动化测试
-联调测试
-项目上线(运维)
-持续维护项目
# 作为后端开发,公司里开发的流程
-开新项目,先开会,设计技术选型,数据库设计
-产品,原型图做好了
-老大在项目管理平台(禅道)分配任务给手下
-进入到管理平台就能看到任务,相关功能的原型图
-需求,原型图,实现的效果
-开发---有不明白的需求,找产品对接----》自测
-提交到版本仓库(git,svn)
-管理平台点完成
-所有都开发完了,分支合并(一般领导做)
-跟前端联调
-发版
-如果是老项目
-老大在项目管理平台(禅道)分配任务给我
-进入到管理平台就能看到任务,相关功能的原型图
-需求,原型图,实现的效果
-开发---有不明白的需求,找产品对接----》自测
-提交到版本仓库(git,svn)
-所有都开发完了,分支合并
-跟前端联调
-发版
二、路飞课程商城项目
需求分析
这是一个在线购买、观看视频的知识付费商城项目
要用到的大框架:
前端:vue2
后端:django drf
后台管理:simpleui
具体有哪些功能:
首页:
1.首页展示一条导航栏可以点击查看师资力量、查看python课、查看go等等的课
2.下方轮播图,展示课程封面
3.根据课程(大类)的总点击数推荐课程
用户功能:
1.登录注册
2.手机号码验证登录
3.是否商城vip——全课程9折,新上课程95折
4.用户能改密码、改昵称、邮箱等
5.用户能评论视频,能删除自己的评论
课程列表功能:
1.课程分类,排序,展示
2.排序、过滤、分页
点击课程观看:
1.课程详情接口
2.在线视频播放(非购买用户5分钟试看)
3.页面评论功能
下单功能
1.添加购物车
2.结算购物车,调用支付宝接口支付
3.购买成功后和用户绑定,用户可以永久观看
三、pip永久换源
因为pipy服务器在国外,我们不改镜像源去下资源非常卡,虽然我们已经学会了自己加国内镜像源或者给Pycharm下载换源,但是如果能给不管cmd还是pycharm都可以直接用到设置好的镜像源那就更方便了。
查看目前pip的源
cmd输入:
pip config list
换源教程
常见的国内源有以下几种:
清华:https://pypi.tuna.tsinghua.edu.cn/simple/
阿里云:http://mirrors.aliyun.com/pypi/simple/
豆瓣:http://pypi.douban.com/simple/
中国科学技术大学 :https://pypi.mirrors.ustc.edu.cn/simple/
# 配置本地镜像站为阿里云,以后只要pip install 就是去阿里云下载
- 1、文件管理器文件路径地址栏敲:%APPDATA% 回车,快速进入 C:\Users\电脑用户\AppData\Roaming 文件夹中
-2、新建 pip 文件夹并在文件夹中新建 pip.ini 配置文件
-3、新增 pip.ini 配置文件内容
[global]
index-url = https://mirrors.aliyun.com/pypi/simple
[install]
use-mirrors =true
mirrors =https://mirrors.aliyun.com/pypi/simple
trusted-host =mirrors.aliyun.com
-4.换源后再次去查看pip目前的源

四、虚拟环境
以前我们也学过虚拟环境,也知道以后写项目,基本都是新开一个干净的环境,需要啥模块再下以节省资源容量,节省打包大小,这样就不会出现有个模块用不了,又不知道删除原本环境里的啥啥啥。
达到多项目独立环境,同时开发
https://www.cnblogs.com/wznn125ml/p/16980743.html#autoid-h2-2-0-0

1.新的解决方案
两个模块
Virtualenv
pipenv
先安装
安装模块
pip3 install virtualenv # 虚拟环境是它
pip3 install virtualenvwrapper-win # 对虚拟环境的加强,
后配置
这个配置完后,以后创建的虚拟环境,都会被丢到Virtualenvs文件夹中,一个虚拟环境一个包
1.新增一对环境变量的键值对,建议加给用户
WORKON_HOME: D:\Virtualenvs
2.去D盘建一下文件夹
Virtualenvs
3.最后去自己的解释器的目录,去双击打开Scripts中的virtualenvwrapper.bat
来使用
1.创建一个虚拟环境
(记得把前面打开过的cmd关了)
mkvirtualenv -p python38 luffy #解释器版本按自己的来啊
2.创建后cmd自动更新为虚拟环境下的cmd准备模式
3.退出虚拟环境
deactivate
4.再次进入虚拟环境
workon 虚拟环境包名
5.删除虚拟环境
rmvirtualenv 虚拟环境包名
2.总结
以后一定要分清,工作环境在哪里,模块下载后会被装到哪里
Pycharm也可以用,不过还是推荐命令行的那种创建虚拟环境
五、路飞项目开始
1.先创建好前后端项目
# 创建路飞后端
-创建路飞项目前,虚拟环境中先装好 django 3.2.2
-选中虚拟环境,起名叫luffy_api
# 前端项目创建
建议和后端项目放同一层级目录,好找一点,注意windows cmd不能拿着一个路径直接去CD,得先进入大盘符
vue create luffy_city
2.开始调整后端项目目录
以前我们都是使用一个app,如果我们写真正的项目,不可能就一两个app,app一多,我们看目录结构就眼花了,所以得做一下整理
"""
├── luffy_api
├── logs/ # 项目运行时/开发时日志目录 - 包
├── manage.py # 脚本文件
├── luffy_api_in/ # 项目主应用,开发时的代码保存 - 包
├── apps/ # 开发者的代码保存目录,以模块[子应用]为目录保存 - 包
├── libs/ # 第三方类库的保存目录[第三方组件、模块] - 包
├── settings/ # 配置目录 - 包
├── dev.py # 项目开发时的本地配置
└── prod.py # 项目上线时的运行配置
├── urls.py # 总路由
└── utils/ # 多个模块[子应用]的公共函数类库[自己开发的组件]
└── scripts/ # 保存项目运行时的脚本文件,小的测试脚本 - 文件夹,不提交到git上
"""
3.目录改动后要做的
settings动了要重新配置
如果是自己开发阶段(未上线),改manage.py ,run server性能比较低,后期用uwsgi上线
如果是上线阶段,去改asgi.py和wsgi.py

然后去改一下用的多的django启动按钮配置

创建、注册app
创建随意,在外面创建了移动入apps可以,cd进去apps再创建也行
--------------------------------
注册
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'lufei_api.apps.home'
]
也要注意下,app下的apps.py 中,name 要='lufei_api.apps.home'
把小路飞这一层设置为根路径
dev中
import os
import sys
BASE_DIR = Path(__file__).resolve().parent.parent #这个就是小路飞的路径,我们可以直接加到环境变量中去
path=os.path.join(BASE_DIR,'apps')
sys.path.append(path)
sys.path.append(BASE_DIR)
# 如果设置了小路飞根路径,我们就不用上面的name ='lufei_api.apps.home' 这些了

路飞项目day01 软件开发流程、PIP永久换源、虚拟环境、路飞项目开始的更多相关文章
- 软件开发流程 Software development process
软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法.软件的总体结构设计和模块设计.编程和调试.程序联调和测试以 ...
- Thrift项目Server端开发流程
Thrift项目Server端开发流程 首先,先了解工程中所有包的功能(见下图) 该图为用户中心项目的目录结构,以下依次介绍. 1. src/main/java com.framework:该 ...
- Vue 框架-12-Vue 项目的详细开发流程
Vue 框架-12-Vue 项目的详细开发流程 首先,如果你还不了解 Vue 脚手架怎么搭建? 默认的环境中有哪些文件? 文件大概是什么作用? 那么,您要先查看之前的文章才有助于你理解本篇文章: Vu ...
- SoC的软件开发流程,主要包含一些Linux下的操作命令
该笔记主要记录SoC的软件开发流程,主要包含一些Linux下的操作命令 1. 编写design file .c .h 2. 编写makefile 可执行文件名,交叉编译环境,compile fl ...
- 今天学弟问我pip如何永久换源?
pip如何永久换源 临时使用 我们在使用Python开发的时候,经常要下载第三方模块,最常用的方式就是直接pip install 模块名,但是默认是使用国外的源,从pypi仓库中查找目标模块,不管是网 ...
- pip 安装更新卸载 pip/yum换源
pip安装:sudo apt-get install python3-pip pip更新:sudo pip3 install --upgrade pip pip卸载:sudo apt-get remo ...
- vue项目搭建和开发流程 vue项目配置ElementUI、jQuery和Bootstrap环境
目录 一.VUE项目的搭建 1. 环境搭建 2. 项目的创建和启动 二. 开发项目 1. 配置vue项目启动功能 2. 开发vue项目 (1)项目文件的作用 (2)vue项目开发流程 (3)vue项目 ...
- [转]3天搞定的小型B/S内部管理类软件定制开发项目【软件开发实战10步骤详解】
本文转自:http://www.cnblogs.com/jirigala/archive/2010/10/07/1845275.html 2010-10-07 21:39 by 通用C#系统架构, 5 ...
- 一般软件开发流程和BBS表设计
项目开发流程 需求分析 架构师+产品经理+开发组组长 和客户公司谈需求之前 ,事先需要想一下这个项目要怎么做 里面的坑点提前想好比较简单的解决方案 在跟客户谈的时候有意识的引导客户朝你已经想好的方案上 ...
- pip&conda 换源
PIP 各种可用源 清华源:https://pypi.tuna.tsinghua.edu.cn/simple 临时指定源 pip install -i https://pypi.tuna.tsingh ...
随机推荐
- W04 散文周刊 : 重回Emacs
W04 散文周刊 : 重回Emacs 邮箱:ppbhoy@qq.com 博客地址: www.pipihao.com 公纵号:南湖小皮 公告:后面会开始稳定更新 使用Emacs还是有些沉重,我一直将Em ...
- PowerToys 微软效率工具包 使用教程
今天给大家介绍一款 非常实用的微软工具包 里面包含 快捷键的使用 颜色选择器 键盘管理器 屏幕标尺 鼠标实用工具等众多高效工作的功能 还是蛮出彩的 下载 PowerToys⇲ 安装教程 1.双击文件运 ...
- .NET周报 【2月第2期 2023-02-11】
国内文章 SQLSERVER的truncate和delete有区别吗? https://mp.weixin.qq.com/s/wTIeW8rjj3cRzoaQcg2sOw 在面试中我相信有很多朋友会被 ...
- .net 字符串逗号隔开去重
1.本文背景 同时输入/选择多条信息或批量输入/选择多条信息形成一个逗号隔开的字符串集,会出现数据重复的错误情况,产生不必要的脏数据,本文依次收集测试几种有效的去重方法. 2.代码实现 1)方法一:L ...
- Ubuntu下的FTP Servers搭建与连接
1.安装FTP:vsftod sudo apt-get install vsftpd sudo: 使用sudo(super user do)给普通用户赋予权限 不是所有命令都能用sudo执行的,比 ...
- 用ChatGPT,快速设计一个真实的账号系统
hi,我是熵减,见字如面. 用ChatGPT,可以尝试做很多的事情. 今天我们就来让ChatGPT做为架构师,来帮我们设计一个账号系统吧. 我的实验过程记录如下,与你分享. 用户故事 首先,我们从用户 ...
- JZOJ 1090. 【SDOI2009】晨跑
题目 略,luogu上有 解析 一眼费用流 然而怎么建图? 首先我们要挖掘题中的限制条件和性质 一个点只能经过一次 能走的天数最长 满足第二条的条件下走过的路程最短 那么显然是最小费用最大流了 对于后 ...
- 三星为其基于 RISC-V的 Tizen平台移植.NET
最近.NET团队在这篇文章中介绍了对.NET移植的一般政策:https://devblogs.microsoft.com/dotnet/why-dotnet/#binary-distributions ...
- Apache Hudi 负载类Payload使用案例剖析
在 Hudi 中可以根据业务场景为 Hudi 表配置负载类Payload,它用于在更新期间合并同一记录的两个版本.本文将深入了解有效负载类的用途以及可以使用的所有不同方式. 配置:hoodie.dat ...
- PHP实现QQ第三方登录代码
前言: PHP实现QQ快速登录,罗列了三种方法 方法一:面向过程,回调地址和首次触发登录写到了一个方法页面[因为有了if做判断], 方法二,三:面向对象 1.先调用登录方法,向腾讯发送请求,2.腾讯携 ...