Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我应该学习什么来提高我的技能?_C#_.net - Fatal编程技术网

C# 我应该学习什么来提高我的技能?

C# 我应该学习什么来提高我的技能?,c#,.net,C#,.net,我的“全职”开发人员之路——以分析师的身份使用VBA和Excel、Access,然后进入C#。当我发现自己热爱编码而不是商业时,我就兼职上了大学 我的大部分代码都是用C#编写的,但作为一名ASP.NET开发人员,我也用HTML、JavaScript、SQL等编写。通常的嫌疑犯 我喜欢不断前进,找到能让我进入下一个层次、下一份工作的优势,当然还有更多的钱。最重要的是,我只想学习一些新的东西,挑战我 我最近花了一些时间学习LINQ,但我想知道接下来我应该学什么?关于.NET框架或新语言技术的东西?是

我的“全职”开发人员之路——以分析师的身份使用VBA和Excel、Access,然后进入C#。当我发现自己热爱编码而不是商业时,我就兼职上了大学

我的大部分代码都是用C#编写的,但作为一名ASP.NET开发人员,我也用HTML、JavaScript、SQL等编写。通常的嫌疑犯

我喜欢不断前进,找到能让我进入下一个层次、下一份工作的优势,当然还有更多的钱。最重要的是,我只想学习一些新的东西,挑战我


我最近花了一些时间学习LINQ,但我想知道接下来我应该学什么?关于.NET框架或新语言技术的东西?

是的,我越是进入软件领域,我开始发现自己越来越不关注语言,而更多地关注设计

是的,我们需要了解一些框架信息,但大多数情况下(不是全部),你可以在需要时查找这些信息

但是一个好的设计头脑?这需要多年的经验才能让它正常工作


而这正是这些公司真正付出的代价。。“建造它,他们就会来”以及所有这些…

你为什么不交换堆栈,看看灯堆栈

或者像haskell这样的函数式语言呢

还是写一个DSL


还是一款手机应用?

随着你在ASP.Net、C#等方面不断获得更多经验,最好去看看比赛,看看它是否能激发你的想法,让你在所做的事情中做得更好。看看Rails或Django之类的东西可能会改变你对设计或构建应用程序的看法。

如果你现在精通所使用的语言和技术,那么开始花更多时间关注设计、解决方案体系结构和系统集成。将你与同时代人区别开来的“大局”


查看一些Martin Fowler的书籍,如“企业应用程序架构模式”或Eric Evans的“域驱动设计”。

如果您还没有了解可用性(最佳实践、测试等)的更多信息,可以了解更多

史蒂夫·克鲁格的《不要让我思考》是一本好书。总是有有趣的东西。

@Michael DSL=

至于你应该学什么,那取决于你对什么感兴趣

您是否希望在使用相同媒介(以web为中心的应用程序)的同时挑战自己?我建议学习Apache和LAMP(Linux、Apache、MySQL、PHP)体系结构,并挑战自己构建一个web应用程序,您可以使用ASP.NET轻松构建它

想学习完全不同的东西吗?试试看,看看你能用这些做些什么

也许你想进入嵌入式软件行业?学习C开始


你有各种各样的方法来提高你的技能,每一种方法都有自己的职业道路。(嗯,也许不是序言,但很有趣!)

你知道的语言越多,你就越畅销。看看更流行的语言是什么(市场需求,而不是粉丝群),然后再加上一些还没有被广泛使用的尖端技术,再加上一般的编程技巧

根据您的技能,我建议您(就语言而言):

  • Java作为起点
  • 对于.NETMVC中的.Net外接程序(您有LINQ,或者这里也有)
语言不可知技能:

  • 设计模式(包括MVC)
  • 领域驱动设计
  • 测试驱动设计

如果你想成为最好的一员,你需要专业化。如果你在许多技能上变得非常优秀,那么你可能永远不会在其中一项技能上变得真正优秀。我知道,因为我自己也走过这条路,有时很难找到工作。毕竟,当有人擅长他们需要的特定事物时,谁会想要一个精通多种语言的人呢。如果一家公司是用C语言开发的,那么谁会想要一个在C语言方面还行,但在C语言、Visual Basic、Perl和Cobol方面也很好的人,而他们真正想要的是尽可能最好的C语言开发人员,而且他们能负担得起

毕竟,你只会被雇佣一项技能,也许是两项技能。很少有人能胜任10或15项技能的工作

如果你正在寻找一项新技能,那么也许可以查看工作公告栏,找出哪些技能是特别需要的,但要知道,今年这个月的味道可能在明年甚至不会出现,这将使所有学习技能的努力徒劳和浪费

我想说的是:

  • 做一件事,把它做好。这可能包括支持技能(C#、ASP.Net、SQL、LINQ等)
  • 如果你想选择其他东西,那么就选择互补的东西
  • 可能最重要的是,选择你喜欢的东西。也许RubyonRails是这个月最流行的风格,但是如果你不喜欢这样做,那就不要这样做。真的,这不值得。在你临终前的床上,你永远不会希望你在一些你不喜欢的事情上工作得更多
  • 你可以考虑的另一个方向可能不是某个特定的发展技能,而是寻找其他技能,可能是软技能,如人员管理、更好的商业理解,甚至是文学技能,以帮助提高你的沟通技能。所有这些都将有助于你做你想做的事情,减少你真正不喜欢的事情,从而使你的工作更愉快


    为这里的胡言乱语道歉。希望你仍然清醒:)

    以下是我的建议:

    1) 设计模式——这些模式非常简洁,在某些情况下非常有用

    2) AJAX——假设您还没有完成其中的一些工作,在我看来,这是Web开发中一个有趣的部分

    3) 确定链的哪些部分