Fork me on GitHub

2012年11月14日

摘要: 通常我们通过代码混淆、加密的形式达到软件保护的目的。在Web开发里我们接触过的可能就是JS代码加密了,可以通过对JS代码进行混淆、加密从而实现对核心JS代码的保护。如果没有接触过的可以在这里简单了解一下,这次我们就不去细说了。在以前Win32的软件中,加壳脱壳的技术已经发展的非常成熟,国内有大名鼎鼎的看雪、吾爱破解等论坛,三四年前还在上学时,论坛里的大牛一直都是自己的偶像。而.NET程序因为编译结果不是机器代码语言,而是IL语言,所以加壳脱壳相关的软件还不是很多,我搜索到了一些,如VS自带的DotFuscator、.NET Reactor、xeoncode等,这次我们就简单介绍下手边有的.NE 阅读全文
posted @ 2012-11-14 18:06 HackerVirus 阅读(1908) 评论(0) 推荐(0)
摘要: python的性能和计算能力一直被吐槽,从未被超越,越是这样越应该反省平常在使用的过程当中应当注意哪些优化措施,能让我们的程序运行得更快。总结一下自己平常在使用 python的过程当中所导致的性能杀死:1.内置类型方面:python 内部的变量是分为可变类型和不可变类型,这里说的可变与不可变不是说变量与常量的区别,而是关于对象的生命周期问题。假设一个python 原生字符串:?_str ="Hello"id(str) =33738016#随机值_str +="World"id(str) =33738056从上面可以看出, id() 值是变了,意味着什么? 阅读全文
posted @ 2012-11-14 16:12 HackerVirus 阅读(152) 评论(0) 推荐(0)
摘要: 重意味着严谨、繁琐,轻则意味着迅捷、零散。应当轻还是重?这是个问题通过这次的阅读任务,我想从这两个方面谈软件工程的轻与重:开发流程模式 与 开发团队模式开发流程模式的轻与重:Managing the development of large software systems: concepts and techniques理想的瀑布模型:系统需求——>软件需求——>分析——>程序设计——>编码——>测试——>运行animplementation steps to develop a large computer program for delivery to 阅读全文
posted @ 2012-11-14 15:22 HackerVirus 阅读(196) 评论(0) 推荐(0)
摘要: WPF经典编程模式-MVVM示例讲解本篇从两个方面来讨论MVVM模式:MVVM理论知识MVVM示例讲解一,MVVM理论知识 从上一篇文章中,我们已经知道,WPF技术的主要特点是数据驱动UI,所以在使用WPF技术开发的过程中是以数据为核心的,WPF提供了数据绑定机制,当数据发生变化时,WPF会自动发出通知去更新UI。 我们使用模式,一般是想达到高内聚低耦合。在WPF开发中,经典的编程模式是MVVM,是为WPF量身定做的模式,该模式充分利用了WPF的数据绑定机制,最大限度地降低了Xmal文件和CS文件的耦合度,也就是UI显示和逻辑代码的耦合度,如需要更换界面时,逻辑代码修改很少,甚至不用修改。.. 阅读全文
posted @ 2012-11-14 15:21 HackerVirus 阅读(357) 评论(0) 推荐(0)
摘要: 遇到问题时的处理思路评估故障重要性,紧急程度,适当的报告,如果需要,可寻求帮助;及时处理故障,“糙、快、猛”,见效快,消除影响-治标;故障善后要治本,聪明靠谱的人不会让故障发生第二次;合理安排工作哦,保证处理问题的节奏感-好的反馈机制有利于解决问题;故障是日常工作积累的集中反馈;行胜于言,自己得到的数据分析比听到的重要;如何判断系统的瓶颈或故障点日常工作:监控是否到位,日志是否准确全面(提高故障定位率和定位速度);必要的技术手段:cpu, disk io(iops or throughput), network(初步诊断);熟悉自己负责的系统,逐步搞懂原理;“源码面前,了无秘密”,对非自己开发 阅读全文
posted @ 2012-11-14 13:54 HackerVirus 阅读(276) 评论(0) 推荐(0)
摘要: 上次说到了在Eclipse中配置并启动Solr,这次来说一下schema.xml中的配置。schema.xml做什么?SOLR加载数据,创建索引和数据时,核心数据结构的配置文件是schema.xml,该配置文件主要用于配置数据源,字段类型定义,搜索类型定义等。schema.xml的配置直接影响搜索结果的准确性与效率。<types></types>节点types节点主要用于搜索类型的定义,这里给出常用类型的定义。 1 <fieldType name="string" class="solr.StrField" sortMiss 阅读全文
posted @ 2012-11-14 13:54 HackerVirus 阅读(196) 评论(0) 推荐(0)

2012年11月13日

摘要: 详细设计是V模型或者瀑布开发中的一个重要的环节。这个阶段负责把概要设计进行细化,并为代码书写作出指导。可以说是一个承上启下的重要环节。但是现实的情况真的如此吗?我们来反思一下:(1)详细设计和代码的吻合程度有多高? 假设在项目中,代码在测试后修改完毕提交后,并不修改详细设计,则详细设计和代码之间并不吻合,并且很大程度上,吻合度会非常低。 如果详细设计和最终的代码并不吻合,那么这样的详细设计并不能给将来的维护带来任何帮助。 如果详细设计并不能给后续带来帮助,为什么要书写它呢?因为——详细设计是用来指导代码书写的。(2)详细设计对代码的指导意义有多大? 详细设计的类图是用来定义类框架之间的关系的; 阅读全文
posted @ 2012-11-13 18:15 HackerVirus 阅读(278) 评论(0) 推荐(0)
摘要: 背景Byteart Retail是一个面向领域驱动的.NET企业级应用架构设计案例,到目前为止已经发布了三个版本。有关这三个版本的详细介绍,请参考以下几个链接:V1:《EntityFramework之领域驱动设计实践【后续篇】:基于EF 4.3.1 Code First的领域驱动设计实践案例》V2:《Byteart Retail V2 - 基于Entity Framework Code First的领域驱动设计实践案例》V3:《Byteart Retail V3 - 全新的面向.NET与领域驱动设计的企业应用实践案例》为了向读者朋友详细介绍Byteart Retail项目,我打算写一个系列专题 阅读全文
posted @ 2012-11-13 17:09 HackerVirus 阅读(237) 评论(0) 推荐(0)
摘要: HBase: 看上去很美2012-11-13 11:54 by zhenjing, 1035 阅读,6评论,收藏,编辑缘起随着hadoop系列的兴起,基于HDFS的大规模KV存储系统HBase也进入“大规模使用阶段”。网上的Hbase资料很多,学习成本正在下降。从公开的资料看,国外facebook、国内taobao均宣称在线上环境大规模使用hbase。一切都让人很兴奋。于是,在项目中引入Hbase做存储,最终却选择放弃。HBase设计:看上去很美HBase是模仿google bigtable的开源产品,又是hadoop的衍生品,hadoop作为离线计算系统已经得到业界的普遍认可,并经过N多公司 阅读全文
posted @ 2012-11-13 17:07 HackerVirus 阅读(276) 评论(0) 推荐(0)
摘要: Solr我还是个菜鸟,写这一些文章只是记录一下最近一段时间学习Solr的心得。Solr是什么?最近我学Solr的时候,一直看到一句话,Solr是一个可供企业使用的、基于 Lucene 的开箱即用的搜索服务器。当时想了很久没看懂这句话是什么意思,什么是搜索服务器?当接触的深了才发现,所谓的搜索服务器,就是能够在服务器(Tomcat,Jetty)中运行的搜索程序的一个工程。Solr能做什么?了解过Lucene的人都知道,Lucene在做两件事情,索引管理与搜索,Solr同样也不例外,做的也是这两件事情,只不过使之更加简单化。如果对Lucene还不太了解,推荐看一下觉先的博客:http://www. 阅读全文
posted @ 2012-11-13 11:08 HackerVirus 阅读(184) 评论(0) 推荐(0)