GO+VUE+PGSQL-家族管理系统项目结项

经过长达两周的折磨,终于结束了本次数据库课设。在此做个总结,写写心得和感悟。

一、学习历程

先来说说本次课设使用到的技术栈及项目架构:

第一次做网站开发,所以这些东西对我来说简直是耳目一新。但是学计算机最不缺乏的就是学习能力,随着技术的迭代更新,接触新事物新技术应该成为我们的本能习惯,所以面对这些不要慌,做个计划,学就完了。

学习也主要分为三个步骤:了解——>实践——>实战

1、了解:

①直接了解法:

当我们发现了一个新事物并且想要去熟练使用它时,我们第一步就是先要去了解它,去百度、搜狗、CSND、菜鸟教程等网站查找一些相关信息,了解个基本情况,这样才能对项目有个合理规划。比如PG数据库是什么?它有什么和优势,怎么使用?Vue框架是干什么的?什么是前后端分离,这些都是事先要知道的东西,先有个模棱两可的概念没关系,随着学习和实践,自然而然的就能更加深入的理解了。高僧悟道也都是讲究的一个顿悟,也就是厚积薄发。

学习网站:

菜鸟教程 - 学的不仅是技术,更是梦想! (runoob.com)

②对比学习法:

除了直接查找以外,另外一个学习方法就是对比。它能利用你以前学过的知识与当前知识进行对比,能迅速掌握并记住现有知识。这跟树有点像,从一个结点延伸出另一个分支,这棵树就是一个知识体系,每个知识体系相关的结点能再次相连,就形成了一个图,这叫知识网络。这是我个人的一些体会,可能会有写抽象,要是学过数据结构的话应该会更好理解。

还是说说对比,其实就是在已有的知识基础上找不同而已。

学习语言:

比如,我之前学过 C语言,C++,JAVA,Python,C#有了这么多语言基础,再来看Go,就感觉不是很难理解,只不过多了一些go本身的特点,其他语法和java、python很像,就直接拿来用就好了,所以在做项目学习一门语言时,根本不用花费很多时间去深究这个链表怎么写、数据结构怎么表示,会定义变量,会调写函数,这就足够了。

 学习网站:

菜鸟教程 - 学的不仅是技术,更是梦想! (runoob.com)

学习数据库:

数据库也是同理,之前学过Oracle、MySQL,在学学PostGres,理论原理基本相同,那就把语法学会了就够了,什么建库建表语句什么的,会经常使用。不然你去学什么数据库安全管理,什么数据库管理设计,一是时间可能不够,二是,别忘了你只是想做个项目出来,又不是去学很多理论知识去考试。

  学习网站:

菜鸟教程 - 学的不仅是技术,更是梦想! (runoob.com)

学习前后端框架:

所以我第一周的时间主要是花在环境部署和学习后端框架上面,搭建并熟悉项目环境用了一天时间,学习gin+gorm框架用了三天,学习前端框架用了两天多一点,剩下的时间就是在实战,琢磨别人的项目代码是怎么写的。

学习方法是:官方文档+B站视频+敲代码

博客再好不如人家的官方文档权威,毕竟是别人做的,就像母亲了解自己的孩子一样,所以我们想更快掌握就要偷看“妈妈的日记”。最好是按照文档上的代码跟着敲一遍,这样掌握会更加深入。

然后是看视频,视频也是更快更容易学习知识的途径。毕竟用眼去看去模仿比自己看文档要来的快。所以去看视频也是很好的学习途径。

“纸上得来终觉浅,绝知此事要躬行”,看的再多不如手敲一行。所以最重要的就是要练。

就像之前网上很流行的那个梗“输了就是输了,这说明什么呀,小朋友,还得练。”所以,“书山有路勤为径”敲代码还是最主要滴。

数据库连接:

Go基础 · Go语言中文文档 (topgoer.com)

连接数据库 | 入门指南 |《GORM 中文文档 v2》| Go 技术论坛 (learnku.com)

前端框架:

Vue.js (vuejs.org)

Button 按钮 | Element Plus (gitee.io)

视频:

【评论送书】Go语言 Gin+Vue 前后端分离实战 - OceanLearn_哔哩哔哩_bilibili

2、实践:

了解完了就要去实践。“实践是检验真理的唯一标准。”学了一溜十三招不会用有什么用呢?

这又让我想起网络上的一个梗“你很会学吗,会学有个屁用啊,出来做项目,靠的是框架和代码”。

所以将前面的了解和实践结合才是掌握技术的最好办法。

3、实战:

此实战说白了也是在学习,属于“实战型学习”。这一阶段看的就不再是分块的知识点了,这就像一个杂糅,到了期末考试的时候了。考试考的好不好就要看你前面学的扎不扎实了。我是找了一个历届学姐的项目代码,一定是质量比较高的,逻辑思路清晰的那种,不能随便拿过来一个就用。我运气比较好,看的项目代码就全是我能看懂的,就好像考试押中题的感觉,然后复现起来也是驾轻就熟,按照她的代码逻辑,我很快就搭建好了前后端框架,建立好了对应数据库,接着就一顿操作猛如虎,把自己的代码敲出来了,当然其中也有很多细节和坑点,但也都完美解决了,主要是前面掌握的比较好,并且有csdn和百度的帮助下,真是前人种树,后人乘凉,不会的问题和报错很快就能

找到答案。

二、项目分享

gitee链接:

https://gitee.com/Code_Knight319/family-tree-management-system.git

数据库可在后端项目config文件夹中的app.ini中参考sql脚本根据自己所需进行配置。

简单说一下项目部署:

主要参考的文章如下:

(1条消息) 技术栈Golang+PostgreSQL+Vue3.0项目CentOS服务器部署详细步骤记录(上)_「已注销」的博客-CSDN博客

(1条消息) 技术栈Golang+PostgreSQL+Vue3.0项目CentOS服务器部署详细步骤记录(下)_「已注销」的博客-CSDN博客

思路进行简化

前端环境不需要在服务器下载node和vue等环境配置,在前端项目代码中修改访问路径为服务器IP地址:

 然后终端输入指令:

npm run build

生成前端项目静态文件:dist

 注册宝塔账号连接服务器:

 

点击文件进入项目目录可以在nginx/html中看到前端的dist文件内容(可进行修改):

这里省去了很多细节,包括nginx的安装配置,本地连接服务器,因为上述发的连接里面写的很详细所以我这里不做过多复述了。连接服务器我推荐下面这两款软件:

 前端部署完成,部署后端。

后端使用的是go语言所以要在服务器上安装golang环境然后完成环境变量的配置,详细步骤看上方连接,然后将后端代码数据库连接部分进行修改,pg数据库的配置也请看上方连接,我这里做补充说明。全部修改完成将后端文件夹打包上传至服务器,然后在服务器server中运行main.go程序即可。

go run main.go

三、心得感悟

写博客已经快两年了,从一开始学C语言到做游戏再到做项目,我习惯性的会把学习的过程学习踩到的坑点记录下来,一是为了使自己记忆深刻,二是为了帮助他人避开我踩过的坑和我遇到的错误,当看到粉丝数量增长和打赏的时候,这些都是对我的一种认可,从而形成对我的一种正反馈,让我更加富有激情的创作。真的感谢csdn的一路陪伴,和各位大佬的相助,我会继续奋斗下去,做更好的代码骑士。

猜你喜欢

转载自blog.csdn.net/qq_51701007/article/details/125198340