定义阶段主要进行可行性分析和需求分析。
开发阶段主要是进行概要设计,详细设计,实现,测试。
运行维护阶段主要是将软件工程交付给客户或上线运营,以及维护软件工程的正常工作状态和版本更新。
主流的开发语言有很多,比如C/C++,Java,Python。
本系统采用:Python
常用的Python开发工具为Python3.8,Pycharm,Anaconda。
本系统采用:Pycharm
分析:
该系统是一个带界面的应用程序,进行人脸签到并能够记录签到的信息。要有界面就需要工具进行界面开发,选择采用pyqt5designer进行界面设计。
(一)签到界面的设计
1.pyqt5designer的使用方法
①在Pycharm建立好的项目工程中,点击界面下面的terminal,在输入命令的界面中,输入pyqt5designer.exe,然后回车,就会出现qtdesigner的界面
②还可以在该项目的解释器的目录中找到script,打开该目录后,找到pyqt5designer.exe,点击运行它也可以打开。
2. 界面的设计
①创建一个窗体
窗体的类型有很多中类型,这里我们选择MainWindow类型
②窗口设计
菜单栏的设计
主体设计
③运行窗口
由于pycharm无法直接运行ui文件,需要进行文件的转换
ui转换为py文件:pyuic5 ui文件 -o py文件
例:pyuic5 MainWindow1.ui -o MainWindow1.py
通过生成的py文件,发现生成的窗口类并没有继承基础窗口类,缺少基础部件
解决方法:建立一个新的窗口类,让其成为一个完整的窗口类
新建立窗口类代码:
from MainWindow1 import Ui_MainWindow
#导入窗口的基础类
from PyQt5.QtWidgets import QMainWindow,QApplication
import sys
'''
子类,继承Ui_MainWindow与QMainWindow
Ui_MainWindow:
包含是界面的设计,窗口中的窗口部件
QMainWindow:
包含是整个界面窗口,窗口的操作
mywindow:
完整的窗口类
'''
class mywindow(Ui_MainWindow,QMainWindow):
#初始化函数
def __init__(self,parent=None):
super(mywindow,self).__init__()
self.setupUi(self)#创建界面内容
#创建应用程序对象
app=QApplication(sys.argv)
#创建窗口
ui=mywindow()
#显示窗口
ui.show()
#应用执行
app.exec_()
#退出
sys.exit(0)
通过第一天的学习,了解到一个软件工程需要经历三个阶段。掌握到该如何新建一个虚拟环境,如何利用qtdesigner进行简单的界面设计,如何将ui文件转换成py文件等。总的来说,收获满满。