¿Cómo les explico a los no programadores qué es .NET? [cerrado]

11

No trabajo en una compañía de software, y soy una de las pocas personas en la compañía que saben algo sobre programación. Paso mucho tiempo automatizando otros programas que se usan en la oficina a través de API públicas, y también he creado algunas aplicaciones independientes. Trabajo casi por completo en C # .NET ya que todas las aplicaciones que parecemos usar en la oficina parecen tener algún tipo de API .NET.

Algunas personas aquí me han preguntado sobre cómo aprender "cómo programar" y dónde deberían comenzar. Creo que tiene mucho más sentido aprender un lenguaje .NET, ya que casi todos los programas que desean automatizar tienen una API .NET, y parece que VBA está en camino y está siendo reemplazado por VSTA.

Sin embargo, estoy tratando de descubrir cómo explicar qué es .NET y por qué deberían aprenderlo con alguien que no sabe nada sobre programación. No es realmente un lenguaje, ya que hay varios idiomas que se consideran lenguajes .NET. Además, creo que hay una distinción entre ".NET" y "El marco .NET", ya que este último trata más sobre las bibliotecas proporcionadas por Microsoft.

Eric
fuente
3
La programación debe estar muy separada de .NET; interpretar el 2 como mismo es como decir que el mundo está gobernado por 1 país (no hay nombres aquí: D)
Fanatic23
Si está tratando con una persona de negocios, dígale que es una "mejor práctica".
Scott Whitlock

Respuestas:

15

.NET para el no programador

Programación : básicamente, decirle a una computadora qué hacer y cómo hacerlo.

Archivo de origen : este es un documento escrito en un lenguaje de programación que le dice a la computadora lo que quiere que haga.

Lenguaje de programación : este es un lenguaje que (generalmente) se asemeja a una mezcla de inglés y matemáticas. Es lo suficientemente simple y estricto como para que lo comprenda un compilador.

Compilador : esto traduce un lenguaje de programación que puede entender a un lenguaje que la computadora puede entender, puede llamarlo Computerese .

Biblioteca : una colección de código útil que ya se ha traducido al ordenador y que puedes usar en los programas que escribes.

Plataforma .NET : una gran colección de herramientas, idiomas y bibliotecas para escribir programas con un gran énfasis en la productividad.

Claro, hay mucho más que eso. Puede contarles sobre la compilación de IL y JIT o la recolección de basura, pero estos detalles no son muy relevantes para un no programador.

Kenneth Cochran
fuente
nitpick: las bibliotecas a menudo no se traducen previamente a la informática
amara el
14

No

Dígales "C #" y si lo siguen, lo resolverán. No tiene sentido explicarlo en el vacío.

[¡o diles "Java" para que no te pidan ayuda!]

Steven A. Lowe
fuente
Votaría esto más :)
duros
+1: No es importante hasta que sea importante. En ese momento, hay algunos conocimientos básicos para aprovechar.
Steven Evers
4

Solo diles que es un programa que te permite escribir programas y no preocuparte por el momento. Luego comience con los principios de programación más importantes en este momento.

johnny
fuente
1
sí, haría eso, luego les entregaría libros de la primera serie principal. (excelentes libros para principiantes que son fáciles de aprender y tienen muchas mejores prácticas incorporadas). Puede comenzarlos en el libro "Programación de Head First". También los primeros 3 capítulos del libro de C # son gratuitos, por lo que puede consultar el estilo de enseñanza: headfirstlabs.com/books/hfcsharp
robertpateii
2

.NET es un marco que puede ser usado por lenguajes de programación .NET. Puede usarlo para escribir aplicaciones de escritorio WinForm (no WPF), aplicaciones de escritorio WPF, Silverlight, ASP.NET y dispositivos móviles. Entonces, al aprender una parte de .NET (como escribir aplicaciones de escritorio), un programador puede aprender fácilmente cómo escribir otras cosas como aplicaciones web.

Soy un desarrollador de Java y se pueden decir cosas similares para el lenguaje Java, pero en mi humilde opinión, las características de Visual Studio y .NET (por ejemplo, los editores y asistentes de GUI de Visual Studio, así como el enlace de datos) hacen que el desarrollo en .NET sea un poco más rápido Y más fácil.

Jon Onstott
fuente
2

Siempre relacionelo con algo que la persona pueda entender. Si no entienden la programación, entonces:

.NET es una colección de cosas prefabricadas. Entonces es como:

  • un montón de ladrillos ya juntos
  • un acuerdo preescrito donde solo debe completar algunos campos
  • comprar un automóvil en lugar de las partes individuales que lo componen
Nippysaurus
fuente
2

Es una gran nube esponjosa ...

Diles que es la nueva tecnología sexy de Microsoft. Y eso permite a los desarrolladores de diferentes idiomas tomarse de la mano y crear códigos súper sexys. Dígales que funciona de forma automática en cosas como PC, XBOX y Windows Phone. Y también diles que pueden hacer cualquier cosa, desde juegos hasta aplicaciones comerciales aburridas con ellos, así como sitios web también.

Que sea breve:

  • Es una gran nube esponjosa :)
  • Es Microsoft Tech
  • Se ejecuta en PC, XBOX, Windows Phone
  • "Comprende" muchos idiomas diferentes
  • Puede hacer, juegos, aplicaciones de negocios y sitios web con ellos
Noche oscura
fuente
1
Un poco condescendiente, ¿no?
Robert Harvey
no, en absoluto, no en lo más mínimo. En cualquier momento he tenido que describir / explicar cosas técnicas a personas que no son técnicos. Me parece mejor dar la vista de 1000,000000 pies. ¿POR QUÉ? porque el 90% de las veces simplemente no les importa nada. Solo quieren que funcione. Sin embargo, el 10% que está interesado siempre solicitará un seguimiento, seguido de un seguimiento. Esta es solo la forma más eficiente de comunicarse. Comience en el nivel más alto de abstracción y trabaje a su manera ...
Darknight
1

Las personas, que no son programadores, tienen mucho miedo de los términos informáticos especiales como "framework", "ASP.NET" y "Silverlight". Entonces, expliquemos la cosa en términos fáciles:

.NET es una tecnología de programación moderna que se utiliza mejor para crear aplicaciones comerciales, sitios web, juegos y multimedia.

Genio
fuente
0

Creo que está yendo por el camino correcto, tiene los compiladores .Net que traducen un programa en un idioma específico a MSIL, luego tiene la biblioteca de códigos, que en realidad es solo una biblioteca de clases / códigos para facilitarnos la vida. Si no entienden qué es una biblioteca de códigos, no estoy seguro de qué podría hacer para que entiendan eso. Puede guiarlos en su selección de C # igual que lo hizo en su pregunta.

BlackICE
fuente
Sí, eso ayuda. Creo que parte del problema es que no entiendo muy bien cómo funciona .net. Como por qué tantos programas con los que trabajo tienen .NET APis ahora. ¿Es solo porque es la nueva tecnología o hay algo fundamental en .Net que lo hace mejor que decir VBA o VBScript?
Eric
oh dios sí, es mejor que VBA o VBScript. Tener una API .Net en lugar de VBA es como programar en VB6 vs VB.Net.
BlackICE
0

Esto parece una oportunidad para usted dentro de esta empresa.

Como se está volviendo conocido como alguien experto en programación, y las personas acuden a usted en busca de consejos / aportes, parece que hay una necesidad comercial de programación en esta empresa en general.

Recomiendo hablar con alguien en una posición de autoridad que pueda establecer que esto se convierta en parte de su rol, por ejemplo, usted encabeza los esfuerzos de desarrollo de software y es reconocido en consecuencia.

Si esto es posible, puede comenzar a rodar la pelota educativa con una sesión de tiza y hablar sobre lo que está programando, por qué programa estas aplicaciones de oficina, etc., e introducir C # mientras lo hace. Si esto va bien, es probable que desee avanzar al Control de versiones, aprovechando los marcos y nUnit (o similar) poco después.

Si no hay oportunidad disponible, una sesión de tiza y conversación sigue siendo una buena opción, ya que puede difundir la misma información a varias personas, con el objetivo del caso promedio, y luego pueden apoyarse mutuamente en el futuro.

JBRWilkinson
fuente
-1

"Facilita que los programadores / desarrolladores de software creen aplicaciones para productos de Microsoft e incluso algunas otras plataformas como Linux".

ElGringoGrande
fuente
2
Se podría decir lo mismo para un editor de texto, para autocompletar, para ... para muchas cosas.
Torre