Προς το περιεχόμενο

Το μέλλον των γλωσσών προγραμματισμού


Skeftomilos

Προτεινόμενες αναρτήσεις

Δημοσ.

Έχετε ποτέ επιθυμήσει να μάθετε το μέλλον; Αυτήν ακριβώς της επιθυμία είχα πριν λίγες μέρες, και εξοπλισμένος με τη μεσαιωνική κρυστάλλινη σφαίρα του Μέρλιν, ένα σκονισμένο βιβλίο με πανίσχυρα ξόρκια, και φυσικά κλεισμένος σε ένα παμπάλαιο στοιχειωμένο κάστρο, ρίχτηκα στο κυνήγι του μέλλοντος. Δυστυχώς μετά από ώρες επίμονης και εξαντλητικής προσπάθειας το μόνο που κατάφερα να μάθω ήταν μία εξάδα αριθμών του Lotto που ήταν απόλυτα, τελεσίδικα και τελεολογικά επιβεβαιωμένο ότι δε θα κέρδιζαν τίποτα. Έτσι δεν μου έμεινε άλλη επιλογή από το να πετάξω στην άκρη τη μπάλα και όλα τα υπόλοιπα, και να πληκτρολογήσω τα μαγικά γράμματα: w w w . g o o g l e . c o m

 

- The future of VBA (114)

- The future of VBScript (17)

- The future of JScript (12)

- The future of JavaScript (723)

- The future of Java (17.800)

 

Μπορείτε φυσικά να θέσετε τα ερωτήματα της επιλογής σας. Δε θα χρειαστεί να ψάξετε πολύ για να βρείτε μερικές πολύ ενδιαφέρουσες προφητείες. Παραθέτω μερικά άρθρα που ξεχώρισα, μαζί με λίγα αμφίβολης εγκυρότητας δικά μου σχόλια:

 

Η Microsoft θα διατηρήσει την υποστήριξη VBA στο επόμενο Office (το Office 12). Και φυσικά θα διατηρήσει την υποστήριξη VSA (Visual Studio .NET for Application) που έχει ήδη. Όμως πολλές λεπτομέρειες παραμένουν αδιευκρίνιστες. Θε έχουν κοινό IDE ή διαφορετικά; Θα υπάρχει προγραμματιστική πρόσβαση στα νέα features του Office 12 με την παλιά VBA; Δύσκολες αποφάσεις για τη Microsoft που πρέπει να σεβαστεί την τεράστια αποδοχή της VBA, αλλά και τον τεράστιο αριθμό χρημάτων που βγάζει από το Office.

 

- The Future of VBA?

- Office and .NET: Better Together?

- Support Classic VB

 

Όσο για τη VBScript, έχει μέλλον; Ως web-scripting γλώσσα, κανένα. Ο Russell Jones δηλώνει: VBScript is on a path to extinction. Ως windows-scripting γλώσσα, σίγουρα έχει, αλλά χωρίς καμία ανάπτυξη, βελτίωση, εξέλιξη. Ο Eric Lippert γίνεται η φωνή της Microsoft και δηλώνει: We will continue to support VBScript and JScript for the foreseeable future. Ωστόσο ο .NET κόσμος απαιτεί μία καταλληλότερη scripting γλώσσα για το Shell των νέων Windows, τη Monad.

 

- VBScript: Microsoft's Orphaned Language

- Rumours of VBScript's Death Have Been Greatly Exaggerated

 

Γνωρίζεται την ύπαρξη της JScript.NET; Αν όχι δεν πειράζει, ελάχιστοι τη γνωρίζουν έτσι κι αλλιώς. Το μέλλον της σκοτεινό και αβέβαιο. Ο συγγραφέας του παρακάτω άρθρου είναι απίστευτα γλαφυρός. Δε διστάζει να στοιχηματίσει την πεθερά του ότι η επιλογή "New JScript.NET Project" θα εξακολουθήσει να απουσιάζει από το VS.NET 2005.

 

- JScript.NET - Is there a future?

 

Javascript: has a long and healthy life in the web world ...

JavaScript: seems to in a renaissance...

 

- The future of JavaScript

 

Για το μέλλον της Java παραδόξως δε βρήκα κάτι συγκεκριμένο. Φαίνεται ότι το τέλος της δεν είναι πολύ κοντά ακόμα. Κάποιοι μάλιστα είναι βέβαιοι ότι δε θα πεθάνει ποτέ. Μην τους πιστεύετε, η C# είναι καλύτερη. Το παρακάτω άρθρο δεν είναι πολύ σχετικό με το θέμα μας, αλλά το παραθέτω γιατί έχει πλάκα. Ο αρθρογράφος προτείνει ώς μέλλον της Java ένα σκοτεινό, ασαφές και συγκεχυμένο framework, και δέχεται τέτοιο κράξιμο από διάφορους σχολιαστές που όμοιό του δεν έχω ξανακούσει. Είναι εγγυημένα διασκεδαστικό το ανάγνωσμα! :grin:

 

- The future of Java : The Invisible Framework cometh

Δημοσ.

Μην τους πιστεύετε' date=' η C# είναι καλύτερη. [/quote']

 

Αν και γράφω C#, και οχι Java, μου φαίνεται υπεραπλούστευση η παραπάνω πρόταση. Plus, δεν νομιζω καθόλου οτι η C# ειναι καλυτερη.

Δημοσ.

Fysika to mellon twn glwsswn programmatismou vrisketai sta research teams twn panepisthmiwn tou kosmou... Oi yparxouses glwsses programmatismou eite 8a veltiw8oun, eite 8a parameinoun stasimes. Polles vriskontai akoma se nhpiako stadio, eite se stadio wrimanshs, alla 8a synexisoun na anaptyssontai (opws Java, C# etc.).

Alles exoun hdh ftasei sthn wrimothta, omws de shmainei oti 8a 3exastoun pote. Paradeigmata tetoiwn glwsswn einai oi Cobol kai Fortran, pou akoma xrhsimopoiounte, kata vash logw twn efarmogwn pou exoun alla kai tou hdh yparxontos kwdika.

H VBA den 8a stamathsei pote na yposthrizetai apo thn MS. Mia tetoia kinhsh 8a shmaine terasties apwleies sthn Microsoft apo thn pwlhsh tou Office. Anti8eta, vlepw mallon apro8ymous tous financial programmers na akolou8hsoun thn Microsoft sto paixnidi tou .NET. Niw8oun poly pio confident me thn VBA (kai kala kanoun ;))

 

Genikotera oi wrimoi programmatistes 8a prepei na ma8oun na programmatizoun se opoiadhpote glwssa tous zhth8ei, para na prospa8oun na "8apsoun" kapoia/kapoies glwsses gia na anadei3oun kapoia/kapoies alles. Afta 8ymizoun kravges anohtwn gia omades kai kommata pou den exoun xwro sthn episthmh twn ypologistwn.

 

Mhn anhsyxeite gia to mellon, zhste to paron! Kai programmatiste me ta ergaleia pou exete!

Δημοσ.

Hello bandito moderator! Το σχόλιό μου δεν ήταν για να παρθεί πολύ σοβαρά. :) Πάντως αν κρίνουμε τις γλώσσες από τον πυρήνα τους και μόνο και δε συνυπολογίσουμε τις υπόλοιπες παραμέτρους, η C# είναι καλύτερη γλώσσα. Είναι φυσικό αφού είναι μεταγενέστερη, δανείστηκε από τη Java όλα τα καλά της στοιχεία, και άντλησε κι από άλλες γλώσσες χρήσιμα στοιχεία (Properties, Enums, Namespaces, Structures, Boxing-Unboxing, foreach, readonly, Events, interoperability με C++).

 

Dionisos μου ακούγεται ελαφρά μοιρολατρικό για τους προγραμματιστές να γράφουν σε ό,τι γλώσσα τους ζητηθεί. Εκείνοι δεν πρέπει να έχουν άποψη;

Δημοσ.

Oi diaforetikes glwsses programmatismou einai mia moufa, kai apla auksanoun tin poluplokotita tou developing. Oles anagontai stin assembly, gia auto se ligo kairo tha epistrepsoume se auti...

Δημοσ.
Fysika to mellon twn glwsswn programmatismou vrisketai sta research teams twn panepisthmiwn tou kosmou...

Δεν νομίζω. Αν συνέβαινε αυτό τότε πχ ο συναρτησιακός προγραμματισμός θα είχε τη θέση που του άξιζε στην αγορά (γιατί στο ακαδημαϊκό περιβάλλον χαίρει υψηλής εκτίμησης) και γλώσσες όπως η Haskell (http://haskell.org/) και η OCaml (http://caml.inria.fr/) θα ήταν πιο διαδεδομένες. Η ιστορία όμως των γλωσσών προγραμματισμού, ή καλύτερα, η εξέλιξη τους στην αγορά, μας έχει δείξει πως σπάνια επικρατεί ο καλύτερος όπως συνέβη πχ με την οικογένεια της C (C, C++, Java, C#) έναντι της οικογένειας της Pascal (Pascal, Delphi, Ada).

Δημοσ.
...και δε συνυπολογίσουμε τις υπόλοιπες παραμέτρους...

 

OK! lol

 

quiz:

 

>
public interface Employee {
  int GetSalary();
  void GiveRaise(int amount);
}
public struct Clerk : Employee {
  private int salary;
  public Clerk(int salary) {
    this.salary = salary;
  }
  public int GetSalary() {
    return salary;
  }
  public void GiveRaise(int amount) {
    salary += amount;
  }
}
class Test {
  static void Main(string[] args) {
    Clerk c = new Clerk(1000);
    ((Employee)c).GiveRaise(50);
    System.Console.WriteLine(c.GetSalary());
  }
}

 

Χωρις να τρέξετε τον κώδικα, πείτε μου τι αποτέλεσμα θα βγάλει στο τέλος ;)

Δημοσ.

Ο κώδικας μοιαζει με JAVA αλλα δεν πρεπει να είναι,αρα υποθετω οτι ειναι C#.Άρα υποθετοντας επείδης οτι ο

 

public Clerk(int salary) {

this.salary = salary;

}

ειναι ο κατασκευαστης που δεχεται σαν ορισμα το salary 1000 τότε το

 

((Employee)c).GiveRaise(50);

 

θα το αυξανε κατα 50

 

αρα η εντολη

 

System.Console.WriteLine(c.GetSalary());

Αρα η προφανης απαντηση θα ηταν 1050???ΑΛΛΑ...καποιου λακου εχει φαβα.

Βουυυλλλλλωσα[οφτοπικ]είδε κανεις στριπτιζοαυπνίες προχθες[/οφτοπικ]

 

Τα σέβη μου

Δημοσ.
Ο κώδικας μοιαζει με JAVA αλλα δεν πρεπει να είναι,αρα υποθετω οτι ειναι C#.

 

C# είναι.

Κάτσε να απαντήσουν και άλλοι και μετά λέμε την απάντηση.

Εγώ ΔΕΝ το ειχα βρεί σωστά πάντως.

(ήμουν και στην αρχή της γλώσσα, κάποιος έμπειρος το πιάνει το υποννοούμενο ;) )

Δημοσ.
Δεν θα δώσει αύξηση 50 γιατί κανει cast το αντικείμενο σε employe όπου το GiveRaise ειναι void

 

Μπα, οχι. Η GiveRaise τρεχει κανονικα.

Δημοσ.
Μπα, οχι. Η GiveRaise τρεχει κανονικα.

 

hmm , δεν ξέρω τότε. Γνωρίζω περισσότερο C++ από C# anyway :-). Προφανώς έχει να κάνει με λάθος ερμηνεία του κώδικα από τον compiler της C#

 

Ξέρω ότι το πρόβλημα είναι ότι το (employe) δεν κάνει cast όπως στη C++ (όπου θα έδινε 1000 αποτέλεσμα) . Κάτι έχει να κάνει με το interface, και το struct που χρησιμοποείς στον κώδικά σου αντί για class.

Δημοσ.

Ούτε εγώ το βρήκα :( .Και είναι από τα πρώτα πράγματα που μαθαίνει κανείς στον προγραμματισμό σε C-based γλώσσες :|

 

@fragment_:Από Σώστι είσαι?

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...