软件开发流程-路飞项目需求- pip永久换源-虚拟环境-路飞项目前后端创建-包导入-后端项目调整目录

学习建议:
# 技术类博客
cnblogs
csdn(不推荐)
掘金
思否 # 找工作
boos直聘
拉钩
智联
猎聘
脉脉:职场交流
-部门内推 领导

今日内容概要

  • 1 软件开发流程
  • 2 路飞项目需求
  • 3 pip永久换源
  • 4 虚拟环境
  • 5 路飞项目前后端创建
  • 6 包导入
  • 7 后端项目调整目录

今日内容详细

1 软件开发流程

# 真正的企业里从软件立项到交付整个过程
立项:确定公司要开发这个软件 公司高层
软件来源
产品经理设计出来的---> 互联网项目 互联网公司
用户(医院 征服部门 企业) 传统软件公司 需求分析
# 互联网项目
需求调研和分析:产品经理设计出来的
# 传统软件
需求调研和分析:市场人员跟客户对接
产品经理 开发人员跟客户对接 生成需求文档 原型设计:产品经理
懂业务
画出原型图:app 网页款 分任务开发
UI设计
根据原型图设计 初图
前端团队
前端拿着切图写代码(pc 小程序 移动端)
mock数据:搞假数据 先把功能开发出来
后端团队(我们后端从这里开始)
组里开会 需求文档和原型图 设置后台
架构 数据库设计
分任务开发:用户 商品板块
测试(质量控制部)
普通功能测试
接口测试
压力测试 jmter
自动化测试(python)
联调测试 项目上线(运维) 持续维护项目 # 作为后端开发 公司里开发的流程
开新项目 先开会 设计技术选型 数据库设计
产品 原型图做好了
老大在项目管理平台(禅道类似)分配任务给我
进入到管理平台就能看到任务 相关功能的原型图
需求 原型图 实现的效果
开发---有不明白的需求 找产品经理对接---> 自测
提交到版本仓库(git svn)
管理平台点完成
所有都开发完了分支合并
跟前端联调
发版 如果是老项目
老大在项目管理平台(禅道类似)分配任务给我
-进入到管理平台就能看到任务,相关功能的原型图
-需求,原型图,实现的效果
-开发---有不明白的需求,找产品对接----》自测
-提交到版本仓库(git,svn) -所有都开发完了,分支合并
-跟前端联调
-发版

2 路飞项目需求

# 关于路飞项目
商城类
知识付费项目
前后端分离
主站vue
后台管理 simpleui # 需求
首页功能
首页轮播图
推荐课程
用户功能
用户名密码登录
手机号验证码登录
发送手机验证码
验证手机号是否注册过
注册接口
查看用户信息
修改用户信息
课程列表功能
课程列表接口 课程列表展示
排序 过滤 分页
课程详情
课程详情接口
视频播放功能
视频托管(第三方 自己平台) 文件托管
下单功能
支付宝支付:生成支付链接 付款 回调修改订单状态
购买成功功能

3 pip永久换源

# pip install django
第三方开发者 开发了第三方模块 把模块打包传到了pypi上
根据名字 把这个打包好的模块下载下来
在公司中可能不能上外网
xx.whl(公司自己的pip库) 文件提前下好 再安装---> pip install 路径/xx.wsl
已经有项目 模块装完了 想把这个项目所有的模块导出---> 导入到别的项目
可以顺利上外网
下载会很慢 因为在国外
国内有镜像站 建议用阿里云 # 配置本地镜像站为阿里云 以后只要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 # 如果你想写个模块被库录用 你可以注册pypi账号 打包好 setup.py 传到pypi上 以后别人就可以搜索到你的模块并下载
pip install 你的模块 就可以下载
如果有兴趣,可以把自己写的模块,传上去

4 虚拟环境

# 虚拟环境是什么?
有个系统环境 安装的python3.8 装模块 都装在解释器文件夹的 Lib\site-packages
现在有两个django项目 一个基于django3写的 一个基于django2写的
把这两个项目都打开 同时开发
每个项目都用自己独立的环境 装的模块互不影响
两种解决方案:
Virtualenv
pipenv # 如何安装和配置
1 安装两个模块
pip install virtualenv # 虚拟环境是它
pip install virtualenvwrapper-win # 对虚拟环境的加强 以后只需要简单的命令就可以使用和创建虚拟环境 2 配置虚拟环境管理器工作目录
在环境变量中新建:WORKON_HOME: D:\Virtualenvs
在D盘创建文件夹 以后新建的虚拟环境 都会在这个文件夹下 3 去向python3的安装目录=> Scripts文件夹=> virtualenvwrapper.bat=> 双击 # 如何创建和使用虚拟环境
-创建并进入到虚拟环境: 创建一个虚拟环境叫luffy,会放在D:\Virtualenvs
mkvirtualenv -p python3 luffy
-cmd 窗口中带着虚拟环境名字,表示在虚拟环境中,以后安装的所有模块,都是给虚拟环境安装的 -退出虚拟环境
deactivate -查看有哪些
workon
-进入虚拟环境
workon luffy -删除虚拟环境
rmvirtualenv 虚拟环境名称 # 本地有了虚拟环境,pycharm使用虚拟环境
-已有项目,配置虚拟环境如何做
-新建项目,使用已有虚拟环境
django-admin
pycharm创建 # 了解 使用pycharm创建虚拟环境
-新建项目,新建虚拟环境

5 路飞项目前后端创建

# 创建路飞后端
创建路飞项目前 虚拟环境中先装好 django3.2.2
选中虚拟环境 起名叫luffy_api # 前端项目创建
vue create luffy_city

6 包导入

# 模块和包的区别
模块就是一个py文件
包是一个文件夹下有__init__.py 里面有很多py文件 以后下载第三方包 或者自己写包 如何导入 # python 导入包
pycharm会把项目路径加入到环境变量 命令行中不会加入
from的路径 需要从环境变量开始
安装的第三方模块 都在环境变量
内置模块 os sys 也在环境变量中 可以直接导入
在包内部 推荐使用相对导入
一旦使用相对导入 该文件 就不能以脚本形式运行了(不能右键运行)
在同一个目录下的推荐使用相对导入
不同目录下的推荐使用绝对导入

7 后端项目调整目录

# 调整目录后成
"""
├── luffy_api
├── logs/ # 项目运行时/开发时日志目录 - 包
├── manage.py # 脚本文件
├── luffy_api/ # 项目主应用,开发时的代码保存 - 包
├── apps/ # 开发者的代码保存目录,以模块[子应用]为目录保存 - 包
├── libs/ # 第三方类库的保存目录[第三方组件、模块] - 包
├── settings/ # 配置目录 - 包
├── dev.py # 项目开发时的本地配置
└── prod.py # 项目上线时的运行配置
├── urls.py # 总路由
└── utils/ # 多个模块[子应用]的公共函数类库[自己开发的组件]
└── scripts/ # 保存项目运行时的脚本文件,小的测试脚本 - 文件夹,不提交到git上
""" # 调整后运行不了
-原因是 找不到配置文件了---》django项目运行,第一步就要加载配置文件
-开发阶段:python manage.py runserver ---->找不到配置文件就报错了---》改manage.py
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffy_api.settings.dev')
-上线阶段:wsgi运行----》
asgi.py
wsgi.py
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffy_api.settings.prod') -项目能运行 - 创建app
-python manage.py startapp home 命令在哪执行,app就创建在哪
-cd 到 apps路径下创建app
-python ../../manage.py startapp home - 注册app
-首先在app下的apps.py 中修改name name = 'luffy_api.apps.home' -以后想直接写app名字,所以要吧apps的路径加入到环境变量,加载配置文件的一开始
-在配置文件中把apps和小路飞路径加入到环境变量
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
# 把BASE_DIR也加入到环境变量,以后直接从小路飞开始导起即可
sys.path.insert(0, BASE_DIR) 导入模块 编辑器爆红 爆红不一定是真的错
把加入的到环境变量的路径 右键 作为source root
from pathlib import Path
import os
import sys # Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent # 将项目文件加入系统环境变量 方便使用
sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
sys.path.insert(0, BASE_DIR) INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'home',
'user'
]

软件开发流程-路飞项目需求- pip永久换源-虚拟环境-路飞项目前后端创建-包导入-后端项目调整目录的更多相关文章

  1. 软件开发流程 Software development process

    软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法.软件的总体结构设计和模块设计.编程和调试.程序联调和测试以 ...

  2. 软件开发杂谈之从需求到上线---valen

    背景 IT已经成为当代企业必不可少的竞争手段,从无到有到标配,可以说以后不懂IT的就是文盲这句一点也不过,而软件开发是个复杂工程,零零碎碎各种理论工具和技巧,一言难尽. 本文意在言简意赅,简述软件开发 ...

  3. Atitit.软件开发的非功能性需求attilax 总结

    Atitit.软件开发的非功能性需求attilax 总结 1. 运行环境约束:用户对软件系统运行环境的要求. 1 2. 兼容性 2 3.   7.6 数据库 database (imp by ati) ...

  4. Atitit.软件开发的非功能性需求attilax 总结At

    Atitit.软件开发的非功能性需求attilax 总结 1. 运行环境约束:用户对软件系统运行环境的要求. 1 2. 兼容性 2 3.   7.6 数据库 database (imp by ati) ...

  5. SoC的软件开发流程,主要包含一些Linux下的操作命令

    该笔记主要记录SoC的软件开发流程,主要包含一些Linux下的操作命令 1. 编写design file .c .h 2. 编写makefile    可执行文件名,交叉编译环境,compile fl ...

  6. 今天学弟问我pip如何永久换源?

    pip如何永久换源 临时使用 我们在使用Python开发的时候,经常要下载第三方模块,最常用的方式就是直接pip install 模块名,但是默认是使用国外的源,从pypi仓库中查找目标模块,不管是网 ...

  7. pip 安装更新卸载 pip/yum换源

    pip安装:sudo apt-get install python3-pip pip更新:sudo pip3 install --upgrade pip pip卸载:sudo apt-get remo ...

  8. 一般软件开发流程和BBS表设计

    项目开发流程 需求分析 架构师+产品经理+开发组组长 和客户公司谈需求之前 ,事先需要想一下这个项目要怎么做 里面的坑点提前想好比较简单的解决方案 在跟客户谈的时候有意识的引导客户朝你已经想好的方案上 ...

  9. pip&conda 换源

    PIP 各种可用源 清华源:https://pypi.tuna.tsinghua.edu.cn/simple 临时指定源 pip install -i https://pypi.tuna.tsingh ...

  10. pip & conda 换源

    conda换源方法具体参考清华大学镜像站Anaconda 镜像使用帮助 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn ...

随机推荐

  1. C#获取html标签内容的方法

    C# 获取html标签内容的方法: /// <summary> /// 获取html网页标签内容 /// 例如:<span class="index_infoItem__E ...

  2. Dapr v1.10.0 版本已发布

    Dapr是一套开源.可移植的事件驱动型运行时,允许开发人员轻松立足云端与边缘位置运行弹性.微服务.无状态以及有状态等应用程序类型.Dapr能够确保开发人员专注于编写业务逻辑,而不必分神于解决分布式系统 ...

  3. 记一次google手机恢复出厂设置到root抓包全过程

    前言 开始因为手机密码忘记了,不想重置,不然找店家root的工具都没了,自己也不会google root的操作,之前听说还挺麻烦的.操作了半天好了,确实是挺麻烦的,做个记录. 一.恢复出厂设置 还原教 ...

  4. JZOJ 5353. 【NOIP2017提高A组模拟9.9】村通网

    题目 为了加快社会主义现代化,建设新农村,农夫约(Farmer Jo)决定给农庄里每座建筑都连上互联网,方便未来随时随地网购农药. 他的农庄很大,有N 座建筑,但地理位置偏僻,网络信号很差. 一座建筑 ...

  5. 在windows环境中如何批量添加IP地址 and 求助 : 在CMD命令行中配置IP地址, 提示 : 未能配置DHCP服务, 接口可能已经断开, 系统找不到指定的文件.

    转载csdn: 在windows环境中如何批量添加IP地址_user_yuewu的博客-CSDN博客_windows批量添加ip 求助 : 在CMD命令行中配置IP地址, 提示 : 未能配置DHCP服 ...

  6. Eureka高可用集群服务端和客户端配置

    微服务应用中,生产环境一般都需要保障服务注册中心的高可用!高可用也分好几个等级,例如:同数据中心(可用Zone区)高可用-->同地域(Region)跨数据中心(可用Zone区)高可用--> ...

  7. css background背景透明

    background: transparent; background: rgba(0, 0, 0, 0.8);

  8. form表单enctype扩展

    enctype就是encodetype就是编码类型的意思. multipart/form-data是指表单数据有多部分构成,既有文本数据,又有文件等二进制数据的意思. 需要注意的是:默认情况下,enc ...

  9. Educational Codeforces Round 137 (Rated for Div. 2) - E. FTL

    DP Problem - E - Codeforces 题意 有个 BOSS 有 \(H\;(1<=H<=5000)\) 血量,\(s\) 点防御 有两种武器可用攻击 BOSS,伤害分别为 ...

  10. 周练3(php反序列化)

    serialize()函数 $s = serialize($变量); //该函数将变量数据进行序列化转换为字符串 file_put_contents('./目标文本文件', $s); //将$s保存到 ...