繁体   English   中英

适用于非IDE Java开发人员的C#SDK

[英]C# SDK for non-IDE Java developer

我从事Java已有多年的经验,它是为重复性任务开发快速简便的工具的一种方式。 我不是传统意义上的真正的“开发人员”,但是我在创建各种各样的工具和PoC方面经验丰富。

对我来说不幸的是,我注意到许多商店都在专门寻找C#的经验,而Java却没有那么多。 即使在SO方面,与Java相比,还有更多的问题和C#相关问题的更多追随者。 出于跨平台兼容性的考虑,我始终首选Java而不是C#,但是由于这些语言是如此相似,因此我认为交叉训练对我来说将是有益的。 我已经涉猎其他语言和脚本(VB和其他BASIC风格,Javascript,VBScript,ASP,JSP,PHP等),因此添加其他语言也不成问题。

我当前的Java环境仅包含一个文本编辑器(主要是jEdit的插件和布局)和自制脚本来编译/打包我的项目。 我不喜欢使用IDE,因为我想完全控制自己的代码,也不希望程序为我编写代码。 (如果可行,我也更喜欢编写自己的代码,而不是使用任何类型的外部库/程序包。它有助于我学习并大大减少不必要的代码。)

因此,对于非IDE C#SDK,我有哪些选择? 图书馆显然对我而言并不那么重要。 我听说过Mono,它似乎将功能分开,但是还没有尝试过。 还有哪些其他SDK与与文本编辑器结合的简单Java SDK相似?

使用IDE并不一定意味着为您编写代码。 我通常不喜欢设计师生成的代码,但是除非您决定使用设计师(或代码片段等),否则Visual Studio不会为您编写代码。 当然,当您创建一个骨架类时,它将为您创建一个骨架类,在实现接口时添加适当的方法签名等-但是,样板真的是您想自己编写的东西吗?

我还建议您不使用外部库的政策是不好的。 我同意有时重新实现某些东西对于教育目的很有用,但是这意味着代码质量可能最终会变差……为什么您不希望使用已经被许多人使用和改进的代码? 是的,您需要注意所使用的库-但是您确实不想自己做任何事情……无论如何,如果您想提高工作效率,那不是必须的。

我经常自己使用文本编辑器和命令行来执行简单的测试代码(例如,用于Stack Overflow问题),但我不想为打算保留的“真实”代码这样做。

老实说,许多C#和.NET都是关于学习工具的。 Visual Studio为您提供了许多文本编辑器无法完成的工作。 有一个免费版本,我强烈建议您检查一下! 招聘人员会想知道您熟悉他们最有可能使用的工具。

您可以仅从记事本和csc.exe(.NET SDK附带的命令行C#编译器)开始。

但是,IDE不一定是代码生成器的同义词。 我将下载Visual Studio Express并从空的Console项目开始。

玩得开心!

不要忘记,如果您确实需要,可以使用MSBuild和.sln文件来构建/组装C#项目。 但是,集成开发环境会令生活变得更加简单。

IDE不会为您编写代码,它将帮助您编写代码。 使用库将帮助您专注于真正要编程的内容,而不是已经完成的事情。

签入SharpDevelop的文本编辑器组件AvalonEdit。 它是一个开放源代码的文本编辑器,具有可实现诸如智能感知和语法突出显示等功能的类。 您只需要使用任意数量的内容,就可以将其嵌入到使用文本框控件的任何位置。

如果您熟悉Java的Ant,那么也可以签出NAnt进行编译阶段。

据我所知,使用Visual Studio还会获得一个命令行C#编译器csc 您可以使用文本编辑器,并根据需要在命令行上手动编译C#代码-但是,当您的项目包含多个源文件时,这不是很实际。

如果您的项目越来越大,则可以使用NAnt之类的工具,它是流行的Java构建工具Ant的.NET版本。

我同意乔恩·斯基特(Jon Skeet)的观点,即您的工作方式不太实用。 如果您确实在寻找软件开发工作,则最好学会使用其他开发人员使用的工具。 雇主也不会接受您希望自己编写所有代码而不是使用库这一事实。 通过使用库而不是自己编写所有库,您可以节省大量时间,从而可以重复使用经过良好测试的代码,并且其他开发人员可以更轻松地维护代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM