mboost-dp1
Flickr - Johnnie W@lker
Windcape (146) skrev:Med en ene hånd råber man op om at man ikke vil have lambda i Java 7 i JCP, og med den anden hånd skifter man til Scala for at få funktionelle muligheder.
Ja.
Det er der vel ikke noget mærkeligt i.
Forskellige sprog til forskellige typer af opgaver giver da god mening.
Windcape (145) skrev:Mads Torgersen forklarede på JAOO'09 at CLR'en udvikles af et andet team end C#.
Ja. Selvfølgelig. To vidt forskellige opgaver kræver forskellige folk.
Tror du at det er de samme folk som arbejder med Java syntax og javac.exe der også optimerer JIT compileren i java.exe?
Hence, Domain Specific Languages.arne_v (150) skrev:Forskellige sprog til forskellige typer af opgaver giver da god mening.
DSLs er kraftigt undervurderet. Java burde ikke tvinge udviklerne over i Scala, men implementere Scala som DSL til bestemte opgaver.
Det er lidt overraskende at ingen har gjort det før LINQ (mig bekendt)
Jeg vil ikke blive overrasket... Specielt ikke med SUNs økonomi.arne_v (151) skrev:Tror du at det er de samme folk som arbejder med Java syntax og javac.exe der også optimerer JIT compileren i java.exe?
Windcape (126) skrev:Du mener at du ikke vil røre ved C#, fordi det er Microsoft som har udviklet dig. Spar os dine undskyldninger.
Jeg har LIGE fortalt dig at det ikke er det. Lad være med at kalde mig en løgner!
Jeg har også tidligere fortalt dig HVORFOR jeg ikke kan lide C# og .net. Men det er argumenter som du er ligeglad med. I stedet for at konkludere at vi er forskellige mennesker med forskellige lyster og behov, vælger du så at konkludere at mine argumenter er ligegyldige for mig også.
Du er fanme svær at debatere med, når debatten skal trækkes ned på det niveau!
Windcape (126) skrev:Du har jo tydeligvis et personligt problem med at jeg kritisere de platforme du bruger. Men modsat har du nul erfaring med de platforme jeg bruger og kan ikke argumentere tilbage, og så bruger du alle mulige latterlige undskyldninger og person angreb.
Du må gerne kritisere. Det skal bare være reel kritik, i stedet for at sprede dine fejltagelser og subjektive holdninger som objektive fakta.
Det er korrekt at jeg har ca. nul erfaring og ret begrænset viden om C# og .net. Det er derfor jeg holder mig fra sammenligninger mellem din "Microsoft way" og min "Java way", og kun snakker om Java.
"Latterlige undskyldninger" er jo ren flamebait, og "person angreb" (fra mig og andre) synes jeg du skal tage som hints til at du skal du skal revurdere din tilgang, da du faktisk har fortjent de fleste af dem. Og det mener jeg uanset om nogen (inkl. mig selv) er gået over stregen. Du kan ikke bringe niveauet ned, og så brokke dig over at andre følger med.
Windcape (128) skrev:Og så morer det mig over at J2EE udviklerne forsvarer Java på alle punkter, når man med lidt fornuft, kan se at det kun er J2EE som er den reelle styrke i Java, resten er svagheder og mangler.
Jeg kan lige se det for mig. myplacedk forsvarer Java Applets over Flash eller Silverlight. Eller JavaFX over WPF.
Nu prøver jeg at formulere mig pænt, og fortælle dig noget i stedet for at komme med et "personligt angreb". Du kan tolke det som du vil (det gør du jo alligevel), men jeg kan altså ikke formulere det pænere lige nu uden at meningen går tabt:
Fuuuck, hvor er du afsporet!
myplacedk (154) skrev:Det er korrekt at jeg har ca. nul erfaring og ret begrænset viden om C# og .net.
Det er nu også på grænsen til Flamebait, hvis man aktivt udbreder "at man ikke kan li' en given, udbredt og aktivt udviklingsplatform" , når man samtidig erkender at man ikke ved en klap om det ;)
Personligt synes jeg også at Java er lige så "lidt" cross-platform, som .NET, når man kigger på den praktiske anvendelse. Som squad2nd "nævner", så er det *svært* at lave noget ordenligt i swing, med mindre at man virkelig har styr på tingene. Kombiner dette med mangel på ordenlig native look'n feel, så gør det at Java GUI apps sjælendt er den bedste løsning (på nogen platform). Hvis man så medregner Microsoft's dominans på Desktop'en, så gør det at .NET's "mangel" på *nix, ikke er så vigtigt i praksis. På server-siden er det dog en anden snak. Her er der mange *nix'er og ingen GUI. Her giver Java derfor store fordele. Eller det vil sige, det giver store fordele på traditionelle servere. Når vi begynder at komme ud i kanterne, til eks. embedded systemer eller real time systemer, så er Java igen sjælendt en særlig god løsning (hvis den da i det hele taget er mulig). Af denne grund vælger jeg derfor ofte C/C++, når noget for alvor skal være cross-platform. Som bonus får man så også lidt ekstra "juice", som selv traditionelle servere også er glade for.
Det er rigtigt at hvis ens målgruppe er *nix desktop, så kan Java give nogle fordele, rent økonomisk, da de så også kan sælges til Windows-kunder, som der med sikkerhed er nogle af. (Java må siges at være mere realistisk i virksomheds-sammenhæng end cross-platform Gtk apps) Men igen, hvis man sammenligner løsningen med et native Gtk *nix app og et native Win32 app, så repræsenterer Java, vel mere det acceptable kompromis end "da sizzle" ;)
... Men arbejder man regelmæssigt med *nix, så er det fuldstændig urealistisk, at "ikke kunne li' Java" eller ikke have Java-kundskaber. Dertil er det simpelthen for udbredt.
Det samme kan siges om Windows. Det er fjollet at ikke have styr på sit COM, WinAPI, VB, OLE, .NET mm. (eller ikke kan li' dem) hvis man arbejder med Microsoft ting.
illishar (155) skrev:Det er nu også på grænsen til Flamebait, hvis man aktivt udbreder "at man ikke kan li' en given, udbredt og aktivt udviklingsplatform" , når man samtidig erkender at man ikke ved en klap om det ;)
Man kan godt have viden om noget, man ikke har erfaring med. Dermed kan man også have en holdning til det.
(Jeg har begrænset viden om implementeringsdetaljer som Windcape går højt op i, men tilstrækkelig viden om de ting JEG går op i.)
Bemærk også at aldrig har sagt at C# og .net er dårlige teknologier, kun at JEG ikke kan lide dem.
Og så kommer du med nogle betragtninger som jeg ikke lige ved hvad jeg skal sige til. Det kan vel kortes ned til "the right tool for the right job", hvilket jeg har prøvet at forklare Windcape.
Hvis jeg skal tilføje noget lidt mere konkret:
Det Java JEG arbejder med, fungerer ganske glimrende på tværs af de platforme jeg arbejder med: Windows, Linux og AIX.
Det .net JEG har prøvet med, kan ikke afvikles i Linux, medmindre producenten selv praler med at have sørget for at det virker.
Windcape har måske modsatte erfaring. Det betyder måske ikke andet, end at han arbejder med nogle andre ting end jeg gør. Jeg tror nu der er mere i det end det, men lad os bare holde os til fakta.
Når jeg kigger på historierne, licenserne osv. til .net og Java, så synes jeg at jeg ser en god forklaring på mine erfaringer. Og det er i høj grad ud fra det (alt det kedelige snask Windcape siger han er ligeglad med, og ikke syntax, erfaring som udvikler eller erfaring som bruger) at jeg har dannet den holdning, at C# og .net står langt nede på listen over teknologier jeg har lyst til at arbejde med.
Altså hele rygraden i Java og c#/.net er hvad JEG fokuserer på, ikke detaljer for hvordan generics er implementeret og den slags.
Windcape ser modsat på det (men vil sikkert bruge nogle andre ord). Og det er da fint nok. Forskellighed er en god ting.
Det Java JEG arbejder med, fungerer ganske glimrende på tværs af de platforme jeg arbejder med: Windows, Linux og AIX.
Det .net JEG har prøvet med, kan ikke afvikles i Linux, medmindre producenten selv praler med at have sørget for at det virker.
Windcape har måske modsatte erfaring. Det betyder måske ikke andet, end at han arbejder med nogle andre ting end jeg gør. Jeg tror nu der er mere i det end det, men lad os bare holde os til fakta.
Når jeg kigger på historierne, licenserne osv. til .net og Java, så synes jeg at jeg ser en god forklaring på mine erfaringer. Og det er i høj grad ud fra det (alt det kedelige snask Windcape siger han er ligeglad med, og ikke syntax, erfaring som udvikler eller erfaring som bruger) at jeg har dannet den holdning, at C# og .net står langt nede på listen over teknologier jeg har lyst til at arbejde med.
Altså hele rygraden i Java og c#/.net er hvad JEG fokuserer på, ikke detaljer for hvordan generics er implementeret og den slags.
Windcape ser modsat på det (men vil sikkert bruge nogle andre ord). Og det er da fint nok. Forskellighed er en god ting.
myplacedk (156) skrev:Og så kommer du med nogle betragtninger ...
Java-betragtningen var nu ikke specifikt henvendt til dig. Det var mest et rant om at jeg ikke mener at Java's force er "cross-platform".
Java pwner derimod, ubetinget C/C++ på vedligehold og udviklingstid, når vi taler om udvikling på mainstream *nix.
Update:
Det ser ud til at være tæt på: http://research.microsoft.com/en-us/projects/specs...
(Med checked exceptions og det hele.)
Derudover har det nye .NET4 også fået mulighed for statiske kode-kontrakter. Så mangler der bare at de bliver obligatoriske og helst også indbygget lidt bedre i syntaxen, ala spec# og SPARK.
Option CodeContracts On!
illishar (107) skrev:... SPARK.NET. Hvilken awesome ide. Der må være et eller andet på Google ...
Det ser ud til at være tæt på: http://research.microsoft.com/en-us/projects/specs...
(Med checked exceptions og det hele.)
Derudover har det nye .NET4 også fået mulighed for statiske kode-kontrakter. Så mangler der bare at de bliver obligatoriske og helst også indbygget lidt bedre i syntaxen, ala spec# og SPARK.
Option CodeContracts On!
Windcape (153) skrev:
Hence, Domain Specific Languages.
DSLs er kraftigt undervurderet.
Der er absolut potentiale i DSL.
Det virker dog ikke særligt modent endnu.
Windcape (153) skrev:Java burde ikke tvinge udviklerne over i Scala, men implementere Scala som DSL til bestemte opgaver.
Jeg finder det ikke givet at:
- internal DSL er bedre end external DSL
- brug af internal DSL og normal kode i samme metode er påkrævet
Windcape (153) skrev:Det er lidt overraskende at ingen har gjort det før LINQ (mig bekendt)
Brug af DSL i programmerings sprog er langtfra nyt.
Embedded SQL i et Cobol program fra 1980 er brug af DSL!
illishar (155) skrev:Personligt synes jeg også at Java er lige så "lidt" cross-platform, som .NET, når man kigger på den praktiske anvendelse. Som squad2nd "nævner", så er det *svært* at lave noget ordenligt i swing, med mindre at man virkelig har styr på tingene. Kombiner dette med mangel på ordenlig native look'n feel, så gør det at Java GUI apps sjælendt er den bedste løsning (på nogen platform). Hvis man så medregner Microsoft's dominans på Desktop'en, så gør det at .NET's "mangel" på *nix, ikke er så vigtigt i praksis. På server-siden er det dog en anden snak. Her er der mange *nix'er og ingen GUI. Her giver Java derfor store fordele.
illishar (158) skrev:Det var mest et rant om at jeg ikke mener at Java's force er "cross-platform".
Nu er der jo cross-platform og cross-platform.
Det er meget almindeligt at:
- udvikle Java EE på Windows og deploye på *nix
- deploye samme Java EE app på forskellige OS (Linux, Windows, AIX, Solaris etc.)
Jeg vil faktisk mene at over halvdelen af alle dem der arbejder med Java EE bruger en af disse features.
Så Java EE har da nytte af cross platform mulighederne i Java.
Men hvorvidt Java er et godt valg til den næste super-duper millioner af eksemplarer desktop app er en helt anden sag. Mit indtryk er at de fleste der vælger at bruge en fælles kerne og så platform specifikke UI ovenpå. For at få den helt rigtige native look and feel.
illishar (155) skrev:Når vi begynder at komme ud i kanterne, til eks. embedded systemer eller real time systemer, så er Java igen sjælendt en særlig god løsning (hvis den da i det hele taget er mulig).
Java bruges en del i embedded sammenhæng. Men nok kun i MB dimser og ikke i KB dimser.
Java duer ikke til realtime. JIT compiler og GC kan ikke levere varen.
(der er ganske vist JSR-1 og JSR-282 realtime Java specifikationerne, men jeg mener ikke at de har slået igennem)
illishar (160) skrev:Update:
Det ser ud til at være tæt på: http://research.microsoft.com/en-us/projects/specs...
(Med checked exceptions og det hele.)
Derudover har det nye .NET4 også fået mulighed for statiske kode-kontrakter. Så mangler der bare at de bliver obligatoriske og helst også indbygget lidt bedre i syntaxen, ala spec# og SPARK.
Option CodeContracts On!
Det er helt klart en af de mere interessante dele af .NET 4.0.
Men jeg tvivler lidt på om det vil blive brugt i større omfang.
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

- Forside
- ⟨
- Forum
- ⟨
- Nyheder
Gå til bund