什么是学习Windows生态系统的最佳方式?
我在* BSD环境(主要是Linux,一些MacOS)上花费了十年时间。我主要使用Python,但也知道一些C,Java和Ruby以及一些C++和Erlang。什么是学习Windows生态系统的最佳方式?
整个.NET想法对我来说似乎很有趣,而且C#似乎是以良好的语言演变而来的。不过,我现在完全丧失了Windows的工作方式。
什么是学习整个生态系统,语言和平台的最佳途径?我也想探索F#和朋友,但我最大的痛苦是整个堆栈,它是朋友(Windows窗体,WPF,LINQ,...)。我的目标是喘口气,并能够进行通用开发(库,webdev,也从头开始桌面)。
从哪里开始?我不应该错过哪些技术/概念? Windows上使用的基本工具是什么(除了明显的MSVS)?我应该遵循并学习哪些OSS生态系统?
首选免费工具,但我也想知道商业用途。
有(至少)用于Windows四种编程环境:
- 内核(编写设备驱动程序等)
- 在Windows API(与用C编写的程序兼容,但人们经常使用C++)
- .NET(用于C#等语言)
- 第三方框架和语言,例如Delphi,Qt,Visual Basic,以及各种Web和脚本语言和框架。
“整个堆栈”(忽略第三方的东西)是内核之上的Windows上的.NET:你不会学到所有东西。
“抓整件事”和“能够做通用开发”不一样:通用开发并不需要掌握整个事情。
如果你对网站更感兴趣,并对桌面产生了一定的兴趣,那么我会推荐.NET编程环境(而不是Windows API)。现在,Windows API可能是特别适用于1990年代开始的“传统”应用程序。
从哪里开始?
- 获取工具(例如Visual Studio速成)
- 学习一门编程语言(如C#)
- 学习的框架和相关的工具(如的WinForms 或 WPF 或 ASP)
我应该关注并学习哪些OSS生态系统?
我不知道;但我会说这是一个不同的话题,因为Windows的IMO“通用开发”意味着使用Microsoft工具。
如果您使用的是免费工具,那么请致电Visual Studio Express - 这可能是免费开发Windows版软件最无摩擦的方式。
我认为学习C#是前进的方向 - 您将能够利用您的Java和C++知识。
刚开始工作,你会逐渐发现你的知识存在差距。我不认为在一遍中找出你所不知道的所有东西并且在另一遍中学习它是很有价值的 - 迭代!
如果你的重点是发展,我将与自由启动VS速成版vs 2010 express
其次是获得基本的信息from msdn或c# specific
我在做的时候学习最快的,所以如果你开始宠物项目与免费工具,MSDN或谷歌或加入一个开源项目on codeplex并向其他人学习。
如果您想要的不仅仅是快递版本,请使用web platfrom installer。
和O是,请在计算器:)问题
尚未提及的一种资源是Coding4Fun。该网站作为MSDN的一部分运营,因此几乎专注于Windows生态系统或与其集成的东西。
Coding4Fun确实有一个初学者元素,但该网站也有一些更复杂的和先进的内容,以及因此它应该是有趣和富有挑战性的事情一个很好的来源做了新的技能,你开发。
我同意学习工具和语言对于成功使用任何软件平台是至关重要的,但重要的是要记住继续构建自己的技能并将自己推向未曾使用过的平台的领域以维护您的利益。
谢谢。通过“OSS生态系统”,我的意思是应用程序生态系统(而不是工具生态系统),因此来自相应层的应用程序(.NET环境,正如您所说)我可以阅读/贡献(例如“观看经验丰富的开发人员”)。 – Almad 2010-07-08 14:01:27
@Almad我自己不知道任何OSS项目;一些着名的包括[单声道](http://www.mono-project.com/Main_Page)和[DotNetNuke](http://www.dotnetnuke.com/),但我不知道他们是否会帮助你学习任何东西;也可以在Microsoft的ASP.NET网站上看到[开源项目和入门套件](http://www.asp.net/community/projects)。 – ChrisW 2010-07-08 14:41:24