170 Replies
.NET is everything C# builds on. Its the BCL, the compiler, the runtime, nuget...
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
.NET is a marketing term referring to a family of products, consisting of two different lineages.
The .NET Framework ("netfx") lineage was introduced in 2002. This lineage runs only on Windows. Its most recent release is .NET Framework 4.8.1. While this lineage is still supported, very few new features are being introduced into it. Devs are encouraged not to target .NET Framework for new app development.
The .NET Core ("netcore") lineage was introduced in 2016. This is a modern development platform which runs across many different OSes. The .NET Core 3.1 product was the last version in this lineage to bear the ".NET Core" name; and starting with the next release (.NET 5), the product was renamed to simply ".NET".
.net6
in 2021, .net7
in 2022, .net8
in 2023 ... the next release in this lineage is .NET 9. This lineage is where new features are actively being developed. Devs are encouraged to target .NET for new app development.
Nowadays, the ".NET" moniker usually refers to recent versions of the netcore lineage. When you create a new app targeting .NET (not .NET Framework!), you're targeting this newer, modern, cross-platform API surface and runtime.I understand that .NET is a software framework that has support for multiple programming languages. But is it it's own language?
No
its not a language.
you can't write a program in .NET
you'd use either C#, F# or VB.NET
Okay so C# is built from .NET?
what do you mean exactly by that question?
I have no idea tbh
I'm super confused on what .NET actually is
C# is a language. You don't "build" a language as such.
Yeah i know that
But what is .NET?
I just told you?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Pobiega
.NET is everything C# builds on. Its the BCL, the compiler, the runtime, nuget...
Quoted by
<@105026391237480448> from #What exactly is .NET? (click here)
React with β to remove this embed.
C#, C, Python and Haskell?
Is that what you mean?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Haskell?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
(Haskell isnt a jvm language)
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Ok. So what's the use of .NET?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
MODiX#0152
.NET is a marketing term referring to a family of products, consisting of two different lineages.
The .NET Framework ("netfx") lineage was introduced in 2002. This lineage runs only on Windows. Its most recent release is .NET Framework 4.8.1. While this lineage is still supported, very few new features are being introduced into it. Devs are encouraged not to target .NET Framework for new app development.
The .NET Core ("netcore") lineage was introduced in 2016. This is a modern development platform which runs across many different OSes. The .NET Core 3.1 product was the last version in this lineage to bear the ".NET Core" name; and starting with the next release (.NET 5), the product was renamed to simply ".NET".
.net6
in 2021, .net7
in 2022, .net8
in 2023 ... the next release in this lineage is .NET 9. This lineage is where new features are actively being developed. Devs are encouraged to target .NET for new app development.
Nowadays, the ".NET" moniker usually refers to recent versions of the netcore lineage. When you create a new app targeting .NET (not .NET Framework!), you're targeting this newer, modern, cross-platform API surface and runtime.Quoted by
<@689473681302224947> from #What exactly is .NET? (click here)
React with β to remove this embed.
Yes
I have read it
but i don't understand it
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Nowadays, the ".NET" moniker usually refers to recent versions of the netcore lineage.
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
like
what the fuck is a netcore lineage
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
to be fair, that blurb is not a good answer to the question
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
its good for people confused about .NET FX/Core/.NET
Like if someone asks me to explain what .NET is. I'm unable to answer that since most of the text above that you provided doesn't make any sense to me
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Consider Python. You have python2.7, 2.8, 3.0 etc. You have pip, and pyinstaller, and all this other stuff
for C#, all that is covered by .NET
C# is literally just a language syntax.
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Would this be correct?
no?
for one, the first list missed nuget, which I think is a major component of .NET
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
second, "interoperability with COM" etc is.. uh.. what?
No. That slide is provided from my teacher on lectures
the next two bullet points are the same
and "a simple distribution model", what does that even mean? "multiple DLL versions on the same machine"?
makes no sense
it also missed the compiler,. and dotnet cli tools
Welcome to my world π :catgun:
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
.NET (or the .NET platform) is an umbrella term which can refer to any or all of the following,
- the Runtime refers to the thing which runs your code. Also known are the Common Language Runtime or simply the CLR. The current version of the CLR is codenamed "CoreCLR"
- the CLR includes a Just-In-Time Compiler(JIT), the thing which turns your compiled code from Intermediate Language(MSIL/IL) to machine code. The current version of the JIT is codenamed "RyuJIT"
- the Base Class Library (BCL) refers to the libraries which are usable without installing any packages. Usually refers to types in the System namespace
- the Framework Class Library (FCL) is an archaic name to a collection of frameworks such as the BCL, WPF, WinForms, and ASP.NET
- the .NET languages - C#, VB, F#, and so on.
- the .NET ecosystem refers to the tools, packages, and other utilities written for .NET(but not necessarily in any of the .NET languages), such as log4net, NuGet, and Visual Studio
idk what it even means here. My gut instict says that .NET + self-contained = simple distribution
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
sure
yes
that itself implies running on a .NET runtime and using the .NET BCL thou
which is what .NET refers to. the whole thing.
This makes it a little bit clearer.
Essentially .NET is just a name for several different things which makes it easier for developers to develop programs? And C# is just a programming language which is also a .NET language?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Yeah i see what you mean now by ecosystem
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Such as the Base Class Library (BCL) ?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Feel free to view the slides
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Share the slides?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Honestly, i'm not entirely sure
There has been no mention of not showing it
So i'm assuming it's ok?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
JFC
kill me now
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
or just to me.
I've died enough because of statements like that
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
so just to be very clear @Merineth .NET is absolutely not .NET Framework and .NET Core combined. Its a contiuation of .NET Core
.NET Framework is legacy only and should be left to die
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
I'm not entirely sure. This is our ILO
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
.NET framework is legacy? It doesn't exist anymore?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Then why are they teaching us that :catfacepalm:
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
I'm mainly going through the slides and making "questions" of them in notion so i can learn
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Ah i see
hey look
at least they got that right π
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
My sole focus right now is to pass my program rather than getting experience
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
I just dont understand. The slides are like "ASPNET, threads, security primitives". Acting like i'm meant to know what these are?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
I don't think the slides assume you know what everything means.
Yeah you are probably right. It's probably more "overall view" ?
its saying "the BCL contains a bunch of stuff, including.."
ASP.NET, which is used to make websites and rest services
etc
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
I might be having a breakdown soon
Like this is soooooo much information
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
There is no way i can learn all this
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
No.
But i can preview the past exams
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
no im good thanks
that would be nuts
it most likely will
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
the BCL is a collection of types which is used to create different types of applications such as Threading, Web APIs, Remoting APIs ...
Would this be correct description for BCL?
It wouldn't matter. It's clear that the teachers aren't interested in being teachers to being with
At least at my school
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Base class library (BCL)
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Ok, so i'm essentially right?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Yeah but you have to keep in mind that i'm completely new to this and i have literally no idea what you mean when you refer to "big picture" etc. I just need a simple understanding of what each part is and does
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Would the BCL be "Using System" in C#?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
I don't know what List<T> is.
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
Generic type?
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
I don't remember
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
We covered generic types yesterday in c#
very shortly
But yes, i have an idea of what it is
Unknown Userβ’3mo ago
Message Not Public
Sign In & Join Server To View
after you write some program in c#
you need something to run it
.net is what runs c#
c# is compiled to an os/architecture independent intermediate language, and then something called the CLR (which has a version for each OS and architecture) takes this intermediate language and translates it (semi) live to the os and arch its running on
now when your writing code, youre using things like Console.X which exist in System, youre using List<T> which exists in System.Collections.Generic, etc.
those things that come with the language are called the Base Class Library, BCL.
Interesting
the thing that compiles c# code is called roslyn
roslyn, the CLR, the BCL, etc together are called .NET
So not to go too much in depth, C# is a language. .NET transforms/translates C# into the appropriate machine code for the appropriate OS that is being used?
now there are also frameworks like ASP.NET Core which are written in something that compiles to .NET IL (intermediate language), in the case of asp.net its c#, and so we call those frameworks part of the .net platform
a .NET language is a language that compiles to IL and runs on CoreCLR
CoreCLR is the runtime for .NET
Wait hold on
This is a lot
CLR stands for common language runtime
thats part of .net
there are also the bcl, some frameworks
So .NET is just a combination of stuff which makes it easier for developers on different programming languages to work together?
.net is a collection of some stuff that you can make language on top of
c# is one of those
So c# is based of .NET?
all languages built on .net can work together seamlessly
yes
now its possible for someone else to write a compiler for c#, and a runtime for .net that understands IL
but c# is designed on .net
and .NET has it's own compiler?
Or does every language have it's own compiler?
yes its called Roslyn
I see. So when we write our code in C#, then we debug it + run it (i assume this is the compiling phase) we essentially compile it with Roslyn?
it can, but as far as i know Roslyn is compiles c# and f#
idk about the other .net langs
No worries, i'm mostly interested in C# only either way
but i assume the teams that work on the f# compiler part and c# compiler are different
After it's compiled in Roslyn. Does .NET take it and make it into machine code?
Or are there any intermediate steps?
the debugger and other tooling is part of the .net sdk yes
well the compiler as well
thou it was roslyn for c# and vb and roslyn for f# being a separate thingy
yes roslyn is the compiler
well its a bit confusing
because would you define the .net platform as only the runtime?
Something like this? Where the compiler is Roslyn for C#?
yes
and the "interpreter" is called CoreCLR
well, or the JIT depending on how you define it
Holy crap this is so much information
Makes me dizzy just going through everything
haha yeah
its easier to get once you start using c#
Haven't gotten to that point yet
However
We did start with Visio today
never touched that in my life
oh its a diagram app
Yeah
To build Classes, Subclasses and their relationships between them
Based on a provided text given to us
ah
thats a weird order of teaching things
reminds me of my intro to java back in 2003-ish?
we had to learn UML before code
Yeah i tend not to take the lectures to seriously because they are reaaaaally uninformative and bad
cba having more anxiety lol
Yeah wait
UML
actively talking to someone studying YH in Tuc jΓΆnkΓΆping right now, btw π
Unified modeling language
that is Visio, right?
:catsweat:
Visio is one of many programs that can do UML modelling
YH?
yrkeshΓΆgskola
Do you know if they are on the 5 year or 3 year program?
YH are usually 2 years.
Never heard of a 5 year YH
Ah i see
I'm on the 5 year one
not YH
well, you're on the university
so thats a masters degree
Yeah
I did a 3 year program in computer science in UmeΓ₯ University, so I know what you are going through
UmU was very good thou
Yeah i chose JU because it was the one i was able to get into :catHeyHello:
I do have a basic understanding of .NET now so
How do i close this help? Or mark it as solved
/close
thanks (:
@Merineth I'll add my take on this π
So every programming language either directly compiles to machine code or needs some sort of runtime/interpreter to turn that to machine code.
Haskell, for example, takes in haskell source code, runs that through ghc (the compiler) and spews out machine code. That machine code contains the haskell runtime, which does things like garbage collection while your program is running.
.net is basically:
- a CLR (common language runtime) - a virtual machine that takes in IL (intermediate language) code and turns that into machine code when you launch an application. That is why you can compile a C# app once and run it on Windows/Mac/Linux without recompiling.
- a standard library (BCL) which can be used by any programming language targetting .net
- some default tools, like the
dotnet
CLI application that lets you create new projects easily, msbuild
as the default build tool, nuget
as the dependency manager.
Various languages can compile to IL. C#/F#/VB.net does right now. Scala used to have a IL backend (that meant you could compile scala programs to run on CLR).
C# is the primary language of .net which receives most support and resources.IS THERE IN FUTURE WORKING AS .NET DEVELOPER ? IS IT GOING TO BE IN MARKET LIKE AFTER 15 YEARS ?
yes
why are you screaming this question in a random help thread
also 15 years is a long period of time...
time flies
well .net framework started in something 2002 so its been in the market for longer than 15 years already
the move to just .net just makes it more powerful into the market as it expands its governance and accessibility
Okhay thanks