简
4年前
Dart虚拟机运行原理
一、Dart虚拟机1.1引言DartVM是一种虚拟机,为高级编程语言Dart提供执行环境,但这并意味着Dart在D虚拟机上执行时,总是采用解释执行或者JIT编译。例如还可以使用Dart虚拟机的AOT管道将Dart代码编译为机器代码,然后运行在Dart虚拟机的精简版环境,称之为预编译运行时(precompiledruntime)环境,该环境不包含任何
待兔 待兔
4年前
彻底弄懂类设计原则之 - 开闭原则
类设计原则之开闭原则OCP,OpenClosedPrinciple,中文翻译为开闭原则当第一次看到OCP时,我就蒙了,什么开,什么闭啊,完全摸不到头脑然后就去网上找各种博客,各种解释,最多的一种就是:对扩展开放,对修改关闭当时我就更蒙了,去问了很多“高手”,他的回答让我更加迷茫:不修改代码就可以增加新功能这是多么神奇的事啊,不修改代码
Stella981 Stella981
4年前
Python 修改pip源
接触python多半年光景了,多数时间都是在公司看看书,最近终于有空在家学学python,写点代码。可是涉及到python,就要说到python的模块了,python不管从代码风格还是涉及面上,都辣么辣么的惊艳。好吧,谈及下载python第三方模块,势必谈及pip,默认的pip源下载速度实在是不给力啊不给力。所以修改pip源吧。特别注意了
Stella981 Stella981
4年前
Beyond Compare的使用小技巧
作为一名程序员,日常学习中需要学习并模仿他人的代码,可有时运行结果不一致,而肉眼很难找出两个代码文件之间细微的差别,这时候就需要文件对比“神器”—BeyondCompare。BeyondCompare 作为一款强大又专业的文件对比工具,不仅可以对比文本差异,甚至连图片、二进制文件也可以进行比对。接下来,小编为大家介绍BeyondCompare的一些
Stella981 Stella981
4年前
Intel Pin
这篇文章主要介绍一下IntelPin在JIT模式和Probe模式下对库换数的替换,以及实现中有哪写需要注意的地方。JIT模式就是对插桩的代码进行即时编译,然后缓存起来使用Probe模式就是在要插桩的函数入口前面插入一条跳转指令,跳转到新的替换函数处执行,不在原来执行代码上进行修改具体的大家可以参考Pin官方手册https://softwa
Wesley13 Wesley13
4年前
Java GUI 单机版五子棋
  前言  刚开始学java时接触到GUI,一时兴起写了个五子棋,五子棋的关键点在于判断输赢,其他的都没什么,现在翻出来整理并记录下来,不足之处还望各位路过的大佬多多指教。  代码实现  代码不多,四百多行,全都在这个类里面,直接运行main函数就可以看到效果,JDK用的是1.7@SuppressWarning
Stella981 Stella981
4年前
Android 网络性能监控方案
无论是Androidapp还是Jar应用,代码一旦分发出去,都会以某种形式处于不可信环境中,难免被有心人分析破解。隐藏在代码中的秘密,无论是私有算法,或是私有协议,或者是加解密秘钥,都可能被攻击者破解出来,然后侵犯原作者的商业利益或知识产权。所以应用被逆向破解是商业风险源头之一。1:移动应用安全现状分析根据工信
Wesley13 Wesley13
4年前
PHP程序员应具有什么样的能力
php程序员应具有什么样的能力,才能更好的完成工作,才会有更好的发展方向呢?在中国我想您不会写一辈子代码的,过了黄金期,您又怎么办呢?看了本文后,希望对您会有所帮助。一    php能力1,了解阶段,您能写一些代码,因为那是在手册和google的帮助下完成的。变量乱定义,N多函数不知道,做起事来很慢,想到什么
Wesley13 Wesley13
4年前
CSS 清除浮动 伪类
参考链接:https://www.cnblogs.com/yingsu/p/7261904.html不清楚浮动的结果和影响不再描述,清除浮动的代码别处也有很多,每种方法都有十分简洁的代码,我今天学到的是有伪类来清除浮动。他的原理简单来说就是再已经浮动的元素后面添加一个什么也没有的元素,以此来消除子元素因为浮动而让父元素塌陷的一种解决办法。
Stella981 Stella981
4年前
Android模块化初体验及教程
Android模块化一直是Android开发届一个很火的话题,因为公司业务太多,代码越来越臃肿,越来越难维护,为了提升开发效率,减低代码的维护成本,所以采取了模块化开发方案。我们知道,模块化其实就是讲每个业务,拆分成每个独立的模块,然后通过某种协议来达到模块与模块之间的通信。一般公司的项目的结构大概的如下:!(h