还记得有句玩笑话,‘代码废手不费脑’,虽然是日常调侃,但一定程度上说明了实践的重要性。代码是一个字符一个字符敲出来的,在这个过程中你不可避免的会遇到各种奇葩问题,这是你在理论学习阶段无法接触到的,而解决这些问题的过程会慢慢成为你丰富的实践经验,理论和实践的结合才是成为一名合格程序员的基础。
本篇文章是项目实践系列的第一篇文章,同时也是智能助手这个项目的第一篇文章,文章会讲解整个项目构建的过程,包括设计,功能实现,软件测试等环节。文章会以亲身构建项目的视角切入,但不会包含一些很基础的重复性工作,例如创建项目的具体细节,一些通用基础功能代码等,但相应的我自认为得到较好实现的一些基础性功能代码我还是会粘贴出来,供大家参阅和批评。
项目的名称是智能助手,顾名思义,系统的核心功能是实现智能助手这个角色,但项目的前期会集中在助手这个名词上,实现一些辅助功能,到了项目的后期会对代码进行调整,加入智能的元素,让系统的表现智能化。以上是对这个项目的初步构想,因为这是一个从无到有的系统实现,而且是我个人业余时间的创作,也是为了锻炼我的实践能力,所以系统的最终实现是否能够完成,质量是否能够得到保证,取决于我的空闲时间是否充足以及我的生活现状是否能维持我一直这样的写作,没办法,我也要吃饭,有些时候不得不妥协,虽然我有着自己的梦想,我也很想自由的生活。
项目使用的环境为:
python3.7.0+django2.0.7+mysql5.7+docker1.13.1
在系统的实现过程中如果需要加入其余的环境会进行讲解。
首先进行环境的搭建和项目的创建,我使用的操作系统是linux mint,主要进行软件开发的时候比较方便,而且不会卡顿。linux系统内置python环境这个大家都知道,但是最近python发布了3.7的官方版本,如果使用的话需要自己去安装,安装也很简单,去python官网下载3.7版本的源码包,解压编译安装即可,下面是我安装时使用到的命令:
tar -xjf Python-3.7.0.tar.xz
cd Python3.7.0
./configure
make && make altinstall
altinstall可以避免覆盖默认的python解释器,如果编译的时候遇到一些问题,当然,有些时候这是不可避免的,可以去stackflow查找答案或者复制问题代码去搜索引擎查找,个人观点来看,遇到问题某种程度看可能也是好事。
我会在一个虚拟环境中实现系统代码,在docker容器中运行mysql数据库服务。
第一步,使用virtualenv创建虚拟环境,没有的话可以先进行安装。
apt install virtualenv
mkdir AGH #系统名字
cd AGH
virtualenv .
source bin/activate
至此,虚拟环境创建完成而且激活。
接下来进行项目的创建,在上面激活的虚拟环境中执行以下代码。
pip3 install django==2.0.7
django-admin startproject AGH
django-admin startappp login
以上命令完成了项目AGH和应用login的创建,应用login的功能是自定义的用户注册和登录。如果使用pycharm作为IDE,可以忽略上面步骤,使用图形化界面安装,网上有很多教程。
接下来安装docker和拉取运行mysql容器。
apt install docker
docker pull mysql:5.7
docker run --name mysql -p 3306:3306 -e MYSQL/_ROOT/_PASSWORD=123456 -d mysql
执行以上命令后mysql服务就会以docker容器的形式在后台运行,端口号:3306,密码:123456.
接下来根据上面创建的sql服务信息在项目的settings.py文件中完成数据库的相应配置,主要配置信息如下。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'AGH',
'USER': 'root',
'PASSWORD': '123456',
'HOST': '192.168.202.105',
'PORT': '3306',
}
}
其中数据库AGH现在还没有创建,需要使用任一mysql客户端创建,在此不再阐述。
这样的话,基本的环境已经搭建好,可以运行应用看下效果,在运行之前可以先创建一位超级用户,完成数据库的初始化,下面是相关的命令。
python3 manage.py createsuperuser
python3 manage.py migrate
python3 manage.py runserver
这样的话你在浏览器输入http://127.0.0.1:8000应该可以访问应用,输入http://127.0.0.1:8000/admin可以访问系统后台,ok,环境搭建成功,之后开始login应用的功能复现。
网友评论