C vs C++ vs Java

...χαλαρή κουβεντούλα, γενικός σχολιασμός, φιλοσοφικές συζητήσεις, meeting point / γνωριμία

Συντονιστής: konnn

Re: C vs C++ vs Java

Δημοσίευσηαπό cliff » 24 Ιουν 2010, 11:10

Εγω Πιστευω οτι δεν μπωρεις να ξεχωρισεις την java απο την c++ . Ξερω και τις δυο γλωσσες. Και οι δυο γλωσσες ειναι αντικειμενοστραφής αρα εχουν τον ιδιο τροπο σκεψης. Πιστευω ενα που ξερει C++ μπορει να γραψει ευκολα κωδικα java οπως και το αντιθετο ,Ναι εχουν διαφορες αλλα με ενα google διπλα σου ολα θα πανε καλα. Τωρα απο θεμα C δεν μπορω να πω αρκετα γιατι δεν ξερω αυτη την γλωσσα. Εγω σαν Κωστας βαζω +1 στην java γιατι μπορει να κανει αρκετα ευκολα με posgres/dbII και μπορω να φτιαχω αρκετα ευκολα γραφικο περιβαλλον Java Swing.
Γνώσεις ⇛ Linux: Καμια , Windows : Αρκετα ┃ Προγραμματισμός: Java , C++ , Fortran , SQL , Html ┃ Αγγλικά: Μετρια
Λειτουργικό ⇛ Kubuntu 10.04 32bit Full Install σε HP DV5190ea
Προδιαγραφές ⇛ T2400 │ RAM 2GB │ NVIDIA 7400 Go │ HD Audio │ TFT 15.4 wide
cliff
babeTUX
babeTUX
 
Δημοσιεύσεις: 14
Εγγραφή: 14 Μάιος 2010, 12:22
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό alkismavridis » 02 Φεβ 2012, 03:19

Εγώ παλιά χρησιμοποιούσα αρκετή fortran και c++ αλλά πλέον το έχω γυρίσει στη java.. Ωραία η γραμμή εντολών, για ορισμένες δουλιές πολύ καλύτερη απ τα GUI, αλλά για κάποια άλλα πράγματα οι δυνατότητες του GUI είναι αναντικατάστατες. Και η java είναι master σε αυτό...
Όσον αφορά την ταχύτητα τώρα η java αργεί λιγάκι να φορτώσει. Αλλά όταν ένα πρόγραμμα κάνει πολλά πράγματα και τρέχει για πολύ ώρα δεν σε πολυνοιάζει πόση ώρα φορτώνει (για λίγα δευτερόλεπτα μιλάμε άλλωστε, όχι για καμία τρελή καθυστέρηση..), Σε νοιάζει πόσο γρήγορα κάνει τη δουλειά ΑΦΟΎ φορτώσει.. Και εκεί η java δε μου φαίνεται καθόλου αργή! Για να είμαι ειλικρινής η fortran είναι κατά κάτι γρηγορότερη, αλλά μεταξύ java και c++ δεν παρατήρησα κάποια διαφορά.
Ακόμα και σε απαιτητικά προγράμματα που ασχολούμαι (θεωριά αριθμών για παράδειγμα) η java με έχει βγάλει ασπροπρόσωπο.. Δείτε και εδώ
Γνώσεις ⇛ Linux: Μέτριο┃ Προγραμματισμός: Java, Assembly, Fortran, μαθαίνω C/X11┃ Αγγλικά: Μέτρια
Λειτουργικό σε Η/Υ ϰ μοντέλο: Ubuntu 14.04 64-bit ┃ Τρόπος εγκατάστασης: Live USB
Προδιαγραφές ⇛ Desktop: Intel i5 2320 3.00GHz.┃ MotherBoard: Asus p8h61 -m pro
Προδιαγραφές ⇛ RAM: 4GB ┃ Τροφοδοτικό Corsair CX430

GPU: Intel 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0102] {i915}
5 eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 06) ⋮ wlan0: 0b05:1723 ASUS WL-167G v2 802.11g Adapter [Ralink RT2571W]
Οθόνη Schaub Lorenz (Tv)
alkismavridis
punkTUX
punkTUX
 
Δημοσιεύσεις: 273
Εγγραφή: 18 Μαρ 2009, 18:46
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό sokoban4ever » 02 Φεβ 2012, 04:54

Το κακό με την java είναι ότι οι βιβλιοθήκες της είναι φτιαγμενες σε java ....και γίνεται απελπιστικά "Βαριά" και αργή
ενώ πχ της python πολλές είναι φτιαγμένες σε C πχ cpickle .

Σημασία έχει όμως τι σε βολεύει η java παρόλα της τα κακά είναι ζωντανή γλώσσα γιατί την χρησιμοποιούν πολλοί
και την ξέρουν πολλοι ..
όμως εξαιρετικά ανώτερη γλώσσα είναι η Scala ( που παίζει και αυτή στο JVM)
σκεφτείτε έχει και functional χαρακτηριστικά και πολλά άλλα που κάνουν την java "άχρηστη"... μπροστά της!!!
'Όμως οι περισσότεροι αυτή ξέρουν αυτή μαθαίνουν..

Ενώ άλλες γλώσσες όπως η D που είναι σχεδόν ευκολη σαν την javascript (λέγεται simple C++)
και έχουν και interpreter και compiler και είναι γρήγορες όπως C/C++
και κάνουν compile ποιό γρήγορα από όλες ( όπως την Go της google)
Πράγματι είναι εξευτελιστικά ποιό γρήγορο το compilation!!!
Δεν τις ξέρουν πολλοί και δεν είναι πολλοι διαδεδομένες οπως και η D και είναι μεγάλο κρίμα :( :( :( :( :( :( :(

Λοιπόν εδώ σκέφτηκα κάτι καλό , θα κάνω και ένα thread για την D :)

Γενικά η C++ είναι ο κυρίαρχος γιατί απλούστατα είναι υπερσύνολο της C και χρησιμοποιείται χρόνια και ζαμάνια σε game programming λογω του αντικειμενοστραφής παραδείγματος της που δίνει την δυνατότητα στον προγραμματιστή να αγγίξει μεγαλύτερα επίπεδα "αφαίρεσης" (abstraction) και
οργάνωσης του κώδικα . (επίσης μπορείς να χρησιμοποιείς κώδικα C από C++ φυσικά)
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό migf1 » 02 Φεβ 2012, 12:18

Η δική μου πρόταση στην αρχική ερώτηση είναι και C και C++ και Java, κι ανάλογα τις ανάγκες του εκάστοτε προτζεκ να επιλέγεις ποια ή ποιες θα χρησιμοποιήσεις. Η Java είναι ιδανική για High Level, η C είναι ιδανική για Low Level και η C++ είναι ένας ... ωκεανός που προσπαθεί να παντρέψει τα πάντα (αλλού με περισσότερη επιτυχία, αλλού με λιγότερη).

Το να μάθει κανείς καλά μια γλώσσα, ισοδυναμεί με το να έχει εργαστεί πάνω σε αυτήν, ιδανικά σε επαγγελματικό περιβάλλον, για πολύ καιρό και για πραγματικές εφαρμογές (δηλαδή που έχουν ευρύ και σοβαρό user-base, όπου τα λάθη στοιχίζουν). Μόνος του είναι πολύ δύσκολο να μάθει κανείς οποιαδήποτε γλώσσα, ούτε καν σε σχολή/πανεπιστήμιο.

Το ζητούμενο κατά την προσωπική μου άποψη είναι να μπορέσει κανείς να μάθει όσο καλύτερα μπορεί μια γλώσσα από τις δημοφιλείς (χοντρικά αυτό σημαίνει π.χ. να την έχει διδαχτεί σε κάποιο ακαδημαϊκό ίδρυμα και κατόπιν να έχει δουλέψει πάνω της για τουλάχιστον άλλον έναν χρόνο σε διάφορους τομείς). Αυτό θα τον προετοιμάσει ώστε να μαθαίνει κατόπιν πιο εύκολα και πιο γρήγορα οποιαδήποτε άλλη γλώσσα, όταν χρειαστεί.

Αν έχεις τελειώσει ήδη τη φοίτησή σου σε κάποιο ακαδημαϊκό ίδρυμα, έχεις πάρει ήδη μια γενική ιδέα για τις γενικές κατηγορίες στις οποίες εμπίπτουν οι γλώσσες (βασικά procedural, oo & functional). Οπότε θα σου πρότεινα να εστιάσεις στο να μάθεις όσο καλύτερα μπορείς τη γλώσσα που σου έκανε καλύτερο κλικ. Τρίψου μαζί της μέχρι να αισθανθείς ότι την κατέχεις σε ικανοποιητικό βαθμό (συγκρίνοντας π.χ. τις ικανότητές σου με πρότζεκτς που βλέπεις τριγύρω σου) και κοίτα κατόπιν άλλη γλώσσα.
Go under the hood with C: Pointers, Strings, Linked Lists
Άβαταρ μέλους
migf1
powerTUX
powerTUX
 
Δημοσιεύσεις: 2082
Εγγραφή: 03 Ιουν 2011, 16:32
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό Star_Light » 02 Φεβ 2012, 22:08

C για μια ζωή. Ο_ο

C for life.

C para siempre.

-.-
Γνώσεις ⇛ Linux: Βασικές ┃ Προγραμματισμός: Δέν θέλω μεροκάματο , θέλω C και κακο θάνατο! ┃ Αγγλικά: Lower
Λειτουργικό ⇛ Ubuntu 10.10 σε Dual Boot με Windows 7
Προδιαγραφές ⇛ Επεξεργαστής : Intel(R) Core(TM) i3 CPU 540 @3.07Ghz (64bit)
RAM : Kingston 2GB
HDD : Coreshare 500GB
Κάρτα Γραφικών : Intel Corporation Core Processor Integrated Graphics Controller(rev 18) (prog-if 00 [VGA controller]) [8086:0042]
Star_Light
superbTUX
superbTUX
 
Δημοσιεύσεις: 2787
Εγγραφή: 01 Μάιος 2010, 21:07
Τοποθεσία: Αθήνα
IRC: Star_Light
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό alkismavridis » 02 Φεβ 2012, 22:27

Φίλτατε sokoban4ever, κατ αρχήν τι ακριβώς εννοείς λέγοντας "βιβλιοθήκες java";; Στο ότι η java είναι απελπιστικά αργή θα σου πω ότι για να λές κάτι τέτοιο σημαίνει ότι έχεις ασχοληθεί αρκετά με την συγκεκριμένη γλώσσα και είδες κάτι που δε σε ικανοποίησε. Ίσως. Θα ήταν ενδιαφέρον να μας πείς τι ήταν αυτό, άλλωστε όλοι ψάχνουμε :-)
Πάντως έχε κατά νου ότι μπορεί η γλώσσα Α να είναι γρηγορότερη από την Β για μία ορισμένη διεργασία, και για μία άλλη να είναι η Β από την Α. Γι αυτό και η κάθε γλώσσα είναι ιδανική για κάτι και ακατάλληλη για κάτι άλλο. Αναμφησβήτητα αν θές να φτιάχνεις εφαρμογές γραφικού περιβάλλοντος η java υπερτερεί της c++.

Επίσης εξήγησέ μου τι εννοείς ότι η java είναι "βαριά". Εννοείς το μέγεθος του jvm?? πάντος μία κλάση java σαν μέγεθος αρχείου είναι πολύ μικρότερο από το αντίστοιχο εκτελέσιμο που θα παρήγαγε η c++ ή η c για την ίδια δουλειά. Για μικρές εφαρμογές βέβαια τα μεγέθη είναι αμελητέα, αλλά για μεγαλύτερες εφαρμογές το μέγεθος των class αρχείων είναι πολύ βολικό!

Καταλαβαίνω επίσης ότι ο κάθε προγραμματιστής τείνει να υπερασπίζεται τη γλώσσα που ξέρει και να θέλει να πιστεύει ότι είναι η καλύτερη.. Ίσως στην ίδια παγίδα να έχω πέσει κι εγώ, δε λέω. Αλλά βλέπω ότι υπάρχει αρκετή προκατάληψη για την java, και πολλά από τα επιχειρήματα εναντίων της είναι μύθοι, ή πράγματα που ίσχυαν κάποτε αλλά η πρόοδος της java τα τελευταία χρόνια τα έχει εξαλήψει.
Επειδή όμως μου αρέσει να μιλάω με στοιχεία και όχι με φήμες, σκέφτομαι να γράψω ένα κώδικα σε 3-4 γλώσσες και θα καταγράψω το χρόνο που κάνουν να ολοκληρώσουν ή κάτι ανάλογο που να δείχνει την "ταχύτητα" κάποιας γλώσσας. Τότε θα έχουμε γίνει πιο συγκεκριμένοι για το ποι γλώσσα είναι πιο γρήγορη και ΠΟΣΟ. Για την συγκεκριμένη διεργασία. Σκέφτομαι η δοκιμασία να είναι αναζήτηση πρώτων αριθμών, και ο κώδικας να είναι πανομοιότυπος για όλες τις γλώσσες αλλάζοντας μόνο την ορθογραφία.

Τι λέτε;; fortran, c, c++, java
Γνώσεις ⇛ Linux: Μέτριο┃ Προγραμματισμός: Java, Assembly, Fortran, μαθαίνω C/X11┃ Αγγλικά: Μέτρια
Λειτουργικό σε Η/Υ ϰ μοντέλο: Ubuntu 14.04 64-bit ┃ Τρόπος εγκατάστασης: Live USB
Προδιαγραφές ⇛ Desktop: Intel i5 2320 3.00GHz.┃ MotherBoard: Asus p8h61 -m pro
Προδιαγραφές ⇛ RAM: 4GB ┃ Τροφοδοτικό Corsair CX430

GPU: Intel 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0102] {i915}
5 eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 06) ⋮ wlan0: 0b05:1723 ASUS WL-167G v2 802.11g Adapter [Ralink RT2571W]
Οθόνη Schaub Lorenz (Tv)
alkismavridis
punkTUX
punkTUX
 
Δημοσιεύσεις: 273
Εγγραφή: 18 Μαρ 2009, 18:46
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό alkismavridis » 03 Φεβ 2012, 21:21

Λοιπόν έτοιμα τα αποτελέσματα!! Έγραψα ένα πρόγραμμα σε Fortran, C C++ και java που υπολογίζει πόσοι πρώτοι αριθμοί υπάρχουν μέχρι το 20 000 000
Τα έτρεξα από CLI για να μην "ενοχλείται" το pc μου με γραφικό περιβάλλον και μέτρησα (γύρω στις 5 φορές για το κάθε πρόγραμμα) το χρόνο που έκαναν να τελειώσουν.
Σας δίνω τους 4 κώδικες:

1.Fortran
Κώδικας: Επιλογή όλων
PROGRAM SPEEDTEST

PRINT*, 'Give anything and press Ender to start'
READ*,
PRINT*, NUM()

END PROGRAM SPEEDTEST

INTEGER FUNCTION NUM()
INTEGER N,SQ,D,RET
LOGICAL DIV
N=1
RET=1
SQ=0
DO WHILE(N<20000000)

DIV=.FALSE.
N=N+2
IF (MOD(N,2)==0) CYCLE
D=1
SQ= NINT(SQRT(REAL(N)))
DO WHILE(D<=SQ)
D=D+2
IF(MOD(N,D)==0) THEN
DIV=.TRUE.
EXIT
END IF
END DO
IF (.NOT.DIV) RET=RET+1
END DO
NUM = RET
RETURN
END FUNCTION NUM

2. C
Κώδικας: Επιλογή όλων
#include <math.h>
#include<stdio.h>

int num(void);
int N,sq,d;
char ch;
unsigned int div;

int main() {
printf ("Give anything and press Ender to start\n");
scanf("%c", &ch);
printf ("%d\n",num());
return 0;
}//main

int num() {
N=1;
int ret=1;
A: while(N<20000000) {
div=0;
N+=2;
if(N%2==0) continue;
d=1;
sq = (int)sqrt(N);
while(d<=sq) {
d+=2;
if(N%d==0) {
div=1;
break;
}//if
}//while
if(!div) ret++;
}//while
return ret;
}//work


3. C++
Κώδικας: Επιλογή όλων
#include <iostream>
#include <cmath>
using namespace std;

int N,sq,d;
char ch;
bool div;
int num();


int main() {
cout << "Give anything and press Ender to start\n";
cin >> ch;
cout << num()<<endl;
return 0;
}//main

int num() {
N=1;
int ret=1;
A: while(N<20000000) {
div=false;
N+=2;
if(N%2==0) continue;
d=1;
sq = (int)sqrt(N);
while(d<=sq) {
d+=2;
if(N%d==0) {
div=true;
break;
}//if
}//while
if(!div) ret++;
}//while
return ret;
}//work

4. Java
Κώδικας: Επιλογή όλων
import java.util.*;
public class SpeedTest{

static int N,sq,d;
static boolean div;
static Scanner sc = new Scanner(System.in);

public static void main(String[] args) {
System.out.println("Give anything and press Ender to start");
sc.next();
System.out.printf("%d\n",num());
}//main

static int num(){
N=1;
int ret=1;
while(N<20000000) {
div=false;
N+=2;
if(N%2==0) continue;
d=1;
sq = (int)Math.sqrt(N);
while(d<=sq) {
d+=2;
if(N%d==0) {
div=true;
break;
}//if
}//while
if(!div) ret++;
}//while
return ret;
}//num

}//class


Και στις 4 περιπτώσεις όλη η δουλειά γίνεται στη συνάρτηση num() η οποία είναι μεταφρασμένη στις 4 γλώσσες "εντολή προς εντολή" όσο είναι αυτό δυνατόν.
Επίσης να τονίσω ότι τα αποτελέσματα έχουν να κάνουν με την συγκεκριμένη διεργασία και δεν πρέπει να γενικεύονται. Για κάτι άλλο η σειρά μπορεί να είναι άλλη!

Παραθέτω λοιπόν τα εξής ενδιαφέροντα:

Fortran: 36.0 sec (εκτελέσιμο compiled σε gfortran)
C: 37.2 sec (εκτελέσιμο compiled σε gcc)
C++: 39.2 sec (εκτελέσιμο compiled σε g++)
Java: 39.6 sec (class αρχείο compiled σε open-jdk 6)
Java: 42.5 sec (εκτελέσιμο αρχείο compiled σε gcj)
Όλα τα εκτελέσιμα ήταν striped...

Τα συμπεράσματα που εγώ βγάζω είναι τα εξής: Η Fortran παραμένει η γρηγορότερη παρ ότι έρχεται απο την εποχή των σπηλαίων :-)
Η Java ήταν ΠΟΛΥ κοντά στην c++, και μάλλιστα κάποιες μετρήσεις της Java είχαν και μικρότερους χρόνους από κάποιες της c++ (τα παραπάνω είναι μέσες τιμές).
Στην συγκεκριμένη εφαρμογή η c++ αποδείχθηκε γρηγορότερη κατά 1%, άρα είναι τουλάχιστον υπερβολικό να λέμε ότι η Java είναι απελπιστικά αργή (για να μην πω προκατειλημμένο..). ας μην ξεχνάμε άλλωστε ότι ο ρόλος της Java δεν είναι να ψάχνει πρώτους αριθμούς, παρ όλα αυτά στο "εκτός έδρας" παιχνίδι τα πήγε πολύ καλά!
Τέλος το gcj εκτελέσιμο έπασχε σε ταχύτητα (αν και σε άλλες εφαρμογές που το δοκίμασα ήταν και πιο γρήγορο από το class, και σποραδικά ξεπερνούσε και τη c++)...

Τελικό συμπέρασμα είναι το εξής: καμία γλώσσα δεν ήταν και ΤΟΣΟ γρηγορότερη από τις άλλες - διαφορές της τάξςως του 6.5% δεν είναι και τίποτα σπουδαίο.. Άρα ο καθένας ας χρησιμοποιεί τη γλώσσα που τον κάνει να νοιώθει πιο άνετα την ώρα που προγραμματίζει! Εγώ προσωπικά συνεχίζω να ασχολούμαι με την java γιατί ειλικρινά με βολεύει πολύ ο τρόπος που φτιάχνει gui εφαρμογές, και παράλληλα μαθαίνω και άλλες γλώσσες για να διευρύνω τις γνώσεις μου...
Αυτά
:-)
Γνώσεις ⇛ Linux: Μέτριο┃ Προγραμματισμός: Java, Assembly, Fortran, μαθαίνω C/X11┃ Αγγλικά: Μέτρια
Λειτουργικό σε Η/Υ ϰ μοντέλο: Ubuntu 14.04 64-bit ┃ Τρόπος εγκατάστασης: Live USB
Προδιαγραφές ⇛ Desktop: Intel i5 2320 3.00GHz.┃ MotherBoard: Asus p8h61 -m pro
Προδιαγραφές ⇛ RAM: 4GB ┃ Τροφοδοτικό Corsair CX430

GPU: Intel 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0102] {i915}
5 eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 06) ⋮ wlan0: 0b05:1723 ASUS WL-167G v2 802.11g Adapter [Ralink RT2571W]
Οθόνη Schaub Lorenz (Tv)
alkismavridis
punkTUX
punkTUX
 
Δημοσιεύσεις: 273
Εγγραφή: 18 Μαρ 2009, 18:46
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό sokoban4ever » 03 Φεβ 2012, 22:50

Διαφορές της τάξςως του 6.5%...
Μην βιάζεσαι .
Εξαρτάται τι συγκρίνεις δες εδώ..
http://zi.fi/shootout/#benchmarks
http://www.jelovic.com/articles/why_java_is_slow.htm
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό alkismavridis » 03 Φεβ 2012, 23:52

Το 6.5% αφορά το συγκεκριμένο πείραμα που έκανα παραπάνω, και είναι η ποσοτοιαία διαφορά μεταξύ c και bytecode java.. Φυσικά όπως αναφέρω παραπάνω, σε κάποια άλλη εφαρμογή τα νούμερα θα είναι διαφορετικά! Μπορείς να μας δώσεις κι εσύ κώδικες όπως έκανα παραπάνω και να το διαπιστώσουμε και μόνοι μας..

Και να ξεκαθαρίσω κάτι: δεν αμφισβητώ αυτά που λές και ούτε λέω ότι η c++ δεν είναι καλή γλώσσα. Η αλήθεια είναι ότι τα πρώτα μου "σοβαρά" προγράμματα τα έχτισα σε c++ και άρα εκτιμώ πολύ αυτή τη γλώσσα.. Αλλά όταν προσπάθησα να περάσω σε GUI τα βρήκα πολύ σκούρα και η Java έκανε τη ζωή μου (τη ζωή του προγραμματισή δηλαδή) πολύ ευκολότερη..
Τέλος επειδή βλέπω πολύ αρνητισμό και απ τους fan της μία ομάδας και από της άλλης (ολυμπιακό Παναθηναϊκό μου θυμίζει το θέμα :-) ) σκέφτηκα ότι πολλά από αυτά που λέγονται στο δίκτυο μπορεί να είναι υπερβολές. Μπορεί και όχι.. Ο πιο σίγουρος τρόπος να δω είναι να κάνω κάτι σαν αυτό που έκανα παραπάνω για να δω μόνος μου και να μη βασίζομαι σε φήμες. Θα ήταν ενδιαφέρον να κάνουμε το ίδιο και για άλλους τομείς, όχι μόνο για διαιρέσεις και αναζητηση πρώτων αριθμών..
Αλλά ειλικρινά η διαφορά που είδα σε αυτό το πρόγραμμα μεταξύ java-c++ ήταν στο 1%. Σε κάποιο άλλο μπορεί η c++ να είναι διπλάσια γρήγορη, δε το αποκλείω, απλά δε το έχω συναντήσει..
Γνώσεις ⇛ Linux: Μέτριο┃ Προγραμματισμός: Java, Assembly, Fortran, μαθαίνω C/X11┃ Αγγλικά: Μέτρια
Λειτουργικό σε Η/Υ ϰ μοντέλο: Ubuntu 14.04 64-bit ┃ Τρόπος εγκατάστασης: Live USB
Προδιαγραφές ⇛ Desktop: Intel i5 2320 3.00GHz.┃ MotherBoard: Asus p8h61 -m pro
Προδιαγραφές ⇛ RAM: 4GB ┃ Τροφοδοτικό Corsair CX430

GPU: Intel 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0102] {i915}
5 eth0: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 06) ⋮ wlan0: 0b05:1723 ASUS WL-167G v2 802.11g Adapter [Ralink RT2571W]
Οθόνη Schaub Lorenz (Tv)
alkismavridis
punkTUX
punkTUX
 
Δημοσιεύσεις: 273
Εγγραφή: 18 Μαρ 2009, 18:46
Εκτύπωση

Re: C vs C++ vs Java

Δημοσίευσηαπό sokoban4ever » 04 Φεβ 2012, 02:04

Δες εδώ κριτήρια πως να συγκρίνει κανείς γλώσσες προγραμματισμού
http://www.eecs.ucf.edu/~leavens/ComS54 ... index.html

Ξεκάθαρα η Java κυριαρχεί στό ότι παίζει σε πολλά λειτουργικά ( write once , run everywhere)
σε αντίθεση write once , compile anywhere η καλύτερα somewhere ... κάποιων άλλων γλωσσών...


Κοίτα η καλύτερη γλώσσα είναι αυτή στην οποία έχει κάποιος αποκτήσει και την μεγαλύτερη ευφράδεια
παίρνοντας υπόψιν να είναι η γλώσσα turing complete http://en.wikipedia.org/wiki/Turing_completeness
Ακόμα δηλαδή και η brainfuck είναι καλή για κάποιον άμα την έχει μάθει καλά...
αλλά το πρόβλημα που μπαίνει είναι άμα υπάρχει άλλος να την διαβάσει κα να καταλάβει τίποτα...
Θέλουμε και μπορούμε να έχουμε μια καλύτερη ζωή και όσο θα ζούμε θα προσπαθούμε να την αποκτήσουμε ακόμα και αν πεθάνουμε προσπαθώντας, και αν κάποια στιγμή λιγίσουμε έχουμε το επίπεδο να πούμε κουράστηκα λίγο να ,να ξαποστάσουμε , ώστε να συνεχίσουμε πάλι δυνατοί ξανά.

Μήνυμα με αγάπη και αληλλεγγύη σε όλους τους ανθρώπους από όλους τους λαούς , ιδίως του Ελληνικού.
Άβαταρ μέλους
sokoban4ever
Επίτιμο μέλος
Επίτιμο μέλος
 
Δημοσιεύσεις: 2331
Εγγραφή: 13 Φεβ 2009, 02:22
Εκτύπωση

ΠροηγούμενηΕπόμενο

Επιστροφή στο Περί ανέμων