这几天在学习背包系统,网上有看到一个挺牛逼的背包系统,不过人家那个功能很全面,一个背包系统就囊括了装备,锻造,购买等等功能(这里给出网址:https://blog.csdn.net/say__yes/article/details/71910984)。很可惜,博主水平有限,断断续续研究了两天,没搞明白,尤其后面大段大段的代码,让我一点往下看的心情都没有,虽然注释挺详尽的。我大概总结了一下那篇文章,那个作者水平应该确实挺厉害的,但是我还是要吐槽一下,那个作者将整个背包系统分成了四篇文章写完,讲真,前两章是真的写的挺好的,而且作者也说有MVC的影子。但是最后两篇文章(核心部分)是真的写的不行,至少我看到后面我自己看的有些混乱了,如果有大神的话,希望可以指点一下。

首先,第一篇文章算是前言,引导,这里略过不讲,第二篇文章,是对于从Json文件中解析出来的数据进行的处理,这里还是挺简单的直接都是一目了然,清楚明白。但是接下来第三四篇文章,然后就开始感到晕眩了。本来我以为后面的文章应该是一篇对于数据层的处理,一篇是关于UI界面逻辑层的处理。但是吧,第三篇文章基本还算可以还有些面向对象的风格,各个面板的逻辑处理也都挺好。但是第四篇的数据处理就真的让我蒙了,感觉就是纯粹的功能代码堆砌,有Json解析得到数据的代码,有数据处理的功能代码,然后还有UI界面的逻辑处理的代码,真的让我有些懵逼了。而且各种功能代码大段大段的堆在一起,你说我还有多少心情往下面看啊。。。

但是吐槽归吐槽,多少还是可以学习一下嘛,本来想写个好几条,但是最后只相处来这么一条,算是个大致的总结吧。:

购买系统,锻造系统,装备系统都是要和背包系统进行交互才能发挥作用,而且前三个系统都可以看成是单纯的背包系统(一个背包Panel,里面有拖拽物品,点击使用物品,物品提示这些功能,增加删除物品这些基本功能)的延伸。所以只要你能搞出来基本的背包系统,那么接下来,你完全可以在这个基础上增加一些功能就OK了。(主要就是数据处理方面要麻烦一些罢了,本来想放一下那位作者的思路结构图的,但是后来看了看,想了一下还是没放,因为那个图真的不算太好。)

背包系统学习笔(tu)记(cao)的更多相关文章

  1. 【学习笔鸡】快速沃尔什变换FWT

    [学习笔鸡]快速沃尔什变换FWT OR的FWT 快速解决: \[ C[i]=\sum_{j|k=i} A[j]B[k] \] FWT使得我们 \[ FWT(C)=FWT(A)*FWT(B) \] 其中 ...

  2. 【学习笔鸡】整体二分(P2617 Dynamic Rankings)

    [学习笔鸡]整体二分(P2617 Dynamic Rankings) 可以解决一些需要树套树才能解决的问题,但要求询问可以离线. 首先要找到一个具有可二分性的东西,比如区间\(k\)大,就很具有二分性 ...

  3. Android开发学习之路-记一次CSDN公开课

    今天的CSDN公开课Android事件处理重难点快速掌握中老师讲到一个概念我觉得不正确. 原话是这样的:点击事件可以通过事件监听和回调两种方法实现. 我一听到之后我的表情是这样的: 这跟我学的看的都不 ...

  4. 学习大神笔记之 “MyBatis学习总结(一)”

    1.准备工作 软件:eclipse. mysql .navicat for mysql 包:mybatis-3.1.1.jar   mysql-connector-java-5.1.7-bin.jar ...

  5. 【团队冲刺总结】一个编码人员的反(tu)思(cao)

    消失了半个多月了啊,算算时间,好像确实有近个把月没有好好的写博客来了.我一直很想写博客的,之前有老师问过写博客的动力是什么.我想了想,我觉得可能是我比较喜欢看书吧,不管是专业书还是小说(好吧,我承认, ...

  6. 断剑重铸之日,席卷朗朗乾坤之时--PHP学习一月漫记

    传说中阿尔萨斯王子沉沦堕落之后,被巫妖王安置在冰冷的城堡中,静静地等待重出天日,它随身携带的宝剑也埋没与尘土之间,暗淡无光.他想起宝剑伴身,东征西战的峥嵘岁月,忆及如今身陷囹圄,一股怨念由心底升起,许 ...

  7. [知了堂学习笔记]_记一次BootStrap的使用

    效果图如下: 一.简介: 什么是Bootstrap?  Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架. 什么是响应式布局? 引用一句Bootstrap的标题语 " ...

  8. html5 web worker学习笔记(记一)

    (吐槽:浏览器js终于进入多线程时代!) 以前利用setTimeout.setInterval等方式的多线程,是伪多线程,本质上是一种在单线程中进行队列执行的方式.自从html5 web worker ...

  9. djano-cms学习笔计(一)

    开放源码的内容管理系统,基于Web框架Django的. 优势如下 高度可扩展的插件系统,可让您自由地构建各种内容的网站. 前端编辑直接更改您的网站上的内容.工程的所有插件. 感谢可读的网址的页面结构是 ...

随机推荐

  1. call, apply, bind 区别

    #call, apply, bind 区别及模拟实现call apply bind 三者都可以用来改变this的指向,但是在用法上略有不同  首先说一下call和apply的区别 call和apply ...

  2. rtim() 函数说明

    rtim() 函数 string rtrim ( string $str [, string $character_mask ] ) 该函数删除 str 末端的空白字符(或者其他字符)并返回. 不使用 ...

  3. CAD设置超链接(网页版)

    超链接(Hyperlink)可以看做是一个“热点”,它可以从当前Web页定义的位置跳转到其他位置. 设置对象动态提示事件回调函数. //设置对象动态提示事件回调函数 function DoInputP ...

  4. android ViewPager实现的轮播图广告自定义视图,网络获取图片和数据

    public class SlideShowAdView extends FrameLayout { //轮播图图片数量    private static int IMAGE_COUNT = 3;  ...

  5. react-native 手势操作和 react-naviagation 组件的手势返回功能的冲突解决

    上篇我们说到过在react-native触摸及手势事件 那么我在项目中遇到的问题是在react-navigation中的子页面,希望保留在ios中的效果:从左侧往右侧滑动为退出该页面. 但是希望我在滑 ...

  6. sysbench--mysql测试

    1.下载sysbench-0.4.12.14.tar.gz 2.解压.tar -zxf sysbench-0.4.12.14.tar.gz 3.编译: 填写mysql路劲. ./configure - ...

  7. Java字符拼成图片(image-ASCII)

    目录 背景 代码思路 难点讲解 如何得到rgb 如何让不同颜色匹配不同字符 为什么我的图片只能打一半 OutOfMemoryError错误 为什么用汉字来打印图案会扭曲 装逼时刻 @(Java字符图片 ...

  8. matplotlib的使用--折线图--入门

    目录 matplotlib应用介绍 一天天气变化图 两小时随机温度图 中文显示问题 个人交往统计图 多人交往统计图 总结 介绍: 举个例子(一天天气变化图): 假设一天中每隔两个小时(range(2, ...

  9. Leetcode 147.对链表进行排序

    对链表进行插入排序 对链表进行插入排序. 插入排序算法: 插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表. 每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它 ...

  10. Android SwipeSelector

     Android SwipeSelector Android SwipeSelector是github上一个第三方开源的项目,其项目主页:https://github.com/roughike/S ...