我如何向非程序员解释.NET是什么?[关闭]


11

我不在软件公司工作,并且是公司中一小部分对编程一无所知的人之一。我花了大量时间来自动化通过公共API在办公室使用的其他程序,并且我还创建了一些独立的应用程序。我几乎完全在C#.NET中工作,因为我们似乎在办公室使用的每个应用程序似乎都有某种形式的.NET API。

我这里有些人问我关于学习“如何编程”以及应该从哪里开始的知识。我认为学习.NET语言更加有意义,因为几乎他们想要自动化的所有程序都具有.NET API,而且听起来VBA即将退出,并被VSTA取代。

但是,我试图弄清楚如何解释.NET以及为什么他们应该向对编程一无所知的人学习。它不是真正的语言,因为有许多语言被认为是.NET语言。另外,我认为“ .NET”和“ .NET框架”之间存在区别,因为后者更多地与Microsoft提供的库有关。


3
编程应该与.NET非常分开;将2解释为相同就好比说世界是由1个国家统治的(此处未命名:D)
Fanatic23 2010年

如果您要与商人打交道,请说这是“最佳实践”。
Scott Whitlock 2010年

Answers:


15

.NET非程序员

编程 -基本上告诉计算机做什么和如何做。

源文件 -这是用编程语言编写的文档,它告诉计算机您想要它做什么。

编程语言 -这是一种(通常)类似于英语和数学的混合语言。它既简单又严格,足以使编译器理解。

编译器 -将您可以理解的编程语言转换为计算机可以理解的语言,您可以将其称为Computerese

-有用的代码的集合,这些代码已经转换为计算机语言,可以在编写的程序中使用。

.NET平台 -大量的工具,语言和库,用于编写程序,并特别注重生产力。

当然,还有更多的东西。您可以向他们介绍IL和JIT编译或垃圾回收,但是这些细节与非程序员并不太相关。


nitpick:图书馆通常不会预先翻译成计算机语言
amara 2012年

14

告诉他们“ C#”,如果他们坚持下去,他们会弄清楚的。在真空中解释它毫无意义。

[或告诉他们“ Java”,这样他们就不会向您寻求帮助!]


我会再投票:)
duros

+1:不重要,直到重要。到那时,已经有了一些基础知识可以借鉴。
史蒂文·埃弗斯

4

只需告诉他们,它是一个程序,可以让您编写程序,暂时不必担心。然后从当前最重要的编程原理开始。


1
是的,我会这样做的,然后我会从头系列开始将它们递给他们。(很棒的入门书籍,易于学习,并且包含许多最佳实践。)您可以在“ Head First Programming”一书中开始学习。另外,C#书籍的前3章是免费的,因此您可以查看教学风格:headfirstlabs.com/books/hfcsharp
robertpateii 2010年

2

.NET是.NET编程语言可以使用的框架。您可以使用它来编写WinForm(非WPF)桌面应用程序,WPF桌面应用程序,Silverlight,ASP.NET和移动设备。因此,通过学习.NET的一部分(例如编写桌面应用程序),程序员可以轻松地学习如何编写其他内容,例如Web应用程序。

我是Java开发人员,可以用Java语言说类似的话,但是恕我直言,Visual Studio和.NET的功能(例如Visual Studio的GUI编辑器和向导以及数据绑定)使.NET的开发速度更快更容易。


2

始终将其与人们可以理解的事物联系起来。如果他们不懂编程,那么:

.NET是预制材料的集合。所以它像:

  • 很多砖块已经放在一起
  • 预先填写的协议,您只需填写一些字段
  • 购买汽车,而不是组成汽车的各个零件

2

这是一块大蓬松的云。

告诉他们,它是Microsoft性感的新技术。而且它允许来自不同语言的开发人员全力以赴,制作出超级性感的代码。告诉他们它可以自动神奇地在PC,XBOX和Windows Phone等设备上运行。并告诉他们,他们可以与他们以及网站一起制作任何东西,从游戏到无聊的商业应用程序。

简短一点:

  • 它的蓬松大云:)
  • 其微软技术
  • 在PC,XBOX,Windows Phone上运行
  • 它“理解”许多不同的语言
  • 可以与他们一起制作,游戏,商务应用程序和网站

1
居高临下,不是吗?
罗伯特·哈维

不,一点也不,一点也不。任何时候我不得不向非技术人员描述/解释技术内容。我认为最好给出1000,000000英尺的视图。为什么?因为90%的时间他们只是不屑一顾。他们只是想要它工作。但是,有兴趣的10%会一直要求跟进,然后跟进。这只是最有效的交流方式。从最高级别的抽象开始,然后
逐步

1

非程序员的人们非常害怕特殊的计算机术语,例如“框架”,“ ASP.NET”和“ Silverlight”。因此,让我们用简单的术语来解释一下:

.NET是最适合用于制作业务应用程序,网站,游戏和多媒体的现代编程技术。


0

我认为您正在走上正确的道路,拥有.Net编译器,可以将特定语言的程序转换为MSIL,然后您拥有代码库,它实际上只是一个类/代码库,使我们的生活更轻松。如果他们不了解什么是代码库,则不确定您可以做些什么来使他们理解。您可以像在问题中一样指导他们选择C#。


是的,有帮助。我认为问题的一部分是我对.net如何自我运作不太了解。就像为什么我现在使用的这么多程序拥有.NET APis一样。仅仅是因为这是炙手可热的新技术,还是.Net的基本要素使它变得比VBA或VBScript更好?
艾瑞克(Eric)2010年

哦,天哪,它比VBA或VBScript好。使用.Net API而不是VBA就像在VB6 vs VB.Net中进行编程。
BlackICE 2010年

0

这对于您在这家公司中来说是一个机会。

当您成为精通编程的人而闻名,并且有很多人向您寻求建议/意见时,这家公司似乎普遍需要进行编程。

我建议与有权威的人进行交谈,该人也许可以确定这已成为您的角色的一部分-例如,您领导软件开发工作,并得到相应的认可。

如果可能的话,您可以通过白垩对话开始教育性的话题,讨论编程的内容,编写这些Office应用程序的原因等,并在执行此操作时介绍C#。如果一切顺利,您可能想在不久之后利用框架和nUnit(或类似产品)进行版本控制。

如果没有机会,粉笔对话仍然是一个不错的选择,因为您可以将相同的信息传播给许多人,针对一般情况,然后他们可以相互支持。


-1

“这使程序员/软件开发人员更容易为Microsoft产品甚至Linux等其他平台创建应用程序。”


2
对于文本编辑器,对于自动完成,对于...而言,您可能会说很多事情。
Rook
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.