Estoy buscando específicamente las influencias del lenguaje (en oposición al marco). A primera vista, C # parece ser una evolución de C / C ++ o Java. Pero sabemos que C # tiene el mismo diseñador que Delphi, e incluso reconoció algunas similitudes y dijo que "las buenas ideas no desaparecen". El único ejemplo que veo de algo en C # que no está en Java o C / C ++ son las propiedades. ¿Es asi? ¿Hay otros?
8
variant
tipo desde casi siempre ...Respuestas:
No es mucho lo que es visible para el programador, pero detrás de escena, bastante, pero muchos de ellos estaban en el diseño de control de formularios IDE y Windows, en lugar del lenguaje en sí, he estado usando Delphi 7 durante aproximadamente 10 años y C # durante aproximadamente 5, así que he recogido algunos:
1) La propiedad de anclajes es idéntica a Delphi
2) La posición predeterminada del formulario
3) La jerarquía de objetos para los controles.
4) El diseñador de formularios en general se siente muy similar: no puedo señalarlo con precisión.
He notado algunas cosas en el lenguaje en sí:
1) Ciertos tipos de datos, también conocidos como Moneda / Decimal
Algunas cosas en el lenguaje que son muy diferentes:
1) Herencia del constructor (Delphi solía heredar todos los constructores a los objetos base que no tenían que definirse nuevamente en las clases descendientes)
2) Delphi tenía la capacidad de degradar la visibilidad de un método o propiedad en las clases descendientes, pero mantener intacto el polimorfismo, C # no permite esto (lo extraño mucho)
Probablemente me haya perdido un montón de cosas, agréguelas si piensa en ellas.
fuente
CanWoozle
propiedad devuelve verdadero debe proporcionar unaWoozle()
implementación utilizable , pero una clase derivada en particular siempre devuelve falsoCanWoozle
y tiene unaWoozle
implementación legítimamente inutilizable , no hay razón para que la clase derivada deba exponer a suWoozle
miembro .Anders estuvo con Borland hasta Delphi 3: fue el arquitecto original de Delphi y de Turbo Pascal. Si carga Delphi 1, abra el cuadro acerca de y escriba Y obtendrá una imagen de Anders que le guiña un ojo.
Cuando salió de Borland para MS, inicialmente hizo J ++ que "molestó" un poco a Sun Luego creó C #. Los puntos a los que debe unir van desde Borland Object Pascal -> Java / J ++ -> C #
C # es el intento de Microsoft de crear una mejor Java. Como viejo codificador de Delphi, aceptaría que probablemente tuvieron éxito.
fuente