Comment expliquer aux non-programmeurs ce qu'est .NET? [fermé]

11

Je ne travaille pas dans une société de logiciels et je fais partie d'une petite poignée de personnes dans l'entreprise qui connaissent tout sur la programmation. Je passe beaucoup de temps à automatiser d'autres programmes utilisés au bureau via des API publiques, et j'ai également créé quelques applications autonomes. Je travaille presque entièrement en C # .NET car chaque application que nous semblons utiliser au bureau semble avoir une certaine forme d'API .NET.

Quelques personnes ici m'ont demandé comment apprendre "comment programmer" et où elles devraient commencer. Je pense qu'il est beaucoup plus logique d'apprendre un langage .NET car presque tous les programmes qu'ils voudraient automatiser ont une API .NET, et il semble que VBA soit sur le point de disparaître et d'être remplacé par VSTA.

Cependant, j'essaie de comprendre comment expliquer ce qu'est .NET et pourquoi ils devraient l'apprendre à quelqu'un qui ne connaît rien à la programmation. Ce n'est pas vraiment un langage, car il existe un certain nombre de langages considérés comme des langages .NET. De plus, je pense qu'il y a une distinction entre ".NET" et "Le framework .NET" car ce dernier concerne davantage les bibliothèques fournies par Microsoft.

Eric
la source
3
La programmation doit être très distincte de .NET; interpréter les 2 de la même manière, c'est comme dire que le monde est gouverné par 1 pays (pas de noms ici: D)
Fanatic23
Si vous avez affaire à un homme d'affaires, dites que c'est une «meilleure pratique».
Scott Whitlock

Réponses:

15

.NET pour les non-programmeurs

Programmation - Dit fondamentalement à un ordinateur quoi faire et comment le faire.

Fichier source - Il s'agit d'un document écrit dans un langage de programmation qui indique à l'ordinateur ce que vous voulez qu'il fasse.

Langage de programmation - Il s'agit d'un langage qui ressemble (généralement) à un mélange d'anglais et de mathématiques. C'est à la fois simple et strict pour qu'un compilateur puisse le comprendre.

Compilateur - Cela traduit un langage de programmation que vous pouvez comprendre dans un langage que l'ordinateur peut comprendre, vous pouvez l'appeler Computerese .

Bibliothèque - Une collection de code utile qui a déjà été traduit en informatique que vous pouvez utiliser dans les programmes que vous écrivez.

Plateforme .NET - Une grande collection d'outils, de langages et de bibliothèques pour écrire des programmes avec un fort accent sur la productivité.

Bien sûr, il y a beaucoup plus que ça. Vous pouvez leur parler de la compilation IL et JIT ou de la récupération de place, mais ces détails ne sont pas très pertinents pour un non-programmeur.

Kenneth Cochran
la source
nitpick: Les bibliothèques ne sont souvent pas pré-traduites en informatique
amara
14

Ne le fais pas

Dites-leur "C #" et s'ils suivent, ils le découvriront. Il est inutile de l'expliquer dans le vide.

[ou dites-leur "Java" pour qu'ils ne viennent pas vers vous pour vous aider!]

Steven A. Lowe
la source
Je voterais plus :)
duros
+1: Ce n'est pas important tant qu'il n'est pas important. À ce moment-là, il y a des connaissances de base sur lesquelles s'appuyer.
Steven Evers
4

Dites-leur simplement que c'est un programme qui vous permet d'écrire des programmes et de ne pas vous en soucier pour le moment. Commencez ensuite par les principes de programmation qui comptent le plus pour le moment.

johnny
la source
1
oui, je le ferais, puis je leur donnerais des livres de la première série de tête. (grands livres pour débutants qui sont faciles à apprendre et qui contiennent de nombreuses bonnes pratiques.) Vous pouvez les commencer sur le livre "Head First Programming". Les 3 premiers chapitres du livre C # sont également gratuits, vous pouvez donc consulter le style d'enseignement: headfirstlabs.com/books/hfcsharp
robertpateii
2

.NET est un framework qui peut être utilisé par les langages de programmation .NET. Vous pouvez l'utiliser pour écrire des applications de bureau WinForm (non-WPF), des applications de bureau WPF, Silverlight, ASP.NET et mobile. Ainsi, en apprenant une partie de .NET (comme l'écriture d'applications de bureau), un programmeur peut assez facilement apprendre à écrire d'autres choses telles que des applications Web.

Je suis développeur Java et des choses similaires peuvent être dites pour le langage Java, mais à mon humble avis, les fonctionnalités de Visual Studio et .NET (par exemple les éditeurs et assistants GUI de Visual Studio, ainsi que la liaison de données) accélèrent le développement dans .NET et plus facile.

Jon Onstott
la source
2

Reliez-le toujours à quelque chose que la personne peut comprendre. S'ils ne comprennent pas la programmation, alors:

.NET est une collection de choses pré-faites. Donc c'est comme:

  • beaucoup de briques déjà assemblées
  • un accord pré-écrit où vous remplissez simplement certains champs
  • acheter une voiture au lieu des pièces individuelles qui composent une voiture
Nippysaurus
la source
2

C'est un gros nuage moelleux ..

Dites-leur que c'est une nouvelle technologie sexy de Microsoft. Et qu'il permet aux développeurs de différents langages de se tenir la main et de créer du code super sexy. Dites-leur que cela fonctionne automatiquement par magie sur des choses comme les PC, les XBOX et les Windows Phone. Et dites-leur également qu'ils peuvent créer n'importe quoi, des jeux aux applications commerciales ennuyeuses, ainsi que des sites Web.

Soyez bref:

  • C'est un gros nuage moelleux :)
  • Son Microsoft Tech
  • Fonctionne sur PC, XBOX, Windows Phone
  • Il "comprend" de nombreuses langues différentes
  • Peut créer des jeux, des applications, des applications et des sites Web avec eux
Nuit noire
la source
1
Un peu condescendant, non?
Robert Harvey
non, pas du tout, pas du tout. Chaque fois que j'ai eu à décrire / expliquer des choses techniques à des personnes non techniciennes. Je trouve préférable de donner la vue à 1000,000000 ft. POURQUOI? parce que 90% du temps, ils ne s'en soucient pas. Ils veulent juste que ça marche. Cependant, les 10% qui sont intéressés demanderont systématiquement un suivi, suivi d'un suivi. Ce n'est que la façon la plus efficace de communiquer. Commencez au plus haut niveau d'abstraction et travaillez à votre façon ...
Darknight
1

Les gens, qui ne sont pas programmeurs, ont très peur des termes informatiques spéciaux tels que "framework", "ASP.NET" et "Silverlight". Expliquons donc la chose en termes simples:

.NET est une technologie de programmation moderne utilisée au mieux pour créer des applications commerciales, des sites Web, des jeux et du multimédia.

Génie
la source
0

Je pense que vous vous dirigez vers la bonne voie, vous avez les compilateurs .Net qui traduisent un programme dans un langage spécifique en MSIL, puis vous avez la bibliothèque de code, qui est vraiment juste une bibliothèque de classe / code pour nous faciliter la vie. S'ils ne comprennent pas ce qu'est une bibliothèque de codes, ne savez pas ce que vous pourriez faire pour leur faire comprendre cela. Vous pouvez les guider dans leur sélection de C # de la même manière que vous l'avez fait dans votre question.

Glace noir
la source
Ouais ça aide. Je pense qu'une partie du problème est que je ne comprends pas très bien comment .net fonctionne moi-même. Comme pourquoi tant de programmes avec lesquels je travaille ont maintenant des AP .NET. Est-ce simplement parce que c'est la nouvelle technologie chaude ou y a-t-il quelque chose de fondamental à .Net qui le rend meilleur que VBA ou VBScript?
Eric
oh mon dieu oui c'est mieux que VBA ou VBScript. avoir une API .Net au lieu de VBA, c'est comme programmer en VB6 vs VB.Net.
BlackICE
0

Cela ressemble à une opportunité pour vous au sein de cette entreprise.

Au fur et à mesure que vous devenez connu comme quelqu'un de compétent en programmation et que les gens viennent à vous pour obtenir des conseils / des commentaires, il semble que la programmation ait un besoin commercial dans cette entreprise en général.

Je recommanderais de parler à quelqu'un en position d'autorité qui pourrait être en mesure d'établir que cela fait partie de votre rôle - par exemple, vous dirigez les efforts de développement de logiciels et êtes reconnu en conséquence.

Si cela est possible, vous pouvez commencer le bal éducatif avec une session de craie et de discussion sur ce qui est la programmation, pourquoi vous programmez ces applications bureautiques, etc., et introduisez C # en faisant cela. Si cela se passe bien, vous voudrez peut-être passer au contrôle de version, en exploitant les frameworks et nUnit (ou similaire) peu de temps après.

S'il n'y a pas d'opportunité disponible, une session de craie et de conversation est toujours une bonne option car vous pouvez diffuser les mêmes informations à un certain nombre de personnes, visant le cas moyen, et elles peuvent alors se soutenir mutuellement.

JBRWilkinson
la source
-1

"Il est plus facile pour les programmeurs / développeurs de logiciels de créer des applications pour les produits Microsoft et même certaines autres plates-formes comme Linux."

ElGringoGrande
la source
2
On pourrait dire la même chose pour un éditeur de texte, pour la saisie semi-automatique, pour ... pour beaucoup de choses.
Tour