源代码

软件构造笔记 5.1 Metrics, Morphology and External Observations of Reusability

匿名 (未验证) 提交于 2019-12-03 00:34:01
1. 可复用 面向复用编程 :开发出复用的软件。 基于复用编程:利用已有的可复用软件搭建应用。 复用的原因:降低成本和开发时间;经过充分测试,可靠、稳定;标准化,在不同应用中保持一致。 开发可复用的软件成本高于一般软件的成本,因为需要足够高的适应性;性能也会差一些,因为针对更普遍的场景,缺少足够的针对性。使用可复用软件库可以对其进行有效的管理。 衡量可复用性 高可复用性应该满足:小、简单;与标准兼容;灵活可变;可扩展;泛型、参数化;模块化;变化的局部性;稳定;丰富的文档和帮助; 2. 可重用组件的级别和形态 1)源代码的复用:将部分代码 / 全部复制 / 粘贴到程序中。存在维护问题;需要在多个地方更正代码;使用太多的代码(很多版本)。在处理过程中出现高度错误风险,要知道如何使用的软件工作,需要访问源代码。 2)模块级别的复用:类和接口,类是代码重用的原子单元,不需要源代码,类文件或 jar / zip ,只需要包含在类路径中。文档非常重要( Java API );封装有助于重复使用;管理的代码较少;版本控制,向后兼容仍然存在问题;需要将相关类组合在一起 - 静态链接。 委托(delegation):委托就是当一个对象依赖另一个对象来实现其功能的某个子集时(一个实体将某个事物传递给另一个实体)。 显式委托:将发送对象传递给接收对象 隐式委派:通过语言的成员查找规则

微云笔记远程控制脚本思路

匿名 (未验证) 提交于 2019-12-03 00:34:01
实现思路 : 脚本会读取指定的url的源代码 从中提取出脚本需要的信息 然后根据这些信息来控制脚本的行为 我们只是需要调整指定的url上面的网页内容 就可以远程的控制脚本的运行情况 常见的功能实现: 远程控制脚本开关 远程控制脚本的运行 情况 脚本会根据网络信息来进行 信息验证 判断是否允许登录 等等 微云笔记端 的配置 点击分享之后 记住那个分享的链接 如果要 调整内容 的干扰 代码如下 安卓按键端(脚本端): 基本思路: 代码函数 Function 从微云笔记获取信息操作() Dim 网页源代码 = "" Dim 微云地址 = " https://share.weiyun.com/5QM9QMb " Dim 分组,全组,临时地址,分隔符 分隔符 = " @==== " // 一.获取到源代码 和粗劣的分析源码 网页源代码 = URL.Get(微云地址) // 这里的微云地址是公共变量获取到的 网页源代码 = Trim(取文本中间( " ql-editor ql-blank\ " ><p> " , " </div> " , 网页源代码)) //取出源代码里面的<div class= ‘ ql-editor-inner ‘ > </div> 之间的内容 我们需要分析的内容都在这个区域 TracePrint 网页源代码 // 二.对这部分源码进行分析 得到每行的内容 分组 = ""

国产数据库发展现状分析

匿名 (未验证) 提交于 2019-12-03 00:22:01
原作者介绍 晓军 1992年加入Sybase中国,之后曾在Informix、 IBM任职, 现在就职于Oracle。专注于数据库和数据仓库十余年。 导语 从上世纪90年代开始,国产数据库的开发就不断被人提起,国内已有不少企业、团体在这个方面做了不少的投入。在此,我们与大家分享一下对几个数据库国产化途径的看法。我们主要讨论自主研发、引进代码和互联网厂商提供的云上数据库。 自主研发 国内自主研发关系型数据库的企业、单位基本上都是发源于上世纪90年代的,而且都是以大学、科研机构为主。到今天,有代表性的厂商有: 南大通用(Gbase 8a)- 南开大学的背景,2010年左右自主研发的,基于列式存储的,面向数据分析、数据仓库的数据库系统。 其他没有列出的,属于在下孤陋寡闻,绝无贬低的意思。 这些公司的发展分为两个阶段,以2007年作为分界线。前一个阶段集中在20世纪90年代,公司的出发点就是开发一款通用的,主要面向OLTP的关系型数据库。在那个年代,中国的人工成本还是比较低的,国外厂商的数据库,如:Oracle,Sybase,Informix,DB2都算是成本较高的产品。很多人认为,只要做出功能、性能、稳定性合适的国产数据库,就能有一定的市场,至少价格能够有优势;即便市场不成功,作为科研教学也有一定价值,至少申请科研经费和政府补贴是个好题材。 但是,这么些年下来

以太坊源代码 - 挖矿打包流程以及速度

匿名 (未验证) 提交于 2019-12-03 00:22:01
原文地址 worker负责整个挖矿打包流程,代码查看miner/worker.go文件。 1)打包流程 commitNewWork是打包流程的开始,具体的调用关系如下: *)步骤6 - 创建Work,所谓的Work即目前打包的执行环境。 *)步骤7 - 执行pending的交易,记录交易的receipts。 *)步骤8 - 生成具体的区块信息。 *)步骤10 - 生成好的区块数据,发送给miner.CpuAgent。CpuAgent调用Engine的Seal函数打包。 *)步骤13 - 打包后的Work发送回miner(通过chan)。 *)步骤15/16 - 更新链信息以及发出区块生成事件。 从上图可以看出,consensus.Engine是打包逻辑的接口(consensus/consensus.go): // Engine is an algorithm agnostic consensus engine. type Engine interface { // Author retrieves the Ethereum address of the account that minted the given // block, which may be different from the header's coinbase if a consensus // engine

源代码和编译

匿名 (未验证) 提交于 2019-12-03 00:18:01
首先配置Android源代码下载环境:   1、创建一个用于存放下载脚本文件的目录;   #mkdir ~/bin   #PATH=~/bin:$PATH   2、下载repo脚本文件;   #curl https://dl   3、创建用于存放Android源代码的目录;   #make android_source   #cd android_source   4、初始化;   #repo init -u https://android.googlesource.com/platform/manifest   5、开始下载Android源代码。   #repo sync   下载完成后进入保存源代码的目录,可以看到其目录结构。   接下来就是编译Android源代码   1、初始化编译环境;   #source build/envsetup.sh   或#. build/envsetup.sh   2、选择目标   使用lunch命令设置编译目标。   3、编译Android源代码   # make   Android移植主要就是Linux内核的移植,而Linux内核移植主要是Linux驱动的移植。所以需要在Ubuntu Linux下搭建两套开发环境。下面是安装Android内核的编译环境。   1、准备工作   将arm-linux-gcc-4.3.2.tgz文件和arm

如何调试Maven软件的源代码

匿名 (未验证) 提交于 2019-12-03 00:03:02
修改maven源代码 打包模块apache-maven,生成apache-maven-x.x.x-bin.tar.gz 解压上面的压缩包,生成目录apache-maven-x.x.x,在某个maven项目下执行/根路径/apache-maven-x.x.x/bin/mvnDebug clean install -DskipTests 在maven源码项目里设置远程调试,如下图,选择相应的模块,进行调试 当执行的Java虚拟机jvm里的相应字节码时,就会在相应的源码断点里停止 断点设置 m2.conf mac下的路径 /usr/local/Cellar/maven/3.6.0/libexec/bin/m2.conf ,根据第一行代码,找到上面的断点位置 main is org . apache . maven . cli . MavenCli from plexus . core set maven . conf default $ { maven . home }/ conf [ plexus . core ] load $ { maven . conf }/ logging optionally $ { maven . home }/ lib / ext /*.jar load ${maven.home}/lib/*.jar https://www.jianshu.com/p

《Spark高级数据分析第2版》PDF中英文代码+《Hadoop权威指南第4版》PDF代码

匿名 (未验证) 提交于 2019-12-02 23:55:01
《Spark高级数据分析第2版》由业内知名数据科学家执笔,通过丰富的示例展示了如何结合Spark、统计方法和真实世界数据集来解决数据分析问题,既涉及模型的构建和评价,也涵盖数据清洗、数据预处理和数据探索,并描述了如何将结果变为生产应用,是运用Apache Spark进行大数据分析和处理的实战宝典。 《Spark高级数据分析(第2版)》中文PDF+英文PDF+源代码 《Spark高级数据分析(第2版)》中文PDF,452页,带目录,文字可复制;英文PDF,455页,带目录,文字可复制;配套源代码。 下载: https://pan.baidu.com/s/1AljbMRZcv5_vJ5GxStfrpg 提取码: iaar 根据新版Spark最佳实践,对样例代码和所用资料做了大量更新。涵盖模式如下: ● 音乐推荐和Audioscrobbler数据集● 用决策树算法预测森林植被● 基于K均值聚类进行网络流量异常检测 ● 基于潜在语义算法分析维基百科● 用GraphX分析伴生网络● 对纽约出租车轨迹进行空间和时间数据分析 ● 通过蒙特卡罗模拟来评估金融风险● 基因数据分析和BDG项目● 用PySpark和Thunder分析神经图像数据 学习参考:《Hadoop权威指南第四版》中文PDF+英文PDF+代码 《Hadoop权威指南(第四版)》中文PDF,734页,带书签目录;英文PDF,805页

web开发的浏览器(工具)插件

匿名 (未验证) 提交于 2019-12-02 23:49:02
原文链接: http://www.cnblogs.com/wj110reg/articles/891764.html web开发的浏览器(工具)插件 下载PowerBand2.1 2、HttpWatch HttpWatch又是一个IE下的强劲插件,HttpWatch最主要的功能就是对通过浏览器进行网络通讯的数据进行监控和分析,当你在浏览器的地址栏上请求一个URL或者提交一份表单时,HttpWatch帮你分析http请求的head信息,访问页面的cookie信息,Get和Post的详细数据包分析,Catch内容分析,QueryString分析。想知道GMail或者是任何一个AJAX网页时如何和服务器进行数据交互的吗?用这个插件就可以一览无余了 下载HttpWatch3.2.0.63 下载注册机 3、IE Developer Toolbar 第三个插件还是基于IE下的,不过这个可是 微软发布的Web开发IE工具栏 ,实现的功能如下: 浏览和修改Web页的文档对象模型(DOM)。 通过多种技术方式定位、选定Web页上的特定元素。 禁止或激活IE设置。 查看HTML对象的类名、ID,以及类似链接路径、tab顺序、快捷键等细节。 描绘表格、单元格、图片或选定标签的轮廓。 显示图片象素、大小、路径、替代文字等。 即时重定义浏览器窗口大小到800x600或自定义大小。