一、软件开发流程(重要)

​ 我们作为一个后端,虽然一般情况下只专注自己的那一部分事情,但是有时候小公司,人员架构没那么细化,或者老板就是想省钱少招点人,我们就得大致熟悉软件开发流程,知道上司、其他同事在干嘛

​ 重点词汇:原型图、分任务开发、联调

流程

# 真正的企业里软件从立项到交付整个过程
-立项:确定公司要开发这个软件 公司高层
-软件来源
-产品经理设计出来的----》互联网项目 互联网公司
-用户(医院,政府部门,企业。。) 传统软件公司
-需求分析
# 互联网项目
-需求调研和分析:产品经理设计出来的
# 传统软件
-需求调研和分析:市场人员跟客户对接
-产品经理 ,开发人员跟客户对接,生成需求文档
-原型设计:产品经理
-懂业务
-画出原型图: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永久换源、虚拟环境、路飞项目开始的更多相关文章

  1. 软件开发流程 Software development process

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

  2. Thrift项目Server端开发流程

    Thrift项目Server端开发流程 首先,先了解工程中所有包的功能(见下图) 该图为用户中心项目的目录结构,以下依次介绍. 1.     src/main/java com.framework:该 ...

  3. Vue 框架-12-Vue 项目的详细开发流程

    Vue 框架-12-Vue 项目的详细开发流程 首先,如果你还不了解 Vue 脚手架怎么搭建? 默认的环境中有哪些文件? 文件大概是什么作用? 那么,您要先查看之前的文章才有助于你理解本篇文章: Vu ...

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

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

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

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

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

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

  7. vue项目搭建和开发流程 vue项目配置ElementUI、jQuery和Bootstrap环境

    目录 一.VUE项目的搭建 1. 环境搭建 2. 项目的创建和启动 二. 开发项目 1. 配置vue项目启动功能 2. 开发vue项目 (1)项目文件的作用 (2)vue项目开发流程 (3)vue项目 ...

  8. [转]3天搞定的小型B/S内部管理类软件定制开发项目【软件开发实战10步骤详解】

    本文转自:http://www.cnblogs.com/jirigala/archive/2010/10/07/1845275.html 2010-10-07 21:39 by 通用C#系统架构, 5 ...

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

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

  10. pip&conda 换源

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

随机推荐

  1. kali linux生成密码字典方法

    kali linux生成密码字典方法 所谓的密码字典主要是配合密码破解软件所使用,密码字典里包括许多人们习惯性设置的密码.这样可以提高密码破解软件的密码破解成功率和命中率,缩短密码破解的时间.当然,如 ...

  2. playwright 实现高亮、is_visible 等源码修改

    一. 前言 高亮是什么? 在ui自动化中可以执行js来让某个页面元素高亮,比如背景颜色.字体颜色.边框颜色等发生改变,以此更加方便执行的时候点了哪一步操作.(如果有不清楚怎么实现的可以转到我的介绍se ...

  3. ENCOURAGE研究: 病情中度活动RA获得深度缓解后有望实现停药

    标签: 类风湿关节炎; TNF拮抗剂; 维持期减停 病情中度活动的RA患者在获得深度缓解后有望实现停用生物制剂 电邮发布日期: 2016年2月3日 病情中度活动的类风湿关节炎(RA)患者通过传统DMA ...

  4. Chai 3D之创建项目

    推荐:将 NSDT场景编辑器 加入你的3D开发工具链 1.构建应用目录   我们将设置使用 CHAI3D 构建应用程序所需的基本目录结构和文件.根据您可能要使用的显示器或 GUI 库,为 FreeGL ...

  5. Spring MVC + Webapp 项目显示 404 错误

    这是因为 Tomcat 版本,把 Tomcat10 换成 Tomcat9 就可以解决这个问题了.下面是我正在做的一个 Spring MVC 入门案例,因为 Tomcat 10,DispatcherSe ...

  6. Linux:find 指令的选项 +n、-n、n

    描述 find 指令查找文件时可以通过时间来锁定或缩小搜查范围.其中需要利用到文件的三个时间?:Access Time(atime).Modify Time(mtime) 和 Change Time( ...

  7. pytorch学习笔记一之张量

      1. 张量¶   1.1. 概述¶   张量(tensor)是pytorch中的一种较为基础的数据结构,类比于numpy中的ndarrays,在pytorch中,张量可以在GPU中进行运算   通 ...

  8. ELK 一些截图

    一.背景 集成环境中,多台服务器会存在多份日志,不方便查阅 · 二.原理 三.配置原理 Logstash是安装在服务器上的,相当于读取本地日志,然后输出到ES服务器,kibana会从ES服务器读取数据 ...

  9. LeetCode-540 有序数组中单一元素

    来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/single-element-in-a-sorted-array 题目描述 给你一个仅由整数组成的 ...

  10. B树,B-树,B+树和B*树

    B树和B-树(平衡多路查找树)规则:1.排序方法:所有结点关键字按递增次序,并遵循左小右大的原则.2.子结点数:非叶子结点的子结点数>1且<=M且M>=2,空树除外(M阶代表一个树的 ...