CLI 命令行实用程序开发实战 - Agenda

项目简介

agende项目是一个CLI程序,可以进行用户管理,会议管理等遍历操作。按照本次作业的要求,实现其中的两条指令——register和log in。

开发环境

  • Centos 7
  • go 1.11.5 linux/amd64

实现过程

  1. 安装cobra
    首先使用命令安装sys和text项目:
	git clone https://github,com/golang/text
	git clone https://github.com/golang/sys

之后使用命令:

	go get -v github.com/spf13/cobra/cobra
	go install github.com/spf13/cobra/cobra

就可以在go文件下的bin文件中找到cobra文件。

  1. 使用cobra进行项目的创建
    使用命令:
	cobra init agenda --pkg-name .

创建好文件夹,在go-online上需要根据pwd后的结果将.更改为/src/后的内容,生成cmd文件夹,LICENSE和main.go。
其中main.go的内容如下:CLI 命令行实用程序开发实战 - Agenda_第1张图片
之后使用命令在cmd文件夹中创建相应的命令go文件:

	cobra add register
	cobra add login

可以看到cmd文件夹中多了register.go文件和login.go文件。

  1. 文件实现
  • User.go
    进行用户User的所含的变量声明,包括Name,Password,Email,Phone:
    在这里插入图片描述
  • EntityFunc.go
    进行用户注册时的判断,通过对当前已注册用户json文件的读取遍历进行: CLI 命令行实用程序开发实战 - Agenda_第2张图片
  • userrw.go
    进行用户注册以及登录过程中的文件读写,进行用户的获取和存储、当前登录用户的获取和存储,以及文件有效性的判断:
    CLI 命令行实用程序开发实战 - Agenda_第3张图片
  • login.go
    登录文件,需要根据用户输入的username和password进行判断,同时需要判断该用户是否已经登录。
    CLI 命令行实用程序开发实战 - Agenda_第4张图片
  • register.go
    注册文件,需要在用户输入用户名和密码有效的情况下进行邮箱和电话号码的录入,同时需要判断该用户名是否已经被注册。
    CLI 命令行实用程序开发实战 - Agenda_第5张图片

最终结果

1.在go-online上建立好相应的项目结构并填入文件,调整好import路径:
CLI 命令行实用程序开发实战 - Agenda_第6张图片
2.编译agenda.go文件,生成agenda文件:
编译agenda.go文件
3.进行第一个用户注册:
CLI 命令行实用程序开发实战 - Agenda_第7张图片
4.进行相同用户注册:
在这里插入图片描述
5.进行第一个用户登录:
在这里插入图片描述
6.进行相同用户登录:
在这里插入图片描述

go-online分享链接:http://139.9.57.167:20080/share/bmoqhbu76kvmo1a886sg?secret=false

你可能感兴趣的:(服务计算)