Estou procurando especificamente influências da linguagem (em oposição à estrutura). À primeira vista, o C # parece ser uma evolução do C / C ++ ou Java. Mas sabemos que o C # tem o mesmo designer que o Delphi, e ele até reconheceu algumas semelhanças e disse que "boas idéias não desaparecem". O único exemplo que vejo de algo em C # que não está em Java ou C / C ++ são as propriedades. É isso? Existem outros?
8
variant
tipo desde praticamente para sempre ...Respostas:
Não tanto do que é visível para o programador, mas nos bastidores, um pouco, mas muitos deles estavam no IDE e no design de controle de formulários do Windows, em vez da própria linguagem, eu uso o Delphi 7 há cerca de 10 anos e C # por cerca de 5, por isso compreendi alguns:
1) A propriedade anchors é idêntica à Delphi
2) A posição padrão do formulário
3) A hierarquia de objetos para os controles
4) O criador de formulários em geral se sente muito parecido - não posso apontar exatamente isso.
Algumas coisas na própria linguagem eu notei:
1) Certos tipos de dados, também conhecidos como Moeda / Decimal
Algumas coisas na linguagem que são muito diferentes:
1) Herança de construtor (delphi usado para herdar todos os construtores para basear objetos que eles não precisavam ser definidos novamente em classes descendentes)
2) O Delphi tinha a capacidade de rebaixar a visibilidade de um método ou propriedade nas classes descendentes, mas mantém o polimorfismo intacto, o C # não permite isso (sinto muita falta disso)
Provavelmente perdi muitas coisas, adicione-as se pensar nelas.
fonte
CanWoozle
propriedade retorna true deve fornecer umaWoozle()
implementação utilizável , mas uma classe derivada específica sempre retorna false paraCanWoozle
e tem umaWoozle
implementação legitimamente inutilizável , não há razão para a classe derivada ter que expor seuWoozle
membro .Anders esteve na Borland até o Delphi 3 - ele foi o arquiteto original do Delphi e também do Turbo Pascal. Se você carregar o Delphi 1, abra a caixa about e digite AND e você terá uma foto de Anders que pisca para você.
Quando ele deixou a Borland para a MS, ele fez o J ++ inicialmente, o que "irritou" a Sun um pouco. Então ele criou o C #. Os pontos que você deve juntar vão de Borland Object Pascal -> Java / J ++ -> C #
C # é a tentativa da Microsoft de criar um Java melhor. Como um antigo codificador Delphi, eu aceitaria que eles provavelmente foram bem-sucedidos.
fonte