C#/.Net tar tronen på alla plattformar?

Oracle har haft sönder Java. De är en dålig ägare av plattformen. Troligen för att de först bara ville ha plattformen för att sätta dit Google, inte för att ge utvecklare en modern app-plattform.

C# mycket snabbare än java/dalvik.
http://www.cnx-software.com/2012/05/02/xamarin-ported-android-to-c-with-massive-performance-improvement-over-dalvik/
Hata att java installerar Ask hela tiden. Allas föräldrar har nu 17 toolbars i webbläsaren. Det har gått så långt att jag har avinstallerat Java på mina maskiner hemma.
PHP

 

Molnet

Kanske blir 2013 året då C# och .NET-plattformen får genomslag på alla fronter, såväl vad gäller server-mjukvara, desktop-program och mobilappar. Jag tror att det kan bli så av ett par anledningar.

Serversidan

På serversidan finns en uppsjö med språk och ramverk i bruk. De vi stött på mest här på Drömbolaget är tveklöst .NET, Java och PHP. Andra plattformar ligger och bubblar såsom Ruby on Rails och node.JS. Men de har ännu inte slagit igenom, och de saknar ännu det enormt breda stöd i utvecklarvärlden som gör att man kan få expertsvar på sina frågor på bara minuter på Stack Overflow, och dessa språk har inte alls den bredd som .NET-plattformen har som når många fler plattformar.

Java

Java på serversidan lever inte längre säkert. Säkerhetsproblemen på senare tid gäller mest Java i webbläsaren, inte Java på servern. Att bygga och host:a Java är dock mycket svårare än att göra samma saker med .NET. Detta till stor del pga förbättrat stöd för publicering i Visual Studio 2012 där man kan publicera direkt till molnet i form av Azure.

Det är också uppenbart att Java inte utvecklas i den takt andra plattformar och språk gör. Oracle är inte intresserade av att ha den bästa plattformen för utvecklare.

Since then, both the language and the execution environment have continued to evolve and improve. C# went from being a slightly better Java to be light-years ahead. From embracing dynamic programming, bring asynchronicity into the language, introduce iterators, functional programming constructs, embrace parallelism and got a great implementation of generics.

- Xamarin

PHP

PHP lever mest kvar i äldre applikationer, och där ofta i form av spagetti-kod. Det finns en del fina PHP-system - vi har byggt en del vi också. Det blir dock alltid problem med debugging, och minnesproblem eller prestandaproblem dyker nästan alltid upp i belastade PHP-system. Utvecklingsfasen lider också av PHP inte kompileras. Det finns fördelar med scriptspråk också - det är bara att ladda om sidan och se nya koden köras direkt, men bygge och sidomladdning på våra största system tar idag ändå under 25 sekunder. Den nytta kompilerade språk ger med avsevärt bättre stöd för refactoring t.ex. med råge väger upp de sekundrarna i kompileringstid. PHP:s stöd för Unicode är också skrattretande, en katastrofal följetong, där PHP 6 inte någonsin verkar komma att se dagens ljus.

Vi spår att PHP helt enkelt dör ut de närmsta åren utom i gamla legacy-system. Framtidens Cobol.

.NET

De saker som imponerat mest angående .NET under 2012 och 2013 har för oss varit:

  • Microsoft tar in populära projekt under sina vingar och släpper officiellt stödda och supportade versioner. Ett fantastiskt exempel: SignalR
  • Entity Framework 5
  • Azure, möjligheten att publicera direkt till virtuella maskiner m.m direkt från Visual Studio.
  • Xamarin, mono blir seriöst och erövrar många fler plattformar med sitt vacka ramverk.
C# och .NET är inte direkt tillgängligt på Android och iOS eller OSX. Men eftersom C# är en ECMA-standard går det att bygga en kompatibel VM för alla plattformar. MONO har länge varit i utveckling men inte riktigt lyckats övertyga dem som föredragit LAMP eller Linux/BSD + Java.

Mobilappar

Android/Java

Oracle köpte SUN år 2010. I min mening har de bristfälligt drivit utveckling och underhåll av Java sedan dess. Man kan nog säga att Oracle har haft sönder Java. Kanske indirekt eftersom deras stora mål var att sätta dit Google, inte för att ge utvecklare en modern app-plattform. Bara striden i sig mellan Google och Java har skadat plattformen, och indirekt också Android.

Oracles tillägg av Reflection i Java 7 har visat sig vara det största problemet och ett återkommande säkerhetsproblem.

Att Oracle försöker installerar Ask-toolbar på min dator med mycket tvivelaktiga metoder varenda gång de ska släppa en säkerhetsfix (vilket verkar vara minst en gång i veckan numera) gör inte saken bättre. Det gör mig mest förbannad. Mina föräldrar har nu 17 toolbars i webbläsaren varav Oracle är ansvariga för en. Det har gått så långt att jag faktiskt har avinstallerat Java på mina maskiner hemma. Jag tror inte att jag är ensam om det. Saknar det inte.

One ring to rule them all?

I år har Mono tagit steget upp och blivit Xamarin. Ett företag som enbart sysslar med att erbjuda C# och .NET-plattformen till Android, iOS och OSX. Kanske kommer de att övertyga nu med bra företagssupport.

Ett intressant test gjordes av Xamarin där de portade android från Java till C#. Resultatet talar för sig självt.