游戏辅助脚本论坛_开心躲猫猫穿墙版下载

游戏辅助脚本论坛_开心躲猫猫穿墙版下载总结写开心外挂的心得对开心网的外挂编写做个总结,避免弯路。设计篇         针对需求的设计——需求向实现的转化             从调查切入点开始考虑如何着手,确定了基本的方式到写代码,并没有花太多精力,http访问、html解析都不复杂,但后续需求考虑不足造成最初的设计不能满足后续需要。比如后续加入的新模块轮询检索,定时执行都推翻了最初的设计。在设计阶…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

总结写开心外挂的心得

对开心网的外挂编写做个总结,避免弯路。

  • 设计篇

          针对需求的设计——需求向实现的转化

                从调查切入点开始考虑如何着手,确定了基本的方式到写代码,并没有花太多精力,http访问、html解析都不复杂,但后续需求考虑不足造成最初的设计不能满足后续需要。比如后续加入的新模块轮询检索,定时执行都推翻了最初的设计。在设计阶段多大程度上为后续预留扩展余地有待思考。
          避免过度设计
                小程序貌似没有这个问题,基本上能减的都减了^_^ 个人编程更多的是偷懒避免了过多代码。
          别为选择耽误时间
                左右为难的选择未必是阻碍进程的瓶颈。为几个技术选择或者解决方案思考了很久,其实这些点都不是阻碍开发的地方,一旦确定一条路,剩下的就是解决这条路上的问题了。

  •  技术细节篇

           事前分析URL VS. 解析页面

                 简单一个例子,要取得B页面的信息需要经过A页面(如登录),开发中的想法有:
                       1.预先分析B页面的URL特点,从A页面拼接取得(URL中有随机的Key,需要在A页面取得)。
                       2.解析A页面中通往B页面的链接。
           方法1更直接,Key的解析针对字符做regex查找即可,但缺点是一旦URL改动或者Key的方式改动要重新分析。
           方法2站在网站外的视角,直接根据链接名称查找链接地址,缺点同样明显,页面名称不能变化,比如:“组件”这个链接名不能变,否则就找不到了。
           最终选择了方法2,使用了比较旧的htmlparser,但扩展简单。

           定时任务的控制
                 预订时间执行预订动作,使用了JDK自带的Timer,绝对的lightweight,API中提到的执行不准的情况忽略不计。整体控制方式:主进程控制子线程,子线程控制TimerTask线程。必要的线程间数据共享使用了ConcurrentSkipListSet,主要是考虑线程安全、可排序和无冗余。

           双缓存
                 从Swing的双缓存思想得来,实际就是转移长时间操作的瓶颈,解决预订任务队列的更新问题,效果确实不错。

           错误恢复
                 对长期自动执行来说,如果发生异常应该有一定的自我恢复能力,比如网络不通造成的异常等等。解决方式用子线程调用TimerTask的方式避免异常造成彻底中断,同时不会因为异常反复发请求。瞬时错误恢复没有解决,比如执行停车失败,会跳过这个车位,查找下一个,此时的错误状态等等没有细考虑。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194257.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java进行四舍五入_java 实现四舍五入功能

    java进行四舍五入_java 实现四舍五入功能告诉你一个小技巧,用4行java代码实现一个四舍五入功能的实例。四舍五入是一种精确度的计数保留法,与其他方法本质相同。但特殊之处在于,采用四舍五入,能使被保留部分的与实际值差值不超过最后一位数量级的二分之一,这种保留法的误差总和是最小的。例子例如π,便被四舍五入,大多保留下3.14了。但是,有的时候不可以用四舍五入的方法,而要用”进一法”和”退一法”。例如,288个学生春游,45人一辆大巴,算下来…

    2022年5月21日
    26
  • Istio安装「建议收藏」

    1、安装Istio自定义资源定义kubectlapply-finstall/kubernetes/helm/istio/templates/crds.yamlcustomresourcedefinition.apiextensions.k8s.io/virtualservices.networking.istio.iocreatedcustomresourcedefinition….

    2022年4月17日
    31
  • RPM 安装位置

    RPM 安装位置rpm-qplxxxxxx.rpm1.如何安装rpm软件包rmp软件包的安装可以使用程序rpm来完成。执行下面的命令rpm-iyour-package.rpm其中your-package.rpm是你要安装的rpm包的文件名,一般置于当前目录下。安装过程中可能出现下面的警告或者提示:…conflictwith…可能是要安装的包里有一些文件可

    2022年4月30日
    195
  • centos部署tomcat_weblogic简单部署

    centos部署tomcat_weblogic简单部署Centos部署weblogic10.3.61、下载183MB压缩包https://www.oracle.com/middleware/technologies/weblogic-server-downloads.html2、上传至服务器/opt目录下3、root用户执行su-groupaddoinstalluseraddd-goinstallweblogicpasswdweblogic备注:已存在weblogic用户useraddd替换为usermod4、r

    2022年9月3日
    2
  • linux通配符大全_linux中rmdir命令

    linux通配符大全_linux中rmdir命令linux基础(通配符的使用)你好!这里是面向新手的linux入门指南,这节课我会整理我所知道的linux中的通配符,希望和大家一起学习通配符的概念首先通配符绝对不是正则表达式,通配符基础只有4个:***,?,[],[^]**。这些一般只用于文件名匹配,它是由shell解析的,比如find,ls,cp,mv等符号*:该符号表示一个或多个字符例如:*finda为找a开头的文件符号?:表示代替单个字符符号[list]:表示匹配list中的任意单一字符【0,9】—

    2022年9月19日
    0
  • Linux下配置bond0

    Linux下配置bond01.使用network接管网络服务,停止使用NetworkManager,如若没有network服务,安装network-scripts安装包即可2.做之前备份网卡配置文件。配置模板前景要求:6个网口,两两配置bond0,连接名分别为servicebond、cloudbond、storagebond,三个平面的VLanID分别为19,320,414一、配置连接名#vim/etc/sysconfig/network-scripts/ifcfg-servicebond

    2022年4月6日
    175

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号