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 ...
随机推荐
- DP大作战—组合背包
题目描述 组合背包:有的物品只可以取一次(01背包),有的物品可以取无限次(完全背包),有的物品可以取的次数有一个上限(多重背包). DD大牛的伪代码 for i = 1 to N if 第i件物品属 ...
- sublime text2 汉化
1.下载Sublime-Text-2中文包.zip 链接:http://pan.baidu.com/s/1mgYRW9q 密码:8ks6 2.将 Sublime-Text-2中文包.zip 解压,并将 ...
- sublime生产力提升利器
sublime 操作快捷键功能-生产力提升利器 Go to anything ctrl+p 支持快速模糊匹配 查找替换 ctrl+h 多行游标(当只需查找/替换/选中部分相同内容时)有以下方式来产 ...
- 点击页面div弹窗以外隐藏的两种思路
在本文为大家介绍两种思路实现点击页面其它地方隐藏该div,第一种是对document的click事件绑定事件处理程序.. 第一种思路分两步 第一步:对document的click事件绑定事件处理程序, ...
- js 操作select和option
js 操作select和option 1.动态创建select function createSelect(){ var mySelect = document.createElement_x(&qu ...
- 边工作边刷题:70天一遍leetcode: day 84-2
要点:这题是combination的应用,从左向右想比从右向左容易. 因为有结果从小到大的要求,暗示用combintion而不是permutation 其实就是从小到大验证因子,每个因子和其对称因子立 ...
- jquery 地址栏链接与a标签链接匹配 特效代码总结(二)
如题所述,当出现这样的功能,点击某个链接后,给跳转后的该链接地址添加样式,通过添加class为current来增加特殊样式. 如图所示:点击HTML+css3跳转后,给其添加如图样式: js代码如下: ...
- Django项目中如何建表?怎样导入数据?
http://django-chinese-docs.readthedocs.org/en/latest/topics/db/models.html 通常在项目中的models.py文件中建表的 Th ...
- AC日记——codevs 1086 栈 (卡特兰数)
题目描述 Description 栈是计算机中经典的数据结构,简单的说,栈就是限制在一端进行插入删除操作的线性表. 栈有两种最重要的操作,即pop(从栈顶弹出一个元素)和push(将一个元素进栈). ...
- Eclipse打开xml文件报校验错误解决办法
XML文件在Eclipse中报校验错误: The content of element type "web-app" must match "(icon?,display ...