前言:
自选课题,实现过程十分痛苦,实现结果不如人意,尤其体现在论文中。
正文:
一、了解
既然是基于区块链的投票网站,就要了解区块链和投票网站。
区块链是一种分布式数据库,和传统的数据库并不相同。在实现过程,主要是配置区块链的环境和编写智能合约。智能合约是什么,又和区块链是怎样的关系,请自行搜索。
投票网站可以用html+css+bootstrap,再写js实现。也可以使用Vue3框架。也就是说,不需要传统的数据库mysql等和后端代码。
连接区块链和投票网站的是Web3.js或者Ethers.js语言。
我试用了html+css+bootstrap 、Web3.js实现,但因种种报错,不了了之。改用Vue3、Ethers.js实现。
二、软件
以太坊平台:ganache软件
浏览器 插件:metamask(小狐狸)
智能合约:remix在线网站Remix - Ethereum IDE
推荐学习网站:开始学习 Solidity | Decert.me
系统学习智能合约的编写
代码: vscode
这些软件都很容易就可以找到并下载,vscode中可以启用很多方便的配置,可以搜索使用。
三、软件图
1.Student-Voting是为毕业设计专门保存好的环境
2.metamask大概是8或者9版本的都可以正常使用
3.remix网站要实现合约编写,编译和部署三步
四、实现流程
因为程序的实现需要实现智能合约、前端页面和js响应的三方面,个人建议应该仔细听见软件工程课,进行系统分析和系统设计。
现在在这放置一个流程图: