What does Sup Forums think of C#?

What does Sup Forums think of C#?

I know it might seem a bit bloated, but it isn't, and its extremely easy to do work in. Its the language I fell in love with and I just love working with it.

Other urls found in this thread:

blog.bbv.ch/2012/11/12/new-poster-net-framework-4-5-overview/
blog.jetbrains.com/dotnet/2017/02/15/rider-eap-17-nuget-unit-testing-build-debugging/
jooq.org/
slick.lightbend.com/
spark.apache.org/
spring.io/
hibernate.org/
lightbend.com/resources/case-studies-and-stories
marketwired.com/press-release/apache-spark-growth-is-pervasive-as-users-embrace-public-cloud-machine-learning-2161564.htm
meetup.com/topics/apache-spark/
web.archive.org/web/20161029175856/http://planetcassandra.org/companies/
twitter.com/NSFWRedditGif

God tier language if you don't hate Microsoft. I also have yet to see a better UI library than WPF.

What is Swing?

Now that Oracle is letting Java slip farther and farther away and making its development slow, C# looks like the better and better option. But "not bloated"? Have you ever seen one of those ".NET Framework 4.5 Overview" posters? We have walls in our office that aren't wide enough to hang one:

blog.bbv.ch/2012/11/12/new-poster-net-framework-4-5-overview/

The language might not be fat, but the framework is possibly even bigger than what's in the JDK.

In the sector of very verbose languages, I like it better than Java, though. But then, I don't like verbose languages.

>C#
>HttpRequest throws an exception if response isnt 200 OK.
Its a joke of a language, more meme than JS

>What does /diy/ think of hammer?

>I know it might seem a bit heavy, but it isn't, and its extremely easy to do work in. Its the tool I fell in love with and I just love working with it.

I'm not sure if you're trolling or just haven't used WPF.

>a piece of software wrote in the language does something I don't agree with
>Entire language is a joke

K mate.

You can't be this retarded

It's my native language now and it's very comfy but I'm not using it outside of my workplace. It is one of the best languages to get corporate shit done (business logic, rest apis etc) fast.

I don't think youve ever programmed professionally

it's a shame really. Java is a great language to code in, it's relatively intuitive compared to C and C++ but almost equally powerful.

If you open up source code of .NET framework you will see how much trash you drag with your code, its insane, even for a simple button you drag over 1k lines of useless code made just to hold your hand
Why does it throw exceptions? Do you realize how expensive exception throwing is? ESPECIALLY IN MANAGED LANGUAGE

Don't get me wrong, I've read entire CLR source code and over 5k pages of books on C#/IL/CLR. Its just not worth using anything from any library and just Pinvoke stuff you need from winapi.

>LINQ
slow
>Networking
slow/tons of overhead/exceptions/caches that dont get cleared
>Collections
a lot of overhead, use foreach internally that calls GetEnumerator
>WPF
Good UI framework but more overhead than 50mb Hello world apps in JS

so enlighten us and state the magical language you use that

>is intuitive and verbose
>powerful
>doesn't rely on bloated frameworks
because normally you can pick only two

C and ASM

Only use the language, not libs, every lib is pure garbage, write everything yourself, it will be 100x faster, 100x less overhead and you will know every piece of it. Unlike with absorbing 60mb of libs written by trash pajeets that made those libs for every possible use case which causes more overhead than necessary.

For my latest project I ditched WPF after I saw how much garbage code it generates and I'm using pure DirectX in C#

I think you are wrong on a part with writing your own lib's.
You do realize that most of public libs you get are optimized to hell so you do not have to do it yourself, and why would you, when they did it better.

>Only use the language, not libs, every lib is pure garbage, write everything yourself
>in C
sure let me just lock myself up to write this Hello World project and come back in 5 years

I agree though most frameworks add 95% you don't need but why not just be more selective with importing certain libs you need rather than starting from scratch?

Do you work for a company? I don't think you can ever make any deadline if you write everything yourself in C

None of them are optimized to hell, they are made for general purpose use case that covers all possible scenarios.

Just get dnSpy and check out any part of WPF for example, a Button, you will regret ever writing it.

Nah, I dont work for any company, I sell my software online + doing SEO so I earn enough to live the NEET dream.

OK if you work just by yourself it sounds actually pretty comfy you can just take your time and use code you actually understand and trust.

Wait I thought you didn't use libraries? Why are you using directx then and not building some graphic program yourself?

>C and ASM
AHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA

I had to use C# to access some equipment on a windows machine, it's actually pretty nice. I mostly write C and scala, so C# isn't exactly to my taste, but it's a pretty good language that I recommend people to try out, especially now that it's not so reliant on windows.

If it wasn't for the windows reliance of yesteryear I would probably have used it a lot more.

Public libs might be optimized to hell and back, but that's the second priority, they also come with tons of redundant checks for safety.

C# is literally C/C++ with a good library and not having to do shit like memory management that shouldn't be doing anyway unless you are Linus Torvalds in 1991 writing a kernel. The main advantage is .NET, which is irrelevant to the language. If they also open sourced WPF, there would be literally 0 reason to stay in outdated technologies from the 1980s like coding in vim.

I use it at work, aspnetcore is pretty nice once it's all set up. LINQ is pretty convenient in most cases, but it sucks at doing complex table joins.
The amount of libraries available are a godsend for tight schedules. Deployment is a breeze on windows.

But I do have to bend over back if I'm deploying it to a non-windows server the first time.

>Only for Bill Gates
>How does this make you feel?

you can make a DLL directly in ASM (e.g. in visual studio, with masm, you can even have your C# and assembly projects in the same solution), without any C, and consume it from C#.

literally no one cares dude

I also use bare winapi for windows with sharpdx by now (from C#), because wpf has far too many abstractions and winforms becomes an insane pain if you need to seriously customize how your windows work

SharpDX isn't noticably slower than DirectX though AFAIK (never had a performance issue stemming from my draw calls), and it's a lot more comfortable than plain DirectX IMO

I don't mind it but the C++11 stdlib is better

it's what i do tho

because if you introduce an extra C layer, it ALWAYS adds an extra jump (and for some reason a good 15-20 cycles overhead per call in practical performance, benchmarked the shit out of it with rdtscp)

im serious man no one cares that you know assembly and can somehow use it within c# i can't think of any situation that would be useful i mean if you're doing embedded programming why would you be using c# anyway

> not using a tool that exists in every proper language
Are you retarded? Exceptions exist to be used. Doesn't natter that they are a little more expensive. And a not successful http request is an exception. At least for me, I've never programmed to expect a failed http request.

lol why even use directx or C from C# then?
performance isn't only important in embedded programming
a 16-64 fold performance increase in a few critical areas can make programs that otherwise wouldn't be feasible on today's hardware (i use a 4700k @ 4.6ghz and utilize it to the max) just make the cut

The second worst UI library in the world.

It will be 100x faster, have 100x less overhead and take 100x more time you mean.

>i can't think of any situation where having more performance would be useful

Sup Forums, ladies and gentlemen.

>God tier language if you don't hate Microsoft. I also have yet to see a better UI library than WPF.
QT. Delphi. Scalafx.

And many more.

C# is an average language in a walled garden.

Reference a single useful project you've done, I want to see what this "system" of yours produces.
(watch him reference a snake game he started in the 80s and just released for alpha testing)

You do understand that those checks do no impose any visible difference to running speed! Our PC's are so fast that it is irrelevant. A lot of time we sacrifice efficiency for readability as it is not required on constant operations.

what the hell are you making? Bitcoin miner?

> average language
It's the best language, the vm and framework not as good!

WPF is hardly the only reason.

Which is why even the real cloud stuff (not GUI software) ended up on the JVM, not .NET. Azures little corner of it is pathetic and merely MS trying its usual Embrace... strategy, but it hasn't worked.

HTTP Response codes indicate that http request was completed. If server responds with 500 or 404 HTTP CODE ITS NOT A FUCKING EXCEPTION
[SuppressUnmanagedCodeSecurity] removes those checks, there is no drawback to calling native then ;)
Sorry, dont want anons to steal my $$$$ ideas
Yes they do. I can design my program better than those pajeets at M$ who are forced to cover every possible way of application.If you take a look at any of .NET framework dlls you'll see all the good classes are marked internal so that you cant access them, while all the abstract pajeet shit is public to use

C# only survives because MS is forcing it into most of its Windows things. Elsewhere almost nobody uses it.

ART rules Android, the JVM plus JS plus other languages rules the intelligent / cloud internets (without any .NET in sight), and so on.

What does it tell you if virtually all third parties that aren't forced to develop only for MS will choose something else...? (Well, it's Sup Forums, I kinda expect denial rather than insight...)

Who C# without .Net here?
Also, how is C# for phonedev?

> all third parties choose something else
you are retarded for sure. I know at least 6 companies that actively choose C#. And those are the ones I've interviewed for in the past. Lots of java ones too but it has nothing to do with MS forcing it dumbass

I would choose C# if I were to start a project, simply because it is neater and better than Java. We are yet to see linq equivalent.

Xamarin for phone dev
10/10, and it pays 10/10 since it's new and not many devs do it.

> 500 404 HTTP is not exception
yeah let me search my db and boom db crashed. Well that's not an exception it's just an inconvenience.

The point of exceptions are that you can handle them in the larger stack call. For example if I have
ui -> server -> service -> db (crash)
I can handle my exception in server instead of service. You can say dumb shit as return null or some crap down the line which indicates error, and if you are actually thinking that, I am glad you are a fucking NEET and I never have to read nor touch anything you have ever written

Do you have any idea how slow throwing an exception is in .NET?

Even the chief engineer at Bing said .NET Http lib is bad, but you somehow know better in your shitty company

I am glad I never have to read your shitty code or work with someone at your level of intelligence because i would kill myself

kek, let me take a wild guess... you are unemployed?

I can't even tell if you're trolling anymore. seriously what are you writing that needs that sort of speed on web request handling. An average web request can take seconds. Now you are crying about a few milliseconds of overhead on the exception handling?

The hilarious thing about the idiots on Sup Forums who love to shit on Visual Studio and other Microsoft products is they always talk about >MUH BLOAT!!!

They didn't make Visual Studio so you can write your hello world program and call yourself a programmer. It's an enterprise tool that makes working on enterprise projects easy.

You can always tell who's unemployed and who is employed based on the responses you get in these threads. Certainly not saying Microsoft and their products are infallible, but some of the criticisms here are just completely stupid.

never used it, why would i use it over c++ and java? Isnt it what all osx apps are written in

Useless outside of windows.

Rust
Modern, functional C++

lol hit it on point with pretty much all IDE haters. Vim doesn't work as good when you have thousands of lines to maintain. It can do but there are better options.

I actually have vim plugin on VS

C++ is a different type of language. You can compare it to java, it's easier to write and easier to maintain and read.
Not with the new .Net core
and you can choose your server to be on Windows

>Not with the new .Net core
>
blog.jetbrains.com/dotnet/2017/02/15/rider-eap-17-nuget-unit-testing-build-debugging/

It can take seconds because of all the overhead trash. In a concurrent/parallel environment those few milliseconds of overhead turn out into seconds which turns into minutes and hours

>C++ is a different type of language. You can compare it to java, it's easier to write and easier to maintain and read.
so how can you not compare c++ to java or c# theyre all oop?

>C++ is a different type of language. You can compare it to java, it's easier to write and easier to maintain and read.
Thanks to the rule of 3 I mean 5 I mean 51056 writing C++ is more verbose than Java these days.

The azure services are actually pretty good. I set up an Azure VM and sql database at work for a project and while being fast enough to deal with millions of rows and joins with immediate response times it was ridiculously easy to set up. A big + Microsoft got from me the other day was when the database performance analyzer suggested what kind of indexes I could create to speed up certain queries.

>millions of rows
Babbys first table.

>A big + Microsoft got from me

oh you

Third parties that create a platform.

>I know at least 6 companies that actively choose C#.
These are writing for a MS stack for sure. Not Android, not Linux, not some cloud deployment, not something else.

You may notice that people writing software for random other systems will pick C, C++, Java, Scala, whatever... but almost never .NET shit.

C# is useful only with, in, around MS products.

> I would choose C# if I were to start a project, simply because it is neater and better than Java. We are yet to see linq equivalent.
There are quite a few solutions in the JVM ecosystem:
jooq.org/
slick.lightbend.com/

But these aren't really the interesting stuff. What's interesting is this:
spark.apache.org/
And the old setup that still has more uses and users than LINQ:
spring.io/ + hibernate.org/

> I would choose C# if I were to start a project, simply because it is neater and better than Java.
It isn't actually better as evidenced by production quality libraries and that everyone uses the JVM and no one but MS dependents use .NET.

If I want something neater I pick Scala.

Azure services are scam. You can buy a dedi/vps with 5x better performance on OVH/scaleaway for the same price.

I'd look more into kotlin if I wanted to try Java. C# is not bad. At least better than PHP, except for the huge open source community.

>If I want something neater I pick Scala.
Have you even seen the Scala meme talk?

Price isn't really the deciding factor for us

> The azure services are actually pretty good.
Just about nobody in big / distributed data uses them.

Everyone with half a clue is on S3, OpenStack and so on. With Cassandra, Spark, Docker and all the other common tooling.

Azure is the shitty "me too, plz let me embrace and extinguish!" of Microsoft, but nobody except the fully .NET / MS dependent ecosystem wants it.

Almost all of the thousands of companies using Cloud stuff are not on it.

Probably not - why would I care?

>huffington post
I'm convinced now.

Can anyone tell me what you are expected to know to get a job as a C# developer? I learned it myself and know the syntax, but I'm not sure if I'm good enough and have the experience to apply for work.

To do what?

If u want to write high performance and high quality code you need to know how CLR works, how GC works, how memoy man works, how IL is being JITTed, how CRT works how CTS works, metadata tables. etc

Basically you're better of just using native code because you need to know less to make it fast.

If you are doing desktop, then WPF with mvvc pattern, maybe Rx.
For Web, asp MVC.

Then WCF for RPC.

Then Nhibernate for DB stuff, haven't tried Ms's ORM yet. Don't know if it's better.

It would be nice if you know a dependency injection/container library, MS's one was nice and small but it's name clashes with something else. Was it Unity?

>LINQ
>>slow
Depends on the situation, the fact that is actually lazy evaluated makes it very fast in certain situations.

>Lazy

It can't be fast if it's not running

this guy gets it

Thanks

Better than Java. D is better then all of them

nobody can be this retarded

*than

I don't want to join NASA

Just be a code monkey working on desktop software

Oh, then read WPF Unleashed 4.5 and you're good to go

>performing unnecessary operations is the way to go
Yeah nah.

Only the top of the Akka (one single lib!) user base.

Direct customers of the main consulting company for Scala:
lightbend.com/resources/case-studies-and-stories

And what I saved for last:
marketwired.com/press-release/apache-spark-growth-is-pervasive-as-users-embrace-public-cloud-machine-learning-2161564.htm

meetup.com/topics/apache-spark/

Yep, just about the whole "cloud" industry is using Spark. Which is written in Scala, and often used in Scala.

Roll your own

Nobody gives a fuck about the cloud industry. If you don't have your own datacenter, you're too irrelevant to matter.

I am someone who used to love C and C++.

But the best language ever is C#.

All the dumb fucks that don't know it's cross platform now due to mono and open source compiler now are just retarded.

Not only that but everything is so much faster with C# (Development wise) if you are making something more complex then fizzbuzz, which I know is the only thing everyone on Sup Forums makes. Not only is reflection insanely helpful for auto-creating UIs the large selection of libraries and functionality that you would normally have to grab a library for in C\C++ is built into it.

It's syntax is also more garnered to new asynchronous methodologies which looks ugly as sin in C++ and fucking retarded in C.

Forgot image.

> Nobody gives a fuck about the cloud industry.
You must have been out of the industry for years, or be completely trapped in C# .NET.

Everyone is giving a fuck about modern "cloud" infrastructure. There are a shitload of smaller companies also deploying these, outsourcing etc. The idea is that it works at any scale, and that's precisely what companies want.

Even just the adopter base for one of the typical Spark backend DBs (this one isn't written in Scala itself) is staggering:
web.archive.org/web/20161029175856/http://planetcassandra.org/companies/

Shit, even random individual people hacking and publishing Android apps not rarely have outsourced their data hosting to a full cloud stack recently.

Just about everyone wants into cloud tech.

>Don't get me wrong, I've read entire CLR source code and over 5k pages of books on C#/IL/CLR.
Imagine wasting all that time just to come to the conclusion that you don't want to use a language.

Any way to load images faster/in a more parrarel way on c#? I had problems with slow loading images from a catalog in a server, cause I had to make a on each image, so I used a repeater for now with a handler getting the images through enumeratefiles. But all this causes the images to load in a linear fashion, making it look like the images are loading really slow when its just handling of them that is slow. I'm new on C# and would really appreciate some help

Was taught C# in university. Used it for 3-4 years then did a project that forced me to learn C++ and I stuck with that ever since. I like having more low level control since I'm often doing high performance shit.

>web.archive.org/web/20161029175856/http://planetcassandra.org/companies/
Makes me sad to see my employer there.

that's how C# devs think

ANY delay added to the already large delay in networking is catastrophic. Milliseconds matter.