0

Go项目实战之需求分析【开源十年项目第2节】

 2 years ago
source link: https://studygolang.com/articles/35549
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Go项目实战之需求分析【开源十年项目第2节】

kaiyuan10nian · 1天之前 · 238 次点击 · 预计阅读时间 2 分钟 · 大约8小时之前 开始浏览    

    昨天迸发了这个想法之后就立刻记录下来并通过计算机自学平台这个公众号投了出去,因为目前对我来说最大的阻碍不是技术问题OR精力投入问题,而是能不能坚持下去的问题。

    以前也立过很多flag,最后都没有坚持下去。比如:我记单词用的百词斩,每天坚持打卡50个单词,但是在我坚持了173天的时候就断掉了。今天我还认真的去分析了断掉的原因。就是没有形成自我督促,因为断不断都是我自己的事,别人也不知道你坚持了多久,断就断了感觉也无所谓。所以这次我没给自己留一点后路。既然要坚持就逼自己一把,直接投出去把自己在这个圈子的脸面赌出去。如果后面坚持不下去了,也就别打算继续在这个圈子混了。

    今天主要做的就是一些准备工作,首先是语言的选择上。后端编程我打算使用Golang,之所以不选择自己最熟悉的JAVA就是因为前面我说过的那句话,我要以初学者的心态去做这个项目。Golang对于我来说虽然不陌生,但毕竟没有正式去承接过大型项目。前端打算选VUE,同理选它是因为我没用过。所以在后面的项目中如果哪位大佬发现我的写法或者用法不对请直接指出。

    下面简单说说这个项目吧,昨天只是提出了项目的目的,没有详细说项目的实际内容。其实我也不知道这个项目都有哪些东西,所以我在前面说过,有什么东西大家说了算。我也是想到哪里就写到哪里。总之一个原则,把所有能想到的用法都用代码去实现一遍并寻找更优的解决方案,然后开源供大家参考。

    比如说分布式存储,每一步是怎么做的,是怎么实现的海量文件存储的,如何快速访问所存文件,代码怎么编写的等等,我们共同一步一步去实现它。或者更简单点的就是一个注册登录模块是怎么实现的,为了满足各种需求我们还可以怎么扩展等等。由简入繁再拆分细化去实现它。

下面就是开发前的一些准备,

1)下载安装并激活Goland

2)安装MySQL

3)梳理下一阶段的需求

4)设计当前阶段数据库表结构

    这一个阶段的工作是实现一个简单的博客功能,后台可以注册登录并编辑文章,前端用来展示文章列表和文章内容。

    这个阶段之所以选择实现这么一个功能是因为我想先做个《开源十年》的网站出来,以后这个项目的更新都搬过去,一个真正的从零开始的并正常运行的项目更有说服力。这样一来面向的受众会更多更广泛且不给自己的懒惰留一丁点的退路。

下面是本阶段的思维导图:

v2-4a3e0b9b95be4d0c77031e293da53dfa_1440w.jpg

v2-4a3e0b9b95be4d0c77031e293da53dfa_1440w.jpg

前端展示分两部分

1)Web端页面展示

2)H5手机端页面展示

后端两个模块

1)账号管理模块

2)文章管理模块(增删查改)

文章相关数据字段

标题、内容、作者、创建时间、更新时间

账号相关数据

账号、密码、手机号、昵称、创建时间

目前库表设计

v2-70616294679c46fca081420f67eeaaa0_1440w.jpg

功能API设计

账号注册 v1/account/register

账号登录 v1/account/login

密码修改 v1/account/update

文章列表 v1/blog/list

文章详情 v1/blog/detail

创建文章 v1/blog/create

修改文章 v1/blog/update

    一个简单的博客基础骨架就出来了,下一步就是代码的编写了。目前想到的就这些,没有必要在这个阶段纠结太多,项目中很多问题都是在开发过程中发现的,到时候再去一一应对。如果在这个阶段浪费太多时间,就会导致整个项目的难以推进。

    好了,暂时更新这么多吧,祝各位晚安!

    开源十年项目的更新首发于公众号:计算机自学平台,有兴趣的小伙伴可以持续关注,并欢迎各位加我的微信跟我一起完成并推动项目的发展。


有疑问加站长微信联系(非本文作者)

280

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK