聚合文章列表
16 浏览

新手玩CSS中的一些黑科技

哎哎1、鼠标移进网页里,不见了==*{cursor:none!important;}2、简单的文字模糊效果*{color:transparent;text-shadow:#111005px;}3、多重边框.div{box-shadow:0006pxrgba(0,0,0,0.2),00012pxrgba(0,0,0,0.2),00018pxrgba(0,0,0,0.2),00024pxrgba(0,0,0,0.2);height:200px;margin:50pxauto;width:400px}4、实时编辑CSSbody{color:blue}5、CSS中简单运算.div{width:calc(100%-500px);}6、border-radius因为基本上很多人都是这么用的:.div{border-radi

CSS 2017-12-27 发布
19 浏览

vue之computed和watch

计算属性computed侦听器or观察者watch一直以来对computed和watch一知半解,用的时候就迷迷糊糊的,今天仔细看了看文档,突然茅塞顿开,原来就是这么简单啊:computed,通过别人改变自己watch,通过自己改变别人需要注意的是,computed会缓存数据,只有在满足以下两个条件时才会重新计算:1、存在依赖型数据,即存在于VUE的data等对象的实下的实例数据2、依赖型数据发生改变如果不满足以上两个条件,computed不会重新计算,只会拿缓存的数据。而watch,只要调用他,他就会执行。注意:computed会缓存数据,所以进行开销较大的操作时不适合用它。非依赖型数据发生改变时,这是使用methods方法即可。computed也可以通过自己改变别人computed默认只有getter,不过在需要时也可以提供一个setter:computed:{fullName:{//getterget:function(){

vue.js 2017-12-27 发布
30 浏览

基于Vue & SVG 的 icon 解决方案

Icon解决方案我们说Icon有两种场景.UI提供png格式的图标;UI提供SVG,或者有时候直接是我们自己寻找图标,比如做一些CMS后台的时候.png格式的图标就不关心了,我们说SVG的图标.使用SVG比较好一点:保真,颜色可以随意改来改去啥啥的在之前在之前一般在做UI不给图标,需要自己找图标的项目的时候,过程是:打开iconfont,查找需要的图标,点击加入购物车按钮.把所有加入购物车的图标形成一个项目.下载项目在自己的项目中引入iconfont.css,以及放置下载下来的资源文件.这种方式在:需要新增图标的时候,就蛮麻烦.然后可能项目A使用到了图标12345,项目B使用到了图标123.此时如果项目B直接使用A项目的图标资源(因为懒啊),就会导致45没有用到但是也加载了.然后换一种SVG的使用方式,每次都只下载一个svg文件下来,通过imgsrc="xx.svg"的方式引入.这样方式不能修改

vue.js 2017-12-27 发布
AD 友情赞助
27 浏览

jquery插件开发入门

$.extend()函数用于将一个或多个对象的内容合并到目标对象并返回目标对象(第一个对象),有点写轮眼的味道,下面试试它的用法$.extend()基本用法,可以看出$.extend()返回对象中的所有属性(可理解为属性求和),且属性值向后取值对象属性相同,属性值不同$.extend({name:'yh',num:9},{name:'ylone',num:22},{name:'ylone666',num:666}):point_down:{name:"ylone666",num:666}对象属性不同,且目标对象<其他对象$.extend({name:'yh',num:9},{name:'ylone',num:22,cool:true},{name:'ylone666',num:666}):point_down:{name:"ylone666",num:666,cool:true}对象属性不同,且目标对象>其他对象$.extend({name:'yh',num:9,cool:true},{name:'ylon

jQuery 2017-12-27 发布
23 浏览

从源码解析vue响应式原理

写在前面(距离上一次写文章已经过去了四个月,羞愧...)这几个月对vue的使用不少,但是自觉地始终停留在比较粗浅的层面,一直无法提升,所以尝试着开始阅读源码。文中内容仅代表个人理解,如果错误,欢迎指正。Vue中一个显著特性是数据响应式系统:当数据被修改时,视图会相应更新。从而方便的完成状态管理。官方文档中对此进行了简要的描述,本文将结合vuejs的源码,做出进一步的解析。基本概念首先简单介绍一些在响应式系统中重要的概念。datavue实例中的数据项observer数据属性的观察者,监控对象的读写操作。dep(dependence的缩写),字面意思是“依赖”,扮演角色是消息订阅器,拥有收集订阅者、发布更新的功能。watcher消息订阅者,可以订阅dep,之后接受dep发布的更新并执行对应视图或者表达式的更新。dep和watcherdep和watcher的关系,可以理解为:dep是报纸,watcher是订阅了报纸的人,如果他们建立了订阅的关系,那么每当报纸有更新的时候,就会通知对应的订阅者们。view暂且认为就是在

vue.js 2017-12-27 发布
34 浏览

weex踩坑之旅第三弹 ~ 在weex中集成font-awesome

为了完成一个APP开发,图标是必不可少,使用图片图标加载速度慢,编程复杂。可以考虑使用字体图标库,阿里有一套图标库http://www.iconfont.cn/collec...,大家可以借鉴,但我更偏向于使用font-awesome(官网http://fontawesome.io/icons)。那么,如何将其集成到weex开发中呢?这并不是一个简单的事情。一开始我尝试使用在vue中使用style-loader,css-loader加载css文件,使用file-loader加载字体文件,web环境测试ok,但是部署到真机时,直接报错!这种传统的加载字体库的方式显然不适用于weex开发,这是因为在native环境中根本不支持dom,bom,而style-loader,css-loader插件中有大量的dom操作怎么办?查看weex文档发现一个有用的模块,现在发现,官方文档也没有大家说的那么不堪,仔细看看还是有很多可以借鉴和学习的地方,只不过一开始不是很熟悉,所以感觉晦涩难懂。在weex中集成font-awesome1.获取ttf字体文件

vue.js 2017-12-27 发布
AD 友情赞助
19 浏览

js base64与canvas base64

一、jsbase64获取到上传的文件myfile,创建一个fileRead文件对象,使用readAsDataURL方法可以将读取到的文件编码成DataURL。文件加载成功后,e.target.result就是文件图片所对应的base64编码。直接赋值给img的src,就能显示图片。functionsub(){varmyfile=document.getElementById("myfile").files[0];varfileRead=newFileReader();fileRead.readAsDataURL(myfile);fileRead.onload=function(e){console.log(e);varbase64=e.target.result;console.log

HTML5 2017-09-22 发布
19 浏览

C# log4net日志

引用log4net.dll库[log4net.dll库下载地址][1]AssemblyInfo.cs最后一行添加如下代码:[assembly:log4net.Config.XmlConfigurator(ConfigFile="log4net.config",ConfigFileExtension="config",Watch=true)]log4net.config注意把这个文件的属性”复制到输出目录”值改为”始终复制”,不然会不生效<?xmlversion="1.0"encoding="utf-8"?><configuration><configSections><sectionname="log4net"type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/></configSections><log4net>

c# 2017-12-27 发布
24 浏览

以List为例浅谈C#的学习方法

以List为例浅谈C#的学习方法前言:关于学习方法的讨论其实是个比较模糊的概念,对于List的介绍的资料其实已经很多了,但是一般是介绍List本身,我打算分享的是,以温故List为例,来获取新知识的这么一个过程。这里的新知识也不是什么新知识,依旧是算法、泛型、迭代器和GC回收机制等相关术语,只不过通过对List再分析,对这些东西的运用有了些新的认知,我要分享的就是再分析的这么一个过程,姑且允许我将其称为学习方法吧,最起码它是比较适合我的一种学习方法。另外,如果对List已经了解很深或者兴趣不大的话,可以直接跳过1、2节一大堆无聊的测试,直接看总结,甚至跳过此文也未尝不可。1、抛砖(List的关键属性Capacity)前言已经说明是温故List,所以List是什么我也不打算花篇幅再次介绍(更何况一点点的介绍其扩容机制、迭代器和一些内部方法篇幅也会比较大,那就成了介绍List本身了,个人也不见得能总结得多好),这里我温故的就是List的扩容机制。用反编译工具看过List源码的同学,应该都知道List对象在创建的时候其私有变量_d

.Net 2017-12-27 发布
AD 友情赞助
18 浏览

移动端C#病毒“东山再起”,利用知名应用通信实现远控隐私窃取

伴随着手机的全面普及和移动互联网的发展,以移动终端为平台的攻防对抗也愈演愈烈。针对日益升级的恶意代码检测技术,恶意攻击者的反查杀手段相应也在不断变化应对。早在2015年,安天移动安全就发现一例利用C#编写以逃避查杀的恶意代码,并对其进行了技术分析。近日,安天移动安全联合猎豹移动安全实验室又捕获一例类似的病毒,该病毒使用MonoDroid框架进行开发(MoniDroid是以C#语言和部分.Net基类库为核心,使用mono虚拟机为Android平台开发应用的代码框架),MonoDroid框架开发的特点是开发者编写的逻辑代码都会最终编译在dll文件中,而不是常规的dex文件中,因而常规的反病毒检测手段对这类应用一般都会失效。此外,该病毒使用了知名应用Telegram的Bot进行通信,相较于传统的C&C域名通信具有极强的隐蔽性。安天移动安全团队联合猎豹移动安全实验室对其进行了深入分析并发布技术报告,全文如下。一、样本信息二、静态分析首先从AM文件中,可以看到该病毒申请了一系列与窃密行为相关的权限:此外,在AM文件中还看到其注册了各种r

.Net 2017-12-27 发布
25 浏览

日存储量超10TB,海量数据挑战下腾讯全链路日志监控平台实践

本文主要介绍腾讯SNG开发全链路日志监控平台所经历的挑战及解决方案。背景全链路日志监控在现在盛行的微服务和分布式环境下,能有效地提高问题定位分析效率,成为开发和运维利器。当前已有开源解决方案和成熟的厂商提供,比如Twitter的zipkin,基于Google的Dapper论文设计开发了分布式跟踪系统,用于采集各处理节点间的日志和耗时信息,帮助用户排查请求链路的异常环节。在有统一RPC中间件框架的业务部门比较容易接入zipkin,但织云全链路日志监控平台(后成全链路)面对的实际业务场景更为复杂。全链路日志监控实现遇到了更多的挑战,全链路技术选型经历了从开源组件到自研的变化。当前织云全链路日志监控平台已接入空间和视频云业务日志数据,每日数据存储量10TB,可做到1/10的压缩比,峰值流量30GB/s。我们先分享一个案例场景:2017年8月31日21:40~21:50,X业务模块指标异常,成功率由99.988%降为97.325%,如下图所示:收到成功率异常告警后

消息系统 2017-12-27 发布
27 浏览

Heron:来自Twitter的新一代流处理引擎应用篇

【导语】本文对比了Heron和常见的流处理项目,包括Storm、Flink、SparkStreaming和KafkaStreams,归纳了系统选型的要点。此外实践了Heron的一个案例,以及讨论了Heron在这一年开发的新特性。在今年6月期的“基础篇”中,我们通过学习Heron[1][2][3]的基本概念、整体架构和核心组件等内容,对Heron的设计、运行等方面有了基本的了解。在这一期的“应用篇”中,我们将Heron与其他流行的实时流处理系统(ApacheStorm[4][5]、ApacheFlink[6]、ApacheSparkStreaming[7]和ApacheKafkaStreams[8])进行比较。在此基础上,我们再介绍如何在实际应用中进行系统选型。然后我们将分享一个简单的案例应用。最后我们会介绍在即将完结的2017年里Heron有哪些新的进展。实时流处理系统比较与选型当前流行的实时流处理系统主要包括Apache基金会旗下的ApacheStorm、ApacheFlink、ApacheSparkStrea

消息系统 2017-12-27 发布
AD 友情赞助
34 浏览

八.利用springAMQP实现异步消息队列的日志管理

八.利用springAMQP实现异步消息队列的日志管理经过前段时间的学习和铺垫,已经对springamqp有了大概的了解。俗话说学以致用,今天就利用springAMQP来完成一个日志管理模块。大概的需求是这样的:系统中有很多地方需要记录操作日志,比如登录、退出、查询等,如果将记录日志这个操作掺杂在主要的业务逻辑当中,势必会增加响应的时间,对客户来说是一种不好的体验。所以想到用异步消息队列来进行优化。系统处理完主要业务逻辑之后,将日志的相关实体发布到特定Queue下,然后设置一个监听器,监该Queue的消息并做处理。客户不用等待日志的处理就可直接返回。大概的业务流程如下图所示。1.首先建立日志的数据表和实体,数据表起名为t_log。实体如下。主要包含操作者,操作的事件,操作时间等几个主要参数。packagecom.xdx.entity;importjava.util.Date;publicclassTLog{privateIntegerlogId;privateStringoperator;privat

消息系统 2017-12-27 发布
14 浏览

2017年终盘点:请留意这七项科学技术的最新进展

2017已经走向尾声,在新年到来之前,外媒TNW对本年度的科学技术进行了一番年终盘点,并且特别介绍的其中七项。(1)首先,量子计算机终于开始从理论走向了实践。IBM、Google、微软都在打造原型系统,希望这些机器可在未来发挥出难以想象的能量。其中,IBM还对其量子系统执行了仿真(此前尚未有人做到过);此外该公司研究人员打造了一套包含50个量子比特的系统。(图自:IBM)在中国,我们见到了迈向未来互联网的第一步。科学家们已能够在地球上,向太空中的卫星传送加密信息(墨子号)。对于一位还记得转盘式电话的人,量子通信的未来令人难以想象。(2)其次,人工智能似乎做好了迎接其“黄金时间”的准备:(Vincent和一款AI的作品)如果违反物理规律还不够让你感到恐惧,那么缺乏道德约束的杀戮机器人,一定会让你更接近美国当代著名小说家艾萨克·阿西莫夫(IsaacAsimov)和著名导演乔治·卢卡斯(GeorgeLucas)的梦境。2017年里,我们已经不再谈论“机器崛起”,而是忙于正在起步的“机器学习”。

程序员 2017-12-27 发布
15 浏览

程序员年薪50万引起争议!网友争论:工资是不是太高了?

这个问题是我今天逛论坛看到的,大意就是一位工作了七年的程序员大佬说了下他的工资,然后底下留言就爆炸了,各种酸,各种我上我也行的言论出来了,今天就给大家一起看看这个问题吧,首先说一下我赞同的一个观点:程序员,是介于"泥瓦匠"和"建筑师"之间的一种职业。"泥瓦匠"的薪水高,主要是由于工具廉价升级可以几乎无限的提升生产力。建筑工地上的砌墙工人,砌十年,每天提升的效率有两倍了不起了。而今天随着语言的进步,框架的普及,在几年内,"泥瓦匠"就鸟枪换炮了-关键是这些升级还不太需要钱(Opensource其实才是程序员团体最好的工会)。。。他们几乎无成本的开着卡车,在使用自动化流水线和机械手在砌墙了。效率提升了几十上百倍,薪水高一点并不过分吧?"建筑师"的薪水高,主要是这一行没有严密的等级机制。你听说过建筑工地的泥瓦匠能成为设计师吗?而计算机行业基本上就那么几个专业,毕业之后,你今天可以砌墙,明天可以装窗户,后天可能查水电泄露,大后天可能就设计大楼了。整个薪水提升的空间也很高。更大的方面说,程序的本质,是虚拟世界的规则。给制定和维护规则的人多发

程序员 2016-02-18 发布
20 浏览

程序员对C语言的拙劣看法

我对C语言的拙劣看法扯买房实在不擅长,咱门还是来聊程序吧。C语言是面向过程的,而C++是面向对象的C和C++的区别:C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“设计这个概念已经被融入到C++之中”。C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。

程序员 1900-01-01 发布
16 浏览

京东京麦:微服务架构下的高可用网关与容错实践

自微服务概念诞生以来,众多的软件架构都在践行着这一优秀的设计理念。各自的系统在这一指导思想下收获了优雅的可维护性,但一方面也给接口调用提出了新的要求。比如众多的API调用急需一个统一的入口来支持客户端的调用。在这种情况下APIGateway诞生,我们将接入、路由、限流等功能统一由网关负责,各自的服务提供方专注于业务逻辑的实现,从而给客户端调用提供了一个稳健的服务调用环境。之后,我们在网关大调用量的情况下,还要保证网关的可降级、可限流、可隔离等等一系列容错能力。今天借社群这个平台,跟大家分享微服务下京麦开放平台的网关实现,以及我们如何抗量、如何在大访问量的情况下做容错处理。重点介绍容错的方法及每种容错方法的使用场景与经验。

软件架构 2017-12-27 发布
18 浏览

2017双11技术揭秘—阿里巴巴数据库技术架构演进

摘要:每年电商双11大促对阿里技术人都是一次大考,对阿里数据库团队更是如此。经过9年的发展,双11单日交易额从2009年的0.5亿一路攀升到2017年的1682亿,秒级交易创建峰值达到了32.5万笔/秒。支撑这一切业务指标的背后,是底层技术体系的一次次迭代升级。作者:谌文涛(俞月)每年电商双11大促对阿里技术人都是一次大考,对阿里数据库团队更是如此。经过9年的发展,双11单日交易额从2009年的0.5亿一路攀升到2017年的1682亿,秒级交易创建峰值达到了32.5万笔/秒。支撑这一切业务指标的背后,是底层技术体系的一次次迭代升级。阿里巴巴数据库系统经历了10多年的发展,今年正式确定从第三代大规模分库分表向第四代X-DB分布式数据库系统演进的目标。X-DB分布式数据库的落地已经在2017年双11大促中获得了可行性验证,同时底层开始引入存储计算分离架构。分布式在系统稳定性、容灾能力、容量扩展性、技术体系内聚性上有了质的提升,今年双11开启了阿里数据库技术架构新的篇章。本文以阿里电商交易链路中的核心系统库存中心为例,一

软件架构 2017-12-27 发布
17 浏览

微服务设计-note

技术债往往因为一些业务的紧急需要而快速上线一些特性,而忽略了技术的规则和原则.积累的这些债务,总一天是是要偿还的.集中治理和领导架构师的部分职责是治理治理通过评估干系人的需求、当前情况及下一步的可能性来确保企业目标的达成,通过排优先级和做决策来设定方向。对于已经达成一致的方向和目标进行监督通过微服务系统建设团队-全生命周期微服务架构中存在多个自治的代码库,每个代码库都有着自己独立的生命周期,这就给更多人提供了对单个服务负责的机会,而当这些人在单个服务上面得到足够锻炼之后,就可以给他们更多的责任,从而帮助他们逐步达成自己的职业目标.建设团队对于技术领导人来说,更重要的事情是帮助你的队友成长,帮助他们理解这个愿景,并保证他们可以积极地参与到愿景的实现和调整中来单独的服务,全生命周期负责.更加的锻炼成员.3章如何构建微服务核心原则:松耦合高内聚能够独立修改及部署单个服务而不需要修改系统的其他部分如果你要改变某个行为的话,最好能够只在一个地方进行修改,然后就可以尽快地发布服务边界避免过早划分尽量根据业务领域划分服务,

软件架构 2017-12-27 发布
19 浏览

2018年有关云的预言

正当12月,是科技界的“预言季”。专家的预言总让人喜闻乐见,看这些预言能否挺过明年就更有意思了。一年光景对云计算来说可谓天长日久(回想一下2017年的所有新进展),但是我很乐意维护这个悠久的传统,就是问问自己的水晶球未来会怎样。闲话少说,我们一起来看看2018年有关云的预言。云2.0成为主流对于今天云中出现的所有令人难以置信的创新,我们所做的绝大多数东西仍然是基本的计算和存储。是的,在创建第一类虚拟机管理程序后逾16年,超过85%的虚拟化实际上只是更好的虚拟化——仍然全年侯地运行在别人的数据中心。好消息是我们只是遵循所有颠覆性创新的重复模式。在面临颠覆时,消费者最初都试图像使用以前的技术那样使用它。还记得数码摄影的引进吧,当我们用数码相机来滥用这种技术时,其形式和功能看起来像胶片相机一样可疑。现在无论我们做什么都少不了数码相机,从我们的智能手机到笔记本电脑到眼镜,甚至到家庭助理(“Alexa,能帮我照一张吓人的照片吗?”)。云领域也发生了相同的事情,真正的颠覆性创新(我称之为云2.0)终于成为主流。云2.0关乎平台服务、无服务

软件架构 2017-12-27 发布
AD 友情赞助