为什么学Java语言
古有编程圣经《21天学通C语言》人手一本,昨有 "人生苦短,我用Python",今有Golang带领程序猿走进新时代...编程语言千千万,作为励志要成为程序猿的我们,要独爱哪一门呢?
学生时代的我也曾为学什么语言犯过愁:我嫌弃C语言的太过暴露,讨厌C++的啰里八嗦,嘲笑Python的没有内涵,更不屑于C#的拿来主义...谁叫咱也是个讲究人。或许是冥冥之中吧,14年那时候(暴露年龄了)智能手机刚兴起,安卓APP开发迅速引爆了互联网,我也随大流,稀里糊涂地买了一本李刚老师的《疯狂Android讲义》来学,从此便一发不可收拾地喜欢上了安卓APP的编程语言——Java。虽然工作已有快4年之久,但时至今日,我依然觉得Java是最适合初学者、性价比最高的语言!
学习Java的四大理由
"Java好在哪"、"Java能养活自己吗"、"Java能吃吗"...一百位程序猿眼中有一百种Java,我只能分享我眼中的这种Java:外貌嘛,看起来是个 "全能选手",偶尔也是个 "文艺青年",内在嘛,藏着两套隐藏绝招 "一劳多逸法" 和 "取之不尽术"。
1 全能选手
我们身处这个物欲横流的时代,"情怀" 已经变得不堪一击,我们往往倾向先解决温饱,再谈阳春白雪。我想如果了解了 "全能选手" Java的前世今生,应该是带你走上致富道路最快的途径吧。学会了Java,可以说下面三种岗位你都能胜任了:Java服务器端研发、Android客户端研发及大数据研发,目前这三个方向的岗位需求非常大,且薪资也很可观。还有一点也值得注意,就是Java语言和C#语言非常相似,而C#目前是主流游戏引擎Unity3D的编程语言,那这就意味着,你将来还可以选择游戏客户端开发岗位啦!
2 文艺青年
《百度百科》对文艺青年的定义是:喜欢文化艺术的青年人。我觉得这个称呼用在Java 身上正好合适。一方面是它的基本语法可读性很强,比如一些关键字都是直接英文单词表示,而很少使用符号,这对新手就非常友好了,因为新手编程的心态一般是 "宁愿多打几个字也一定要看得懂",不然很容易半途而废。另一方面,它是纯面向对象的语言,对象之间通过消息交流,仿佛读小说里的对话一般舒适。
比如同样是要编程实现一个场景:一个班级有张三、李四、王五、王六四位同学,老师要把姓王的同学都挑出来",用Java语言写是这样的: //Java List students = List.of("张三", "李四", "王五", "王六"); students = students.stream().filter(student -> student.startsWith("王")).toList(); System.out.println(students);
可以看出,Java的写法非常干净利落,先是 List.of 创建这四位同学构成的列表students,再对他们进行过滤,过滤出那些姓名以 "王" 开头的学生,最后 toList 表明转变成一个新的列表,最后是把过滤出的学生显示在屏幕上。而如果我们用Golang语言去写,则显得比较冗长和原始:// Golang students := []string{"张三", "李四", "王五", "王六"} studentsWang := make([]string, 0) for _, student := range students { if strings.HasPrefix(student, "王") { studentsWang = append(studentsWang, student) } } println(students)
我相信在我们初学编程之际,代码看起来舒服是第一重要的,否则很难有继续学习下去的兴趣。
3 一劳多逸法
我们最怕的就是,好不容易学会了一门编程语言,结果当要学习下一门科目时(比如面向对象、设计模式、软件工程、UML建模等),发现书上用的语言我们竟然不会!或者提到的一些概念我们压根没听过...这时Java的优越性就体现出来了,它除了具备编程语言的所有要素以外,又有纯正的面向对象思想,而很多计算机和软件知识都是以Java为基础语言展开讲述的。总之,学会了Java,很多科目基本就不会有阅读障碍了,这样你也就可以放放心心地去学习那个科目本身的内容了。
4 取之不尽术
无论是做学校项目、工作项目还是外包项目,我们经常需要用到一些通用组件,比如操作数据库的组件、与浏览器进行网络通信的组件、读写Excel表格的组件等,如果我们自己从零开始去写,会非常麻烦,而且最后写出来运行效率可能还很慢,这时,我们就需要站在巨人的肩膀上啦——使用前人写好的Java组件!前人已经把组件底层的代码实现好了(而且又快又好!),当我们要使用的时候,只需要引入这个组件,然后写几行代码,调用一下他的组件就行!
组件调用
上面说的那些组件其实面儿都很小,Java的生态圈远不止这些,更重要的是在分布式系统基础设施这块,任何有点体量的上层系统或软件(比如淘宝、抖音分别是两个上层系统),都需要底层有强大的基础服务设施作为支撑,这样才能维持他们长久稳定地运行,常见的基础服务设施有:服务发现与注册、配置中心、消息总线、负载均衡、断路器、数据监控等。
但对于一个初出茅庐的中小型公司而言,光开发自己系统本身的功能都还忙不过来呢,哪有功夫(也往往没有实力)去开发上面的基础服务设施。这时,Java生态里的大主角出场了——Spring Cloud。
Spring Cloud 生态
Spring Cloud将一些公司开发得比较成熟、经得起考验服务框架集合起来,通过Spring Boot风格进行统一化包装,屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。我们再也不用东拼西凑地去篡一套基础服务设施啦!Spring Cloud真的是我们的福音!
这一节冒出的术语可能稍微有点多,有听不懂的很正常,也不必担心,下面我都会逐一为大家解释的,先有一个感性的认识最重要!知道了Java的厉害和前途,我们就有信心往下走了,等到后面,你自然就理解这些术语了~
该如何开始
师父领进门,修行在个人。学习终究还是要靠自驱,特别是计算机的学习,如果你还希望同步读一本书的话,这里我推荐两本Java的入门书籍,可以选一本看~ 他们分别是《Java核心技术》与《Head First Java》,前者是文字较多的学院派风格,后者是带有情景的寓教于乐风格,两本都非常不错,很适合入门食用。
JAVA核心技术 卷1
Head First Java
如果没有时间买来看也没关系,大家不用着急,下一章我马上会讲如何搭建一个Java的开发环境,编写一份简单的代码,运行我们的Java程序~
题外话
要您觉得这篇文章对您有用的话,欢迎 点赞和评论, 也欢迎关注我的 微信公众号——躺着学编程~ 我会持续更新的~
福州西湖第59届菊花展开始了福州西湖第59届的菊花展于开始了,由于新冠疫情防控的需要,福州西湖公园从10月27日至11月17日进行闭园管理。这期间正是每年菊花展的大好时机,公园开放后,凭核酸检测72小时有效期
黄梅戏发源地!湖北投资33亿元打造的东山问梅村,感受非遗魅力在我心里,湖北黄冈是一座值得再去的城市。历史厚重,美食众多,旅途惊喜连连。这座中国历史文化名城,位于楚头吴尾和鄂豫皖赣四省交界,与省会武汉,山水相连。那是我第一次去黄冈旅行,必打卡
平遥三寺多次去山西自由行,第四次到平遥古城,用套票把古城内的22个景区走了两遍。前两次还惦记着古城外的三寺,这趟也住古城内的民宿,第二天一早打车出城。第一站镇国寺,建于五代北汉天会七年(9
昔日水窝子今朝聚宝盆!沧桑巨变数崇湖崇湖湿地风光旖旎。(通讯员谷少海摄)湖北日报全媒记者汪训前通讯员赵辉田海涛水乡公安县,崇湖让人流连忘返。金秋时节,湖北日报全媒记者从公安县城斗湖堤出发,往东南方向约摸15公里后,便
让人想要一来再来的古街(127)傍晚,我还在吾斯塘博依街溜达,这是一条千年古街。茶馆里还有维吾尔族的乐手,弹奏着冬不拉,客人们一碗接着一碗喝茶,这是当地人自在怡然的午后。还有抛绣球招亲的节目,打扮得花枝招展的西域
从追逐光到成为光,复盘晨光股份传统主业护城河是怎样构筑的?(报告出品方分析师长江证券蔡方羿仲敏)前言核心零售业务为立身之本伴随科力普等新业务拓展,晨光传统核心业务收入比重呈下降趋势,但依旧贡献主要利润此外,过去一年因传统核心业务收入增长降
传统中式亭榭越来越没落,现代庭院中很难再见其身影随着现代新材料和新工艺的普及,传统中式亭榭以及逐渐被充满现代气息的钢构亭榭所取代,在现代庭院中已经很难再见其身影,变得越来越没落!传统中式亭榭不好吗?当然很好,它们浓缩了传统中式园
河南省书协罗玉森笔秃千管墨磨万锭罗玉森,网名长借白云。自幼爱好书法文学,现为中国楹联学会会员,河南省书法家协会会员,河南省楹联学会会员,辉县市书法家协会会员。写有诗词40余首,长篇小说两部上古记忆孔子画像60余万
上海文旅场所要求持48小时核酸阴性证明,这些景点已出细则11月26日,上海各文旅场所发布公告根据上海市关于调整本市文旅场所疫情防控管理措施的通知,自11月26日起,预约参观观众须持有48小时内核酸检测阴性证明,不得以24小时内核酸采样证
或许你有过约会,约饭,但你约管了吗?疫将近三年了,人们正常的生产生活受到很大影响,,以前人们没事的时候都会有约会,约饭,约游(一起旅游)甚至各式各样约局,而今由于疫情防控要求,各种约大大减少,但却出现了一个新的约约管
云南孟连边陲小城的牛油果逆袭本报记者李立上海报道与缅甸毗邻的边陲小城孟连,正在立志成为中国乃至亚洲的牛油果之都。这不是墨西哥牛油果,是云南普洱孟连的在小红书上,超过151万篇笔记与牛油果有关,相当一部分来自孟