8
votes

C # Generics - Question d'entretien étrange

Un intervieweur m'a soutenu " Gengrics ne sont pas complètement flexiels ",

Il a fourni l'exemple (paramètres int k, int d ne sont pas génériques) xxx

Il m'a demandé si je prouve toujours que ce sont des génériques, je serai autorisé à occuper le tour suivant. Je ne savais pas ce qu'il attend de moi, et ce qu'il veut vraiment dire en montrant cet exemple.

me guidera à faire face à une interview aussi étrange?

Merci d'avance .


7 commentaires

Encore une autre question d'entrevue de Dumbass, conçue uniquement pour mesurer votre capacité à supprimer le rire.


Je ne suis pas sûr que ce soit une question répondante sans savoir quelle réponse à l'intervieweur cherchait. Nous pouvons tous deviner, mais nous serions probablement tous malsus sans beaucoup plus d'informations.


Peut-être qu'une information a été perdue dans la traduction, car comme demandé, je ne comprends pas cette question.


Les puits K et D pourraient être une forme de comptoir, comme Imprimer cette période K, avec D type T par ligne. Si k et d où de type T, il serait difficile de les utiliser comme compteurs :)


Si ce gars allait devenir votre patron, alors bonne chose que vous avez échoué l'interview ...


J'aurais répondu "La plupart des personnes interrogées se rapportent à eux-mêmes et à leurs talents ont trop de choses pour supporter une entreprise avec un processus d'entrevue aussi condescendant et insultant.", Et est parti.


Au contraire à tous les commentaires qui ont supposé que l'intervieweur est en train d'être humiliant ou stupide. C'est en fait une bonne déclaration pour un employé potentiel de s'adresser, car cela vous donne la possibilité d'entrer dans une discussion avec votre employeur plutôt que de simplement répondre à la question. Vous gagnez tous les deux quelque chose de précieux de l'expérience, car vous avez chacun d'abord interagir les uns avec les autres, comme vous le savez si vous êtes en désaccord sur quelque chose en travaillant ensemble. Si vous ne pouvez pas gérer une situation comme celle-ci dans une interview, bonne chance si vous pensez pouvoir travailler ensemble.


13 Réponses :


3
votes

Tout un générique est un type paramétré. Je ne sais pas ce que votre intervieweur reçoit. Prétend-il que la méthode n'est pas entièrement générique car tous les paramètres de méthode n'ont pas de type générique?

Vous n'êtes pas obligé d'utiliser le même type de paramètre pour tous les paramètres, pas plus que tous les types de paramètres doivent être génériques.


0 commentaires

23
votes

Certaines personnes sont insensées. Vous devriez sourire et hocher la tête.


5 commentaires

Aw, Allez. Vous obtenez un représentant pour cela ??


Comme Larry Niven a écrit une fois écrit, "ne jetez jamais **** à l'homme avec le laser."


cela pourrait être le pouce si on a écrit par les mauvaises personnes


Mon entretien n'a pas été fini avec cela, demanda-t-il pourquoi ne pouvons-nous pas avoir un constructeur générique.Je dit bien que vous allez arrêter votre entreprise. (J'espère qu'il lira ce post).


Toute personne qui cite Larry Niven mérite un vote up!



2
votes

En ce qui me concerne, il s'agit d'une méthode générique, en vertu du fait qu'il a un paramètre de type. Que tous les paramètres ne sont pas importants du type générique.


0 commentaires

11
votes

Le fait que k et d est toujours int ne rend pas la méthode moins générique, cela signifie simplement que ces paramètres sont Toujours int quel que soit le type de A , b & c .


0 commentaires

3
votes

Peut-être qu'il voulait dire que a , b et c doit être du même type, mais c'est stupide.


1 commentaires

Si tel est le cas, il suffit de répondre à la signature de la méthode: Noid statique public testMethod (T1 A, T2 B, T3 C, INT K, INT D)



4
votes

En supposant que la question de l'entretien est une vraie, j'ai googlé "Les génériques ne sont pas" + c # et obtenu celles-ci:

  • Generics ne sont pas des modèles C ++
  • Generics ne sont pas uniquement compilateur Magic
  • Les génériques ne sont pas covariants
  • les génériques ne sont pas seulement une construction de la langue c #; Les génériques sont définis avec le CLR.
  • Les génériques ne sont pas limités à la fonction DÉFINITIONS
  • les génériques ne sont pas simplement utilisés pour Collections
  • Les génériques ne sont pas limités aux classes
  • c # fait une sorte d'effacement mais c'est pas aussi sévère que Java, et le la raison est parce que les génériques ne sont pas un C # - fonctionnalité spécifique, mais plutôt un fonctionnalité qui doit fonctionner à travers .NET, qui prend en charge plusieurs langues.

    Je n'ai aucun match pour "les génériques ne sont pas complètement génériques" ni "génériques ne sont pas toujours génériques".

    alors là. Amusez-vous.


2 commentaires

Ce que c'est drôle ? Il a posé une autre question pourquoi ne peut-il pas construire être générique? Quel est le darwback là-bas? Comment faire face à un tel gars? .Hmm la récession joue bien.


Profitez de plaisir que tout le monde profitera bien. Je vais oublier tout si j'assiste à une telle interview.



13
votes

jour ... rêver ... à ... ordinateur ....

"L'avez-vous donné la question?"

"oui"

"Vous a-t-il dit que c'était BS?"

"Non"

"L'avez-vous trouvé sur Stackoverflow vous demandant comment répondre à la question?"

"oui"

"Bien, maintenant nous savons. Obtenez le prochain gars ici"

"Bwah ... ha ... ha ..." Répéter ...


0 commentaires

2
votes

Il m'a demandé si je prouve toujours que c'est des génériques, je serai autorisé à occuper le tour suivant. Je ne savais pas ce qu'il attend de moi et ce qu'il veut vraiment dire en montrant cet exemple.

On dirait que cet intervieweur cherche les réponses données ici - si votre phrase de sa question capture son intention, il ne discute pas que les génériques ne sont pas génériques, il demande si vous pouvez parler intelligemment de la "généricité" du méthode spécifiée.

Comme plusieurs autres l'ont noté, il s'agit d'une méthode générique en vertu du fait qu'il permet à l'utilisateur de spécifier un attribut visible de la fonction (dans ce cas, le type des 3 premiers paramètres) à une heure ultérieure. Le fait que K et D sont des paramètres non génériques sembleraient simplement être un hareng rouge.

Être capable d'indiquer que la réponse serait plus ou moins que vous n'avez pas de notion asymétrique de ce que signifie "générique" - dans ce cas, une spécialisation de temps d'appel d'une fonction générique.


0 commentaires

0
votes

@DANA, pourrait-il être que l'intervieweur tentait de guager votre réponse en vous posant une question qui n'a aucun sens?

J'ai déjà eu une interview dans laquelle la question du test a demandé "Quelle est la taille de la marge par défaut d'une winform". J'ai répondu "Je ne sais pas et je ne me soucie pas, car je peux définir une valeur que je veux dans le constructeur"

À la fin de l'entretien, l'intervieweur m'a dit que la question était une astuce pour voir qui devinerait et qui serait honnête quand ils ne savaient pas quelque chose.


0 commentaires

1
votes

hmmm, post final, mais mieux tard que jamais! : -)

En supposant que votre intervieweur connaisse ses affaires, c'est vraiment le genre de question que un intervieweur vous demande afin de procéder à ce qui suit:

  1. Testez vos connaissances.
  2. Testez-vous avec une déclaration qu'il sait est incorrecte de voir comment vous allez réagir et comment vous allez aborder en réponse.
  3. Engagez-vous dans un débat pour vous permettre de vous détendre et de parler librement d'un sujet que vous espérez-vous avoir une certaine familiarité avec.

    Un bon intervieweur atteindra les trois, tandis que le non si bon intervieweur peut simplement rechercher des moyens d'essayer de vous piéger car il a demandé à interviewer trop de candidats.

    À la fin de la journée, si vous ne connaissez pas la réponse ou que vous comprenez la question, vous feriez mieux de le dire dans l'entretien et si vous êtes en désaccord avec une déclaration, regardez-la comme une opportunité de vous détendre et engager une discussion plutôt que simplement répondre aux questions lors de l'entretien.

    Et pour ce que cela vaut, la réponse est que la méthode décrite est une méthode générique, que certains paramètres soient d'un type fixe ou non. La preuve est dans la déclaration elle-même où la syntaxe générique indique efficacement le compilateur de faire des allocations pour les arguments génériques.


0 commentaires

0
votes

Prendre la question littéralement:

  1. Montrez-lui que vous pouvez appeler avec t sous forme de chaîne, int et dites un bouton.
  2. lui montrer le code générique compilé - je pense que c'est avec ilasme, vous pouvez voir la méthode générique pour les types de référence. Vous pouvez également voir les versions accordées de la méthode générique pour les types de valeur, mais je ne me souviens pas de savoir comment. Peut-être que quelqu'un d'autre peut.

0 commentaires

0
votes

Hey c'est une bonne question en chatouillant dans les génériques. L'intervieweur voulait juste connaître votre familiarisation en génération. Le nom utilisé dans le nom de la méthode est juste pour spécifier le type lorsque vous appelez la méthode. Cela peut ou non être spécifié lors de l'appel. Comme xxx

cela sera pris lors de la compilation uniquement. Donc, les 3 paramètres dans lesquels sont spécifiés ne seront du même type que. xxx

donc par tous les moyens que nous spécifions simplement qu'il est fortement saisi.


0 commentaires

0
votes

Je préférerais être intéressé à connaître la question qu'il a posée ou la réponse que vous avez donnée juste avant que cette question soit tirée sur vous !!!.

Généralement, des questions telles (bizarre / vagues) sont tirées par intervieweur si la personne interrogée montre une gêne dans certains sujets ou donne une réponse erratique. Cela oblige l'intervieweur à adopter la personne interrogée en interrogatoire croisé ou à demander des choses surprenantes.


0 commentaires