你主要想问.Net和Java的差异在哪里
Java是开发语言 .Net叫开发平台
但事实上你管Java叫开发平台也没错
平台就是一个供你在上面进行开发的平台
(英语叫Framework,也可以翻译成“架构”、“框架”) Java本身也是Java平台上的开发语言的名字
但.Net不是开发语言 在.Net开发平台上可以支持多门开发语言
例如C#、VB.net、JScript.net等…… 还不断地有新的语言在开发中
同理Java平台也是不仅仅支持Java语言的 还有Groove等等 如果你是想对比Java和.Net开发平台的话
Java技术更加自由
因为.Net是一个公司的产品
而Java是一个爱好者社区的作品
Java技术更为成熟 涉足的领域更加广泛 因为Java比.Net早发展5年
但.Net则比Java更加先进 仅仅是先进一点点 但在开发中却对你益处却很大 ————我是分割线————————我是分割线———— 我认为
所谓Java和.Net平台的根本是其VM(Virtual Machine,虚拟机)
Java平台的虚拟机就叫JVM(Java Virtual Machine)
在.Net平台上则叫做CLR(Common Language Runtime) 在使用虚拟机技术之前 一切都依赖于操作系统
你必须为一套程序分别开发多个版本
以对应Windows、Linux、Unix等操作系统 而虚拟机运行于操作系统之上
一个开发平台有多个虚拟机对应不同的操作系统
而基于该平台的程序运行于虚拟机之上
这样大家只需要开发一套程序的一个版本
就可以在虚拟机的帮助下运行在多个操作系统上 平台和工具的差异很容易理解
抽象地解释
比如你要把一颗钉子钉进一块儿木头里
我们都知道最快捷的方法是用锤子这个工具
你不用锤子 用其他的工具
例如用另外一块儿木头来敲钉子
或者直接将钉子对着地面敲都可以完成这项任务
但是完成的质量有高有低
而且工具的使用成本也不一样
如果用木板来敲的话 单次成本最低
但木板容易坏 总需要去找新的木板
用锤子的话需要花钱买锤子 但是不容易坏 可以长期使用
而且完成的质量最好 所以从长期来看 用锤子最合算
同理 开发工具也有质量好坏和成本高低的差异 开发平台不能比喻成桌子 因为桌子也是工具
开发平台应当比喻成钉子 也就是最终成品所使用的原材料
质量好的钉子不容易砸弯
表面刷过油漆的钉子更光滑 更容易钉进木头里
完成的产品更美观 OK~ 不知道我的比喻是否足够清晰……

.net概念(转)的更多相关文章

  1. 如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念

    一.前言     DDD(领域驱动设计)的一些介绍网上资料很多,这里就不继续描述了.自己使用领域驱动设计摸滚打爬也有2年多的时间,出于对知识的总结和分享,也是对自我理解的一个公开检验,介于博客园这个平 ...

  2. 【Machine Learning】机器学习及其基础概念简介

    机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...

  3. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之集群概念介绍(一)

    集群概念介绍(一)) 白宁超 2015年7月16日 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习 ...

  4. 声音分贝的概念,dBSPL.dBm,dBu,dBV,dBFS

    需要做个音频的PPM表,看着一堆的音频术语真是懵了,苦苦在网上扒了几天的文档,终于有了点收获,下面关于声音的分贝做个总结. 分贝 Decibel 分贝(dB)是一个对数单位(logarithmic u ...

  5. js面向对象学习 - 对象概念及创建对象

    原文地址:js面向对象学习笔记 一.对象概念 对象是什么?对象是“无序属性的集合,其属性可以包括基本值,对象或者函数”.也就是一组名值对的无序集合. 对象的特性(不可直接访问),也就是属性包含两种,数 ...

  6. 【Linux大系】Linux的概念与体系

    感谢原作者:Vamei 出处:http://www.cnblogs.com/vamei 我在这一系列文章中阐述Linux的基 本概念.Linux操作系统继承自UNIX.一个操作系统是一套控制和使用计算 ...

  7. KOTLIN开发语言文档(官方文档) -- 2.基本概念

    网页链接:https://kotlinlang.org/docs/reference/basic-types.html 2.   基本概念 2.1.  基本类型 从可以在任何变量处理调用成员函数和属性 ...

  8. .NET面试题系列[5] - 垃圾回收:概念与策略

    面试出现频率:经常出现,但通常不会问的十分深入.通常来说,看完我这篇文章就足够应付面试了.面试时主要考察垃圾回收的基本概念,标记-压缩算法,以及对于微软的垃圾回收模板的理解.知道什么时候需要继承IDi ...

  9. 《徐徐道来话Java》(1):泛型的基本概念

    泛型是一种编程范式(Programming Paradigm),是为了效率和重用性产生的.由Alexander Stepanov(C++标准库主要设计师)和David Musser(伦斯勒理工学院CS ...

  10. 简述linux同步与异步、阻塞与非阻塞概念以及五种IO模型

    1.概念剖析 相信很多从事linux后台开发工作的都接触过同步&异步.阻塞&非阻塞这样的概念,也相信都曾经产生过误解,比如认为同步就是阻塞.异步就是非阻塞,下面我们先剖析下这几个概念分 ...

随机推荐

  1. 手把手教你构建 C 语言编译器

    http://lotabout.me/2015/write-a-C-interpreter-1/

  2. 基于WPF系统框架设计(9)-多值绑定之IMultiValueConverter

    应用场景 我想把View层的一个布局控件和功能按钮传到ViewModel层,达到动态变更布局,同时灵活获取功能按钮的属性,让View和ViewModel完全分离,而不受View层影响. 最后我想到使用 ...

  3. 学习PHP:PHP提取的时间出现不准确

    php函数date("Y-n-d   H-i-s");   输出的时间与当地时间居然相差了8个小时.     原因是从php5.1.0开始,php.ini里加入了date.time ...

  4. Android内存泄露调试

    Android 内存泄漏调试 一.概述 如果我们编写的代码当中有太多的对内存使用不当的地方,难免会使得我们的设备运行缓慢,甚至是死机.为了能够使得 Android 应用程序安全且快速的运行, Andr ...

  5. Struts2 convention插件试用+ Spring+Hibernate SSH整合

    第一步,引入struts2-convention-plugin-2.2.1.jar 然后,改动配置文件. 我是在struts.properties文件里改动的: struts.objectFactor ...

  6. Batch update returned unexpected row count from update [0];

    Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1; nested ...

  7. VueJS事件处理器v-on:事件修饰符&按键修饰符

    事件修饰符 Vue.js 为 v-on 提供了事件修饰符来处理 DOM 事件细节,如:event.preventDefault() 或 event.stopPropagation(). Vue.js通 ...

  8. VM tools安装错误The path &quot;&quot; is not a valid path to the xx generic kernel headers.

    在网上搜索非常多解决方式.并不适用于我的问题,最后通过下面步骤解决: 1. 更新软件源(防止build-essential不能 安装),然后安装build-essential和linu-headers ...

  9. EAI G4-lidar ROS配置

    (1)使用命令创建 ydlidar_ws 工作空间,并将 G4 资料包内的 ROS 驱动包 ydlidar 下载到ydlidar_ws/src 目录下,切换到 ydlidar_ws 工作空间下并重新进 ...

  10. HTML5 2D平台游戏开发#4状态机

    在实现了<HTML5 2D平台游戏开发——角色动作篇之冲刺>之后,我发现随着角色动作的增加,代码中的逻辑判断越来越多,铺天盖地的if() else()语句实在让我捉襟见肘: 这还仅仅是角色 ...