Jump to content

Talk:.NET Framework

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Oaiey (talk | contribs) at 13:23, 23 April 2016 (→‎Reworking the .NET Framework article ground-up). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

FCL vs BCL

In the article the relation between the Base Class Library and the Framework Class Library is described: "BCL is a superset of FCL", meaning that the BCL contains the FCL, right? In another wiki, on the page on the FCL, this relationship is inverted: "The Base Class Library (BCL) is the core of the FCL", meaning that the FCL contains the BCL. http://en.wikipedia.org/wiki/Framework_Class_Library

So.. which one is it? 2A02:1810:9C29:9B00:707E:5B:99A7:E6AA (talk) 21:43, 8 January 2015 (UTC)[reply]

I think this is resolved already. Do not know the practice, should this paragraph be removed then? --Oaiey (talk) 20:09, 16 April 2016 (UTC)[reply]
No. You should delete other people's messages in Wikipedia unless they violate a policy that says they mustn't have appeared in the first place. Tag the topic like this:
 Done. —Codename Lisa (talk) 12:56, 17 April 2016 (UTC)[reply]

License: Open-source or not?

Hi.

The title of this message is more a rhetorical question for complain than an actual question.

So, Microsoft announces plans to make .NET Framework open-source and starts releasing some pieces under a free license. Suddenly, the editors start making things look as if they have always been either free and open-source or a mixed of non-free and FOSS. For example, revision 650997250 from 2605:6000:ef84:2f00:74cb:5d3c:6ce:c358 (talk · contribs · WHOIS) goes as far as suggesting that .NET Framework source code has been under MIT License for a long time. Even the edit summary reads: " reference source has been MIT-licensed for a while now, as already mentioned". But the adjacent sources say not such thing and when I navigate to referencesource.microsoft.com and click on its "License" button, I see that the claim is outright wrong: The license is still "MS-RSL". One hour of search of actually yielded this: [1]

So, the next time you wanted to add something that say "it is open-source" or "it has been open-source for a while now", could you please do us a favor and double -check your sources? Thanks in advance.

Best regards,
Codename Lisa (talk) 16:35, 13 March 2015 (UTC)[reply]

Agree with Codename Lisa. The mentioned url (http://referencesource.microsoft.com/) is not accurate for the MIT licensed part. The actual source code dump for the .NET Framework 4.6.x licensed as MIT is placed in Github at https://github.com/Microsoft/referencesource. The url http://referencesource.microsoft.com/ is a viewer to a previous code dump which was not under MIT license. Both dumps are not the same and I assume here, that the viewer contains actually the complete source code which still contains some code which is not MIT licensed while the Github dump is legal licensed MIT sub part of it. Nowadays, the .NET Framework is source open but only partially OSI approved open source (MIT since Nov 2014). --Oaiey (talk) 20:18, 16 April 2016 (UTC)[reply]

The note for .NET Framework 3.5 on Windows 8

I'm unsure why it's listed in the table as included with Windows 8.0-8.1 when it... isn't? According to the note. Is it because Windows attempts to conveniently download it if it's needed so it's ".NET 3.5 aware"? I still think these operating systems should be removed though, since I mainly see that table as a reference for developers looking for what's convenient to ship "standalone" and without needing user interaction or risking access right issues. -- — Northgrove 09:22, 2 April 2015 (UTC)[reply]

Hi.
It is included on the Windows 8, 8.1 and 10 discs but not in the Windows itself and Windows itself conveniently disregards the possibility of a disc. And, in Wikipedia, we are not allowed to judge Windows and call it half-and-half.
Best regards,
Codename Lisa (talk) 10:50, 2 April 2015 (UTC)[reply]
Interesting.. what discs? :) Many get only OEM versions. For those, and those of that do not have an internet connection (just shoot me now - do they exist :) they have no .NET? I know about the redistributable.. and then you can use .NET as you already have a license, except, still for free software/GPL that is not an option, as then GPL's "system software" linking exception (currently not listed at target page) does not apply. If .NET is not installed (by default I would think) it might as well not exists for GPL concerns. I'm a little surprised - I thought it was included - last used Windows when XP was most recent.. comp.arch (talk) 17:51, 19 May 2015 (UTC)[reply]
Hello, Comp.arch. You've asked this question during my lengthy absence; I don't know if you are still interested in the answer or not.
"What disc?"
Any standard Windows installation image would do, be it an OEM disc, retail disc, trial ISO image downloaded from Microsoft TechNet Evaluation Center, a non-trial ISO image downloaded from Microsoft Store or MSDN Subscription Center or the content of any of the aforementioned dumped into a folder on a disk. The only installation image that won't work is a customized installation image whose author deliberately deleted the .NET Framework 3.5 files just to prove that he or she can!
Best regards,
Codename Lisa (talk) 07:42, 8 September 2015 (UTC)[reply]

Any standard Windows installation image would do, be it an OEM disc, retail disc, trial ISO image downloaded from Microsoft TechNet Evaluation Center, a non-trial ISO image downloaded from Microsoft Store or MSDN Subscription Center or the content of any of the aforementioned dumped into a folder on a disk.

Well, we need source! — Preceding unsigned comment added by 119.53.107.34 (talk) 01:13, 11 September 2015‎ (UTC)[reply]

Correction: We need a source if and when we decided to add it to the article. Right now, I am very much fine with the state of the article as it is.
Frankly, it was just a courtesy call when I answered Northgrave's or Comp.arch's off-the-record doubts. But I will not go source-hunting for something that is not even in the article. What currently is in the article is well-referenced. Best regards, Codename Lisa (talk) 16:57, 12 September 2015 (UTC)[reply]
Some .NET Framework versions are considered a Windows Operating System component since 2010 (.NET Framework 3.5.1). The .NET team ships it as part of the Windows Operating System (see lifecycle document https://support.microsoft.com/en-us/gp/framework_faq/en-us). These versions usually have a much longer lifecycle support than versions which do not ship with the operating system (e.g. .NET Framework 4). --Oaiey (talk) 20:26, 16 April 2016 (UTC)[reply]

Memory management

In this section it says: "However, this leaves chunks of free space between objects which were initially contiguous. The objects are then compacted together to make used memory contiguous again" In my humble opinion this is wrong. The objective is not to keep used memory contiguous. The object is to prevent fragmentation of the heap of free space. In order to achieve this, the objects need to be moved around in memory.. — Preceding unsigned comment added by 92.67.98.65 (talk) 14:37, 12 February 2016 (UTC)[reply]

Reworking the .NET Framework article ground-up

I have read the article over the years many times but now in 2016 I think it needs a big overhaul. Let me reason why:

  • The .NET Framework is no longer the same as .NET. It might be the dominant implementation, but not the 2016 way of seeing it. Therefore the forwarding of ".NET" to ".NET Framework" is not correct anymore. The German Wikipedia (https://de.wikipedia.org/wiki/.NET) has already applied that change already. Also the forwarding of ".NET Core" is wrong.
  • While sharing most of the base technology (CLI, IL, ...), the described different ".NET" platforms have so many different characteristics and the ".NET Framework" is just one of them that the article is a bit disorganized now (e.g. licensing table was working as long as the article just targets the ".NET Framework" but now it mismatches the ".NET Core" as a sub-part of the ".NET Framework" which is completely incorrect). This is true for many other paragraphs.
  • The concept of app models is missing.
  • The upcoming .NET Core introduces a complete different OS integration and makes it really cross-platform.
  • The library topics ".NET Standard Library", Portable Class Library (and their problems/evolvements), NuGet Package Manager, and the "mscorlib" vs. "System.Runtime".
  • The Universal Windows App topics native compilation, CoreRT runtime and Silverlight styled "Core" profile is missing.

Like said in the first point: I think the main problem is not the content but the fact that ".NET" should be an own article with the main architecture concepts with sub articles about ".NET Framework", ".NET Core", "Mono", ".Net Micro/Compact Framework", ... which further focus on the individual details.

I am eager to help but since I am not a native English speaker and Wiki Newbie I would need someone helping me a bit here. — Preceding unsigned comment added by Oaiey (talkcontribs) 20:10, 15 April 2016 (UTC) [reply]

@Oaiey: Allow me to give you a friendly warning: Wikipedia veterans always assume a person who says "re-write this article from the ground up" to be an idiot. (Although, they are polite and they won't say it.) And in all the cases that I have witnessed, they were right. Essentially, you must really understand the meaning of "re-write this article from the ground up" and that what a big mistake it is.
Now as for the difference between ".NET" and ".NET Framework", I have seen one blog post on the Internet that proposed this position and that blog post was wrong. It was talking dumb because it assumed its audience were dumb and things should be dumbed down for them. In Wikipedia, we simplify thing but we don't dumb them down; doing that sacrifices the accuracy and NPOV. Fleet Command (talk) 11:24, 16 April 2016 (UTC)[reply]
@FleetCommand: A appreciate the warning and understand it. As a software engineer I know this sickness, just with code instead of articles. Since I do not know the common practices, I do not change the article but first ask here. File a "issue", discuss and then propose the change (that is how to do software development in the open source world I participate in ;)). So I propose we do what I would do with code: doing it step by step to achieve a better result on the way.
To the topic: Can you please reference this blog post. According to the program management at Microsoft and the actual source code it is fair to say that .NET Core is not a component of the .NET Framework and that they are completely different animals. See the graphics on Scott Hanselman's blog post http://www.hanselman.com/blog/ASPNET5IsDeadIntroducingASPNETCore10AndNETCore10.aspx (he is a Microsoft "Principle Program Manager" for .NET) and for example the documentation of the .NET Core team (written by the guys who do the .NET Framework and .NET Core) clearly separates them as different implementations of ".NET" http://dotnet.github.io/docs/concepts/editions-overview.html. Also the build talk of the .NET Program Managers (Scott Hunter and Scott Hanselman) at https://channel9.msdn.com/Events/Build/2016/B891 clearly separate them as two implementation on minutes 5:29, 6:10 and 12:10. This is not some individuals "position", this is the official position and technical facts. You can even inspect the different code bases on http://github.com/dotnet/corefx and https://github.com/Microsoft/referencesource. Wikipedia also has sub pages for the .NET Micro and Compact Frameworks which are also different animals.
Despite your correct warning to a newbie where I am completely with you, I stay with the position: This article group (.NET/.NET Framework/.NET Core) needs a major update. What do you think! --Oaiey (talk) 19:51, 16 April 2016 (UTC)[reply]
Hello, Oaiey and welcome to English Wikipedia.
I recently did a recomposition of the .NET Core section: See revision 713868443. My concerns were more or less similar to yours. As such, I am in a state that don't know what more I can do for the article. But if you think the article needs more updates, you have two options:
  1. You can go ahead and update the live article with the changes that you have in mind, and engage with editors who may challenge your edits and provide feedback. But this can be overwhelming for newcomers who are not used to their changes being reverted wholesale. (See Wikipedia:Editing policy § Talking and editing.)
  2. You can fork the article in your own user space, say at User:Oaiey/.NET Framework where you can edit in peace. But you shouldn't allow your draft to lose sync with the main article, or else importing your changes can be challenging.
Be sure to provide sources for what you write; I can help you format your citations as long as you don't forget to put them between <ref>...</ref> tags.
As for the source that FC mentioned above, I think it is the one cited in the article:

To understand what .NET Core is, it’s helpful to understand .NET itself. Many people mean “.NET Framework” when they say “.NET,” but there’s more to it than that. .NET is an ECMA standard that has different implementations—.NET Framework, Mono, Unity and, now, .NET Core. This means that many of the experiences are shared between the .NET Framework and .NET Core. However, .NET Core is new, with some different principles in mind.

— Carter, Phillip; Knezevic, Zlatko (April 2016). ".NET Core - .NET Goes Cross-Platform with .NET Core". MSDN Magazine. Microsoft.
Unfortunately, Wikipedia cannot lean too much on this statement as long as the part that says 'Many people mean “.NET Framework” when they say “.NET,”' is true. (You can consult our due weight policy.) Still, I can provide much more constructive feedback when I know what you want to write.
Best regards,
Codename Lisa (talk) 12:52, 17 April 2016 (UTC)[reply]
I will do it step-by-step by introducing small changes. I have to warm up here. Thanks Codename Lisa for your welcoming words. I just started with the license table, so feel free to beat me ;) --Oaiey (talk) 15:50, 17 April 2016 (UTC)[reply]
Alright, first the terminology. As long as the majority of people take ".NET" to mean ".NET Framework", you must not use it in any other sense. The reason is simple: Because the majority of the reads only think of it as an inconsistency. Your message does not go through.
Second, does "Entity Framework Core" exist at this time? I have looked up www.dotnetfoundation.org/projects but I don't see it. If it is nothing more than a project announcement just yet, we don't speak about it in this article. Try Entity Framework article first.
Best regards,
Codename Lisa (talk) 16:41, 17 April 2016 (UTC)[reply]
Entity Framework Core exists. it is under http://github.com/aspnet/entityframework while the traditionally is somewhere at codeplex.
In regards of .NET vs. NET Framework ... I work on it .. not easy ;) we have to fix that issue one day for the article (the .NET -> .NET Framework forwarding already creates this problem)
--Oaiey (talk) 13:23, 23 April 2016 (UTC)[reply]