开发一款提高效率工作的命令行程序
Posted 坚持每天写程序
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了开发一款提高效率工作的命令行程序相关的知识,希望对你有一定的参考价值。
开发工作中我们常用到"时间戳和时间"、"生成guid"、"模拟身份证号",来模拟数据校验和显示;每一次都去找在线工具,确实可以,但我觉得挺麻烦,于是乎想到了自定义一个命令行。
目前我已经实现以下功能:
Usage: [options]
Options:
-?|-about Show help information.
-ts-now 当前时间戳
-ts 转换为时间戳
-t-now 当前时间
-t 转换为时间
-clear 清空
-echo 打印C#代码结果
-exit 退出
-guid-l 生成小写Guid
-guid-u 生成大写Guid
-snow 生成雪花id
-id-no 随机身份证号
具体怎样实现呢?
- 创建控制台应用并安装nuget包
McMaster.Extensions.CommandLineUtils
dotnet add package McMaster.Extensions.CommandLineUtils --version 4.0.2
或
NuGet\\Install-Package McMaster.Extensions.CommandLineUtils -Version 4.0.2
2. 创建命令
var app = new CommandLineApplication();
app.HelpOption("-?|-h|-help|-about");
var tsNow = app.Option("-ts-now", "当前时间戳", CommandOptionType.NoValue);
- 执行命令,
ExecuteUtils.Ts()
为自定义方法
app.OnExecute(() =>
if (tsNow.HasValue()) Console.WriteLine(ExecuteUtils.Ts());
以上就可以通过命令行参数执行相应代码了
参考官网:https://natemcmaster.github.io/CommandLineUtils/index.html
提高.Net程序猿工作效率的开发工具
做.NET软件工作已经10年了,从程序员做到高级程序员,再到技术主管,技术总监。见证了Visual Studio .NET 2003,Visul Studio 2005, Visual Studio Team System 2008, Visual Studio 2010 Ultimate,Visual Studio 2013一系列近5个版本的变化与亲自使用。每一个版本都有深刻有意义的变革。Visual Studio .NET 2003 极力推广的Web Services虽然没有很流行,但是它开发ASP.NET的编译模型很快得到公司的技术部认可,完全重写了原来的ASP系统。
很幸运工作以来一直是.NET + SQL Server 的开发工作,其它比如Oracle或是Android Java类的技术工作并没有很长时间的经历,所以我推荐的工作就侧重于.NET + SQL Server类的工具。
1 ReSharper 7.1
现在电脑开发人员硬件的标准配置是i5+8G,在内存已经足够用的情况下,推荐安装好Visual Studio后第一个要安装的插件就是
ReSharper,这个软件的几百个功能点都很实用。最新版本的ReSharper是ReSharper.2015.1.Ultimate.9.1.0,支持Visual Studio 2015。
2 .NET Reflector
著名的.NET Reflector包含在此工具箱中。.NET Reflector我常常用来查看编译过的程序集,看命名空间是否规范,看类型的成员命名是否合理,如下图所示。
作为一个多年从事开发的程序员,看到代码中包含WindowsApplication1,button1, panel1之类的命名总会是非常的反感。这样没有意义的命名,给程序代码的维护人员带来诸多的痛苦。
3 SQL Prompt 6
安装好SQL Server 后的第一个要做的事就是安装SQL Prompt插件,这个工具扩展了SQL Server Managment Studio中书写SQL代码的智能提示,让书写SQL语句更方便,快速,准确。
图中是经典的SQL Prompt代码智能提示窗口。当鼠标旋停在一个对象(表名,视图名称,字段名)上时,SQL Prompt会显示这个对象的属性。比如上图中所示,显示了当前Part表的所有字段的脚本。
SQL Prompt常常包含在SQLToolbelt工具包中,这个系列的软件包工具都很实用。
4 SQL Compare
做数据库开发过程中,常常会添加一些脚本,当把这些脚本部署到其它电脑中时,用手工增加脚本的方法过于原始又容易出错,于是SQL Compare的出现,完全满足了我的需求。
如上图所示,在开发的电脑上用SQL Server Management Studio修改表或视图定义,当需要把这个脚本部署到另外一个数据库或电脑中时,运行此工具,选择两边的数据库作一个计较即可完成。
5 Code Smith 6.5
工作中经常会遇到一些相似的代码编写工具,会考虑将这些共同的重复的代码封装成Code Smith模板文件。将可变部分提取为参数,运行时选择或输入参数即生成需要的代码。
6 .NET Reactor
经常要给客户或是准客户做一些例子代码,又不想将代码完全给未付款的客户。对于.NET的程序集格式文件,把没有经过混淆的文件传送给客户,即可认为将源代码给客户。常常是与客户打交道时,客户还没有付款,程序又不能不发给客户测试,只好用.NET Reactor加壳混淆处理。这个也不是完全有作用,现在去壳反混淆的工具非常多,准确率也很高。
做这一步动作也只是为了让代码被反编译之后,阅读相对困难。不过,优质的客户是预付款之后,再提供程序或是技术支持,这个就没有加密混淆的必要了。
7 LLBL Gen Pro
接触LLBL Gen Pro有6年多了,从一开始的不熟悉,困惑,到最后完全接受,并且能用这个工具独立带领团队开发项目,深深知道ORM对企业应用开发的意义重大。ORM生成表对应的映射的实体,通过对实体的操作,实现OOP面向对象编程,代码的可维护性,可阅读性方面有了极大的提升。在任何时候,我都会将这个工具作为首选工具推荐给未接触ORM开发的朋友。
原文:http://www.cnblogs.com/JamesLi2015/p/4647255.html
此处加上博主自己在使用的工具:
8 Visual Assist X(简称”VAX”)
VAX是博主第一次使用是在大一的时候,刚开始学C语言,使用Microsoft Visual C++开发工具时接触的一个插件,当时由于写C++代码,在Microsoft Visual C++并没有代码自动补全(智能提示)的功能,所以博主当机立断去找了下,于是找到了这个工具。
VAX支持Microsoft Visual Studio 2003-2017,C/C++,C#,ASP,VisualBasic,Java和HTML等语言,能自动识别各种关键字、系统函数、成员变量、自动给出输入提示、自动更正大小写错误、自动标示错误等。使用Visual Assist X有助于提高开发过程的自动化和开发效率。
特别是使用ASP.NET MVC框架开发的童鞋,这个工具的作用尤为显著,可以明显提高书写JavaScript、HTML的效率,使得在VS中书写前端代码不在是一种痛苦。
9 JSEnhancements
在VS中编辑JavaScript、CSS代码还有一个令人头疼的问题,那就是有时候代码冗长,我们可能会想要像写C#代码那样的折叠功能。JSEnhancements这款插件很简单,就是为JavaScript、CSS代码提供了折叠功能。
其基本的功能是方法、类折叠。
其详细的使用方法可能参考这篇文章:不错的VS2010扩展——JSEnhancements,让js和css也折叠
10 JSCompress
看名称就知道这是一款JavaScript脚本压缩工具,功能简单,只要设置了压缩路径,就会自动压缩JavaScript脚本。压缩JavaScript脚本的好处呢,除了提高脚本的安全性,更重要的是压缩了脚本的体积,使得你的Web程序加载脚本的速度更快。
11 Css Sprite Tools
图片压缩工具,把你的n张图片压缩成一张,并且生成CSS类的工具,也就是说你在使用的时候,不需要指定src,只需要指定生成后的class就可以了。这也是一个非常好用的前端工具。
12 Fiddler 4
这是一款非常好用的抓包发包工具,由于这个工具非常知名,具体的就不介绍了。
以上是关于开发一款提高效率工作的命令行程序的主要内容,如果未能解决你的问题,请参考以下文章