Category: 程序员

一行代码修改引起的血案

最近在做代码审查 Code Review 并顺便使用了商业的软件 Resharper (Visual Studio 的插件, 有 30 天试用) Resharper 一个很好的功能就是能把没有用的代码变灰, 这样哪几行代码没有用就一目了然. 像这行代码, Resharper 很清楚的提示说没有用, 因为 activeTool 是枚举类型, 和 null 判断永远为 false, 这样 if 里面的代码就永远不可能被执行, 所以标记成灰的了. 这个函数不是我写的(模块也不是我负责的), …

初步使用 Resharper (Visual Studio 插件)

最近在评估公司需不需要一个 Visual Studio 的插件: Resharper. Resharper 是商业软件, 而且价钱不便宜, 一个一套 License 是200 镑左右. 这插件的目的就是把 VS 变得更强大好用. 比如以下C#代码将一个列表拷贝到另一个(只是演示用) using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { …

年底了, 你涨工资了么?

在英国的公司, 一般是每一年底都会进行 salary review, 也就是会评估一下你是否得需要涨工资. 一般情况就是每年涨个 10%, 有的公司会每 6 个月进行评估一次. 年底了, 那天在公司庆祝拿下一大单, 开香槟, 我很神秘的给属下每个送去一信封, 里面有这么一信: Further to our recent discussions, I have great pleasure in confirming your salary will …

中文程序带来的困扰

在 Amazon 上弄了台 windows 2008 的服务器, 装上SVN,把代码拉下来, 然后编译不通过, Visual Studio 下报很多错, 而且也不是写得很明白, 后来发现原因是代码里有中文, 然后系统区域语言还是英文, 导致在 Visual Studio 里乱码. 为什么有中文呢? 因为开发人员先开发中文的, 在VS里填菜单选项里填, 比如 “文件” 然后, VS就自动把名字也弄成 “文件” 结果就有 “文件menuitem_click” 之类的. …

.NET 程序的保护 – 混淆

几乎所有软件程序都能被破解, 只是时间长短的问题, 国外有一个有名的组织是 ZeroDay 意思就是不用一天就可以破解任何软件. 有两种桌面程序,最常见的就是用 C++/Delphi 编写的 原生 native 代码,这样写出来的软件是不容易看到源代码的,因为编译器做了优化和处理.这样的代码的优点是执行速度快,效率高, 但是关键部分的代码,比如 License 验证,有经验的黑客还是很容易破解的. 俄罗斯有一个很有名的商业软件 VMProtect, 用于保护 native 代码,保护强度非常不错, 加壳,压缩,虚拟指令,防虚拟器,防调试程序等功能,保护出来的文件有时候会被一些杀毒软件认为是恶意的程序.因为用到了一些特殊指令,而杀毒软件无法分析.这种情况下可以通过联系杀毒软件公司将程序加入白名单里. .NET 程序是另一大类别.有点和 Java 类似, .NET 程序编译出来不是 本地代码 (Native),而是中间代码(类似JAVA的 ByteCode). …

中年男人对电子产品的热爱

每个人都有自己喜爱的东西. 我老婆喜欢黄的和白的, 也就是手饰. 逢年过节给她个小惊喜总是能让她高兴好久. 我呢, 则是对电子产品有着热爱, 如果让我逛商场, 我估计两分钟就累得不行了, 可是如果是逛什么电子产品(中关村之类), 逛个一天也不会累. 喜欢折腾VPS, 烧了不少钱. 复古的学习机(小霸王),也很喜欢. 树莓PI,家里已经有四个了. 然后就是键盘型的树莓PI, 有点类似学习机. 然后就是90年代的古玩电脑学习机, 步步高学生电脑, 最近又花了200刀(USDT)海淘了 步步高98学生电脑. 还有就是搞了小电脑(NUC = Next Unit of Computing) 机箱, 远程连接车库的HPZ800服务器(2015年买的, XEON …

免费的 Visual Studio 2013 社区版

程序员应该都知道 Visual Studio, 这个是微软的得意之作.是世界上最好用的程序设计工具 IDE. 现在 2013 社区版是免费的! 个人开发,和开源什么的都不需要费用.统统都是免费的. VS2013社区版本可以在这个URL下载: http://www.visualstudio.com/en-us/visual-studio-community-vs.aspx 之前我机器装了 VS2012 和 VS2010. 都装在C盘, C盘的SSD空间已经是红色的了,只有不到 10G, 于是我决定把这两个工具都删掉. 卸载 VS2010 VS2010 的安装程序并不能很彻底的删除VS2010,特别是你从控制面版里删除,因为这样会有大量的组件不会被移除,它们也不能被使用,于是就浪费了硬盘空间.微软提供了一个删除程序,可以比较彻底的删除VS2010.可以在这个网址下载这个小工具: https://helloacm.com/static/vs2010_uninstall-rtm.enu.exe 卸载 VS2012 VS2012 就好很多,可以通过下面的命令行启动VS2012 的安装程序用于较为彻底的删除VS2012. …