Spór, C++ vs Java

0

hmm,
wiem wiem że takich tematów jak te w internecie było dużo dużo, ale przeglądając różne fora zauważyłem że tematy są dawno nie aktualne więc piszę :0

Więc, ja we wrześniu w szkole zacznę dwu letnią naukę C++ , znam php i mysql, pascala znam tak by zdać do 3 klasy ( nie starałem się bo pascal to staroć i uznałem że nie przyda mi sie nigdy więcej ) .

i mam problem nie wiem czy uczyć się wcześniej C++ by pozniej móc pochwalić się swoimi umiejętnościami itd,
czy zacząć uczyć się javy ( mam już ksiażke Thinking in Java) by poznać coś nowego i starać się coś robić na własną rekę i pozniej łatwo przesiadać się między językami ,

proszę o rady

dziękuje

1

Jeśli znasz C++, Javy nauczysz się w dwa tygodnie. W drugą stronę to nie działa.

1
Sony_lol napisał(a):

mam problem nie wiem czy uczyć się wcześniej C++ by pozniej móc pochwalić się swoimi umiejętnościami itd,
czy zacząć uczyć się javy ( mam już ksiażke Thinking in Java) by poznać coś nowego i starać się coś robić na własną rekę i pozniej łatwo przesiadać się między językami ,

Java i C++ są obecnie w równym stopniu (nie)nowoczesne. W C++ nie możesz robić nic na własną rękę?

2

Sam język Java nie jest nowoczesny, ale platforma Java moim zdaniem jest nowoczesna, zwłaszcza jeśli ktoś będzie używał innych języków na platformę Java, np języka Scala (mój faworyt) czy (dopiero zdobywający popularność) Clojure.

Sam język Java jest dość prosty, nie ma w nim wielodziedziczenia, ręcznego zarządzania pamięcią (no chyba, że własna pula), ani nawet przeładowania operatorów.

Myślę, że spokojnie możesz uczyć się obu języków naraz i np powoli klepać jakieś okienka w JavieFX 2.0 i Qt (framework w C++).

Jak poznasz Javę to PHP będziesz mógł (a nawet powinieneś) spokojnie olać.

0

a jak wygląda rozwijanie tych języków, popularność , zarobki|?

0

Zlituj się, dopiero zaczynasz zapoznawać się z podstawami programowania. Najlepiej zarabiają programiści COBOLa.

A propos popularności, z serii "czy wiesz, że": 90% transakcji finansowych jest obsługiwanych przez systemy stworzone w COBOLu?

0

Ilość ofert pracy na pl.indeed.com (statystyki zawyżone, bo nie chciało mi się dopasowywać szukajki):

  • COBOL - 162
  • Java - 4455
  • c# - 2400
  • C++ - 2278

A zarobki? Ma ktoś dane nt zarobków programistów COBOL?

0

C++ - język kompilowany bezpośrednio do 0101010 czytaj - możesz pisać programy tzw. natywne. Język ten jest z założenia na wiele platform, dlatego nie musisz się przejmować instalowaniem jakiegoś dodatkowego oprogramowania typu maszyna wirutalna javy czy w przypadku C# .NET Frameworka/Mono.
Siadasz, odpalasz IDE piszesz, kompilujesz - działa.
Język C++ jest wbrew pozorom jednym z języków wysokiego poziomu jednak można w nim programować niskopoziomowo ponieważ "łatwo" zarządza się nim pamięcią. Język C++ służy do pisania aplikacji nie tyle wydajnych co szybkich. Np. systemy operacyjne, gry, gadu-gadu (xD).
W samym języku C++ wiele nie zdziałasz. Prędzej czy później zmuszony będziesz do skorzystania z jakiejś biblioteki czy to boost czy Qt ale będziesz.

Język C++ pozwala również pisać na platformę .NET. Nazywa się to C++/CLI. Zapoznaj się z tym tematem, jeżeli Cię interesuje programowanie w C++ z bajerami w stylu javy.
http://pl.wikipedia.org/wiki/C%2B%2B/CLI

Java natomiast to inna bajka. Jest multiplatformowa i możemy również pisać w niej stronki tzn aplikacje webowe ściślej mówiąc. Java jest multiplatformowa ponieważ wymaga do uruchomienia napisanych w niej programów maszyny wirtualnej. Jave możesz zastosować np. do tworzenia aplikacji biznesowych oraz typowo użytkowych. Można w niej też programować pralki i pisać gry typu minecraft co nie oznacza, że na komputerze z 4GB Ram DDR3, najnowszą kartą graficzną GForce, architekturą x64 i 4-rdzeniowym procesorem będą mulić. Przykład programu w Javie? Całe IDE NetBeans i Eclipse (Eclipse nie jestem pewien).

0
Wibowit napisał(a):

Ilość ofert pracy na pl.indeed.com (statystyki zawyżone, bo nie chciało mi się dopasowywać szukajki):

  • COBOL - 162
  • Java - 4455
  • c# - 2400
  • C++ - 2278

A zarobki? Ma ktoś dane nt zarobków programistów COBOL?

Wpisuje się .NET :) wtedy masz 4000, czyli porównywalnie z Javą :)

0

Wpisuję .net i wyskakuje mi: http://tescorekrutacja.galapp.net/szukaj.aspx?id=3248 na drugiej pozycji.

W każdym razie COBOL nie jest jakoś masakrycznie popularny.

0

Dziwnie się czuję, jeżeli ktoś przy C++ i Javie piszę wyraz "spór". On tu po prostu nie pasuję, nawet jeżeli mowa o pójściu w któryś konkretny kierunek.
Jak dla mnie lepiej zacząć od C++, aby się troszkę zmęczyć, a dopiero później Java.

0
Wibowit napisał(a):

W każdym razie COBOL nie jest jakoś masakrycznie popularny.

I pewno dlatego można w nim dobrze zarobić.

0

No, dopóki w końcu nie zdechnie. Wtedy okaże się, że taki programista COBOL-a przespał 50 lat rozwoju języków programowania i nie ma czego szukać na rynku pracy. Co kto lubi. Ale i tak chyba wdrożeniowiec SAP-a zarobi więcej niż programista COBOL-a, a i robota raczej pewniejsza.

2
Wibowit napisał(a):

No, dopóki w końcu nie zdechnie. Wtedy okaże się, że taki programista COBOL-a przespał 50 lat rozwoju języków programowania i nie ma czego szukać na rynku pracy.

To samo można powiedzieć o programistach Javy. Ten język powoli staje się technologią legacy, najprymitywniejszym językiem JVM, od którego uciekają kolejne firmy.

0

Javę i COBOLa dzieli przepaść, a taki np C# jest generalnie niewiele lepszy od języka Java. Z drugiej strony na platformę Java są inne popularne języki, nawet sam Oracle promuje na swoich stronach np Scalę czy Groovyego, a może nawet i JRuby. Świeżynka czyli Clojure też ostatnio zyskuje na popularności. Sam język Java jest moim zdaniem dobry na początek, bo uczy obiektowości, a zarazem jest prosty.
http://www.oracle.com/technetwork/java/javafx/tools/index.html

2
MVC napisał(a):

C++ - język kompilowany bezpośrednio do 0101010

Jakiego 010101? Przecież to tylko jedna z reprezentacji... Takie 'obrazowe' gadanie zostaw gimnazjalistom.

Język C++ służy do pisania aplikacji nie tyle wydajnych co szybkich. Np. systemy operacyjne, gry, gadu-gadu (xD).

Rozumiem, że pracujesz na jednostce wyposażonej w cztery rdzenie i 32 GB RAMu i po prostu nie odczułeś jak zabawnie stoją z wydajnością obecne wersje Gadu-Gadu naszpikowane Qt? Ani to wydajne, ani to się kupy trzyma...

Java natomiast to inna bajka. Jest multiplatformowa i możemy również pisać w niej stronki tzn aplikacje webowe ściślej mówiąc.

Daj mi najprymitywniejsze CGI - dostaniesz stronę napisaną we wszystkim od Brainfucka przez C++ po Javę i C#. I co ma multiplatformowość do "pisania stronek"?

Jave możesz zastosować np. do tworzenia aplikacji biznesowych oraz typowo użytkowych.

Na upartego w Javie napiszesz i system operacyjny, gra też średnio podchodzi pod aplikację biznesową. Wiesz kiedy czar pryska? Kiedy trzeba zrobić coś zaawansowanego i kończy się cudna multiplatformowość Javy, bo bez dopięcia natywnych bibliotek nie idzie nic zdziałać. W efekcie i tak powstaje osobna wersja pod każdy system... Identyczne problemy mogą zdarzać się w C++, żaden system nie będzie się zachowywał identycznie w najmniejszym detalu.

0

Wiesz kiedy czar pryska? Kiedy trzeba zrobić coś zaawansowanego i kończy się cudna multiplatformowość Javy, bo bez dopięcia natywnych bibliotek nie idzie nic zdziałać. W efekcie i tak powstaje osobna wersja pod każdy system... Identyczne problemy mogą zdarzać się w C++, żaden system nie będzie się zachowywał identycznie w najmniejszym detalu.

Ale to nie jest problem Javy - jeżeli ktoś postawi wymaganie, żeby użyć jakiejś funkcjonalności, która jest obecna tylko w Windowsie to będzie dostępna tylko w Windowsie i kropka.

1 użytkowników online, w tym zalogowanych: 0, gości: 1