legend2---开发日志15(功能需求明确,设计好类和结构的好处是)
legend2---开发日志15(功能需求明确,设计好类和结构的好处是)
一、总结
一句话总结:
极快简化编程,节约大量时间
1、多个类型的物品,比如商店和寻宝的丹药,装备,特性书,英雄石等等 应该怎样统一展示到界面?
放进一个数组,统一显示元素【原先的方法也有其优势】:比如type,比如说id,比如说picture,比如说name
这比我分出装备,特性书,英雄石等,然后在页面分别展示要好
2、寻宝界面怎么让物品按照九宫格的方式排放?
给显示出来的每个物品加一个class,用js对逐个出现的class安排其定位
3、功能需求不明确,代码不按功能需求文档设计好结构和类,真的编写代码好难受?
浪费很多时间做无用功:比如显示奖励函数
很多莫名的bug
4、弹出的奖励页面显示初始数据的原因是什么?
重复引入了两次物品奖励模块
5、灵力测试的缓存中到底放什么,放灵力测试的题目么?
不是放题目,是放是否已经测试,如果测试了,就放测试的结果,比如得分,比如奖励等等
6、变量名不要以数字开头?
不然会遇到莫名其妙的错误,比如在vue中
$exam_data=['today'=>0,'yesterday'=>0,'day_3'=>0,'day_5'=>0,'day_7'=>0,'day_15'=>0,'30_day'=>0,'90_day'=>0];
7、$map_1['b_day_ts']=['>=',$begin_day_ts]; $map_1['b_day_ts']=['<=',$end_day_ts];这样写数据库查询条件的问题什么?
覆盖了,只有后一个被用到,要用between:Db::name('user')->where('id','between',[1,8])->select();
8、比如在两个时间段间查找用什么?
用between:Db::name('user')->where('id','between',[1,8])->select();
[NOT] BETWEEN :同sql的[not] between
查询条件支持字符串或者数组,例如:
Db::name('user')->where('id','between','1,8')->select();
和下面的等效:
Db::name('user')->where('id','between',[1,8])->select();
最终生成的SQL语句都是:
SELECT * FROM `think_user` WHERE `id` BETWEEN 1 AND 8
最快捷的查询方法是:
Db::name('user')->whereBetween('id','1,8')->select();
Db::name('user')->whereNotBetween('id','1,8')->select();
9、选项中出现code标签会显示错乱的原因是什么?
错误的转码解码方式将code结束标签中的左斜线没了,让code的结束标签又变成了一个新的code标签,原来的code标签无法闭合
转码 $data['a_content_art1']=addslashes(htmlspecialchars($data['a_content_art1'])); 解码(这个不行,要一一对应) $article['a_content_art1']=stripslashes(htmlspecialchars_decode(stripslashes($article['a_content_art1']))); 这个 $val['bq_stem_info']=stripslashes(htmlspecialchars_decode($val['bq_stem_info']));
10、PHP addslashes() 函数的作用是什么?
在【单引号,双引号,反斜杠】的千亩加上反斜杠
addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。
预定义字符是:
- 单引号(')
- 双引号(")
- 反斜杠(\)
- NULL
提示:该函数可用于为存储在数据库中的字符串以及数据库查询语句准备字符串。
11、PHP htmlspecialchars() 函数 的作用是什么?
htmlspecialchars() 函数把预定义的字符【& 符号、双引号、单引号、小于号、大于号】转换为 HTML 实体。
| 字符 | 替换后 |
|---|---|
| & (& 符号) | & |
| " (双引号) | ",除非设置了 ENT_NOQUOTES |
| ' (单引号) | 设置了 ENT_QUOTES 后, ' (如果是 ENT_HTML401) ,或者 ' (如果是 ENT_XML1、 ENT_XHTML 或 ENT_HTML5)。 |
| < (小于) | < |
| > (大于) | > |
二、内容在总结中
legend2---开发日志15(功能需求明确,设计好类和结构的好处是)的更多相关文章
- [课程设计]任务进度条&开发日志目录
任务进度条&开发日志目录 周期 时间 任务 Sprint One 11.14 ● Scrum团队分工及明确任务1.0 Sprint One 11.15 ● Scr ...
- MySQL性能调优与架构设计——第 15 章 可扩展性设计之Cache与Search的利用
第 15 章 可扩展性设计之Cache与Search的利用 前言: 前面章节部分所分析的可扩展架构方案,基本上都是围绕在数据库自身来进行的,这样是否会使我们在寻求扩展性之路的思维受到“禁锢”,无法更为 ...
- Java日志系统框架的设计与实现
推荐一篇好的文章介绍java日志系统框架的设计的文章:http://soft.chinabyte.com/database/438/11321938.shtml 文章内容总结: 日志系统对跟踪调试.程 ...
- [原创].NET 分布式架构开发实战之二 草稿设计
原文:[原创].NET 分布式架构开发实战之二 草稿设计 .NET 分布式架构开发实战之二 草稿设计 前言:本篇之所以称为草稿设计,是因为设计的都是在纸上完成的.反映了一个思考的过程. 本篇的议题如下 ...
- Chino 操作系统开发日志 (1) - 为 IoT 而生
引言 很多人都听说过 IoT (物联网)这个词,越来越多的人在装修时开始选择智能家居,很多人也购买智能音箱做智能家居控制,想必未来一定是 AI + 物联网的时代. 一种技术要发展并走向成熟必须要降低门 ...
- C#实现多级子目录Zip压缩解压实例 NET4.6下的UTC时间转换 [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程 asp.net core异步进行新增操作并且需要判断某些字段是否重复的三种解决方案 .NET Core开发日志
C#实现多级子目录Zip压缩解压实例 参考 https://blog.csdn.net/lki_suidongdong/article/details/20942977 重点: 实现多级子目录的压缩, ...
- U-Learning 后端开发日志(建设中...)
目录 U-Learning--基于泛在学习的教学系统 项目背景 技术栈 框架 中间件 插件 里程碑 CentOS 7搭建JAVA开发环境 接口参数校验(不使用hibernate-validator,规 ...
- QFramework Pro 开发日志(七)v0.4 版本审核通过 与 对话编辑器功能预告
经过一周的工作,v0.4 版本总算完成了. 就在刚刚笔者在 AssetStore 提交了 v0.4 版本. v0.4 版本主要内容有两个 一键生成简单继承类图功能 底层兼容 QFramework v0 ...
- 《Invert》开发日志05:终止
今天终于看了久闻大名的<独立游戏大电影>,然后我就做了一个坑爹的决定:终止“Invert”项目的开发.没错,在还没正式开工之前,我就决定停掉这个项目,而且是永久终止.做这个决定并不是因为觉 ...
随机推荐
- 【SharePoint】SharePoint2013中使用客户端对象模型给用户控件赋初值
本文要实现的功能:新建一条列表记录,打开新建记录画面时,自动给[申请人]赋值为当前登录用户. 在SharePoint2010中,可以使用SPServices的SPFindPeoplePicker方法来 ...
- 获取服务器classes根路径
/** * 获取web应用路径 * @Description : 方法描述 * @Method_Name : getRootPath * @return * @return : String * @C ...
- Linux 网络概述
OSI參考模型与TCP/IP參考模型 如上图所看到的. OSI的应用层.表示层.会话层相应TCP/IP的应用层:OSI的传输层相应TCP/IP的传输层.OSI的网络层相应TCP/IP的网络层:OIS的 ...
- Linux系统运维之路
九月份开始,半年内搞定运维,博客会慢慢的更新,vim编辑器,Nginx配置文件优化 运维基础 运维基础-Linux发展史.安装.基本操作 运维基础-用户和组管理 运维基础-文件权限管理 运维基础-进程 ...
- Intellj IDEA光标替insert状态,back键无法删除内容
Intellj IDEA光标为insert状态,无法删除内容导入项目后,发现打开java文件的光标是win系统下按了insert键后的那种宽的光标,并且还无法删除内容,且按删除(delete)键也只见 ...
- mac os x升级MOUNTAIN LION后svn command not found的解决
因为svn是个开发工具 所以苹果把他移到 Xcode developer package 里 去了,所以你没装xcode之类的,先去AppStore把xcode装了 装好之后sudo vi /et ...
- C# 串口发送 陷阱,必须知道的坑
目的:间隔100毫秒持续发送指令 由于 C#串口发送为同步方式发送,发送占用时间较长,导致发送变慢, 自己写工具并手工测试两种波特率发送占用时长如下
- ubuntu 安装 pygame 很好玩的东西
1. 简介 pygame 是基于对 SDL库的python 封装,提供python接口.SDL(Simple DirectMedia Layer) 是一个跨平台的游戏开发库,方便游戏开发和移植.目前最 ...
- virtual dynamic shared object
vdso(7) - Linux manual page http://man7.org/linux/man-pages/man7/vdso.7.html NAME | SYNOPSIS | DESCR ...
- php加速器: xcache
1.准备软件包 xcache-3.2.0.tar.gz 2.安装组件 $ echo 'export LC_ALL=C' >> /etc/profile $ tail -l /etc/pro ...