随着互联网寒冬的的到来,程序员就业环境越来越严峻,这就要求我们必须要不断提高自己,来应对高压的工作环境。下面介绍的这几种图是我在工作中经常使用的,所谓的图,都是为了辅助思考的,辅助开发的,比文字描述的更清晰,更有逻辑。
前些年,网上有一个口号喊得很响: “人人都是产品经理” 。这就要求我们需要学习认图、画图的技巧,能从需求文档里快速的抽象出我们想要的东西。最近,网上曝出的程序员和产品经理之间的矛盾,大都是需求不清晰产生的,作为程序员的我们如果掌握的产品经理所必须的技能,那我们以后就可以吊打产品经理了,哈哈哈哈。。。
流程图 是对过程、算法、流程的一种图像表示,在技术设计、交流及商业简报等领域有广泛的应用。
计算机语言只是一种工具。光学习语言的规则还不够,最重要的是学会针对各种类型的问题,拟定出有效的解决方法和步骤即算法。有了正确而有效的算法,可以利用任何一种计算机高级语言编写程序,使计算机进行工作。因此,设计算法是程序设计的核心。
对同一个问题,可以有不同的解题方法和步骤。
例如,求1+2+3+…+100,可以先进行1+2,再加3,再加4,一直加到100,也可采取100+(1+99)+(2+98)+…+(49+51)+50=100+50+49×100=5050。
还可以有其它的方法。当然,方法有优劣之分。有的方法只需进行很少的步骤,而有些方法则需要较多的步骤。一般说,希望采用方法简单,运算步骤少的方法。因此,为了有效地进行解题,不仅需要保证算法正确,还要考虑算法的质量,选择合适的算法。
一个计算问题的解决过程通常包含下面几步:
传统流程图
用图表示的算法就是流程图。流程图是用一些图框来表示各种类型的 *** 作,在框内写出各个步骤,然后用带箭头的线把它们连接起来,以表示执行的先后顺序。用图形表示算法,直观形象,易于理解。
美国国家标准化协会ANSI曾规定了一些常用的流程图符号,为世界各国程序工作者普遍采用。最常用的流程图符号见图。
流程图不仅可以指导编写程序,而且可以在调试程序中用来检查程序的正确性。如果框图是正确的而结果不对,则按照框图逐步检查程序是很容易发现其错误的。流程图还能作为程序说明书的一部分提供给别人,以便帮助别人理解你编写程序的思路和结构。
PS:墙裂推荐大家使用ProcessOn,画流程图的神器!!!
心智图 (Mind Map),又称 脑图 、 心智地图 、 脑力激荡图 、 思维导图 、 灵感触发图 、 概念地图 、 树状图 、 树枝图 或 思维地图 ,是一种图像式思维的工具以及一种利用图像式思考辅助工具来表达思维的工具。
心智图是由英国的托尼·博赞(托尼·布詹)于1970年代提出的一种辅助思考工具。心智图通过在平面上的一个主题出发画出相关联的对象,像一个心脏及其周边的血管图,故称为“心智图”。由于这种表现方式比单纯的文本更加接近人思考时的空间性想像,所以越来越为大家用于创造性思维过程中。
ps:我一般都是用的百度脑图,在线的比较方便
拓扑学(TOPOLOGY)是一种研究与大小、距离无关的几何图形特性的方法。 网络拓扑是由网络节点设备和通信介质构成的网络结构图。
拓扑学是数学中一个重要的、基础的分支。起初它是几何学的一支,研究几何图形在连续变形下保持不变的性质(所谓连续变形,形象地说就是允许伸缩和扭曲等变形,但不许割断和粘合) 拓扑图用于计算机网络示意,也就是不考虑计算机实际的位置,只表示网络中每台计算机以及网络设备之间的相互关系。
节点,节点就是网络单元。网络单元是网络系统中的各种数据处理设备、数据通信控制设备和数据终端设备。
链路,链路是两个节点间的连线。链路分“物理链路”和“逻辑链路”两种,前者是指实际存在的通信连线,后者是指在逻辑上起作用的网络通路。链路容量是指每个链路在单位时间内可接纳的最大信息量。
通路,通路是从发出信息的节点到接收信息的节点之间的一串节点和链路。
星型结构的优点是结构简单、建网容易、控制相对简单。其缺点是属集中控制,主节点负载过重,可靠性低,通信线路利用率低。
总线结构的优点是信道利用率较高,结构简单,价格相对便宜。缺点是同一时刻只能有两个网络节点相互通信,网络延伸距离有限,网络容纳节点数有限。在总线上只要有一个点出现连接问题,会影响整个网络的正常运行。目前在局域网中多采用此种结构。
环型结构的优点是一次通信信息在网中传输的最大传输延迟是固定的;每个网上节点只与其他两个节点有物理链路直接互连,因此,传输控制机制较为简单,实时性强。缺点是一个节点出现故障可能会终止全网运行,因此可靠性较差。
树型结构实际上是星型结构的一种变形,它将原来用单独链路直接连接的节点通过多级处理主机进行分级连接。
这种结构与星型结构相比降低了通信线路的成本,但增加了网络复杂性。网络中除最低层节点及其连线外,任一节点或连线的故障均影响其所在支路网络的正常工作。
UML是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。
功能模型, 从用户的角度展示系统的功能,包括用例图。
对象模型, 采用对象,属性, *** 作,关联等概念展示系统的结构和基础,包括类别图。
动态模型, 展现系统的内部行为。包括序列图,活动图,状态图。
实体关系图,简记E-R图是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式。
推荐三个好用的笔记软件给大家。
1、有道云笔记有道云笔记+Markdown语法。优点是手机、电脑可同步使用,而且关键免费。
2、visual studio code一款功能强大的记录软件,可装插件。
3、DocRun 算力笔记可以展示代码,支持交互运行代码 c++/python/js/matlab/R。
作为一个超级爱分享,爱记录,爱总结,外加爱记录的程序员,真的是会经常用到一些非常好用的笔记软件或者工具,所以,我可以给大家推荐一下,我自己是如何做笔记的,都用到了哪些软件?
首先,我先说一下,我是一个 MBP 的忠实粉丝,所以我的电脑就是 Macbook Pro ,所以分享和推荐给大家的做笔记的软件都是基于苹果电脑的。(PS :苹果电脑真的非常好用)
第一款软件:Unclutter
首先,记笔记最重要的是什么?其实,记笔记最重要的是可以随时随地非常方便的把自己想记录的内容,马上记录下来。那么,Unclutter 这款软件真的是非常的好用。非常方便的调出来做笔记,只要你点击复制,自己生成 历史 记录。简直不能太方便了。我简单介绍一下它。
Unclutter 本身是一个多功能的隐藏菜单,里面包含 Clipboard(剪切板),File Storage(存储区域),Notes(随手记)三个功能区,当你用鼠标或是 Trackpad 从屏幕顶部向下滑动时,Unclutter 菜单就会落下来,接下来的 *** 作就会非常容易了。
看到了吗?最左边是剪切板,中间是文件存储区,最右边是 notes 随手记。你只要使用复制或者剪切功能,复制文字的话,它都会自动复制到剪切板上。如果你复制的是图片,就会自动存储在文件存储区。
另外,你想做的笔记和内容,可以直接在最右边的随手记上记录,可以生成记录的 历史 列表,非常的方便。
显示这个面板的方式非常简单,把鼠标放在屏幕顶部,双指向下滑就能下拉启动该工具;反之,双指向上滑动则是收回工具。
第二款:Typora
Typora 这款软件就不用我过多的介绍了吧?被称为世界上排版最美的 MarkDown 工具。
我们随手把自己记录的笔记记录下来以后,下一步该怎么办呢?肯定是要学习总结,整理成文章啦。整理文章,我个人最喜欢用的当然是 MarkDown 这样轻量级的标记语言做的排版。那么我就会用 Typora (注:这款工具也有 windows 版本)。
Typora 是一款好用极简免费的跨平台 Markdown 编辑器,软件使用这款软件能够帮助用户轻松将文本转换到 HTML,软件从底层向上设计,软件支持 markdown 的标准语法,同时这款软件还支持动态预览功能,一键预览,让一切都变得如此干净、纯粹,是一款不可多得的优质 markdown 编辑器。
我个人非常喜欢这款软件,尤其是再配搭图床工具,可以直接把图片上传搞定,简直不要太方便了。
总结
其实,我个人不太喜欢有道云笔记,为知笔记,以及印象笔记这样的软件的,因为我感觉大部分使用它收藏了之后,大家可能就忘了,很少打开这样的笔记工具去学习和看了。
我使用使用随手记,直接在桌面上呼之欲出能够让我看到今天总结的东西的软件,配合上写作软件,让我效率很高。因为,我需要把笔记,及时整理成文章,然后发布在博客上,只有,把笔记整理成文章,才能转化成自己的语言和知识,这是一个提高和学习的过程。
而不仅仅是使用各种收藏类的笔记软件,把他们收藏了之后,就不再管了,可能过几天你都能把记录的笔记都忘了。而我推荐的这两款工具,是随时都可以调出来马上看到和使用的,尤其是 Unclutter 这款工具,在电脑上,往下呼之欲出,马上就能看到,再学习和整理。我认为,这才是记笔记正确的方式。
这也是我学习的方式。
都2020年,全面云时代了,还软件,还编辑器[泪奔]。就连微软的宇宙第一IDE都要推出web版本了,各位技术人员能不能专业点,跟进一下时代潮流!十万阿里人都在使用的技术文档工具“语雀”了解一下,在线记录,不用安装,支持技术人员常用的各种格式,免费使用,markdown文档,代码,脑图,表格,uml,图片,视频,office等等。支持十人团队协同编辑,实时分享,用完这个,我相信你会把你电脑上的这云笔记那笔记软件,各种编辑器全部卸载[灵光一闪]。什么?在线编辑器,没网干不了活?!5G都来了,你告诉我你没网,你转行吧[大笑]
程序员做笔记的软件?听起来好像程序员很特殊似的。不过稍微想想,在记笔记的方面,程序员还真有一个特殊之处——他们的笔记,很多是嵌在代码里,当做注释写的。
注释之外,还有项目规划、大脑清理、头脑风暴、参考资料、进度追踪之类的笔记。这些内容我用OneNote来做。因为OneNote的层级结构做得特别好,很符合理工男的逻辑思维习惯。
所以回到题目, 我的推荐是:程序相关的直接记到代码里,思维相关的记到OneNote里。
稍微展开说几句:
1、程序相关的笔记直接记到代码里。程序员要不要写代码注释,这是一个争论已久的话题。争论的本质,其实是“相不相信自己的长期记忆力”,以及“相不相信代码本身就是注释”。我个人不相信长期记忆力,所以要写注释。但我又偏向于好的代码,本身就是自解释的,不需要写注释。
如果带项目,考虑到团队协作,这个争论往往是以“写注释”告终的。写程序时候的思路、坑、用到的算法、需要注意的事情、后续改进的地方,都可以直接用注释的形式写到代码里。这样其他接手项目的程序员,可以更容易理解你的代码。
那么,程序员用什么软件写代码,也就是用什么软件做编程笔记了。我试用过很多,最后还是更喜欢Sublime Text.
2、思维相关的记到OneNote里。
其实跟项目相关的思考,大部分内容还是不方便记到代码中的,我会记到微软的OneNote里。
跟项目没有关系的,只要是思考和学习内容,都可以记到OneNote里。我现在已经把OneNote作为我的文档中心,只有在不得已的情况下,才输出成单独的文档。你现在看到的这篇问答也是在OneNote里写出来的。
在一个统一的内容管理软件中处理文档,简直太方便了。定位、查找、复制、整理,统统很容易。
OneNote最大的好处,是它的多重分类层级。大致分为笔记本、分区组、分区、页面、子页面几个层级。它的分类导航排列在工作区四周,本身有很强的提示功能,很容易能够把分类做得井井有条。我个人感觉,OneNote的分类效果,远比在资源管理器里直接用文件夹做分类好得多。
OneNote另一个杀手锏,是多平台同步。我现在做笔记已经全天候无死角了。PC、Pad、笔记本、手机,统统自动同步。能够随时记笔记,可以说是笔记软件最重要的功能了,这方面OneNote做的不错。
对了,OneNote还是免费的,不但软件免费,还提供25G的云存储空间,还有微软出品的品质保证。有人说OneNote的云同步太慢,我实测很久,感觉完全够用。真的不够用了,还有商业化的解决方案可供选择。
3、零散的想法用讯飞的语音输入,记到各种“快速笔记”中。
OneNote自带一个“快速笔记”——没有分类的笔记。你有了一个突然冒出来的想法,可以先记录下来,以后再整理。这个快速笔记也是多平台同步的,很方便后续的加工处理。
不管何时,只要你有了想法,就可以用手机呼出快速笔记,说出你的想法,用讯飞输入法识别成文字,记录下来。如果希望直接记录语音也没问题,OneNote本身就支持。
总结一下吧:
程序猿的笔记,程序相关的,大部分记到代码中,小部分记到OneNote中。其他笔记,都记到OneNote中,构建自己的个人知识体系。有了零散的想法,也可以通过“快速笔记”第一时间记录下来,免得遗忘。
一句话:OneNote真是个好用的东西,即便你不是程序员,也应该考虑考虑它。
我推荐一款:Evernote(印象笔记),非常好用且功能强大的一款笔记软件。
我推荐它有以下几个理由:
多个设备之间同步印象笔记有PC端和移动端,电脑编辑以后,手机上可以立马看到。平时外出需要记录问题的时候,拿出手机就可以记录。回到家以后打开PC端的印象笔记,立马就可以看到通过手机记录的内容。并且支持多个手机和多个PC之间相互同步。
直接PPT演示
这也是它最大的优点。平常我们需要写各种技术文档。有时候领导要求我们做成PPT给其它同事演示分享,而程序员是非常讨厌做PPT。印象笔记解决了程序员这一痛点。用印象笔记写完文档以后,可以直接以PPT的形式演示,无需在制作额外的PPT。
思维导图
印象笔记可以直接画思维导图,用思维导图进行头脑风暴或信息梳理,激发灵感,高效梳理思路。还能在导图中与笔记巧妙联动,让信息串链起来,或是一键为笔记本生成思维导图目录,高效连结相关信息资料。
支持MarkDown语法Markdown 是一种轻量级的标记语言,用简洁的语法代替排版,我们程序员非常喜欢使用这种语法。 其常用的标记符号不超过十个,相对于更为复杂的 HTML 标记语言来说,Markdown 十分的轻量,学习成本也不需要太多,且一旦熟悉这种语法规则,会有沉浸式编辑的效果。印象笔记Markdown支持CommonMark和GFM标准。
此外,印象笔记还支持 音频笔记、拍照笔记、多人协作、收藏网页和文章等功能,是团队协作和个人工作的最佳选择。不过,印象笔记的高级功能需要付费使用。
用过notion、印象笔记、有道云笔记、石墨文档、语雀。其实就两个严格来说不是笔记软件,是协同办公。但是语雀很好用,就是语雀客户端丑一些,但是挺好用的。目前在用语雀
为了找到合适程序员的笔记软件,我试用过很多,如OneNote,Notion,有道云笔记,Quiver,MWeb,语雀,GoodNotes还有Notability。
最后我的选择 电脑端用语雀 , iPad端用Notability+备忘录 。
OneNote 的功能非常强大,各种平台也都支持,可以说是综合实力最强的一个了。但是对于我来说最大的问题是打开速度太慢,再加上服务器在国外,网速也很感人,对于我来说,这点很致命,导致我还是放弃了它。
Notion 这个软件网上评价都很好,但是一个 全选功能只能选中当前块 让我放弃了。
有道云笔记 体验基本都还不错,但是在Markdown中插入图片要购买会员就没有再试了。
Quiver 和 MWeb 有些相似,本地笔记的功能够用,也都支持Markdown格式,但是不同电脑之间同步会比较麻烦,只能用云盘或者是自建git仓库。
语雀 是我经过挑选之后最后选择的,编辑器对于各种功能的支持都有,还支持团队编辑,可以查看 历史 版本比较差异,程序员用来建立知识库或者是团队文档库都很不错。
由于语雀对于移动端不支持,所以在iPad上我比较了GoodNotes和Notability,最后选择了Notability,至于选择的原因可以看我的另一篇回答,里面有说到。
当然,这只是我接触体验过的笔记软件中的比较,仅供参考,也许还有我没有接触过的更好用的笔记软件。
云端的有免费的有道笔记,OneNote, 付费的印象笔记,为知笔记,总体来说,如果你笔记整体内容比较少的话,这四个用起来都差不多,但是如果笔记整体比较大,内容很多,超过几千条,那免费的就最好用OneNote,付费的就用为知笔记。如果你只是在本地电脑上使用,那就推荐使用myBase,功能很强大,几乎是不二的选择
作为一个持续学习的程序员,笔记必不可,而我使用的笔记软件,主要有2个,分别是印象笔记、有道云笔记,下分别简单介绍下,也大同小异,看个人喜好选择了:
一、印象笔记1.支持多端云同步
可以在ios、Android、window、Mac、ipad、web页面等形式,编写你的笔记
但这既是印象笔记的优点,也是印象笔记的缺点,就是超过2个端,需要支付会员,才能同步其他端。
2. *** 作简单。
3.window下使用,当笔记内容过多时,软件经常卡崩溃,之前因此弃坑。
二、有道云笔记1.支持多端云同步
可以在ios、Android、window、Mac、ipad、web页面等形式,编写你的笔记
2.界面优雅
3支持多级存储(印象笔记只支持2级)
即你可以创建一个文件夹,文件夹下面再创建文件夹,类似的window的 *** 作,分多级来存储分类你的笔记。
4.大厂支持
这是互联网大厂网易旗下的产品,有保障。
在互联网还不发达的时代,无论是哪一行的从业人员,对于会议的介绍,知识点的整理都是习惯性的记录在笔记本上,随身携带上面记满了密密麻麻的备忘录,用完的记事本是一本接一本,到了近几年随着互联网的发展,网上的云端笔记也越来越多,所以选择一款适合自己的云笔记显得尤为重要。
我是在14年踏入程序员这个行业,对于常用的语法还有函数是真心的记不住,但是在那个时候也没有经验,就在电脑上新建个记事本,把遇到的问题以及解决问题的方法记下来,我记得当时还随身携带着U盘,到其他电脑上再把文件拷出来,后来就传到360云盘,等到换了电脑也能直接从360云盘上下载来下。
也许很多人觉得我的这个过程很繁琐,但这也是那几年我最常用的一种做笔记方式,我相信也会有和我有相同经历的小伙伴吧,不管是笔记还有常用的软件就是保存在360云盘上,但是过了几年360云盘突然宣布不再免费提供个人版,这让我们这些个人用户一下慌了神,在免费下载日之前着急忙慌的开始备份资料,已经不记得当时丢失了多少资料,最后随着时间的流逝,当时做的笔记也都无从查找了,对于自己来说也是一笔损失。
那时间来到最近两三年,我发现我身边的同事都把服务器的信息或者常用的账号密码保存的很清晰,我就问他用的是什么软件, 从这时开始,有道云笔记走进了我的世界,一经使用我就对这款软件爱不释手。
有道云笔记是网易旗下的一款在线保存文档笔记的一款产品,无论是在界面的设计,还是功能的使用中,对于我来说都能够满足大部分的需求,我常用在电脑编辑, 每天到公司第一件事就是先登录有道云,因为每天有太多的资料账号去登录,先打开有道云的网页,在用到其他资料的时候就可以很清晰的找到所需信息 ,并且支持手机端APP同步,如果在外出差不方便打开电脑,在手机上做完笔记就可以一键保存了。
除了有道云笔记之外,我这边了解到的常用笔记还有 印象笔记、腾讯文档、WPS文档等等 ,其实都可以满足各种做笔记的需求,最后希望大家能找到一款适合自己的笔记,有效的提高自己的工作效率。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)