Ric*_*ard 11 .net c# c++ windows
我已经在Linux上用C和C++编程了大约3年,最近一直有兴趣为企业开发商业软件.假设我找到了一个我认为可以成功的利基市场,但他们只使用Windows.但是,我对Windows API没有任何经验.我有几个问题:
我应该学习.NET吗?
我是否需要学习C#才能使用.NET,或者我能坚持使用C++吗?
使用-no-cygwin选项在Cygwin下使用GCC进行编译的情绪如何?我对可移植性很感兴趣,我担心如果我开始为VC++编写代码,我可能会受到Windows的限制.
哪里是我阅读基本阅读的好地方?
关于从Linux转换到Windows编程,您还能告诉我什么?
MMi*_*ind 13
我遇到了完全相同的问题,我很高兴我尝试了.NET.我希望这些信息可以帮助您:
我应该学习.NET吗?
我会高度推荐它.
我是否需要学习C#才能使用.NET,或者我能坚持使用C++吗?
你可以坚持使用C++,但我相信你会喜欢学习C#,请试一试.你也可以把它们混合起来..NET的主要挑战是学习所有可以帮助你的库(因此你不需要重新发明轮子).经常使用msdn并尝试获取基本类和程序集的映射.
这是一个有趣的体验,如果你来自C++你不应该有重大问题.
哪里是我阅读基本阅读的好地方?
我将从轻松的事情开始,在这里查看免费的Visual Studio工具,软件和示例,转到MSDN文档并编译MSDN中的一些示例(如何访问文件,...).如您所见,您将并排发现C#和C++示例.
当然,最后需要阅读像C#通过CLR这样的书籍.
可移植性
确保在Mono和多个平台上运行代码.
未来的投资
投资学习.NET框架将得到回报.今天学习所有新工具的成本很高,使用.NET,你知道你可以发展.出现了新的功能和语言,但基本类仍然存在,因此您的时间/精力投入得到了更多的控制.
取决于您是否认为这对您所关注的利基有利.例如,如果您的利基是一个桌面应用程序,那么开始可能是一个好主意,因为,恕我直言,开发WinForms,WPF GUI比C++版本容易得多,
C#不是必需的,使用C++/CLI允许您在使用C++的同时利用.Net.但是,我倾向于仅使用C++/CLI来专注于托管代码和本机代码之间的互操作.它特别擅长这种发展.如果你切换到更主流的应用程序,我想你会发现C#或VB.Net会更好地为你提供服务.大多数在线样本都面向这些语言.特别是工具的很大一部分非常适合这些语言(WinForms和WPF设计人员开始).
我相信这个意见会略显不受欢迎.但是你已经提到过,你所处的利基是针对Windows的.如果你只在Windows上运行它,那么编写可移植代码有什么意义呢?这不是Windows偏见,如果平台被颠倒,我会做出完全相同的论点.
我不是说便携式代码是件坏事.这实际上是一件非常好的事情.但是,如果没有使用便携性的可能性,为什么不利用平台呢?