学习编程,Java Python 之类的编程语言该如何选择?

Posted 黑马程序员官方

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习编程,Java Python 之类的编程语言该如何选择?相关的知识,希望对你有一定的参考价值。

介于小白要学编程,都会纠结语言的难易程度、应用方向,这篇文章就给大家介绍清楚。

一、Java

难易程度:⭐⭐⭐⭐

比C/C++相对来说容易,比Python要难。就是这样一个学习曲线,入门挺简单的。难的在于各种各样的框架,怎么使用、整合、最后项目怎么完成。

实际上自学Java可能会是这样的:

第一个代码:

public class HelloWorld 

	public static void main(String[] args) 
		//main方法是一个程序的主入口 是不可缺少的
		// TODO 自动生成的方法存根
		System.out.println("HelloWorld");
		//输出语句 “”(引号为英文半角引号)里的为字符串
		//输出语句即引号里面的字符串

	

Java的就业方向

  • 1、企业级应用开发企业级应用开发大可以做全国联网的系统,小到中小企业的应用解决方案。多数没有前端开发的通常是从一个服务器接收数据,处理后发给另一个处理系统。
  • 2、网站开发:比如说京东商城、淘宝。
  • 3、软件开发:例如Eclipse,MyEclipse,IneteliJIdea和Netbans IDE等知名Java开发工具。
  • 4、嵌入式领域:Java因其具有的诸多优点受到了嵌入式领域的青睐,并得到了大量的研究与开发应用。
  • 5、大数据:Java大数据的应用领域非常的广泛,可以简单分为几类:基础大数据服务平台,大中型的商业应用包括我们常说的企业级应用、各种类型的网站等。
  • 6、科学应用:Java的安全性、便携性让Java在科学应用、金融服务、空间巨大。

不管编程语言排行榜怎么变,Java在国内依旧是市场需求量最大的语言。大家可以打开招聘软件搜索下看看,是不是Java开放的岗位最多。

Java如何入门

  • 入门:Java SE基础-->Java Web(含数据库+H5+js+vue)
  • 中级:Maven-->Git-->SSM框架 -->MybatisPlus-->Spring Boot-->传智健康项目实战
  • 进阶:Spring Cloud(微服务开发,学这一套就够了) 也可分技术点学: (Dubbo-->Zookeeper-->RabbitMQ-->RocketMQ-->Docker-->Redis -->MongoDB-->搜索技术Elasticsearch-->mysql进阶)
  • 项目:SaaSiHRM【企业服务】-->好客租房【生活服务】-->万信金融【金融行业】-->闪聚支付【聚合支付】-->权限管理一体化解决方案-->短信网关平台
  • 以上技术,足以支撑找一份好的java开发工作。

如想工作后再提升,页面底部还有30+套,工作后再学习提升的技术:

【JDK8-15新特性】【编程强化】【数据库强化】【安全框架SpringSecurity】【报表技术】【模板引擎VelocityTools】【工作流Activiti7】…完整线路图看这里

黑马程序员:黑马程序员2022年Java学习路线图200 赞同 · 38 评论文章正在上传…重新上传取消https://zhuanlan.zhihu.com/p/451278356

全套Java学习的笔记在这里

大四应届生学习Java开发,是进培训班还是自学好?4 赞同 · 0 评论回答https://www.zhihu.com/question/518135556/answer/2675851381

二、Python

难易程度:⭐⭐⭐

简单也是相对的,但是Python成为了很多中学生的必修课,所以真的难不倒哪里去。学编程肯定都是从基础开始学,Python语法非常简洁,所以入门简单。看看第一个代码,和前面两个的差距吧:

print("hello world!")

代码就能直接看出来Python的简易程度了吧。

Python的就业方向

web开发:Python是Web开发的主流语言,与JS、php等广泛使用的语言相比,Python的类库丰富、使用方便,能够为一个需求提供多种方案;此外Python支持最新的XML技术,具有强大的数据处理能力,因此Python在Web开发中占有一席之地。Python为Web开发领域提供的框架有Django、Flask、Tormado、web2py等。

科学计算:Python 提供了支持多维数组运算与矩阵运算的模块numpy、支持高级科学计算的模块Scipy、支持2D绘图功能的模块matplotlib,又具有简单易特点,因此被科学家用于编写科学计算程序

游戏开发:很多游戏开发者先利用Python或Lua编写游戏的逻辑代码,使用C++编写图形显示等对性能要求较高的模块。Python标准库提供了pygame模块,利用这个模块可以制作2D游戏。

自动化测试/运维:Python又是一种脚本语言,Python标准库又提供了一些能够调用系统功能的库,因此Python常被用于编写脚本程序,以控制系统,实现自动化测试/运维。

多媒体应用:Python 提供了PIL、Piddle、ReportLab等模块,利用这些模块可以处理图像、声音、视频、动画等,并动态生成统计分析图表;Python的PyOpenGL模块封装了OpenGL应用程序编程接口,提供了二维和三维图像的处理功能。

爬虫开发:爬虫程序通过自动化程序有针对性地爬取网络数据,提取可用资源。Python拥有良好的网络支持,具备相对完善的数据分析与数据处理库,又兼具灵活简洁的特点,因此被广泛应用于爬虫领域之中。

当然还有人工智能相关领域,大家要知道的是不同方向的Python学习重点不一样!!

Python入门教程:

知乎学习版块547集的Python入门教程,可以让你的Python基础非常扎实。

Python 入门教程完整版(全 547 集) - 1. ubuntu 基本安装​www.zhihu.com/education/video-course/1483111485588742145正在上传…重新上传取消https://www.zhihu.com/education/video-course/1483111485588742145

Python学习的简易步骤:找到目标 —> 了解Python —> 知道变量/算法/解释器 —> 数据类型 —> 列表和元祖 —> 字符串 —> 字典 —> 循环 —> 面向对象 —> 项目实战;

Python从变量到数据类型 / 输出格式大全!代码都可复制 基础学习输入 /转换数据类型的函数 / 算数、赋值、复合赋值、比较、逻辑运算符 条件语句边学边练,习题均有答案 / while的语法和应用 /while循环嵌套以及练习题 字符串 / Python列表的常用操作 / 元祖 / 集合 / 公共操作 推导式学习 / 函数 / 函数 / 文件的基本操作汇总(上) / 基本操作汇总(下) 面向对象基础篇 / 面向对象之魔法方法 / 面向对象实际案例:烤地瓜和搬家具 继承 / 面向对象的三大特征 / 异常学习 / 模块 /  / 面向对象版学员管理系统

内容知识点
计算机组成原理计算机组成部分、操作系统分类、B/S和C/S架构、理解软件与硬件的区别
Python变量以及开发环境字符串、数字、字典、列表、元祖等
流程控制语句程序的执行顺序,顺序执行、循环执行、选择执行
函数定义函数、调用函数、函数的嵌套、递归函数
文件的基本操作文件的打开、编辑、关闭
面向对象编程类对象、实例对象、定义类、实例化对象
异常处理学会捕捉异常、自定义异常
模块和包理解模块和包的概念并学会使用
飞机大战游戏制作自己独立完成飞机大战游戏

在前面一共是有两套相关的路线图,大家作为学习参考。每一套打开之后都是有完整的课程:

黑马程序员Python:2022年Python+大数据学习路线图20 赞同 · 1 评论文章正在上传…重新上传取消https://zhuanlan.zhihu.com/p/450898507

推荐一个人工智能学习路线图?3 赞同 · 2 评论回答https://www.zhihu.com/question/327809761/answer/2313592372

三、非常重要的建议

  • 程序是什么?— 计算机组成原理
  • 程序怎么被翻译?— 编译原理
  • 程序怎么执行?— 操作系统的范畴
  • 怎么利用别人的成果来实现更好的数据组织?— 数据库相关
  • 怎么保证程序更容易维护和可读?— 这是设计模式和代码规范

以实际工作经验告诉大家,每一个新的项目的时候,大部分的开发都需要学新语言。或者是挡行业的改变,也需要接受新的内容。比如苹果应用之前由Objective-C主导的OS中添加了Swift的支持,谷歌在Andriod中添加了Kotlin的原生支持。

以上观点要表达的就是!想要学编程,不要纠结于语言,知道方向找到兴趣,行动起来最重要!

以上是关于学习编程,Java Python 之类的编程语言该如何选择?的主要内容,如果未能解决你的问题,请参考以下文章

java之类和对象

python学习的进阶?基本知识掌握后,该怎么学习?

JavaSE之类与对象

Python面向对象编程之类成员

Python基础之类与模块化

python死磕三之类与对象