首页 > 编程语言 >2023.8 Java与Python

2023.8 Java与Python

时间:2023-02-25 16:25:09浏览次数:43  
标签:范式 编程语言 Python 编程 面向对象 Java 2023.8

Java与Python都一直在各种流行编程语言中名列前茅,也有很多相似之处。作为技术人员,我们不能把自己局限在某一项技术或编程语言中,而应该能针对具体场景快速选择适合的技术解决问题。过去工作中用Java居多,但在做一些小工具应用时也会用Python,因为它更方便快捷,比如最近有个项目让同事统计日志文件中的延时情况,他就用Python快速的实现了一个。 Java和Python都是开源语言,可以自由阅读源代码,都有很好的可读性和扩展性,都是跨平台语言,都有丰富的类库和生态。Java主要用在企业级Web应用开发,移动应用及大数据开发等场景,而Python主要应用在自动化测试、运维、数学计算、机器学习与人工智能等场景。目前国内Java招聘岗位需求更多,相对薪资更高点,不过随着人工智能的火热,Python也越来越流行,很多学习编程教学也优先教Python。
Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言,由 Guido van Rossum 于 1980 年代后期开始研究,1991 年发布了 0.9.0 版本。 Python 2 和 Python 3,分别于 2000 年和 2008 年发布,其中 Python 3 并不向后兼容,即 Python 3 并不兼容 Python 2 的代码。Python是多范型编程语言,它完全支持结构化编程和面向对象编程,还有很多特征支持函数式编程和元编程比如元对象协议。通过扩展还可以支持很多范型,包括面向切面编程、契约式设计和逻辑编程。Python的设计理念是“优雅”、“明确”、“简单”,它的一些重要准被合称为“Python之禅”。

Java 1.0 于 1996 年发布,目前常用的版本为 Java SE 8,Java SE 11 和 Java SE 17。Java 的向后兼容性非常好,多数的 JRE 都具备向后兼容的能力,但也因此,Java 背上了沉重的历史包袱。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。 Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。

学习一门编程语言,习惯从 Hello World 开始,Python 几乎是所有编程语言中最简洁的,仅需要一行代码:

print("hello world!")
 

而相对而言,Java 就显得略显繁琐:

public class demo{
    public static void main(String[] args){
        System.out.println("hello world!");
    }
}
 

当然,考虑到 JVM 语言并不是只有 Java,有不少 JVM 语言都对 Java 进行了优化。

例如 Kotlin:

fun main(args: Array<String>){
    println("hello world!")
}
     

相对于 Java,Kotlin 的语法显得格外简洁。Kotlin 可以省略行尾的分号,同时 main 函数可以单独出现,而不必在某个类中。

例如 Groovy:

println("Hello World")
 

Groovy 的 Hello world 相比前两者的简洁程度则更进一步,不仅不需要存在于某个类中,连 main 函数都可省略。

 

Robert Floyd 在 1979 年图灵奖的颁奖演说中使用了编程范式一词。简单来说,编程范式是程序员看待程序应该具有的观点,代表了程序设计者认为程序应该如何被构建和执行的看法。常见的编程范式有:命令式、声明式、过程式、面向对象、函数式、泛型编程等。

  • 命令式:用语句更改程序的状态的编程范式。
  • 声明式:它指定程序应该做什么,而不具体说明怎么做。例如 SQL 和正则。
  • 面向对象:关键词为 封装 抽象 继承 多态

一些编程语言是专门为某种特定范式设计的,例如 C 语言是过程式编程语言,Java 是较纯粹的面向对象编程语言,Java 8 开始引入了 Stream,提供了函数式编程的能力。 Python 的编程语法较为自由,既支持过程式编程,也支持面向对象等范式。

       

标签:范式,编程语言,Python,编程,面向对象,Java,2023.8
From: https://www.cnblogs.com/doit8791/p/17154669.html

相关文章

  • javascript
    JavaScriptjs嵌入001-方式一<!doctypehtml><html> <head> <title>HTML中嵌入JS代码的第一种方式</title> </head> <body> <!-- 1、要实现的功能: ......
  • Python 部署私有 pip 库
    Python部署私有pip库本教程使用的是pypiserver这个Python包,其文档见:https://pypi.org/project/pypiserver/,Github地址:https://github.com/pypiserver/pypiserver......
  • Java内存区域与内存溢出异常
    一、Java内存区域1、运行时数据区JDK1.8之前JDK1.8之后2、程序计数器一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器由于Java虚拟机的多线程......
  • java Vector
    publicstaticvoidmain(String[]args){Vectorv=newVector();//增v.addElement(111);v.addElement(222);v.addElem......
  • java——spring boot集成RabbitMQ——spring boot实现路由模式——消费者
    pom文件:<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc......
  • java——spring boot集成RabbitMQ——spring boot实现路由模式——生产者
    pom文件:<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc......
  • Java学习笔记----注解
    三个基本的注解@Override:限定重写父类方法,该注解只能用于方法@Deprecated:用于表示所修饰的元素(类,方法等)已过时@SuppressWarning:抑制编译器警告自定义注解public@i......
  • Python学习笔记(五)if分支语句
    一、if语法示例:1money=int(input('请输入余额:'))2ifmoney>=5:3print('买得起!')45ifTrue:6print('条件成立时要执行的代码1')7print('条......
  • JAVA-
                         ......
  • JAVA学习笔记10-注解
    目录什么是注解内置注解元注解什么是注解Annotation是JDK5.0引入的新技术作用:不是程序本身,可以对程序做出解释就像注释一样;可以被其他程序(比如编译器)读取格式:注解是以......