Dla mnie Bash jest okropny. A czy powstał już jakiś kompilowany język programowania, który nie ma wskaźników i ma automatyczne odśmiecanie pamięci jak C#, Java, Kotlin? Rust też nie spełnia wymogów prostoty i wygody.
Ankieta wygasła

- Rejestracja:około 17 lat
- Ostatnio:około 14 godzin
- Lokalizacja:Wrocław
Wibowit napisał(a):
No dobra, to niech ktoś napisze czy różnił się C# 1.0 od Javy 1.4
Prościej wymienić to, co było wspólne: klamerki, pętle, instrukcje warunkowe, słowa kluczowe w rodzaju: int, char, string, typ object z metodami ToString i GetHashCode, i to chyba wszystko. Strasznie mało jak na klona, zwłaszcza, że poza ostatnią wszystkie te rzeczy Java skopiowała z C++.

- Rejestracja:ponad 8 lat
- Ostatnio:27 minut
- Lokalizacja:U krasnoludów - pod górą
- Postów:4706
somekind napisał(a):
Prościej wymienić to, co było wspólne: klamerki, pętle, instrukcje warunkowe, słowa kluczowe w rodzaju: int, char, string, typ object z metodami ToString i GetHashCode, i to chyba wszystko. Strasznie mało jak na klona, zwłaszcza, że poza ostatnią wszystkie te rzeczy Java skopiowała z C++.
Jak dla mnie najważniejsze to wykorzystanie maszyny wirtualnej (przy okazji: Java też tego "nie wymyśliła").



- Rejestracja:prawie 20 lat
- Ostatnio:około 9 godzin
Jeśli dla kogoś nazwy metod czy cukier składniowy są ważniejsze niż paradygmat programowania to będzie znajdował podobieństwa i różnice w dziwnych miejscach. Dla mnie różnica między Javą, a C# wygląda mniej więcej tak jak przedstawiona w satyrycznym artykule http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html :
1996 - James Gosling invents Java. Java is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Sun loudly heralds Java's novelty.
2001 - Anders Hejlsberg invents C#. C# is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Microsoft loudly heralds C#'s novelty.
Mimo, że artykuł jest satyryczny to akurat w tych dwóch pozycjach jest dużo prawdy. Java i C# to jedyne popularne języki o wymienionych cechach. Te cechy z kolei pociągają za sobą dużo większe skutki niż inny rodzaj klamerek, krótszy zapis propertiesów, czy obecność typów unsigned. Do ważnych cech dorzuciłbym jeszcze refleksję i wzbogacanie bajtkodu.
A poza tym to tylko tracę czas na takie filozofowanie. I tak piszę w Scali, a ta działa tylko pod Javą :P



- Rejestracja:prawie 20 lat
- Ostatnio:około 9 godzin
No. Można też na siłę szukać różnic. Myślę jednak, że zgrubne uszeregowanie kilkunastu cech języków według ich wpływu na sposób programowania nie jest jakimś heroicznym wysiłkiem. Te rzeczy, które wprowadził C# 1.0 (w stosunku do Javy 1.4) miały marginalny wpływ na cokolwiek.
A który jest najnowszy język programowania na JVM, chyba ta Scala i zarazem najtrudniejsza? Kotlin, Ceylon, Clojure, Groovy tylko tyle znam, no i jRuby, Jython.



- Rejestracja:około 17 lat
- Ostatnio:około 14 godzin
- Lokalizacja:Wrocław
Wibowit napisał(a):
No. Można też na siłę szukać różnic.
Nie trzeba niczego na siłę szukać, bo te różnice faktycznie istnieją. Istnieją też podobieństwa, ale Ty nie o nie przecież pytałeś.
Te rzeczy, które wprowadził C# 1.0 (w stosunku do Javy 1.4) miały marginalny wpływ na cokolwiek.
Po prostu pozwalały realizować wymagania, dla których C# 1.0 powstał.

- Rejestracja:prawie 8 lat
- Ostatnio:9 miesięcy
- Postów:671
"Cukier składniowy" to taki termin-wytrych. Ziarnko do ziarnka... Ostatecznie każdy język programowania jest tylko pewnego rodzaju zasobem "cukru składniowego" ponad zerami i jedynkami :)
I oczywiście, że C# i Java są językami z obrębu tego samego "paradygmatu", jak i zbliżonej domeny. To jest warunek wyjściowy, by porównywanie mogło mieć jakikolwiek sens w ogóle. Przecież nikt o zdrowych zmysłach nie będzie porównywał C z Prologiem ani Lispa z VB :)
V-2 napisał(a):
Ostatecznie każdy język programowania jest tylko pewnego rodzaju zasobem "cukru składniowego" ponad zerami i jedynkami :)
Moim zdaniem nie tylko. W skład języków wchodzą jeszcze białka semantyczne i tłuszcze pragmatyczne. ;)