• [^] # Re: révolutionnaire !

    Posté par (site web personnel) . En réponse à la dépêche Java 2 Standard Edition version 5.0. Évalué à 1.

    A t'on vraiment vraiment la même définition de covariance ?
    Je me pose la question par rapport au mot-clé 'out' que tu apportes comme solution.
    La covariance est la faculté de raffiner le type des paramètres d'une méthode en sous-types.
    Par exemple, covariance des paramètres et du résultat de retour :

    class Number
    add (other: Number): Number
    end

    class Integer <: Number
    add (other: Integer): Integer
    end

    Bien sûr, avec la généricité, si elle le permet, on peut se permettre une écriture à la F-Bound:

    class Number [ T <: Number [T] ]
    add(other: T): T
    end

    class Integer [ T <: Integer [T] ] <: Number [ T <: Number [T] ]
    end


    Sinon, il apparaitrait que C# 2.0 intégrera la généricité contrainte (si j'ai bien compris). Il apparaitra, si j'ai toujours bien compris avec Visual .NET 2005.
    A part ça, je comprends que les développeurs Microsoft s'exaltent face à C#. Jusqu'à présent, ils fallaient qu'ils se tappent Visual C++ ou Visual Basic. Deux langages qui n'ont d'objet que leur prétention (bon, d'accord, j'exagère), un peu comme bcp de développeurs d'ailleurs (ho la la, que je suis méchant, vraiment :) ).
    Et tout d'un coup, on leur propose un langage des années 90, né au 21e siècle, C#. Pour eux, qui ne connaissent que le monde Microsoft ou qui sont condamnés à développer pour ses plate-formes, c'est une découverte ! Expérience vécue dans ma boite.