Csminify:C#源代码的合并/缩小器
目录
介绍
使用工具
- 下载源代码 - 309.6 KB
介绍
我非常想要一个比ILMerge更可靠、更易于使用的工具来静态链接.NET中的代码模块,但如果失败了,我希望有另一种方法来等效于公共代码的“静态库”,其中单独的程序集是不合理的或根本不需要的,或者你希望用partial class增强功能的地方。
此工具是一个命令行实用程序,允许您将多个源文件合并和缩小为代码“brick”——基本上是一个不透明的文件,可以为代码添加功能。
这样,您可以将一些代码及其所有文件依赖项包含在一个易于管理的文件中,您可以将其放入项目中。
注意:您可能会问,为什么要缩小源代码?好吧,我使用的很多代码是机器生成的,具有深度嵌套的数组,并且这些数组被序列化了相当多的空白,导致文件有时长达20,000行或更多。缩小可以在行数方面减少10个数量级,并且在空间方面减少大量的KB。当您在Visual Studio中打开它时,这实际上使源编辑器变得更容易。当然,编辑源代码并不容易,但是你不应该编辑这些文件,而应该编辑原件。
作为合并过程的一部分,该工具将所有using和#define移动到文件的顶部,并删除重复项。它还为每个文件名添加#define,例如:
#define MYFILE_CS
声明"myfile.cs"是否包含在合并文件之中。这允许条件编译,具体取决于包含的其他文件。这样,不同的文件可以彼此“感知”彼此,并相应地包括扩充另一个代码(通常带有apartial class)的代码。此机制提供了源文件之间复杂的相互依赖性的可能性。
使用工具
只需将要合并和缩小的文件的名称提供给实用程序,它就会将结果发送给stdout。
csminify "foo.cs" "bar.cs" > "baz.cs"
这将需要foo.cs和bar.cs和合并/最小化它们,并把结果写入baz.cs。
Csminify:C#源代码的合并/缩小器相关推荐
- 一款绿色免费的FLV文件合并裁剪器
软件名称:花园FLV文件合并裁剪器 软件版本:1.0版 文件大小:452KB 授权形式:免费软件 应用平台:Windows 98/Windows 2000/Windows XP/VISTA/Windo ...
- java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器
java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器 下载地址:http://yunpan.cn/QXhEcGNYLgwTD 运行方式:java -jar Encryp ...
- FFmpeg的HEVC解码器源代码简单分析 解析器(Parser)部分
===================================================== HEVC源代码分析文章列表: [解码 -libavcodec HEVC 解码器] FFmpe ...
- 5. 超炫酷的爬虫源代码-vip音乐下载器
文章目录 1. 准备工作 2. 安装第3方库 2.1 os 库 2.2 tkinter库 2.3 webbrowser 库 2.4 requests 库 2.5 PySimpleGUI 库 2.6 r ...
- 常见的pdf合并分割器好用吗
工作中除了将每天处理不同格式文档的转换外,有时还需要对同类型的PDF文件进行分割或者炒粉成若干个文件.对于电脑新手而言,这样的分割还是比 较困恼的,下面老鸟给大家仔细讲一下怎样合并和分割PDF文件. ...
- 第一个Android 程序的源代码: TxtReader文本阅读器
因为单单靠Eclipse import project解决不了所有的问题.终极方案为通过Eclipse 的向导, 将已经存在的代码工程, 再创建成一个新的工程, 如图所示的: create proje ...
- 火鸟字幕合并器V0.3Build2004.6.9
火鸟字幕合并器V0.3 Build2004.6.9 最新版火鸟字幕合并器SubindexV0.4 已发布,请访问下载最新版: http://blog.csdn.net/redbirdli/archiv ...
- OpenGL合并转换
OpenGL合并转换 OpenGL合并转换简介 源代码剖析 主要源代码 OpenGL合并转换简介 在上一课中,我们发现了一些转换,这些转换在 3D 空间中灵活地移动对象.我们还有许多要研究的(相机控制 ...
- TFS下的源代码控制
以下主要描述了: TFS源代码控制系统的基本场景 如何把一个项目添加到源代码管理中 如何与服务器同步 如何做Check-In 如何做分支与合并 什么是上架与下架 我们知道工作项是项目管理的基本元素,但 ...
最新文章
- idea创建文件自定义注释
- error occurred when trying to upload ui5 project to ABAP repository in win8
- 【mysql必知必会】第十二章 汇总数据
- it转正述职报告_三年产品经理的转正述职报告
- Python多人聊天室
- 《Python 100例》练习,基于Python 3.5做了一遍
- hibernate官网文档
- java 系统找不到路径_java IOException:系统找不到指定的路径
- git使用kdiff3合并乱码问题
- Ubuntu 搭建opengrok 流程
- python建立窗口并美化_Python GUI教程(十六):在PyQt5中美化和装扮图形界面
- java for class_Class forClass
- java pdf 修改内容_Java PDFBox – 读取和修改带有特殊字符的pdf(变音符号)
- VS2015 scanf 函数报错 error C4996: 'scanf'
- 玩转全球最大同性交友网站--- 开源社区GitHub
- Win8安装STEP7提示pniopcac.exe错误
- 华为开发者联盟上架Android 安装包 包名重复问题
- MySQL数据库存储价格金额使用的数据类型中float、double、decimal的区别
- c语言实现的小学生心算抢答系统
- 新能源汽车里程宣传有夸大之嫌
热门文章
- 如果你还在寻找完美的海报字体, 你很幸运看这里!
- 电商促销必备优惠券醒目设计插画
- 设计干货之插画模板|彩色手绘自然风景城市风景
- hashmap是单向链表吗_HashMap源码大剖析
- 模拟linux终端测试java,介绍一个在线的Linux,没有安装Linux或者虚拟机不喜欢用的童鞋可以简单的用这个jslinux测试各种命令...
- 常用函数的连续傅里叶变换对
- https://sysdig.com/blog/
- Ubuntu 安装Wireshark
- Linux 硬中断和软中断
- 一个cmake的简单例子:来自github