2024年10月8日Java学习内容总结

综述

今天是国庆上班的第一天,总是有种很强的对于工作的期待感,今天也学习到了很多的知识,以下是我的一些总结。

一.关于java开发人员要学习的技术

1.1 java技术基础

知识点1:什么是程序?

把单词按照语法组成句子,然后把句子通过一定的含义组成文章。在计算机中,我们将这种写成的文章称之为程序。

知识点2:java一共有那些版本

JAVA EE

JAVA SE(IDEA就是JAVA开发的)

JAVA ME(目前已经基本上废弃了)

知识点3:Java的重要特点

  1. java语言是面向对象的
  2. java语言是健壮的。java的强类型机制,异常处理,垃圾的自动收集保证了java程序的健壮性。
  3. java语言是跨平台的(依靠java虚拟机)

知识点4:JDK和JRE

JDK是java集成开发工具,JRE是java运行环境。

1.2 java的变量

变量是程序的基本组成单位

变量的数据类型

  • 基本数据类型
    基本数据类型包括数值型,字符型和布尔类型,数值类型包括整型和浮点型。
    整型包括byte short int long
    浮点型包括 float 和 double
  • 引用数值类型
    引用数据类型包括类、接口和数组类型。

1.3 运算符

运算符是一种特殊符号,用以表示数据的运算、赋值和比较

运算符 定义
算术运算符 加减乘除或者自增运算等
赋值运算符 给变量进行赋值的运算符
关系运算符 大于等于小于等比较运算
逻辑运算符 与或非等运算
位运算符 左移、右移等运算
三元运算符 a>b? c:d

1.4 程序控制结构

未完待续... 在后续的每日学习中会进行总结

2 servlet技术

3 Jsp技术

4 Spring技术

5 Spring MVC

6 Spring boot

7 mySQL

8 Redis

9 mybatis

10 RocketMQ

11 Dubbo

12 RuoYi框架

二、关于前端工程师需要学习的技术

1.Html+css技术

2.java Script 技术

3.Vue 技术

三、关于硬件工程师需要学习的技术

1.C语言

2. C++

STM32

四、什么是浏览器内核,有哪些浏览器内核种类?

浏览器的作用是什么?

  1. 浏览器的作用是进行交互,用户与服务器之间数据交互的一个通道。
  2. 渲染:使用JavaScript引擎将后端传输的数据进行实时渲染。

什么是浏览器内核?

浏览器内核是指支持浏览器运行的最核心的程序,分为两个部分,一个是渲染引擎,另一个是JS引擎。渲染引擎在不同的浏览器中也不是都相同的。

360自称自己是双核浏览器,就是指有两个内核

内核的分类 哪些浏览器使用
Trident IE浏览器、猎豹安全浏览器、360极速浏览器、百度浏览器
Gecko firefox 最近几年没落了...
webkit safari 浏览器
Blink Webkit的一个分支,Chrom浏览器必备
类似于汽车的发动机,浏览器的内核就是汽车发动机,也是浏览器最重要的内容,目前国产的内核还是不存在,但是很多的内核是开源的。

五、什么是BS 架构, 什么是CS架构

CS架构是client - server架构。

从一个财务软件的故事开始:

曾经在40年前,当时的工作还是包分配的,那时候我的成绩很好。大部分身边的同学就进入了机关单位,最差的进入了国企。当时我的成绩是班里成绩最好的,自信的我拿着报到证去了报到处,但是由于去的比较晚被分到了一个国企,国企当时只有8个人左右,学习会计出身的我发现大学生并不吃香,因为自己算盘打得比较差,当时的珠算能力要求的非常高。但是随着时间的推移,随着会计的发展,传统的会计很难处理工资财务报表的问题,导致每个月发工资的时候财务都要加班来完成工资计算。于是我开发了第一代的财务软件。

那么此时我开发的软件就是一个单机软件,也就是只有在我一台电脑上能看到的软件。

后来公司采购了一批电脑和财务软件,其他的领导也有了电脑,于是我改进了我的财务软件,除了在自己电脑上可以看到工资的报表情况,其他领导也可以在局域网内看到财务情况。(使用交换机)

那么此时我开发的软件就是一个客户端/服务端的软件,我的电脑是服务端负责提供数据,领导的电脑可以查看数据作为客户端

此时出现了新的问题,一个问题是数据没有办法很及时的刷新,第二个问题是领导出差的话没有办法查看财务数据。此时就出现了第三代软件 浏览器服务端软件 这样每次都会去服务器找最新的数据

5.1 什么是前端,什么是后端

前端也就是客户端开发,简单来说,你可以在应用程序或者网站屏幕可以看到的内容都是前端

后端就是服务器端的开发,在系统后面发生的事情,存储网站、应用数据的服务器交互的都是后端

5.2 什么是静态网页,什么是动态网页?

静态网页是运行在客户端的程序,包括网页,插件,组件等等

动态网页是运行在服务器上的程序,包括动态网页技术,例如PHP ASP JSP等等

其实所有需要从服务器端获取数据的程序都是动态网页部分,否则就是静态网页部分。

六、总结与联想

作为一名程序员,一定要保持仔细和小心。无论是否是程序员,如果对于完成一项工作不仔细,就会导致公司出现很大的失误,最后导致很严重的公司事故。也会导致自己的人生变得完全不一样。

公司里面一定要学会找到公司目前出现的问题,可以解决公司的问题就可以提高自己。

七、作业:BS架构和CS架构的优点和缺点

客户端 / 服务端的软件需要进行安装,桌面级的软件相应速度快,而且可以在本地缓存很多的内容,例如网易云音乐,QQ,微信等等软件,使用的时候感觉非常的迅速,而且有很强的自己的个性化定制。无论是布局还是功能都是可以自己DIY的。

缺点就是第一个频繁地更新,维护成本高很多,一般的CS架构软件都是安装在局域网中。

浏览器 / 服务端的软件,只需要一个浏览器就能运行程序,例如百度,企业的权限管理软件都是一个网站,网站的功能变化不需要用户进行升级,用户的交互也更加容易,BS架构的服务器也可以构建集群。对于开发人员的要求也低很多。

缺点是容易被攻击,因为是开放的广域网中的软件。

八、联想

今天学习了两种软件开发架构,其实在很久之前就一直在提到这个概念。我的简单思考就是

企业级管理使用BS架构就完全够用,只有需要大量客户端计算的(游戏,聊天)这些面向十分大众的软件还需要使用CS架构。

那么到底那一块使用的人多呢?有些人觉得肯定是CS架构用的多,恰恰相反,大部分软件都是用来存储计算数据的,个人使用的只有很少一部分。所以未来的趋势也一定是BS架构。

这也是近些年来java开发如此火热的原因。

九、联系最近的发展方向

其实使用BS架构成为主流之后,限制了很多的软件开发的个性化定制,也就是JAVA真正解决的问题是企业级计算问题,包括财务报表或者人员管理,部门管理。这些不需要展示过于个性化的界面。这个领域已经变成了一种流水线化生产 ,包括小程序等等,所以只要需求足够清晰,普通的程序员可以在很快的速度制作一个接口。

明天开始总结一下集合和MAP(确信)

相关推荐
Py小趴4 分钟前
Python自学之Colormaps指南
开发语言·python·数据可视化
华清远见成都中心8 分钟前
物联网学习路线来啦!
物联网·学习
晒足以百八十9 分钟前
基于Python 和 pyecharts 制作招聘数据可视化分析大屏
开发语言·python·信息可视化
hgy896915 分钟前
Ekman理论回归
学习
像污秽一样17 分钟前
Spring MVC初探
java·spring·mvc
计算机-秋大田18 分钟前
基于微信小程序的乡村研学游平台设计与实现,LW+源码+讲解
java·spring boot·微信小程序·小程序·vue
LuckyLay21 分钟前
Spring学习笔记_36——@RequestMapping
java·spring boot·笔记·spring·mapping
敲代码不忘补水29 分钟前
生成式GPT商品推荐:精准满足用户需求
开发语言·python·gpt·产品运营·产品经理
坚硬果壳_33 分钟前
《硬件架构的艺术》笔记(一):亚稳态
笔记·学习
清风fu杨柳1 小时前
centos7 arm版本编译qt5.6.3详细说明
开发语言·arm开发·qt