|
No, I really should not.
As C# productivity far exceeds that of C++ IMO. And normally code like this is rare. The compiler speed, Roslyn code-generators and compiler reflection is far better than C++ which is of huge value in todays world. Even for game dev. Is C# perfect, no but neither is C++. I actually use C way more than C++.
|
|
|
|
|
lol, no. So many reasons for a hard no.
|
|
|
|
|
As I remember it, C was the new kid on the block when I got out of college, designed and developed for the new UNIX operating system being promulgated by the Bell Telephone Company. Unlike FORTRAN, COBOL, and PL/1, each line of code compiled into only a few assembler instructions. But it had it's shortcomings. Because of the lack of strong typing and need to use explicit pointers, it was also an error prone language. Programmers had to really understand the hardware and how to use pointers effectively.
Advances in language theory and the advent of visual interfaces, such as Vermont Views, Windows, and OS/2, C was enhanced with strong typing, creating C++, and the Windows Forms visual UI libraries were added by Microsoft, creating C#.
__________________
Lord, grant me the serenity to accept that there are some things I just can’t keep up with, the determination to keep up with the things I must keep up with, and the wisdom to find a good RSS feed from someone who keeps up with what I’d like to, but just don’t have the damn bandwidth to handle right now.
© 2009, Rex Hammock
|
|
|
|
|
Member 16280786 wrote: how understanding C might help in mastering C#.
It isn't that simple.
If you can program a simple program in C then you can likely write the same one in C#. But the concepts to create viable enterprise systems are not language specific.
Member 16280786 wrote: C# shares many basic syntax elements with C, such as data types (int, char, float), control structures (if, for, while), and operators (+, -, *, /). How much does familiarity with these elements in C help when learning C#?
That question resolves around my first point. If you know those well from C then it has no impact in learning C#. If you don't know them then you would still need to learn them regardless of which language you learn.
Member 16280786 wrote: C provides manual memory management using malloc and free, whereas C# handles memory through garbage collection. How does this difference impact the way we write and optimize code in C# compared to C?
Quite a bit.
Member 16280786 wrote: While C heavily relies on pointers, C# abstracts memory management but still allows the use of pointers in an unsafe context. How relevant are C pointers when dealing with C# programming, especially in performance-critical applications?
Unmanaged code does not matter much in enterprise systems because it isn't used. Even when use cases exist they represent a very small percentage of the overall code base.
However the question is simplistic because for a beginning programmer the concept of 'pointing to' is not that easy of a concept to grasp and use. That is why linked lists are often an early topic in teaching.
And that concept still exists in C#.
Member 16280786 wrote: C# is inherently object-oriented, unlike C. For those coming from a C background, how challenging is it to grasp the object-oriented concepts in C#? How can C principles aid in understanding these concepts?
It is a significant problem. Structured programming and Object Oriented Programming requires different designs not just code.
C programmers that move to any OO language will often end up creating designs that reflect structured programming rather than OO. I suspect going from OO to structured is quite difficult as well.
As a well known example Microsoft's first released C++ library was obviously just a wrapper for their existing C libraries.
Member 16280786 wrote: C# through .NET Core aims to be platform-independent, much like C programs can be compiled on various platforms. What are the key differences in achieving platform independence between the two languages?
The question is simplistic. Substantially different platforms introduce substantial problems regardless of the language. This is especially true when existing applications were not designed from the beginning with the core concept that they would need to run on different systems.
Member 16280786 wrote: C is often used for system-level programming and embedded systems, while C# is popular for web applications, desktop applications, and game development using Unity. How do these different use cases affect the choice of language and the transition from C to C#?
That question is not sensical. The first part is self answering. I am not sure what the second part even means.
|
|
|
|
|
Has anyone noticed that when you get a vscode update, the release notes never call out the bugs that were fixed.
<snark>I bet it's because the list is so large that it would cause the release notes file to be larger than the max possible size...</snark>
<moresnark>How do they exppect us to be able to reliably develop our own buggy code if the tools they provide us are so buggy?</moresnark>
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
They expect us to be dazzled by the list of wonderful enhancements.
|
|
|
|
|
The latest whiz-bang is "text to speech".
Speak this MS - "I don't give a f*ck about text to speech.".
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
Still better than the vast majority of "app store"-type release notes, which are invariably some variation of:
Release Notes: Bug fixes and performance improvements.
Sometimes with slightly more embellishment, but it usually translates to the same meaningless BS.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
Or so short, because they didn't fix a damn thing.
If you can't find time to do it right the first time, how are you going to find time to do it again?
PartsBin an Electronics Part Organizer - Release Version 1.4.0 (Many new features) JaxCoder.com
Latest Article: EventAggregator
|
|
|
|
|
Microsoft fix bugs?
When did they start doing that?
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
|
|
|
|
|
OriginalGriff wrote: Microsoft fix bugs?
No need when you can just enhance over them.
User: "Microsoft, have you fixed the xyz bug?"
MS: "Did you see the list of 300 enhancements including new fonts and icons?"
User: "Oh, look at all the shiny."
|
|
|
|
|
Of course they wont fix bugs.
They just rename/renumber them.
Of course they can't put that in the release notes.
Error 62316: File not found => Error 86549: Miscellaneous input/output conflict.
|
|
|
|
|
That's the same as Jet Brains (IntelliJ IDEA): there are bugs over 8 years old, but instead they add additional functionality.
Time is the differentiation of eternity devised by man to measure the passage of human events.
- Manly P. Hall
Mark
Just another cog in the wheel
|
|
|
|
|
Misc bugfixes...
You can always check the list of issues closed for that release on GitHub
|
|
|
|
|
I tried VSCode and never found it a good solution for my needs. As a pure editor it's worse than VisualStudio + VisualAssistX, for C# or Windows C/C++ code it's worse...
I found it acceptable for Python but I wrote 100 lines of Python in my whole life so take it with a deposit of salt.
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
The shortest horror story: On Error Resume Next
|
|
|
|
|
I've never felt the need to use VS Code rather than Visual Studio.
In a closed society where everybody's guilty, the only crime is getting caught. In a world of thieves, the only final sin is stupidity. - Hunter S Thompson - RIP
|
|
|
|
|
We have to because we're coding in javascript/react...
I really enjoy it when the vscode debugger randomly creates a breakpoint in one of the bundle files or randomly deletes a breakpoint on its own, or when you paste code into a file, it automatically scrolls you to the bottom of that file (a true pain when that file is thousands of lines long, or when code thinks there's an error when it obviously isn't but the crappy intellisense simply hasn't caught up with your typing...
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
All I can say about VS Code is that when it was first introduced, I was rather excited to see a decent "plain" code editor from MS that could load in roughly the same amount of time as Notepad (definitely quicker than Visual Studio itself) when all I needed was to just take a quick look at some source with something that has at least a little bit of intelligence (enough to understand the syntax).
Then they quickly proceeded to throw in everything but the kitchen sink, and it rapidly lost the ability to load quickly. It's still quicker than the full-blown Visual Studio, but it's now slow enough I can't say it serves that purpose anymore...
|
|
|
|
|
Notepad++ is my favourite quick editor.
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
The shortest horror story: On Error Resume Next
|
|
|
|
|
Yeah, I've used Notepad++ for years (I still have it installed on a system or two and keep it up to date), but man, it's still ugly as sin.
|
|
|
|
|
Likewise - it's quick and does the job most of the time.
I still miss brief, though. Sadly we stopped using that years ago.
|
|
|
|
|
I find it perfect and clean, I like its interface.
Also the ability to split views and lock the horizontal and or vertical scroll between the two views is absolutely priceless!
GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++* Weapons extension: ma- k++ F+2 X
The shortest horror story: On Error Resume Next
|
|
|
|
|
den2k88 wrote: Also the ability to split views and lock the horizontal and or vertical scroll between the two views is absolutely priceless!
That should be a standard feature for all editors.
Heck all controls should inherit that right from Windows itself.
|
|
|
|
|
I used Notepad++ for a while (until I'd read that an extension was hacked and introduced malware); then I tried SublimeText - but it had way more than I needed (still paid a donation); started using VS Code: I keep the number of extensions to a minimum. Of course, I have Visual Studio for larger, complex projects.
Time is the differentiation of eternity devised by man to measure the passage of human events.
- Manly P. Hall
Mark
Just another cog in the wheel
|
|
|
|
|
Maybe you should ditch a few extensions you don't really need. On my system (aged 4+ yrs) it starts up and loads my main project in about 2-3 seconds.
|
|
|
|