Python Web实战 - 基于Flask实现的黄金点游戏
一、简介
团队成员:
领航者:张旭
驾驶员:张国庆
项目简介:
项目名称:基于B/S模式的黄金点游戏
采用技术:
后端:Python + Sqlite3
前端:HTML + CSS + JS + BootStrap
项目源码:https://git.coding.net/netcon/gold-dot.git
项目地址:http://gd.conw.net/(点击试玩)
服务器环境:Ubuntu Server 14.04 + Nginx 1.4.6 + uWSGI 2.0.14
二、使用
游戏介绍:
黄金点游戏是一个数字小游戏,N个同学,每人写一个0~100之间的有理数 (不包括0或100)。交给裁判,裁判算出所有数字的平均值,然后乘以0.618,得到G值,提交的数字最靠近G(取绝对值)的同学得到N分。离G最远的同学得到-2分,其他同学得0分。玩了几天以后,玩家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动。
游戏截图:
一、玩家可自定义游戏人数

二、游戏可多人玩,已经提交的玩家按钮会显示“已提交”状态。

三、游戏每轮结果会保存在历史记录中,便于统计结果。

实现特色:
一、游戏真正做到多人同时玩,每个用户有其固定的ID,多个浏览器登录结果并不会冲突,已提交的用户会显示“已提交”状态,当所有人都提交后,说明本轮游戏结束。
二、每轮游戏结束后,后台会自动计算游戏结果,并保存到历史记录中,便于后期统计。
三、BootStrap的风格显得更加友好,不会让玩家对界面产生厌恶感。
三、合作合影
以下是我们二人合作时的合影:



四、个人总结
本次项目是二人合作,并且二人各有分工,既提高了开发效率,又提高了项目质量。
从本次项目中,我也是真正认识到多人合作的重要性,我在项目模型已经完成后,自认为已经完成项目所需功能,此时张旭提出游戏的bug,即只能支持整数的输入,而对于有理数的输入则无法处理,原因则是我在写代码时粗心,忘了解决这个问题。发现bug后,又重新修改代码,重新commit,重新push...
另一方面我本人比较欠缺的艺术审美方面的天赋,没办法把握前端页面是否美观,于是张旭又帮我设计页面展示,这是以前我独自工作时最头痛的地方,这次也得到了圆满的解决。
两人合作后,工作效率得到了提高,并且开发过程中也不再那么枯燥,心情也是项目质量的因素之一,另外两人取长补短,必然比一个人做出来的东西更好。
另:本次作业额外的收获,则是得自大家对本文的评论中:软件只有经过测试才能发现更多的问题,开发者可谓是当局者迷,必须经历用户的体验才能更大提高软件的质量,作为开发者也必须尽力完善自己的工作,要对所有的软件使用过程中发现的漏洞负全责。
还要引用@ffl的在评论中的一句话:为了改一个bug,引入10个子bug,当10个子bug都修正后,原来的那个bug才解决。
Python Web实战 - 基于Flask实现的黄金点游戏的更多相关文章
- Python Web实战:Python+Django+MySQL实现基于Web版的增删改查
前言 本篇使用Python Web框架Django连接和操作MySQL数据库学生信息管理系统(SMS),主要包含对学生信息增删改查功能,旨在快速入门Python Web,少走弯路.效果演示在项目实战最 ...
- Python Web框架 bottle flask
Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块. 1 2 3 4 pip instal ...
- Python Web开发之Flask
PythonWEB框架之Flask 前言: Django:1个重武器,包含了web开发中常用的功能.组件的框架:(ORM.Session.Form.Admin.分页.中间件.信号.缓存.ContenT ...
- Python WEB框架之Flask
前言: Django:1个重武器,包含了web开发中常用的功能.组件的框架:(ORM.Session.Form.Admin.分页.中间件.信号.缓存.ContenType....): Tornado: ...
- C# 启动 a Python Web Server with Flask
概览 最近有个需求是通过c#代码来启动python 脚本.嘿~嘿!!! 突发奇想~~既然可以启动python脚本,那也能启动flask,于是开始着手操作. 先看一波gif图 通过打开控制台启动flas ...
- python web开发之flask框架学习(1) 创建flask项目
python 开发越来越火,作为菜鸟,也应该学习一下,感觉还可以,记录下来,方便学习参考. 不管做什么开发首先肯定是安装环境,这里我用的是pycharm,python3.如果不清楚怎么安装环境可以去网 ...
- python web开发——c2 flask框架和flask_script
重定向/error 通过flask中的redirect方法和自定义的newpath函数.redirect_demo函数实现重定向: #coding:utf-8 from flask import Fl ...
- python web开发之flask框架学习(2) 加载模版
上次学习了flask的helloword项目的创建,这次来学习flask项目的模版加载: 第一步:创建一个flask项目 第二步:在项目目录的templates文件夹下创建一个html文件 第三步: ...
- 结对编程--基于android平台的黄金点游戏
游戏内容: 阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫“黄金点”的游戏: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或1 ...
随机推荐
- win7 64位安装oracle10g出现未知错误,程序异常终止解决方法
修改Oracle 10G\database\stage\prereq\db\refhost.xml 在 </SYSTEM> <CERTIFIED_SYSTEMS>后面添加 &l ...
- angularjs onchange
HTML <div ng-controller="TestCtrl"> <select ng-change="change(x)" ng-mo ...
- SAM4E单片机之旅——16、NAND Flash读写
这次大概介绍了一下NAND Flash,以及在ASF中使用它的方法. 一. 接线 这个开发板搭载了一个256 MB,8位的NAND Flash(MT29F2G08ABAEA).引脚接线如下: 偷个懒, ...
- LevelDB源码分析--使用Iterator简化代码设计
我们先来参考来至使用Iterator简化代码2-TwoLevelIterator的例子,略微修改希望能帮助更加容易立即,如果有不理解请各位看客阅读原文. 下面我们再来看一个例子,我们为一个书店写程序, ...
- 大写金额字符串生成 C#实现
思路: 中文对金额的描述以四位为一组, 只考虑一万亿以内的数字则每组内以千.百.十和[亿\万\元]区分各位 连续的零按一个处理,组内最低位的零可略去 无角无分说整,有角无分只说角,无角有分说零X分,有 ...
- internet connection sharing has been disabled by the network administrator
Start > Run > gpedit.msc Locate; Computer Configuration/Administrative Templates/Network/Netwo ...
- 在Myeclipse中添加User Library,用户自己的库
在Myeclipse中添加User Library,用户自己的库 作用:可以将常用的jar包添加到一个固定的库中,避免每一次都要手动导入. 步骤: 1.选择项目,点击Myeclipse的window菜 ...
- openPOWERLINK官方安装版例程(v2.3.0)附带mnobd.cdc文件断句
demo_mn_qt.exe启动所需载入的mnobd.cdc文件断句(备忘) //// Project: Demo_3CN //// NodeCount: 3 //// 0000003A //// N ...
- 1维FDTD仿真
FDTD基本原理是把麦克斯韦方程胡两个矢量旋度方程写成差分形式,利用数值方法求其解. 假设电磁场传播方向为x轴方向,电场只有z轴方法分量,磁场只有y轴方向分量.两个旋度方程可以写成下列形式 电场.磁场 ...
- js制作倒计时效果
该程序可以计算任意指定的两个日期中间的差值. 本例子的指定日期是2017年1月1日,当前时间是2016年10月21日:计算它们之间的差值,在网页上显示如图所示: 关键部分代码: var nowtime ...