java可以作为第一门编程语言学习吗

十年前,Java 还是计算机科学的入门课程中的必学语言。如果你想学其他语言,比如 C、Python、PHP,你就得专门选那个语言的课程,或者选相关的应用。但是现在,Java 不再受大学的青睐。根据国际计算机协会(ACM)的研究发现,截至 2014 年,Python 已经取代 Java 成了主流大学计算机入门课程必学的语言。但这个研究并不全面,因为它只覆盖了最主要的美国大学,而且它代表的只是几年前的一个时间点而已。但是,我依然强烈地感觉到,如果现在对计算机科学的入门课程使用的计算机语言做一次全面调查,那么很可能会发现 Java 并不是最受欢迎的语言。我敢肯定许多学院依然在教 Java,但我也怀疑大多数已经把入门课程改成了其他语言(很可能是 Python)。甚至高中的计算机教学也有同样的现象。

1、Java 是使用最广泛的语言,所以每个人都应该学习它。毕竟,许多专业的程序员每天都在使用 Java。许多重要的应用程序也是用 Java 写的,而且,就算现在所有人都不再写 Java,未来几十年中我们依然需要维护旧的 Java 代码。但是,仅凭最流行的企业语言以及依然会广泛流行几十年这点,并不能说明我们应当总是让学生首先学习 Java。如果你是新入学的计算机科学的学生,希望用简单的办法探索应用程序设计和开发的精髓,那么 Java 并不是好的起点。

2、从语言难易程度来说,Java语言更简单,从学习难度上来说,Java是一个比较容易上手的开发语言。相对于C和C++需要开发者自己管理内存和指针,但是Java开发不需要关心这些底层的东西,从而避免了一些严重的错误。从国内语言的生态来说,Java的开发者非常多,生态比较活跃,在学习过程中遇到一些问题基本都可以在网上博客、社区、相关的论坛找到解决方案。

3、并不是说 Java 不适合教学——它依然有卖点。Java 是跨平台的。它有健康的生态系统和开发工具,包括 Eclipse,能让许多新手程序员的生活变得更加容易。Java 还有易于使用的文档和社区支持,因为太多人都在使用 Java。所以,教 Java 究竟有没有错?这个问题很难回答。但是现在,Java 并不是向学生教授第一门编程语言的最佳选择。在我看来,Python 和 C++ 是更好的选择。

到此这篇关于java可以作为第一门编程语言学习吗的文章就介绍到这了,更多相关java可以作为起步语言吗内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • java可以作为第一门编程语言学习吗

    十年前,Java 还是计算机科学的入门课程中的必学语言.如果你想学其他语言,比如 C.Python.PHP,你就得专门选那个语言的课程,或者选相关的应用.但是现在,Java 不再受大学的青睐.根据国际计算机协会(ACM)的研究发现,截至 2014 年,Python 已经取代 Java 成了主流大学计算机入门课程必学的语言.但这个研究并不全面,因为它只覆盖了最主要的美国大学,而且它代表的只是几年前的一个时间点而已.但是,我依然强烈地感觉到,如果现在对计算机科学的入门课程使用的计算机语言做一次全面调

  • Java基础之spring5新功能学习

    一.前言 1.整个 Spring5 框架的代码基于 Java8 ,运行时兼容 JDK9,许多不建议使用的类和方 法在代码库中删除 2.Spring 5框架自带了通用的日志封装 Spring5 已经移除 Log4jConfigListener,官方建议使用 Log4j2 二.日志配置 jar包 <!-- 日志 --> <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core --> <

  • 学习哪门编程语言最有前途,最好赚钱,需求量高

    回答者卡特·佩基(Carter Page),谷歌(Google)工程经理 我的答案很短,但是由于这是一个需要站队的讨论,所以我先要介绍一些背景. 我聘用过许多软件工程师,他们身上最有价值的技能就是学习并迅速掌握一门编程语言的能力. 几年前,有一家境外公司为我们提供Java程序,他们的质量一直不太稳定.我可以通过翻阅简历来打造一个远程团队,但是我没法和他们进行面试,因为他们不会说英语.不过这种限制倒是带来了一个有趣的实验. 这些程序员的简历看起来很不错,都有着几年的工作经历.但是,他们写的代码依然

  • Bootstrap和Java分页实例第一篇

    关于此文 bootstrap是前端很流行的框架,正在开发的项目,用bootstrap搭建起来的页面,自我感觉很完美,终于告别了苍白无力的白花花的难看的--的页面了.哈哈. 现在遇到了bootstrap的分页与Java后台结合起来的分页封装问题,对于我这个Java菜鸟来说,包装分页还没玩过.故此,在网上找了这个.觉得很不错,所以决定记录到博客里面. 还没有实践,决定写完博客去实践.在上图.祝我成功吧! 此人的博客没找到,代码中有email地址. pagination 定义了分页常用的属性,方法 p

  • Java中的数组基础知识学习教程

    数字 通常情况下,当我们处理数字时,使用原始数据类型,如 byte,int,long,double 等. 示例 int i = 5000; float gpa = 13.65; byte mask = 0xaf; 然而,在开发中,我们会遇到需要使用对象而不是原始数据类型的情况.为了实现这个, Java 为每个原始数据类型提供包装类. 所有的包装类 (Integer, Long, Byte, Double, Float, Short) 是抽象类 Number 的子类. 这种包装是由编译器处理,这个

  • JAVA Stack详细介绍和示例学习

    第1部分 Stack介绍Stack是栈.它的特性是:先进后出(FILO, First In Last Out).java工具包中的Stack是继承于Vector(矢量队列)的,由于Vector是通过数组实现的,这就意味着,Stack也是通过数组实现的,而非链表.当然,我们也可以将LinkedList当作栈来使用! Stack的继承关系Stack和Collection的关系如下图:Stack的构造函数Stack只有一个默认构造函数,如下: 复制代码 代码如下: Stack() Stack的API

  • [Java]详解Socket和ServerSocket学习笔记

    对于即时类应用或者即时类的游戏,HTTP协议很多时候无法满足于我们的需求.这会,Socket对于我们来说就非常实用了.下面是本次学习的笔记.主要分异常类型.交互原理.Socket.ServerSocket.多线程这几个方面阐述. 异常类型 在了解Socket的内容之前,先要了解一下涉及到的一些异常类型.以下四种类型都是继承于IOException,所以很多之后直接弹出IOException即可. UnkownHostException:   主机名字或IP错误 ConnectException:

  • Java如何替换第一个和最后一个字符串

    Java替换第一个和最后一个字符串 1.测试类 package com.jeff.json; import com.alibaba.fastjson.JSONObject; public class JsonDemo1 { public static void main(String[] args) { String ret = "\"{\"success\":true,\"msg\":\"success\",\"d

  • Java并发中的ABA问题学习与解决方案

    目录 1.简介 2.Compare and swap 3. ABA问题 3.1 ABA问题的实际场景:账户余额修改 3.2 账户余额修改时产生的问题 4.银行取款问题代码演示 5.值类型与引用类型的场景 6. 解决方法 7. Java中的解决方法 8. 总结 1.简介 我们将了解在并发编程中的ABA问题.同时学习引起该问题的根因及问题解决办法. 2.Compare and swap 为了理解根本原因,首先回顾一下Compare and swap的概念.Compare and Swap (CAS)

  • java 静态代理 动态代理深入学习

    一.代理模式 代理模式是常用的java设计模式,特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转发给委托类,以及事后处理消息等. 代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务. 按照代理的创建时期,代理类可以分为两种: 静态代理:由程序员创建或特定工具自动生成源代码再对其编译.在程序运行前代理类的.class文件就已经存在了. 动态代理:在

随机推荐