markdown如何画流程图
随着时代的发展,深入学习算法是否成为程序员的刚需(就和学英语一样)?
随着时代的发展,深入学习算法是否成为程序员的刚需(就和学英语一样)?
写在前面:
其实学习是一件很私人的事情,每个人都应该有一套自己的学习方式,而不是照搬照抄别人的。适合别人的不一定适合自己。所以,读这篇分享的时候,请以一种这点是不是对我有帮助的心态来阅读,而不是原来我要这样才能学的好的心态。如果你觉得某一点对你有用,那就记在心里,如果你觉得不太适合你,那么一笑而过就好。
我不是什么大牛,只是一个普通的本科生,有说的不好的地方,还望海涵。也因为我只是一个本科生,没有很多的工作经验,所以对于工作后的一些学习经验比较匮乏,所以文章里大部分说的都是大学时期的一些经验,很抱歉。
这篇文章大体上会从以下几个部分展开:
认清自己
学习目的
时间管理
学习方法
学习的步骤
获取知识的途径
影响学习的几个因素
自己的心态
外物的影响
其他想说的
大学生的学习
一些感悟
一、认清自己
1.1
认清自己最关键的一点是要知道自己到底想要什么。这是第一步,也是最重要的一步。因为这关系到你能够选对学习方向,能否沉下心来去学习。
我们都知道,做自己感兴趣的事情的时候,是可以事半功倍的,因为你愿意去做它,而不是出于某种原因不得不去做。
经常会有人问我,现在前端找工作好找么?java 找工作好找么?我要不要学 android 呢?这些问题的答案其实大家心里都明白:只要你足够优秀,学什么都能够找到一份好的工作。
所以说,不要因为某一个方向火,而盲目的去追;也不要因为某一个方向可能不容易找工作而不去学。
对一个搞技术的人来说,年龄的增长其实不是那么可怕,可怕的是你没有匹配自己年龄的技术深度。当你的工作换一个刚毕业的学生都能做的时候,你很快就会被淘汰了。所以,选方向一定要选自己感兴趣的方向,因为只有这样,你才有兴趣去往深入了学,你才不会在未来被年轻人挤下去。
1.2
认清自己的第二点是认识到人外有人。自满,自大,自欺欺人是影响自己进步的绊脚石。如果你觉得,你现在已经很了不起了,你能做到这个程度已经很不错了,你就会停滞不前,然后浪费大把的时间。
这是我自己的亲身经历。我的学校是一个双非大学,计算机也不是学校很好的专业,消息也比较闭塞。在我的圈子里,我觉得自己已经很不错了,我之前也一直这样认为。但是,当我今年开始准备春招准备校招的时候,我发现我错了,和真正优秀的人比起来,我什么都不是。以前觉得自己会的东西,出去一看,大家其实都会;以前觉得很多知识等工作了再去学也不迟,出去一看,发现早就有人学会了。但是,现在认识到这些已经有点晚了,因为已经开始找工作了,没有时间再去让你从头开始学了。
所以说,永远不要自满,要知道人外有人。如果有一天,你觉得周围没有人比你更厉害了,一定要记得,不是你走到巅峰了,而是你的圈子,应该扩大了。只有你的周围,有很多更厉害的人,你才能意识到自己的不足。这也是我常挂在嘴边的:你想变成什么样的人,你就要去认识什么样的人,你的周围是什么样的人,你就会变成什么样的人。要知道,人以群分。
二、学习的目的
为什么要学习呢?学习的目的,根本上是为了获取竞争优势,增加选择机会。你比别人懂得多,比别人学的深,你就更有竞争力。对于程序员来说,不懂得学习是没有办法在这个行业混下去的。技术的更新换代,技术的深入掌握都需要去不断的学习,如果你不学,很快就会被淘汰了。
找工作的时候,有其他专业的朋友会羡慕的和我说:你这个专业真好,一毕业月薪就上万,我才 3,4 千。其实我想说的是,如果不好好学习技术,搞技术的也会失业。大部分的人都只看到一部分计算机的应届生工资很高很羡慕,却忽略了他们这四年是怎么度过的。天上是不会掉馅饼的,计算机专业的每天看剧打游戏,毕业一样找不到工作。希望以后你不会是那群天天打游戏看剧最后抱怨自己工资低的那群人中的一个。
三、时间管理
知道了自己的方向,知道了为什么要学,那么我们接下来谈一谈,怎么安排自己的时间,或者说,怎么制定一个计划。
很多人应该都有过这样的经历:我现在很无聊,不知道做什么好,学习吧,不知道学什么,打开电脑也不知道做什么,打开手机也不知道做什么,然后只能选择看个直播,看个电视或者打个游戏来打发时间。当一天过去以后,突然后悔,觉得自己当时要是学习就好了。
为什么会这样呢?是因为你自己没有一个计划,如果你每天都有一个按时间段安排的计划的话,你就不会迷茫了,你就会知道这个时间点自己应该做什么,而不是用看剧打游戏来打发时间。
关于时间的管理,首先:
要有一个大一点的计划,比如年计划,月计划,周计划。
这一年大体上要打到什么目标,这个月要学习哪些知识。
然后是精确到小时的日计划。
每一天,哪个时间段做什么都详细的列出来。
其次,不要太盲目自信。很多人其实从来没有完成过自己的计划。如果你真的能够完成你制定的每一个计划,那现在的你一定已经很了不起了。如果你几乎没有完成过自己的计划,那么你一开始制定日计划的时候,不要给自己太多的任务。因为如果你一旦完不成,就会影响自己的信心。最好的方式是,一开始制定一些简单的计划,然后每天很容易就能做到,然后慢慢的去增加自己每天的任务量。最后找到一个最适合自己的节奏。这个过程可能需要很长的时间,因为你要不断的去尝试,去改进。找到最适合自己的作息时间去休息,找到自己工作状态最好的时间去工作等等。
最后,不要把你的计划当摆设。虽然我上面说过,很多人其实从来没有完成过自己的计划。但是我还是希望你能够认真的去对待它,因为受益的有且只有你自己。
四、学习方法
盲目的学习效果并不好。以前看书的时候,看完一遍再从头看,感觉就像是在看一本新书,完全没有印象。看似自己学了不少,其实真正掌握到的并不多。学习不是你看得书越多,读过的文章越多你就学的越好,而是看你究竟掌握了多了。那么,怎么才能有效的去学习一门新的技术呢?我总结了以下几个步骤。
4.1 学习的步骤
确认学习目标
首先,你需要确认你要学什么,切记不要三心二意。学习最好一个时间段专一的去研究一个知识点,不要今天学 python 明天又想学 java 了。做什么事都有有一个目标,不然容易成为无头苍蝇。目标往大了说,可以是成为某一个领域的大牛,往小了说可以是今天的一个学习计划。
hr 面的时候,一个常见的问题是:你的职业规划是什么。一个优秀的人,必然会有一个属于自己的职业规划,知道自己在什么时期要做什么,知道自己每个时期要完成什么样的目标。学习也一样,当你有了一个清晰的目标的时候,你才不会迷茫,才不会不知道做什么好。
制定学习计划
上面也提到了这点,计划可能赶不上变化,也许今天正好有别的事情导致今天的计划没有完成,但是至少大方向是有的,你不会不知所措,不知道最近应该做什么,这才是计划的根本价值。所以,不要担心计划完不成,这是给你自己学,一天的计划完不成又能怎样呢?
自己找资料开始学习
请记住,不要当一个彻头彻尾的伸手党。因为轻易得到的东西你是不会珍惜的。并且,你不要祈祷你这一辈子所有学习需要的资料都有人会提供给你,自己找资料本身就是自学能力的一部分。当然,我并不是说不让大家去群里问,毕竟能问到也是一种本事,但是你一定要有自己的资料来源,无论是博客还是书或者是官方资料。
脑图与流程图
学习从来都不是只看看书就能学会的,自己构建相关知识脑图和相关步骤的流程图是非常有必要并且非常有效果的。比如你要学习 java,你可以先从网上找一找别人画的脑图,对 java 有一个大致的了解,每学一个小的知识点,就自己绘制一个该知识点的脑图,学完之后,自己再画一个整个 java 体系的脑图,这样你会对 java 非常的熟悉。比如你学 GC,光看书或者博客是很难记住那些流程的,这个时候,你自己画一个流程图,我保证你对这个过程会很清晰。记住:就算是有现成的图,你也应该自己画一个,自己画和看别人的是完全不同的两个层次。
编码
上面的那些,都是掌握理论知识的步骤,是骡子是马还得拉出来溜溜。编码才是重中之重,就算你能把一个知识点吹得天花乱坠,但是一句代码不会写依然没有什么用。
笔记
好记性不如烂笔头,学完的知识,然后记录下来,自己总结一遍,收获有多大你们试试就知道了。
回顾
如果你学的东西,很久都没用,突然有一天你又要捡起它,你会发现,你之前做的努力,太特么值了,你有资料!有脑图!有流程图!还有笔记!分分钟就记起来了。
自己写一个有实际应用的 demo
如果有必要,可以写一个有趣的应用,不是简单的范例。
这个过程,其实是很耗时的,学生建议按照这个流程来,因为学生的时间大把大把的,时间很少的就根据自身情况取舍吧。脑图和流程图我觉得收益很高。
上面说到,有的时候看完一本书再从头看,感觉像是在看一本新书。所以我后面看书的时候,也会做相应的笔记,看的时候会在书上勾勾画画,给一些重要的地方打上标记,看完之后,合上书,用记事本把自己刚刚学的的东西写一下(大纲就行),然后再和书上比对一下做一些修改。当我看完一本书以后,对应的,我还会有一个笔记,以后我甚至完全可以看自己的笔记而不需要再看书了。看 回忆 记录,可以让你充分的掌握一本书的核心。
步骤大体上是这样,但是也千万别死板的都按照这个过程来,毕竟还是很耗时的。下面分享一些获取资料的途径。
4.2 获取资料的途径和一些工具
找资料的途径
百度/google:先看看他都能干嘛
官网:官网的文档一般足够了
相关书籍:京东和当当经常有活动的
社区:社区也会有人做教程的,还会有一些个人项目可以参考
github:可以在 github 看看某个知识点的 awesome
各大博客以及知名博主的个人博客:看看一些高质量博客也不错
微信公众号:试着找一下相关的微信,当然,微信上的文章很多都来自于博客,但是微信的好处就是,你不用自己找,别人已经帮你找好了,缺点就是,量太少
知乎专栏:和博客差不多
一些视频或者 wiki 教程:现在有很多教学视频的网站,有收费的也有免费的。常见的比如慕课网,菜鸟教程,网易云课堂,易百教程等。一些培训机构的视频,比如CSDN的也很不错~
一些工具
teambition | 一个团队管理软件,当然,个人用也是蛮好的,有各个平台的客户端。我用它来安排自己的计划。
百度脑图 | 在线脑图,免费无限容量。
xmind
processon | 也是在线的,可以画流程图和脑图。免费的容量有限。
Visio | 绘制各种图。
番茄土豆 | 番茄工作法的管理工具。
coding | 代码管理网站,类似于 github,是国内产品,速度会相对快一点。
我觉得 github 可以当做一个个人品牌来经营,所以最好只放一些很好的项目,一些无关紧要的代码放在 coding 就好了,开源中国的码云也行。
记笔记的一些工具
gitbook | 可以直接生成电子书的一个开源工具,不知道的可以了解一下,我现在在用。
简书 | 因为简书可以创建文集,就和文件夹似的,用来做笔记也不错。
有道云笔记 | 也挺好的(我喜欢用 markdown。有道云支持)
印象笔记
各大博客
自己搭博客
OneNote
比较推荐用 markdown 来做笔记,markdown 常用的语法也就五六个,很好记,也很好用。
五、影响学习的几个因素
5.1 自己的心态
心态其实是很关键的。我们的周围总会发生一些事情,有的时候这些事情会影响到自己的情绪和心情。这个时候如果你自己调节能力比较差的话,就可能会什么都不想做,不想工作,不想学习。然后颓废好几天。
我想说的是,一个优秀的人一定得是一个乐观的人,不执着于得失,不轻易被影响,积极的去面对生活中所发生的一切。
5.2 外物的影响
我主要说的是手机。现在手机已经成为人生活中不可或缺的东西了,它带给我们方便,但是同时,它也占据了我们大量的时间。我不知道大家平时会不会时不时的打开手机,大部分情况下它和之前毫无变化,但是你还是忍不住的打开它瞅几眼;或者有几个群在不停的闲聊,然后你也忍不住的参与进去,不知不觉时间就溜走了。
不要成为被手机支配的人,所以,当你工作或者学习的时候,把手机静音,放在一边,不去看它,这样你会节省出很多的时间。
除了手机,另一个外物的影响周围的环境。如果你能在一个嘈杂的环境中学习,那就很棒了,如果不能,记得给自己找一个舒适的学习环境。
六、其他想说的
6.1 关于大学生的学习
我知道,预定了这次分享的大部分其实都是学生,还有一些刚刚入学的新生。我想说的是,玩可以,但是一定要记得,你来上学是为了学习知识的,千万不要本末倒置了。我现在最后悔的一件事就是大一的时候没有好好得去学习,不要变成下一个我,
大学学计算机其实大部分时间还是得看你自己,老师上课讲的东西很重要,但是那些都是基础中的基础,凭借这些并不能够让你找到一份满意的工作,所以你还需要自己去学很多很多的东西。我简单的归纳了一下大学几年要做的事,你们可以参考一下(假设你以后的方向是 java)。
大一
这个时候,刚刚接触计算机,你可能什么都不懂,听课也是一脸懵逼,什么 for 循环,if 语句,恶心的不得了。这个时候你要做的不是抱怨,而是去努力的寻找乐趣。因为你已经入了这个坑了,除非你转专业,否则你是摆脱不了它的。
怎么寻找乐趣呢?我觉得,编程最大的魅力,就是当你成功的时候的那种发自内心的成就感。不知道大家还记不记得第一次写 helloworld 的时候,各种出错——分号写成中文的了,大括号少了一个——但是最后终于成功的输出了结果的那种喜悦。
对于一个刚刚接触编程的人,我觉得,写游戏是最容易获得成就感的。这里给大家推荐一个之乎专栏—做游戏,学编程(C 语言)。专栏的作者,通过让一些学生做游戏来学习 c 语言。我觉得这个一个很好的学习方式,即有挑战性,又可以培养出成就感。
大学的入门语言差不多都是 c 或者 c 吧。。如果不是,你也可以参考一下专栏里的小游戏,然后用你自己的语言试着写一下。
但是,我要重点说的是。写游戏其实是一件很有挑战性的事。有的人也许会在一开始就陷入困境,不知道如何继续下去。这个时候,如果你能坚持下去,多问问老师,学长,百度,google,把问题解决,那你以后肯定会很优秀。如果你放弃了,不要灰心,因为并不是所有的人都适合通过游戏来培养兴趣,你也可以通过做一些 acm 的题来提高自己。每个学校应该都有相关的网站吧。如果没有的话,可以去浙大的看看。或者 leetcode 或者牛客网也可以。做一些自己能力范围之内的题,也可以提高自己的兴趣。
当然,这些只是针对一部分同学,毕竟很多人其实对代码无感。。根本耐不下性子去写代码。对于这部分同学,我建议去学习 html 和 css。因为它们入门超级简单,是用来写网页的。没有 c 语音那么复杂的逻辑,几个标签,几个 css 就可以设计出一个精美的网页,我想这也会很有成就感吧。
大一的这一年,是打基础,培养兴趣的一年。不需要你有多么大的成就,写出多么厉害的程序。只要你能够培养出兴趣,并且愿意在编程这条路上走下去,那么你的任务就算完成了。
所以,这一年,你要做的,就是培养兴趣,让自己爱上编程(最基本的要求)。
大二
假设你现在已经喜欢上编程了。但是一般大一只会学一门语言(默认 c/c ,不要问我为什么,因为我就是这么学的。。)。所以你可能只是写了几个小游戏,写了个小管理系统或者刷了一些题。你不满足于现状,你想做一些更有意思,更好的东西。同时,这个时候,学校应该也开了 java 课了。(假设你要学 java)。
敲黑板:大二要做的,是拓宽你的广度!!!广度!!
首先,你要好好学 java。可能学校的进度是一个学期。但是我建议大家用一个月的时间学完。因为有了 c 和 c 的基础,java 其实很容易就学会了(入门级学会)。更好的情况是,你在大一结束的那个暑假,就抽时间先搞定 java 基础。这样当开学的时候,别人还没接触 java,而你可以骄傲的和别人说,你都学完了。成就感满满的。
那么,怎么学 java 基础呢?我的建议是视频为主,入门书为辅,自己跟着写代码。
看书其实是一件很枯燥的事情,如果你初学 java,只是看书的话可能配置一个环境变量就要搞好久,这会打击你的自信心。不要小看配置环境变量这个过程。我记得当时两天配不好环境变量最后让我帮忙的人可不少。但是视频就好多了,因为老师会亲自演示给你看,你会少走很多弯路,并且也比书有趣多了。
书为辅,是因为老师不可能记得所有的知识,总会有疏漏的地方或者讲得不太好的地方,这个时候 书就可以派上用场了。看完一节课的视频,然后关掉视频,自己写一遍相应的代码,出错了自己先试试能不能解决,是在不能的话,再看一遍视频,直到跑通。然后去看看书里对这部分知识的讲解,加深印象,查漏补缺。
这里的重点是,一定要自己写一遍代码。你看的时候觉得自己会了,可是大部分时间,你一写全是错误。所以一定要自己写。并且,在你初学的时候,不要使用集成开发环境(eclipse idea NetBeans 等),就使用 notepad 这种类型的编辑器就可以。
这套流程最大的缺点就是耗时比较久,但是效果是很好的。java 里有很多都和 c/c 一样的,比如一些语句什么的,如果你已经掌握的很好了,直接忽略掉这些也是可以的,这就看你自己的情况了。
推荐一些学习资料。
视频: 毕向东,马士兵,韩顺平的视频都挺好的。口碑也都不错,不信可以自己去百度一下。我看的毕向东的,讲的挺有趣的。但是每个人口味不一样,你可以多下载几套,都听一下,然后选一套自己喜欢的。
书籍:入门推荐《head first java》。head first 是一个系列,这系列书最大的特点是图文并茂和案例驱动,让读书的过程不那么的枯燥。《疯狂 java 讲义》据说也挺不错的,但是我没有看过,不做评价。
编辑器推荐:notepad 免费,小巧。初学者够用了,直接百度下载就好。sublime , vs code, atom 也可以,挑一个自己喜欢的就好。
一个月,干掉 java 基础!这是你大二首先要做的事。
前面说过,这一年,你要做的是拓宽自己的广度。什么意思呢?就是说,你要尽可能的去多接触一些技术,多学一些知识,因为你以后很难再找到这么多你可以自由支配的时间了。
java 基础搞定。接下来,学习 java web。
你要知道,优秀的人永远都走在大部队的前面。不要学校安排什么你就学什么,学校不安排你就不学。事实上有的老师讲的不是很好,大学里真正有用的知识,都是自己学的。所以,接下来要做的是自学 java web。
依旧是视频 书 写代码。
java web 更重要的是实践。我当时学的时候的书就是学校的教材。。我是基本没看书的。就跟着视频一步一步来,有问题就 google。在大二上学期结束的时候,完成 javaweb 的学习。
因为需要和前台做一些交互,所以免不了要学一点前端的知识(html css js)。
这个过程中,遇到的问题千奇百怪,我记得我当时一个小问题 google 了一天都没能解决,最后才知道是 jar 包版本的问题。所以,遇到问题是很正常的,遇到很难解决的问题也是很正常的,只要你肯问,肯查总能解决。
好了,你现在已经有了自己写一个小网站的能力了(丑点无所谓)。接下来去参加比赛!进实验室!做项目!没有什么比做一个项目更能提高水平了。
所以,你大二下的任务就是尽可能的去做项目,依次来巩固你学的技术。可以参加一些比赛,或者加入实验室,或者寻求老师的帮助。总之,你要做项目!
除此之外,你需要继续扩展你的视野。前端(不是你之前学的简单的 html),python,android,ios,cocos。。。只要是你感兴趣的,就去接触一下,不需要你学的多厉害,也不需要你完全掌握。只是为了让你的视野更加开阔,知道原来还有这么多技术,原来还可以这样。
大二的一年,你需要学会 java 和 javaweb,并且至少做一个拿得出手的项目。同时,尽可能的提高你的视野。当你觉得你一无所知,你还是个菜鸟,这一年的任务就完成了。
大三
这是很关键的一年,因为这一年你将决定是否考研。考研的我就不管了。。接下来是针对准备一毕业就工作的同学的。
敲黑板:这一年,你要做的,是深度!
通过大二一年的努力,你的广度已经足够了。并且在这个过程中,你应该也找到了自己最感兴趣的方向,如果没有,那就继续研究 java 吧,总比你不知道学什么好。无论怎样,这一年,你的重心都应该放在一条路上。以 java 为例。
首先,巩固基础!
这是最重要的。怎么做呢?进阶书籍 看博客 写总结 写开源项目。
这个阶段的视频不是很多,也没有必要了。直接看书 看博客 开源项目,最后再总结就够了。我举个例子,比如,我现在要学设计模式,我买一本《head first 设计模式》然后一个模式一个模式的学,每学一个模式,看一遍书,然后 google 一下这个模式,看几篇高质量博客,结合书和博客自己写一个总结,甚至可以自己写一个博客专栏,让后来者也能享受到你的学习成果。同时,可以好好整理一下自己学习过程中的代码,放到 github 上,最好可以试着封装一下这个模式,让其他人更方便的使用这个模式。当你收获一个又一个的 star 时,你会非常有成就感的。
上面是学习的大致方式。学完了,怎么检查自己有没有学好呢?给大家提供一个网站牛客网,你打开就知道怎么用了。
基础都包括什么呢:
面向对象的思想
java 常用类
集合框架
io
nio
多线程并发
设计模式
算法
jvm
计算机网络
spring
orm 框架
一些书籍的推荐
初级:
《java 从入门到精通》没看过,但是买的人很多,有视频。
《疯狂 java 讲义》没看过,买的人也不少。
《head first java》head first 系列都蛮好的,看起来不乏味。
中级:
《java 编程思想》java 程序员必读书籍,厚厚的,让你有种看不完的感觉,但是认真学了收获会很大
《java 核心技术卷 1 2》推荐买第十版,最新的。也是讲基础的,虽然很啰嗦,但是正是因为厚,写得多,所以你才能理解的更透彻。
《head first 设计模式》设计模式经典之一,有趣的案例驱动,看起来很有意思。
《设计模式之禅》国内大牛力作,通俗易懂,某些设计模式的实现和《headfirst 设计模式》有区别,可以两本一起看。
《大话设计模式》没看过,也挺有名的,不做评价。
《java 并发编程实战》多线程好书,不光教你怎么用,还告诉你为什么要这么用。
高级:
《effevtive java》必看书籍。讲了 70 如何写好 java 代码的例子。看了这些你会觉得以前写的代码都是问题。
《重构 改善代码既有的设计》必看书籍。重构你之前的代码能让你有一个很高的进步。
《深入理解 java 虚拟机》必看,不解释。
《java8 实战》java9 都要出来了,你 java8 还不会说不过去的。。
《java 性能权威指南》学完虚拟机再看它,深奥的一比。
你要知道,bat 等大厂每年会有两次招聘,一次春招,在每年 3-5 月,一次秋招 8-10 月。春招是招实习生的,秋招是招正式员工。所以,如果你想进这些公司,就要提前做好准备。至少,上面的那些基础你是必须得都掌握的。
大三这一年,要让你的深度足够,有能力的可以继续延伸自己的广度。这个阶段,最忌讳的是朝三暮四。早上看 python,下午发现 go 很有趣,看了一下午 go,晚上听说 R 很厉害,又去研究 R 了。千万不要这样!不要成为各个领域的杂牌军,你现在要做的,是在一个方向有一些建树。
大四
去实习
实习的话我能给的建议不多,虽然我的实习经历还蛮多的。但是毕竟不是混迹职场多年的人,就不乱说了。
找工作,待遇,环境挺重要的。但是我觉得,这个公司的技术栈,行业背景也是很重要的。我实习的三家公司是三个不同的行业,所以我知道,不同的行业差距还是很大的。有的公司招聘的时候会要求你在这个行业有过经验啥的。所以,行业背景还是有必要注意一下的。同时,为了自己为了的前途,一定要问清楚公司的技术栈!
当然:作为一个有抱负的人,毕业设计一定要向着优秀发展!并且依旧要不断提高自己的水平。这个时候,学什么可能得根据公司的需求来了,但是,永远不要停止学习!
简而言之,这四年你应该这样过: 大一:培养兴趣 大二:横向发展,广度优先 大三:纵向发展,深度优先 大四:选好方向,不断提高自己
6.2 一点感悟
很多时候,一个好的老师或者是指导你的人会让你受益终身,尽可能多的去认识这样的人。
谦虚和乐观是受用一生的财富。多去认识更优秀的人,而不是在自己的小圈子里沾沾自喜。
真正优秀的人不是埋头苦读不问世事,他们也会打游戏,也会看剧,也会追番。但是,他们会合理的安排时间。
七、结语
文章写得很匆忙,很多东西其实是我以前写过的。我的学习经验也不是很丰富,工作经验也不是很多。所以难免有写得不对或者不到位的地方,一些细节也没有展开谈,希望大家多多包涵。
如果看完这篇长篇大论对你有一点帮助,那么我的目的就达到了。如果没有什么帮助,我表示很遗憾,争取以后能够写出对你有帮助的文章。
我举得很多例子都是针对大学生和 java 的。一方面是因为我自己还是个学生,方向是 java,对这个比较熟。一方面是我知道参与这次分享的很多人都是我的朋友,他们也是学生,也在学习 java。对与一部分人,可能要说一声抱歉了。
作为程序员的你,常用的软件有哪些?
这个就非常多了,下面我以常见的编程开发软件和数据库管理软件为例,简单介绍几种,感兴趣的朋友可以尝试一下:
01编程开发软件这个要看具体编程语言了,不同语言开发工具自然不同,这里以常见的C/C 、Java和Python为例,简单介绍3种比较常用的软件:
C/C :Visual Studio
这是Windows平台下一个非常专业的集成开发工具,号称宇宙第一IDE环境,不仅仅只是C/C ,常见的C#、VB等编程语言,这个软件都能很好支持,智能补全、代码高亮、语法检查等功能非常不错,除此之外,还支持单元测试、代码重构和分析等高级功能,因此非常适合大型项目开发和维护:
Java:IntelliJ IDEA
这是一个非常专业智能的Java开发工具,在企业和个人桌面中,有着非常高的使用率和欢迎度,自动补全、语法提示、代码高亮等功能非常不错,除此之外,还支持JUnit、CVS整合、代码重构等高级功能,自带有Maven和Gradle构建工具,因此更适合Java项目开发和维护,个人使用起来非常不错:
Python:PyCharm
这是一个非常专业的Python开发软件,和IntelliJ IDEA一样,Jetbrains公司的产品,在业界非常流行、受欢迎,智能补全、代码高亮、语法提示等功能非常不错,除此之外,还支持代码重构和分析、单元测试等高级功能,因此更适合大型项目,个人使用来说,也非常简单,很容易上手和掌握:
02数据库管理软件这个就非常多了,不同数据库都有专门的管理软件和工具,这里简单介绍3个比较通用的数据库管理软件,分别是HeidiSQL、DBeaver和DataGrip,对于日常使用来说,非常不错:
HeidiSQL
这是Windows平台下一个非常轻巧灵活的数据库管理软件,基于Delphi开发而来,目前支持MySQL、MariaDB、MSSQL、PostgreSQL等主流数据库,常见的建库建表、视图索引、触发器等基本功能,这个软件都能很好兼容,除此之外,还支持SQL脚本导入导出、数据备份恢复等功能,对于日常数据库管理来说,非常不错:
DBeaver
这是一个基于Java开发的数据库管理软件,免费、开源、跨平台,目前支持Oracle、MySQL、PostgreSQL、SQL Server等十几种主流数据库开发,建库建表、视图索引、触发器、存储过程等基本功能都可轻松查看和设计,数据库导入导出、数据恢复备份等功能也都非常不错,对于日常数据库管理和维护来说,是一个非常不错的工具:
DataGrip
这也是一个通用的数据库管理软件,Jetbrains公司的产品,支持跨平台,但原则上针对个人不免费,常见的PostgreSQL、MySQL、Oracle等数据库,这个软件都能很好支持,数据导入导出(恢复备份)、智能代码填充、版本集成控制等功能非常不错,对于日常数据库管理来说,也是一个不错的工具:
目前,就分享这几个不错的编程开发软件和数据库管理软件吧,当然,还有许多其他软件,像VMware、Git、Axure等也都比较常用,看自己涉及的领域了,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。