首页 > 编程语言 >秦疆的Java课程笔记:01-04 前言

秦疆的Java课程笔记:01-04 前言

时间:2023-11-01 13:57:14浏览次数:31  
标签:为什么 01 Java 04 编程语言 Python 学习 语言

01 前言 聊聊Java这条路

学习一门语言可能并不是大家想的这么容易。
比如说大家从小就学英语,为什么有的人英语到后面还是不好呢?那计算机语言跟人类的语言还不一样,它多了更多的理性跟思维。咱们人类去学习还是比较友好的。

解决疑惑:

  • 零基础可与学Java吗?
    能,都是从零开始的。
    有基础反而可能思维固化,白纸一张更好学。

  • 英语不好能学吗?
    能,程序没那么多英文,多用就掌握了。
    深入学习过程中会自发学习英语。

  • 理解慢能学好吗?
    需要一定理解能力,但持续学习更重要,勤能补拙。

  • 现在学Java晚吗?
    编程语言各有优劣,Java很长一段时间都将是主流编程语言,不愁没有用武之地。
    Java生态非常成熟。


02 前言 Java和Python的抉择

我认为编程语言只有两种:
第一个是Java跟C这一个体系。
第二个就是其他。

我们必须要明白 Java跟Python它各自的定位。
Java源自C、C++体系的,在1995年推出,专门给程序员设计一些大型的分布式复杂应用而设计的。
Python在1991年就推出了,它比Java还早,主要是面向于系统管理、科研、教育等非程序员群体

不知道从什么时候开始就网上出来这样一种说法:
人生苦短,我用Python。
Python的上手的确要快一点,但仅此而已。解决一些复杂性的问题,它就没有人会去考虑到底用哪门语言上,而是去解决这个问题的具体的算法思路上。

Python的简单原因只是因为在使用Python的时候,尽可能要调用别人给我们写好的代码接口而已,就是把别人的库拿过来用。
而Java处理很多问题相对更原生态一点,那C++是不是就更原生态了?
我们书写的代码可能要稍微多一点,但是假设我们如果Java也能够完成一些封装,让别人去调用,这时候呢就很难说谁更简单了。
而这个封装的过程才是编程中最重要的一部分,如果这一部分你们都不愿意去参与学习,也就不知道这个东西的实现原理。

一个高级程序员一定不是写写简单的应用而已。
比如说Java的源代码,我们在学习过程中叫不断的去挖掘,去剖析它为什么这么写,里面涉及到的数据结构,它是怎么样产生的,我们一定要知道这些封装和代码以及接口,它是如何实现的,这些细节到底怎么来的,你才能够进步。

所以说请不要再去纠结了,如果你把Java作为你的人生第一门学习的语言,那么你只需要花极短的时间在未来就可以学会JavaScript、PHP、Python等等。
如果你未来要立即成为一个专业的程序员,我建议你先学Java,或者C++也行,这两者在原理上是十分相像的,这才是给程序员的专属语言,是有门槛的,才能够建立自己的竞争力。

如果你只是想玩一玩,感受一下或者是把编程语言当做工作中的一个工具而已。那Python就是你的不二选择。
这是面向学习给大家的一些建议,如果是在真实企业中做项目,那就不要纠结了。项目需要什么,需要学,也不要那么多理由,干就是真理。
那锤子好用还是榔头好用?Java好用还是Python好用?
你为什么非要二选一嘛?
搞程序的不要太浮躁,通吃他们不就完了,你就再也不会纠结了。
这才是一个技术人员该有的状态,纠结是个坏毛病。


03 前言 学习方法和课程概述

首先最早出现的是像C这样的语言。
C系列的语言奠定了现在编程语言的基础,汇编、二进制写指令。
从高级语言开始,C语言需要去管理一些底层的东西。
比如说内存管理,还有一些指针。每次写完代码要去管理一下电脑的内存该怎么去释放,这就是非常麻烦的。写了一个构造函数,还要来一个虚构函数,这就不爽了。

那为什么要学Java呢?为什么Java出来?Java火了呢?
Java几乎摒弃C、C++语言容易导致犯错的地方,比如说指针、内存管理。
之后可以跟大家聊一聊Java帝国是如何诞生的,一个很有趣的故事,里面会给大家细细的讲解到底什么是Java。

  • Java能干什么?
    手机应用开发。
    游戏开发。
    大数据分析平台。(Hadoop)

  • Java需要学习哪些东西?
    JavaSE 18-20天
    数据库 4天
    前端 7天
    JavaWeb 7天
    SSM框架 9天
    Linux 7天
    SpringBoot 8天
    SpringCloud 7天
    Hadoop 8天

  • 三个写
    首先多写代码。一门编程语言。如果你不去写的话几乎就是废了,相当于不会了。
    第二个是多写笔记,体系非常庞大,一定要去做笔记,忘记了还能看看笔记。
    第三个可以多写一些文章,可以去锻炼大家的一个文档编辑能力。

  • 三个练
    首先要练习交流,多跟别人交流。
    第二个要练习思维。
    编程里面有很多固有的思维,包括咱们的一些设计模式都是一些传统的思想把它集中起来,变成了一些传统的模式。
    除了编写代码的思维,还有面向对象的一个思维,叫做oop思想。
    第三个要多练技能,一个一个的技能站,每一个站里面还有一些相应的东西,这就是你要跟常人去比较,把别人甩开的东西。这些技能就是要慢慢练的。

  • 三个建议
    第一个多去分享知识,把你学的东西写成一篇文章,或者把一些错误总结起来,可以让别人再看到
    第二个多提问(怎么了)。就是因为写程序经常会出Bug,程序跑不起来,这就意味着一些东西你就要去提高,你就会想着如何去解决它。
    第三个多思考(为什么)。比如最开始思考的就是我为什么要学Java?再往里面学,我为什么要去用这个关键字?再往里面学,
    我为什么要用这个方法?再往下学,为什么这个东西就能这样实现了?随着这样一步一步的深入,就能够把它掌握的很好。

没有坚持一切白搭。


04 前言 关于教育和对大家的期望

就业前景
为什么很多IT公司不喜欢进过培训机构的人?
对大家的期望
(略)

标签:为什么,01,Java,04,编程语言,Python,学习,语言
From: https://www.cnblogs.com/Acolyte/p/17802923.html

相关文章

  • java使用ImageIO读取CMYK图片转存为RGB图片在本地和线上表现不同的问题
    项目里有jpg图片是CMYK颜色模式,需要转成RGB颜色模式,我使用的方法简单粗暴,就是利用ImageIO转存一下,在我的本地正常。但是丢到服务器上就有问题了,色差很大。不知道是什么情况。`BufferedImageimg=ImageIO.read(src);ImageIO.write(img,"jpeg",dest);`本......
  • 2023年11月Java面试常见问题
    1.jvm内存模型https://baijiahao.baidu.com/s?id=1709435405507347362&wfr=spider&for=pchttps://baijiahao.baidu.com/s?id=1722629637623477825&wfr=spider&for=pc2.GCROOT都包含什么https://worktile.com/kb/p/37469https://blog.csdn.net/jjclove/article/deta......
  • Java学习之路(三)
    Java学习之路(三)1、数组定义:数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。1.1、数组定义的格式1、数据类型[]数组名2、数据类型数组名[]int[]arr;intarr[];double[]arr;doublearr[];char[]arr;chararr[];1.2、动态初始......
  • 登录报错后,状态码是401并弹出登录框
    前后端分离的项目,登录失败后会弹出一个非前端页面登录框。这是因为登录失败,返回的响应表头里添加了WWW-Authenticate属性WWW-Authenticate:Basicrealm="oauth2/client"Basic认证失败时,接口返回的httpstatuscode=401时,大部分浏览器收到此响应头,会弹出下图的认证窗口来辅助用户......
  • Java后台微信点餐小程序2023年最新版笔记Springboot+Mysql+Freemarker+Bootstrap
    由于之前的Java后台微信点餐小程序有些知识点过时了,所以今天重新出一版,把里面过时的知识点更新下第一章,技术选型(重要)在开始学习之前,要记得安装jdk8和mysql8,后面的笔记里也会具体讲解怎么安装,但是jdk8和mysql8必须和石头哥保持一致。1,后台技术选型:JDK8(必须保持一致)Mysql8(必......
  • Idea编译/运行Java程序慢
    修改前:修改后:参考:https://www.jjput.com/archives/macbookpro14m1mavenslowcompilation问题JDK尽量不要换版本classlombok.javac.apt.LombokProcessor(inunnamedmodule@0x267d00eb)cannotaccessclasscom.sun.tools.javac.processing.JavacProcessingEnvi......
  • SQL Server 2012 的优化设置,以下是一些常见的建议和配置选项
    对于SQLServer2012的优化设置,以下是一些常见的建议和配置选项:内存设置:最大内存限制(MaxServerMemory):根据服务器的可用内存和其他应用程序的需求,设置SQLServer实例可以使用的最大内存量。这可以通过SQLServerManagementStudio(SSMS)或sp_configure命令进行配置。......
  • 配置 SQL Server 2012 的安全性时,可以考虑以下几个方面
    在配置SQLServer2012的安全性时,可以考虑以下几个方面:访问控制:限制对SQLServer实例和数据库的访问权限,只允许授权的用户或角色访问。可以通过创建登录账户、分配角色和权限来管理访问控制。强密码策略:确保所有用户账户都使用强密码,并设置密码过期策略,要求用户定期更改密码......
  • Java语言基础知识梳理与总结
    导语:Java作为一门广泛应用于软件开发领域的编程语言,具备强大的功能和灵活性。本篇博客将对Java语言的基础知识进行梳理与总结,包括标识符、运算符、流程控制、循环结构、分支结构、数组、方法、类与对象等相关知识点,帮助读者快速掌握Java基础。目录:1.标识符2.运算符3.流程控制......
  • 详解Java ArrayList
    ArrayList简介ArrayList是List接口的实现类,底层基于数组实现,容量可根据需要动态增加,相当于动态数组。ArrayList继承于AbstractList,并且还实现了Cloneable、Serializable、RandomAccess接口。List:表明是列表数据结构,可以通过下标对元素进行添加删除或查找。Serializable:表示可......