设计模式


设计模式

设计原则: 1 开闭 2 设计

阅读全文 »


关于MQ和NoSql的应用


.net开发中的MQ与NoSql

阅读全文 »


mac直接删除文件


在mac中填写指令 直接删除文件

  1. 使用Spotlight(command+space)搜索Automator
  2. 打开Automator 选择新建
  3. 选择 “服务”类型
  4. 在“操作”“变量”后的搜索框中输入 “运行”(英文系统输入 run) 选择运行shell脚本
  5. 切换“传递输入”为“作为自变量” ,并输入如下代码:

    for f in “$@” do if test -d “$f” then rm -r “$f” else rm “$f” fi done

  6. “服务”收到选定的 选“文件或文件夹”
  7. 保存 (command+s),存储为任意名字,比如“删除此文件”

到此删除单个文件指令完成。 可以进入finder寻找任意不需要的文件,右键,寻找到服务,找到删除此文件,即可不经过垃圾桶直接完成删除。

阅读全文 »


邮件检查程序


mailcheck program

//姓名列表存在namelist.txt文档中,供以后处理方便
var text = File.ReadAllText("namelist.txt");

//执行读取操作
using (var reader = new StringReader(text))
{
    ReadNames(reader);
}   

//此处使用异步获取方式 防止程序的卡顿
public async void ReadNames(StringReader reader)
{
    string str;
    while ((str = await reader.ReadLineAsync()) != null)
    {
        if (String.IsNullOrWhiteSpace(str))
            continue;
        nameList.Add(str.Trim());
    }
}

阅读全文 »


why we code


why we code

2018年 我读的第一本书是《信息管理专业Python教程》

第一章就是 为什么要学习编程 书中说道: 编程的原因很多,大到为谋生去解决一个困难的数据分析问题,小到因为帮助别人解决一个问题而获得快乐。假定每个人都需要知道怎样编程,一旦学会编程,你就会想要用这个新技能做些什么了。

解决生活中实际的问题,是编程继续下去的原动力。

比如现在有这样的一个例子:

有个部门,员工每天需要发送工作总结,抄送领导。领导每天通过邮件了解部门工作情况,如果有同事没有发送邮件,领导可能需要了解情况。办法有人工检查,但是如果学习了编程,就可以通过编程的方式自动处理类似工作。

理解编程 从某种意义上说,需要养成两种技能: 首先 需要掌握编程语言本身–熟悉词汇与语法。能够准确的拼写这门新语言中的单词,并且掌握如何使用这门新语言正确地“造句”。 其次 学会讲故事。在写故事的过程中,通过文字和句式的组合,向读者传递思想。编故事的艺术与能力通过写作与反馈得以提高。在编程中,程序即故事,待解决的问题即传达的想法。

由以上的需求开始构思程序的组成。 首先需要确认每天需要发送邮件的人名列表,再获得每天发送的邮件,确认已发送的人名列表。 最后两个名单列表相比较,获得未发邮件人名列表。

下一篇开始写详细的编码过程。

阅读全文 »


记一次代码学习记录


记一次代码学习记录

    场景:生成6位验证码


    public int ComputeTotp(/*HashAlgorithm hashAlgorithm, ulong timestepNumber, string modifier = null*/)
    {
        var hashAlgorithm = new HMACSHA1();
        var timestepNumber = (ulong)DateTime.UtcNow.Ticks;

        byte[] bytes = BitConverter.GetBytes(IPAddress.HostToNetworkOrder((long)timestepNumber));
        var steam = new MemoryStream(bytes);
        byte[] array = hashAlgorithm.ComputeHash(/*Rfc6238AuthenticationService.ApplyModifier(bytes, modifier)*/steam);
        int num = (int)(array[array.Length - 1] & 15);
        int num2 = (int)(array[num] & 127) << 24 | (int)(array[num + 1] & 255) << 16 | (int)(array[num + 2] & 255) << 8 | (int)(array[num + 3] & 255);
        return num2 % 1000000;
    }

阅读全文 »


个人博客


打造个人博客

参考地址:

https://github.com/panxw/panxw.github.com
http://www.cnblogs.com/crazyacking/p/4678976.html

1 申请账号

申请github账号:

2 创建项目

在github个人项目中添加个人项目,点击+号,new repository。 输入Repository name,命名规则为 username.github.io,其中username可以替换。

3 拷贝代码

在本机安装git,参考地址:

http://windows.github.com/
http://mac.github.com/

选择本机地址,克隆创建好的项目到本地。

4 设计样式

结构

_includes

_layouts

_posts

_site

asserts

css

fonts

js

posts

样式

关于样式,效果问题。需要一定的前端知识。

5 编写文章

markdown语法手册:

https://www.appinn.com/markdown/

jekyll中文网站:

https://www.jekyll.com.cn/

6 上传代码

设置本地的github账户信息:

git config --global user.name xxxxx	
git config --global user.email xxxxx@xxxxx.com

阅读全文 »


新年快乐


新年快乐

15年11月到了上海 恍恍惚惚的做了好几个项目 活干了不少 但是都还没看到项目开花结果 我就走了 到现在算下来 这是我来到上海工作的第二个年头了 换了家新公司 做外包的 每天匆匆忙忙 每天也都感觉自己收获许多 做的活更多了 结果出的也快 成或不成 一两个月也就见分晓了 愿之后的每一天都能进步。

阅读全文 »