---
title: "Framtiden"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/89413-framtiden/page2"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Prästen"
published: "2003-11-01T15:33:17.000Z"
updated: "2004-05-06T10:50:30.000Z"
replies: 156
views: 5773
page: 2
pages: 8
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/89413-framtiden"
---

# Framtiden

_Sida 2 av 8._

## #21 — sgtpepper, 2003-11-03T01:19Z

> **Prästen skrev:**
>
> jag tror kriget är över.

Lustigt, jag jobbar på världens största IT-företag och vi kör Java och enbart Java så att det ryker. Så jag tror inte att "kriget" är över.

Det finns två läger, Java- och Microsoftlägret. Sitter man i det ena lägret så ter sig det andra lägret som ganska diffust och ointressant, det betyder dock inte att det "egna" lägret är allenarådande.

Sen kan man diskutera i evighet om vad som är bäst osv och gå in på detaljerad nivå, men du kan lita på att det finns stora ekonomiska och tekniska aktörer bakom Java likaväl som det finns bakom .NET, inget av de båda lägrena kommer att "vinna", det .NET har gjort är att framförallt ha erövrat Microsoftdelen av branchen, Javadelen kör till stor del fortfarande Java.

Permalänk: https://www.webforum.nu/p/1196795

## #22 — Prästen, 2003-11-03T02:04Z

> snabbhet genom flexibilitet och kontroll, och som det ser ut idag är ASP.NET inte byggt med tanke på det senare.

men .net är ju tanken att kontrollen ska öka, eftersom det finns mindre risk att man gör fel med managed (minneshantering tex) pekare finns inte i C#, kontrollen ökar. men det hela handlar ju om en övervägning. .net erbjuder enklare programmering och ökad kontroll, mot att man tummar litegrann på den fria programmeringen, och det är en avvägning som jag köper. helt enkelt för att jag tycker man ska sätta produktivitet i första rummet, tänk dig å göra en windowsapplikation i C++, det är rena mardrömmen, 100 mil kod bara för att sätta upp all grafik, message-pumps och allsköns bröte, urk. med .net är det rena barnleken. och longhorn och whidbey blir det ännu enklare. och det är så snabbt också, nästan lika snabbt som kompilerad kod. vad mer kan man begära?. Så småningom tror jag också att spel kommer göras i managed, eftersom att göra spel är en svettig process, det är extremt svårt , krävs oerhört kreativt tänkande (linjär algebra på högsta nivå, Artificiell intelligens m.m), och då vill ju utvecklaren satsa på det kreativa och inte på att fundera ut hur man ska hantera minnet och alla äckliga pekare och grejer. så tror jag iaf. Och managed DirectX är 95-98% lika snabbt som DirectX C++. Tid är pengar idag. Och allt som kan göra dom mer produktiva är bara bra.

> Lustigt, jag jobbar på världens största IT-företag och vi kör Java och enbart Java så att det ryker. Så jag tror inte att "kriget" är över.

men vad ska egentligen java erbjuda när longhorn kommer ut?.

> men hittills är jag långt ifrån glad över den riktning som MS valt med ASP.NET. Överväger ibland till och med att överge ASP.NET till förmån för något annat

då lär du inte gilla longhorn, för där har även windowsprogrammeringen ersatts av ett ASP.NET liknande markup språk (XAML), och en lite codebehind bakom alltihop :)

Och en annan sak, många klagar på microsoft servrar säkerhet, men fundera lite på det.
MS är utsatt för ca 1000 gånger fler attacker än tex apache eller något annat system, eftersom MS är alla hackares favorit hackkyckling, därför är MS servrar så många gånger mer utsatta för attacker, för vilken hackare ger sig på en snäll apache server?, inte många iaf. Därför upptäcks inte lika många buggar och säkerhetsluckor på andra system än MS.

Permalänk: https://www.webforum.nu/p/1196798

## #23 — NETwork, 2003-11-03T07:07Z

Låt oss hoppas att vi aldrig hamnar i det läget att det bara finns "EN" alenarådande standard/produkt/plattform/wee - eftersom det är just konkurens och valmnöjligheter som stimulerar utveckling och pressar priser.

Permalänk: https://www.webforum.nu/p/1196818

## #24 — niko, 2003-11-03T09:05Z

> **Prästen skrev:**
>
> tänk dig å göra en windowsapplikation i C++, det är rena mardrömmen, 100 mil kod bara för att sätta upp all grafik, message-pumps och allsköns bröte, urk.

Allvarligt talat: Det *finns* (sedan länge) färdiga klasser för fönsterhantering även i C++ (precis som i flertalet andra moderna språk/miljöer).

Vi behöver ju åtminstone inte låtsas att *allting* plötsligt har sin utgångspunkt i .NET (klassbibliotek, objektorientering, byte-kod, JIT-kompilering, garbage-collection osv ..) och att allt dessförinnan var rena stenåldern. 

Om man inte ser programmering i ett så snävt och kort(?) perspektiv som du tycks göra så är det egentligen relativt *få* saker som har det.

Permalänk: https://www.webforum.nu/p/1196875

## #25 — Prästen, 2003-11-03T09:41Z

> Allvarligt talat: Det finns (sedan länge) färdiga klasser för fönsterhantering även i C++ (precis som i flertalet andra moderna språk/miljöer).

Du menar MFC. Men jämför hur mycket man får skriva för att sätta upp ett fönster i C++ och i .net. Jämför också händelsehanteringssystemet med .net. Det är som natt och dag.
Det tog mig flera dagar att bara förstå message-pumpen.

Permalänk: https://www.webforum.nu/p/1196895

## #26 — niko, 2003-11-03T10:13Z

> **Prästen skrev:**
>
> Du menar MFC.

Nej, inte nödvändigtvis. Jag menade egentligen samtliga miljöer som har abstraherat bort fönsterproceduren (message-pumpen) de senaste 8-10 åren och gjort den "händelsestyrd" på samma enkla sätt som i .NET.

Missförstå mig rätt: Jag har inget mot MS. Det är den miljö/plattform jag behärskar bäst och det är deras grejer som betalar min hyra. Men när man läser dina inlägg så får man intrycket att du läser innantill ur deras reklambroshyrer/PowerPoints (med en ganska gäll röst).

Om du anser att .NET är den eviga och slutgiltiga lösningen på alla programmeringsrelaterade problem. Bra. Satsa då all din vakna tid på det.

Men för din egen skull bör du inte ha några illusioner: Om 5-10 år så kommer supertekniken X (inte nödvändigtvis från MS) och debatten kommer då att handla om vilken hopplös, krånglig och föråldrad återvändsgränd .NET egentligen var. Det är liksom så saker och ting funkar ..

Permalänk: https://www.webforum.nu/p/1196917

## #27 — Prästen, 2003-11-03T10:41Z

> Nej, inte nödvändigtvis. Jag menade egentligen samtliga miljöer som har abstraherat bort fönsterproceduren (message-pumpen) de senaste 8-10 åren och gjort den "händelsestyrd" på samma enkla sätt som i .NET.

I det här fallet menar jag windowsprogrammering, som du säkert ser. Men jag förstår inte alls vad du menar. Har du lust å visa mig hur man implementerar en händelsehanterare(message-pump) i det gamla hederliga Visual Studio C++ , och på vilket sätt dom gjort den lika enkel som i .NET?.

Permalänk: https://www.webforum.nu/p/1196944

## #28 — Vimp, 2003-11-03T11:06Z

> **emission skrev:**
>
> > **Vimp skrev:**
> >
> > .NET 1.1 är det absolut snabbaste som finns just nu
>
> 
> Jämfört med vad? Källa?

Självklart kan du få en källa :)

<http://www.asp.net/whidbey/whitepapers/AspNetOverview.aspx?tabindex=0&tabid=1>

Första raden på del 3:
Today, ASP.NET is the World's fastest Web application server. Our goal with ASP.NET Whidbey is to make it even faster.

Permalänk: https://www.webforum.nu/p/1196957

## #29 — niko, 2003-11-03T11:20Z

> **Prästen skrev:**
>
> Har du lust å visa mig hur man implementerar en händelsehanterare(message-pump) i det gamla hederliga Visual Studio

 
Visst:

1\. Starta studion.
2\. File -\> New Project -\> MFC App Wizard -\> Dialog Based.
3\. Next -\> Next -\> .. -\> Finish
4\. Rita upp en knapp, dubbelklicka. Och, voilà! Där har du din händelsehanterare utan att du skrivit en enda rad kod.
5\. Om det sen handlar om annat än knappar och musklick så är det bara att gå in i Classwizarden (Ctrl-W) och lägga till hanterare för valfritt Windowsmeddelande/event.

Och sen ska vi ju inte tala om tex VB där det varit ännu enklare sen 1993(?).

Permalänk: https://www.webforum.nu/p/1196961

## #30 — Gladh, 2003-11-03T12:21Z

> Självklart kan du få en källa 
> 
> <http://www.asp.net/whidbey/whitepap...index=0&tabid=1>
> 
> Första raden på del 3:
> Today, ASP.NET is the World's fastest Web application server. Our goal with ASP.NET Whidbey is to make it even faster.

Du är inte ens lite kritisk, när du inser att källan kommer från MS själva.

Det är ungefär som att fråga Volvo vilken bil som är bäst i världen. Får du inte Volvo som svar är jag förvånnad.

ASP.NET är snabbt, mycket snabbt, men det har inte så mycket med ASP.NET att göra utan mer IIS6.0 och de caching möjligheter som finns. Kan ju nämna att ASP.NET inte är lika snabbt på IIS5 som på IIS6. Är det då ASP.NET som är snabbt eller är det Webservern.

Missförstå mig rätt, jag bara älskar .NET och tycker själv det är Guds gåva till programmeraren :-). Men jag är inte sämre än jag inser att det finns andra tekniker som är lika bra/bättre som .NET bara att jag inte har upptäckt dem/de inte är presenterade än.

\- M

Permalänk: https://www.webforum.nu/p/1196993

## #31 — spango, 2003-11-03T13:29Z

*men .net är ju tanken att kontrollen ska öka, eftersom det finns mindre risk att man gör fel med managed (minneshantering tex) pekare finns inte i C#, kontrollen ökar.*
Ja, och? Varken emission eller SPiN pratade om garbage collection.

*nästan lika snabbt som kompilerad kod. vad mer kan man begära?.*
\*Lika\* snabbt som kompilerad kod? :p 

*Så småningom tror jag också att spel kommer göras i managed, eftersom att göra spel är en svettig process, det är extremt svårt , krävs oerhört kreativt tänkande (linjär algebra på högsta nivå, Artificiell intelligens m.m),*
Inte omöjligt att spel m.m. kommer göras i unmanaged, men då jag är väl insatt på området AI kan jag hälsa att minneshanteringen (eller snarare minnesdeallokeringen) inte är det svåraste eller mest produktivitetsstävjande. Visst är det trevligt med automagisk GC, men vill man verkligen minska mängden kod finns funktionella språk som Prolog, där en del rätt bökiga saker kräver våldsamt mycket mindre kod. 

*då vill ju utvecklaren satsa på det kreativa och inte på att fundera ut hur man ska hantera minnet och alla äckliga pekare och grejer. så tror jag iaf.* 
Ja, du \*tror\* det ja... :OO 
Att du säger att man inte behöver bekymra sig om minneshantering bara för att man har en GC säger en del om dig. I såväl Java som .Net är minneshantering extremt viktigt att kunna om man ska göra en mer krävande applikation. Visst, man behöver inte avallokera minnet själv, men det är vanligen inte speciellt svårt att lista ut när man ska göra, problemet är ibland att man glömmer bort det.

*men vad ska egentligen java erbjuda när longhorn kommer ut?*
Stöd för andra plattformar än Windows? En mognare arkitektur? Leverantörsoberoende? En smidig och trevlig arkitektur?
Vad jag märkt kan du inte ens Java, vilket ger dig ungefär ingen rätt att uttala dig om Javas kapabiliteter.

*Och en annan sak, många klagar på microsoft servrar säkerhet, men fundera lite på det.
MS är utsatt för ca 1000 gånger fler attacker än tex apache eller något annat system, eftersom MS är alla hackares favorit hackkyckling, därför är MS servrar så många gånger mer utsatta för attacker för vilken hackare ger sig på en snäll apache server?, inte många iaf.*
Jaha ja, och det här har du en källa på? Inte? OK, då kanske du är mogen att ta till dig det faktum att det ses som en merit bland crackers (inte "hackers", tack, det är något annat) att knäcka en Apacheserver. De jag lärt känna som pysslar med offensiv cracking gör det av helt andra anledningar (mest för att se om de kan).

Permalänk: https://www.webforum.nu/p/1197020

## #32 — Engine^, 2003-11-03T14:57Z

Att vara tvungen att ha koll på minneshanteringen är en fördel vid applikationsutveckling. Det går inte att lita på garbagecollecting i C# och tro att det inte blir något spill. Så fungerar det helt enkelt inte och detta finns förklarat i den mesta .NET-dokumentationen, så fort området berörs.

I övrigt håller jag med **spango** :)

Permalänk: https://www.webforum.nu/p/1197057

## #33 — NETwork, 2003-11-03T15:05Z

Minneshanteringen körs om jag förstått det rätt som en service i bakgrunden med ganska låg prioritet... när processorn har lite att göra vandrar den runt och letar. Om det krisar med minnet så sätter .net automatiskt upp processens prioritet. Det ska tydligen vara mer eller mindre vattentätt (rätta mig gärna om jag har fel) men en process är alltid en process (som tar lite systemresurser) och du förlorar ju även precisionen att själv bestämma exakt när ett objekt ska förstöras (för det kan du aldrig veta om du använder GC).

Permalänk: https://www.webforum.nu/p/1197061

## #34 — spango, 2003-11-03T18:54Z

Minnet frigörs (förr eller senare), det är inte så svårt att hålla reda på vilka objekt som någon håller i och vilka som är bortglömda. Däremot, som sagt, vet man inte när, och det sker ju som bekant endast om man inte har någon referens till det någonstans. Dessutom vill man inte alltid att minne ska frigöras, utan helst av allt ska det återanvändas direkt (snarare än att återvinnas) eller än bättre, aldrig behövas.

Permalänk: https://www.webforum.nu/p/1197197

## #35 — Gladh, 2003-11-03T19:43Z

Fördelen med .NETs Minnehantering jämfört med typ C/C++ är att det är extremt snabbt att skapa instanser av objekt. Eftersom man hela tiden bara bygger på stacken/heapen.

Jmf med C/C++ där man letar upp ett tillräckligt mycke ledigt när man skapar instansen.

Tyvärr är GC riktigt dålig när den skall städa eftersig, eftersom den måste stänga ner hela din applikation, vilket gör att en Realtids-applikation nog aldrig kommer att bli 100% realtid i Managed code (om man inte har unlimited memory). Sedan tar den en liten stund att gå igenom vilka objekt som kan tas bort, ta bort dessa och sedan "packa ihop" minnet.

Fördelen är som sagt, extremt snabb instansiering och att man iprincip har tagit bort minnesläckor.

Fördelen med .NET's hantering är ju att om man har mycket minne så behöver man aldrig köra en GC och man tappar ingen prestanda.

\- M

Permalänk: https://www.webforum.nu/p/1197228

## #36 — Prästen, 2003-11-03T20:00Z

> Ja, du \*tror\* det ja...  
> Att du säger att man inte behöver bekymra sig om minneshantering bara för att man har en GC säger en del om dig.

Jag skrev också pekare, men du väljer liksom att hänga upp dig på GB.
Minneshantering är bara 1 grej av flera man får i C#.
Att programmera med pekare och adresser i C++ är oerhört mycket svårare än att i C# stil instansiera ett objekt ur en klass.
C# är ett enklare språk, men nästan lika kraftfullt och snabbt som C++.
Managed DirectX är som sagt 95-98% lika snabbt.
Det är därför jag tror på det så starkt. 
Så jag ser inte så många hinder att spelutvecklarna i sinom tid också går över.
Just för produktivitetens skull, man får tumma litegrann på performance. Avvägning.

> men vill man verkligen minska mängden kod finns funktionella språk som Prolog, där en del rätt bökiga saker kräver våldsamt mycket mindre kod

Prolog som spelutvecklarspråk, ska jag tolka det som ett förtidigt aprilskämt eller?.

> Stöd för andra plattformar än Windows? En mognare arkitektur? Leverantörsoberoende? En smidig och trevlig arkitektur?

........ Wow! :)

> Jaha ja, och det här har du en källa på? Inte? OK, då kanske du är mogen att ta till dig det faktum att det ses som en merit bland crackers (inte "hackers", tack, det är något annat) att knäcka en Apacheserver. De jag lärt känna som pysslar med offensiv cracking gör det av helt andra anledningar (mest för att se om de kan).

vilka påhopp. Det behöver man inte någon källhänvisning till, MS är mera utsatt än andra system. Hur många hackar linux?
Everybody loves Linux.

Permalänk: https://www.webforum.nu/p/1197245

## #37 — niko, 2003-11-03T21:14Z

> **Prästen skrev:**
>
> Att programmera med pekare och adresser i C++ är oerhört mycket svårare än att i C# stil instansiera ett objekt ur en klass.

Ja

```
MinKlass* mittobjekt = new MinKlass(arg);
```

är ju ruggigt mycket svårare än:

```
MinKlass mittobjekt = new MinKlass(arg);
```

.

Permalänk: https://www.webforum.nu/p/1197293

## #38 — Prästen, 2003-11-03T21:41Z

Och vad är det du försöker antyda?, att C++ är lika lätt som C#?

Vad jag menade var:
När man håller på med C++ och pekare som ger direkta minnesadresser så kräver det mycket större kunskap om hur en dator fungerar eftersom kan man messa direkt i minnet med pekarna så kan man skriva över saker om man inte passar sig. I managed C# finns inga pekare, där finns det bara säkra och mycket lättanvända Klasser att använda.

Permalänk: https://www.webforum.nu/p/1197313

## #39 — niko, 2003-11-03T21:49Z

> **Prästen skrev:**
>
> Och vad är det du försöker antyda?, att C++ är lika lätt som C#?

Nä. Jag försöker antyda att du vevar ett och samma billiga debattknep om och om igen: Du låtsas att allt utanför/innan VS.NET är/var lika hopplöst primitivt som Windowsprogrammering à la 1991.

Däremot förstår jag mycket väl att du känner dig pressad när du har (i stort sett) hela drevet emot dig. Fast, å andra sidan: Du *måste* inte försvara dig till sista blodsdroppen. Försök istället till dig av vad folk skriver och följ Spins råd från förra sidan om att vidga dina vyer lite.

Permalänk: https://www.webforum.nu/p/1197319

## #40 — Prästen, 2003-11-04T00:43Z

innan ni skriver, kolla på filmen.

<http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20031028LHORNDB/manifest.xml>

Permalänk: https://www.webforum.nu/p/1197407

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/89413-framtiden/page2  
Föregående sida: https://www.webforum.nu/amne/dotnet/89413-framtiden.md  
Nästa sida: https://www.webforum.nu/amne/dotnet/89413-framtiden/page3.md
