TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Making life easier for newcomers to the .NET ecosystem

106 点作者 dustinmoris超过 3 年前

26 条评论

ReleaseCandidat超过 3 年前
F# is a really, really nice language (it&#x27;s also one of the few languages that got async right with async workflows: <a href="https:&#x2F;&#x2F;fsharpforfunandprofit.com&#x2F;posts&#x2F;concurrency-async-and-parallel&#x2F;" rel="nofollow">https:&#x2F;&#x2F;fsharpforfunandprofit.com&#x2F;posts&#x2F;concurrency-async-an...</a>) with which you can also evade using the XAML stuff for MVU (ELM-style) UIs.<p>But after the Net Foundation and hot-reload drama <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28779342" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28779342</a> <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28897314" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28897314</a> <a href="https:&#x2F;&#x2F;www.theverge.com&#x2F;2021&#x2F;10&#x2F;22&#x2F;22740701&#x2F;microsoft-dotnet-hot-reload-removal-decision-open-source" rel="nofollow">https:&#x2F;&#x2F;www.theverge.com&#x2F;2021&#x2F;10&#x2F;22&#x2F;22740701&#x2F;microsoft-dotne...</a> <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28972431" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28972431</a> I can&#x27;t really trust MS with anything open source anymore :( <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28968231" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=28968231</a>
评论 #29230246 未加载
bob1029超过 3 年前
Getting productive and happy in the .NET ecosystem has a learning curve similar to that of Eve Online. There is this <i>amazing</i> world locked away behind a byzantine matrix of legacy bullshit. You could waste an entire month struggling with differences between legacy framework and new framework tutorials.<p>The branding is honestly trash. I feel like if C#10 and latest .NET framework were renamed to something completely different and relaunched under some new company, we wouldn&#x27;t go a single day without it gracing the front page of HN.<p>What % of developers are missing out based on principles alone? Microsoft is certainly an oppressive monster but they arguably produce some of the best tools in town right now.
评论 #29231257 未加载
评论 #29228922 未加载
评论 #29228183 未加载
评论 #29228446 未加载
评论 #29229445 未加载
评论 #29225992 未加载
slownews45超过 3 年前
You don&#x27;t have to be under an anti-microsoft rock. If you were a VB&#x2F;WinForms type person - you&#x27;ve been wondering where Microsoft has been going with their desktop ecosystem for AGES now.<p>Ahh, finally we are told, this new release of .NET solves all the issues. Except when I try to do a simple forms based app with a drag and drop designer (something supported trivially decades ago) it&#x27;s a constant list of errors, unsupported notices etc.<p>I&#x27;m serious. What&#x27;s the quickest way to drag a button onto a form that when I click it will change a label text to &quot;hello world&quot; with the new .net desktop platform?
评论 #29229262 未加载
评论 #29230256 未加载
评论 #29232700 未加载
评论 #29229619 未加载
taspeotis超过 3 年前
Microsoft has huge amounts of introductory content: <a href="https:&#x2F;&#x2F;dotnet.microsoft.com&#x2F;learn&#x2F;csharp" rel="nofollow">https:&#x2F;&#x2F;dotnet.microsoft.com&#x2F;learn&#x2F;csharp</a><p>And most stuff steers you towards the `dotnet new` CLI command to get started. Which I hate, I much prefer a .sln file from the get-go but maybe that’s on me. But it’ll get you a .NET 6&#x2F;C# 10 .csproj in no time.
评论 #29225978 未加载
评论 #29228123 未加载
评论 #29229401 未加载
评论 #29228494 未加载
评论 #29228061 未加载
评论 #29228513 未加载
bayesian_horse超过 3 年前
I&#x27;m a newcomer, having been forced to use .NET for work. I really wanted to keep an open mind. But I really can&#x27;t recommend .NET for web development to anybody. Performance is really the only benefit, and that only gets relevant if you can circumvent or take all the downsides. I really like F# as a language, but C# doesn&#x27;t really do it for me.<p>Everything else I&#x27;ve seen is very far behind Django&#x2F;Python and probably PHP, Ruby, Go and Java, though I have less familiarity with those. Documentation and ecosystem certainly. EF as an ORM is a disappointment. Writing REST APIs is at least five to ten times as cumbersome and a lot more annoying. And I have to struggle a lot more to find libraries and support.<p>And it&#x27;s not just a problem of being anti-Microsoft. Microsoft is running the show and can decide virtually anything (but not everything). You have to be Ok with that, whatever that means for you and your business.
评论 #29226064 未加载
评论 #29226009 未加载
评论 #29226048 未加载
评论 #29226149 未加载
评论 #29226227 未加载
oaiey超过 3 年前
I have one core problem with most of the critique here and in the article: show me a 20 year old framework which does better!<p>Python: which version again, PHP: good luck not doing a kind of injection, Java: Beans? spring? Maven? Gradle?, JavaScript: which 30 packages are currently best of breed, ...<p>Maybe Ruby. Rails killed all competition.<p>Ignoring all what I said, the .NET documentation is definitely worth to improve on the aspect of current versus past state. They should color code it :)
nathanaldensr超过 3 年前
It&#x27;s really, really sad the lack of good information people have about just how amazing .NET 6 is. Microsoft needs to jettison the cruft and the legacy; .NET is bigger than just corporations now. There&#x27;s a huge open-source ecosystem. Places like the C# Discord server (with 24k+ members) exist.<p>.NET is bigger than Microsoft in some ways. The recent kerfuffle with the .NET Foundation shows that.<p>Please, Microsoft: invest in marketing, <i>especially</i> to corporations who don&#x27;t know anything about the tech stacks they use. They need help understanding why .NET 6 is so amazing and why .NET is no longer .NET Framework + ASP.NET Web Forms + IIS.
评论 #29231615 未加载
moritonal超过 3 年前
This doesn&#x27;t make sense. The blog seems to be annoyed at how .NET is managing to push out new features whilst still support decades of corporate code.<p>Their biggest gripe seems to be that Rider&#x27;s default templates still have old references, and how they &quot;might&quot; follow a tutorial incorrectly that might not work and dishearten a new user so much they give up on the whole language, all the while overlapping the definition between ASP.NET and C# (which of course, could be improved, sure).
评论 #29226139 未加载
评论 #29226081 未加载
ChicagoDave超过 3 年前
One thing that would be beneficial: A version of Visual Studio strictly for .NET 6 and zero backwards compatibility with other versions of .NET. That code has to be so bloated with compatibility in mind that it&#x27;s 10x bigger (and slower) than it needs to be. And no, VS Code is no substitute for VS.
评论 #29231494 未加载
评论 #29235427 未加载
thrower123超过 3 年前
I&#x27;ve seen a disturbing amount of rhetoric from people at Microsoft who work on dotnet that aligns with this article. I&#x27;m not sure they have a good handle on how much enterprise code is still being written daily in &quot;old dotnet&quot;, or if they do, they don&#x27;t care. But the general sense is that legacy is lame, get with the cool kids on latest. Also we&#x27;re encouraging OSS to drop support for you if you&#x27;re on legacy, and we don&#x27;t have a great upgrade path for you. Shades of the Great Python Split.<p>I don&#x27;t really view the new dotnet core&#x2F;5&#x2F;6 platform as very stable, not when they are still releasing this often and making breaking changes.
评论 #29230951 未加载
amelius超过 3 年前
Start by changing the name. It looks like a file extension or a TLD. Using that name as a folder will make it hidden in Unix. Grepping for it, you need to escape the first character, etc. etc.
评论 #29225928 未加载
评论 #29225970 未加载
评论 #29225988 未加载
评论 #29228043 未加载
评论 #29231600 未加载
de_keyboard超过 3 年前
- Install .NET 6<p>- Install Visual Studio Code (you probably have it already)<p>- Install Ionide extension<p>- Create a new `.fsx` file<p>- Start writing code :)<p>This is by far the quickest way to build something simple on .NET. It doesn&#x27;t even require a package manifest to pull in dependencies.<p>And it works on all major platforms.
评论 #29230865 未加载
cmckn超过 3 年前
I had years of Java experience when I joined MS and started writing C#. I found the tooling to be generally ickier, and was surprised by a few gaps in the ecosystem. For example, there is nothing (official) comparable to javadoc for C#. Documentation is compiled into XML that is consumed by IDE&#x27;s, but there is no generic, human-navigable documentation artifact. C# has a dizzying number of keywords that obscure perfectly-fine object-oriented expressions. In general, I found the language to have messier abstractions and a far less-discoverable stdlib compared to Java. Visual Studio is non-negotiable for many C# projects, and I found it to be as bloated as any MS desktop app, not incredibly stable, and I swear I installed a multi-gigabyte update every time I opened it. NuGet is serviceable, but I was surprised at how inelegant dependency management was, even inside the company. Finally, it&#x27;s an aesthetic thing for me -- Java feels unixy, and C# is Microsoft through-and-through.<p>edit: one more qualm, the Mockito equivalent for C#, NSubstitute, cannot mock a concrete class, only an interface. This meant that every C# project I encountered was littered with pointless interfaces that had a single implementation, that only existed because of NSubstitute usage in the testing. This seemed to devolve into C# devs writing an interface for damn-near everything out of habit. I&#x27;m talking about writing an interface with getters and setters for a POC#O. I still get nauseous thinking about it.<p>edit: turns out I have a lot to complain about on this Monday! I pray for anyone living under the tyranny of Stylecop rules, which will fail your build if you put a public static field below a private static one, but for some god-forsaken reason cannot actually fix the problem for you.
评论 #29231875 未加载
mattlondon超过 3 年前
I was trying out .Net (...or was it .Net core?) the otherday just out of curiosity, thinking about migrating off of golang.<p>I am still not sure which I need (...or both?) but either way I managed to get <i>neither</i> Visual Studio <i>nor</i> VS Code to get any code to run or compile! I downloaded and installed both SDKs but both failed to work at all - it seems there is some invisible thing configured somewhere (Windows registry? certainly not in the hello world source I was trying to write) that points to the SDK version to use, and neither the .Net nor .Net core SDKs I downloaded appeared to be the correct ones and everything chucks up error messages about the wrong SDK or missing MSBuild (whatever that is), despite just following the tutorials to do `dotnet new`. Very frustrating.<p>It has certainly put me off trying .net now. I wanted to migrate off of golang for my future cross-platform work, but this has really put me off - if I cant even get a hello world to work after a clean SDK install, I can only shudder to think about what the runtime dependency hell is going to be. Real shame.
评论 #29229544 未加载
评论 #29233163 未加载
DrBazza超过 3 年前
Having worked on .NET frameworks up to 4.5, and then vaguely following the evolution of C# since then, it certainly seems like a &quot;new language&quot; in many places.<p>The trouble is that you can still write code in the original language, e.g. don&#x27;t use the elvis operator or Linq or &#x27;?.&#x27;, which is what is likely to happen if you write a lot of code in other languages too - C++, Java, Kotlin, Python, Javascript. There&#x27;s a common &#x27;subset&#x27; language in all of those that&#x27;s easy to carry mentally from one to another.<p>One thing that Intellij&#x2F;Kotlin has is that if you write &quot;old fashioned Kotlin&quot;, there are a lot of IDE inspections that can convert that &quot;old style&quot; code to sort-of idiomatic Kotlin.
评论 #29226006 未加载
评论 #29226061 未加载
lowbloodsugar超过 3 年前
&gt;To those who have been living under an anti-Microsoft-news rock for the last few days<p>Well, it was nice of the Windows side to wait for the .NET6 launch before stealing all their headline thunder by going back to the 2001 antitrust behavior of forcing the use of Microsoft&#x27;s own browser. [1]<p>[1] <a href="https:&#x2F;&#x2F;www.theregister.com&#x2F;2021&#x2F;11&#x2F;11&#x2F;latest_windows_11_build_enforces_edge_links&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.theregister.com&#x2F;2021&#x2F;11&#x2F;11&#x2F;latest_windows_11_bui...</a>
ameyv超过 3 年前
I have being doing dotnet for at least 7 years now. Started with Webforms being fresh out of university. I&#x27;m sad to say I agree with most criticism of dotnet ecosystem. I personally believe MS always want to be in control and that leaves no space for innovation in open source as well. It feels like suffocation at best.<p>MS took control of javascript community in through typescript and npm. Now most of companies want typescript guy doing frontend in react&#x2F;angular. Added already one more abstraction to already complex JS ecosystem.<p>I have used Python recently. It felt like breath of fresh air. Plus IDE are really smooth.<p>I have nothing against dotnet&#x2F;C# as language. Its ecosystem that tightly controlled and criticism is shot down quite literally. All important libraries in MS world are locked behind paywall unlike Python, Java, JS, ruby communities. This scene has changed in recent years, but quite it was like that before 2018. Like PDF generation, SSO libraries, tools for profiling.<p>Anyway I personally think that dotnet should not be once first language&#x2F;entry into programming career. You will miss innovation open source ecosystem and will be behind for years than your other language peers.<p>Also dotnet job market has lot of issues, good paying job are required you to either maintain legacy system in SOAP&#x2F;XML, webservice and what not. Not much of vibrant job market for dotnet i would say.<p>Apologies for rant.
metaltyphoon超过 3 年前
The responses to this thread are amazing. This video [0] summarizes most opinions about dotnet from outsiders.<p>[0] <a href="https:&#x2F;&#x2F;youtu.be&#x2F;AFNujHJfMtU" rel="nofollow">https:&#x2F;&#x2F;youtu.be&#x2F;AFNujHJfMtU</a>
chadcmulligan超过 3 年前
Angular 12 and .net are nice to use imho. Make services in .net and typescript and angular front end. Perhaps a nice way to get started for web developers.<p>I suppose you need Entity framework and linq as well to make a full application.
评论 #29229274 未加载
ThinkBeat超过 3 年前
What would make the ecosystem better is not to tell everyone to jump like a good little puppy every time Micrsoft squirts out a new release.<p>I have used .Net since the pre Alpha 1.<p>The consulting company I worked for needed X number of consultants certified on this new platform thing so they picked a few of us and said that this .Net thing is now us, run to get certified so we can have our super triple gold star parter relationship.<p>My background was C and C++, Delphi, some Java for the past year.<p>So now I was ordered to be a .Net guy. Yay.<p>A couple of days ago Microsoft officially released C# 10 and .Net 6.<p>I like reading books, I had preordered<p>Pro C# 9 with .NET 5: Foundational Principles and Practices in Programming 10th ed. Edition by Andrew Troelsen<p>It came out May 14, 2021, which is around 6 months ago.<p>The new version for C# 10 and .Net 6 will be released around May in 2022 about 6 months from now.<p>It is not just small changes either. If you know C# 2, there is a lot of code you will not be able to understand in C# 10,9,8.<p>Sells books, blogs, ads, conferences, where people who have spent 4 weeks with a beta version, teach you how to be a master C# developer with C# 10.<p>To be a &quot;good&quot;&#x2F;&quot;up to date&quot; C# developer, who does not bring in all the &quot;old stuff&quot; from 6 months ago you have to spend time reading blogs, downloading alpha and beta versions, and keep track of what MS promised would be in the next release and what never made it. The &quot;oh its new, shiny, shiny, shiny&quot;.<p>I like to wait for a proper release before I spend any time on it.<p>I still have my 2nd edition of C Programming Language K&amp;R from 1988. It is still relevant and informative in 2021. (It is also well written).<p>It is impossible to master a programming language and framework that is a constant moving target.<p>Many programming languages are able to be both useful and produktive without being stuffed with new features of keywords and convention every 12 months.<p>Right now, there is not a single programmer in the world who has mastered C# 9, certainly, none for C# 10.<p>Oh there are a lot of bloggers and fanboys who have -used- C9 maybe even C# 10, and who make $$$ writing, speaking, consulting etc. But using and mastering are two very different things.<p>So please, wait 5 years before the next version of the programming language is pushed. If there are crucial bits you have not been able to get right in 10 version of a programming language, taking a step back would be a great idea.
tasogare超过 3 年前
Barrier never has been lower: downloading the SDK, creating a folder, running dotnet new console, then dotnet run. Editing Program.cs then back at dotnet run. I don&#x27;t know of any language where it&#x27;s as easy to get started. Also VS Code has a semi-decent support of C#.
评论 #29226095 未加载
评论 #29225995 未加载
评论 #29226155 未加载
danzk超过 3 年前
&gt;For example, there is nothing (official) comparable to javadoc for C#.<p>I&#x27;m not too familiar with Java but DotFX is an official project that builds a static HTML website from your source code comments.
aitchnyu超过 3 年前
Wish there was an easy tutorial for developing and deploying a web app on Linux.
评论 #29228678 未加载
mikewarot超过 3 年前
I&#x27;ve been programming Windows machines on and off forever.<p>I&#x27;ve never needed .NET libraries in my code, and never have seen the point, it always breaks, and seems to add orders of magnitude of bloat.<p>There&#x27;s no real need for it, can&#x27;t the rest of you skip it as well?
mikewarot超过 3 年前
Can we all agree that .NET is just a Microsoft attempt at lock-in to their platform, and actually adds zero value to Windows or the rest of the world?
peter_retief超过 3 年前
Is .NET still a thing? I used it about 13 years back and it was basically a rip off of all the open source projects at the time. Hopefully it has matured since then.