大学生实习心得,大学生顶岗实习周记(备忘录模式不只是记录怕忘记的东西那么简单)
关于【大学生实习心得】,大学生顶岗实习周记,今天犇犇小编给您分享一下,如果对您有所帮助别忘了关注本站哦。
- 内容导航:
- 1、「设计模式」备忘录模式不只是记录怕忘记的东西那么简单
- 2、大学生实习心得
1、「设计模式」备忘录模式不只是记录怕忘记的东西那么简单
什么是备忘录模式(Memento)
概念
备忘录(Memento)模式属于「行为型模式」,又叫作快照模式,定义:在不破坏封装性的前提下,捕获一个对象内部的状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。简单来说,就是「保存一个对象之前的状态,然后在某个时间回退到这个状态」。
我们使用的很多软件都提供了这个功能,我们使用的编辑工具,word、记事本、idea、typora等等,ctrl+z就可以回退自己的操作,「可以防止我们的误操作」。还有浏览器的倒退,可以让我们回到上一个页面。游戏中的存档,我们可以自己提前存入一个档,以后可以再次退回来。
ctrl+z
优点
- 给用户提供了一种可以恢复状态的机制,用户可以回退自己的操作。
- 封装了内部状态。想要使用备忘录模式,需要把内部的数据都封装成一个状态。
- 符合单一职责原则。由发起类无需管理状态,由管理类来管理状态。
缺点
- 需要大量的资源。要保存状态对象是需要消耗内存资源,可以考虑设置一个状态对象的上限。
原则
“+”代表遵守,“-”代表不遵守或者不相关
原则开放封闭单一职责迪米特里氏替换依赖倒置接口隔离合成复用-++----
适用场景
- 需要保存和恢复数据的情况。
- 需要撤销操作的情况。
这两种常见的代码实现会有一点点的不同,后面的例子中我会标注一下的。
如何实现
想要实现备忘录模式,需要以下三样东西:
- 发起类(Originator):依赖备忘录对象,创建备忘录对象,提供创建备忘录和恢复备忘录,发起类可以访问备忘录中的信息。
- 备忘录类(Memento):记录发起类当前时刻的状态,并且保存在管理类中。
- 管理类(Caretaker):管理备忘录对象,提供存储,回退备忘录等操作,管理类不能访问备忘录对象内的信息。
类图
å¤å¿å½æ¨¡å¼çç»æå¾
上班小丑
开始敲代码!
举例
这里以记事本的回退操作为例,我们输入文字,每个版本的文字都保存起来,我们可以一个一个版本地回退。
「类图」
image-20210612225959096
「代码」
发起类
/** * 发起类 * 文本编辑器 * Created on 2021/6/12. * * @author xuxiaobai */public class TextEditor { //当前状态记录 private TextMemento currentRecord; //状态记录管理者 private TextCaretaker caretaker = new TextCaretaker(); /** * 提交文本记录 * * @param text */ public void commit(String text) { System.out.println("-----commit-----"); //更新当前记录 currentRecord = new TextMemento(text); //保存记录 caretaker.push(currentRecord); show(); } /** * 回退 */ public void ctrlZ() { System.out.println("-----ctrl+z-----"); TextMemento textMemento = caretaker.get(); if (textMemento == null) { //当备忘录为空,打印提示后返回 System.out.println("没有历史记录,无法回退"); return; } System.out.println("恢复记录"); this.currentRecord=textMemento; show(); } /** * 展示当前记录 */ public void show() { //获取备忘录中的text String text = currentRecord.getText(); System.out.println("当前记录为:“"+ (text ==null?"无": text)+"”"); }}
管理类
/** * * 文本备忘录管理类 * Created on 2021/6/12. * * @author xuxiaobai */public class TextCaretaker { /** * 备忘录存储栈 * 这是需要撤销操作的情况,才需要的 * 如果是需要保存和恢复数据的情况,可以考虑使用List来存储备忘录 */ Stack<TextMemento> stack=new Stack<>(); public void push(TextMemento memento){ stack.push(memento); } public TextMemento get(){ return stack.pop(); }}
备忘录类
/** * 文本备忘录 * Created on 2021/6/12. * * @author xuxiaobai */public class TextMemento { /** * 文本的属性 * 这里以String为例 * 如果你想更加复杂一点,可以增加多一点的属性 */ private String text; public TextMemento(String text){ this.text =text; } public String getText() { return text; } public TextMemento setText(String text) { this.text = text; return this; }}
测试类
public class MementoTest { public static void main(String[] args) { //文本编辑器 TextEditor editor=new TextEditor(); StringBuilder text=new StringBuilder("第一个版本的文字"); editor.commit(text.toString()); editor.commit(text.append(",再加第二版本").toString()); editor.commit(text.append(",再加第三版本").toString()); editor.show(); editor.ctrlZ(); editor.ctrlZ(); editor.ctrlZ(); /** * 结果: * -----commit----- * 当前记录为:“第一个版本的文字” * -----commit----- * 当前记录为:“第一个版本的文字,再加第二版本” * -----commit----- * 当前记录为:“第一个版本的文字,再加第二版本,再加第三版本” * 当前记录为:“第一个版本的文字,再加第二版本,再加第三版本” * -----ctrl+z----- * 恢复记录 * 当前记录为:“第一个版本的文字,再加第二版本,再加第三版本” * -----ctrl+z----- * 恢复记录 * 当前记录为:“第一个版本的文字,再加第二版本” * -----ctrl+z----- * 恢复记录 * 当前记录为:“第一个版本的文字” */ }}
这里的例子我都是直接创建对象的,偶尔偷个懒嘛,我这里建议在实际开发中运用的话,还是要去创建一个顶层的接口,然后声明的时候依赖于接口,这样才符合依赖倒转原则嘛。
小黄鸡扯紫色内裤动图
总结
备忘录模式和其他模式相比有很大的不同,它是为了能让我们「回退我们的操作」,保存了过往的状态,我们在合适的时间恢复。在使用备忘录模式时需要注意,只有发起类这个角色才能去组合备忘录和管理者,不要把这两个角色暴露给这个模式外的对象,也只有发起类才能去读取备忘录中的数据,管理者只负责管理备忘录,还有呢,使用备忘录模式是需要「消耗内存」的,也可以考虑把这些备忘录写入到数据库中,不过使用的时候还是得写入内存中。
2、大学生实习心得
大学生实习心得
xx个月的实习已经结束了,实习期间我和同学轮转了神外,儿科,妇产科,手术室,重症监护室,急内等等,医院的老师们都很有耐心,对于一开始什么都不懂的我们细心而又严谨地教导我们,给我们动手的机会,在征得患者的同意下,让我们进行有创操作。其中让我印象最深刻的是急诊内科。
在内科的工作和外科大致上大同小异,按时按点测血糖,量血压,量体温;换换盐水,给病人吸氧。在来急内之前,我一直以为死亡离我们很遥远,直到有一次我给一位老爷爷量血压,他每次都会很有礼貌的说谢谢,谢谢,第二天我再去量血压的时候,他已经去世了;我才发现一个人的生命是如此的珍贵而又脆弱,看着身边病人的家属一个个哭得不能自已,我开始感叹,我们是多么需要珍惜身边的亲人朋友们。
每次来新病人的时候,我们都要给他们量生命体征,看着他们颤颤巍巍的手和行动不便的身体,我想起我的爷爷奶奶,多么希望他们一直健健康康的,不要被疾病困扰着。
作为一名实习护士,我做好了有时候不被患者理解的准备;但真的遇到了不理解的家属,我心里很不是滋味,但是也被有的患者所感动,这些感动可能就是我们为人民服务的动力吧。
实习的日子虽然已经结束了,我相信随着进入临床实习,我会获得更多的知识,拥有更丰富的临床经验。我会以严格要求自己,努力完成本职工作为标准的。
大学生实习心得
xx个月的实习已经结束了,实习期间我和同学轮转了神外,儿科,妇产科,手术室,重症监护室,急内等等,医院的老师们都很有耐心,对于一开始什么都不懂的我们细心而又严谨地教导我们,给我们动手的机会,在征得患者的同意下,让我们进行有创操作。其中让我印象最深刻的是急诊内科。
在内科的工作和外科大致上大同小异,按时按点测血糖,量血压,量体温;换换盐水,给病人吸氧。在来急内之前,我一直以为死亡离我们很遥远,直到有一次我给一位老爷爷量血压,他每次都会很有礼貌的说谢谢,谢谢,第二天我再去量血压的时候,他已经去世了;我才发现一个人的生命是如此的珍贵而又脆弱,看着身边病人的家属一个个哭得不能自已,我开始感叹,我们是多么需要珍惜身边的亲人朋友们。
每次来新病人的时候,我们都要给他们量生命体征,看着他们颤颤巍巍的手和行动不便的身体,我想起我的爷爷奶奶,多么希望他们一直健健康康的,不要被疾病困扰着。
作为一名实习护士,我做好了有时候不被患者理解的准备;但真的遇到了不理解的家属,我心里很不是滋味,但是也被有的患者所感动,这些感动可能就是我们为人民服务的动力吧。
实习的日子虽然已经结束了,我相信随着进入临床实习,我会获得更多的知识,拥有更丰富的临床经验。我会以严格要求自己,努力完成本职工作为标准的。
大学生实习心得
为期xxxx个月的生产实习结束了。这半个月来,我们经历了很多,学到了很多,同样也领悟了很多。俗话说实践是检验真理的标准。我们生活学习都在学校,接触的是课本是公式,很难有机会接触工厂的实物以及流程,但通过这半个月的生产实习,我的这些错误观点都改变了。书本上的知识是基础是保障,没这些知识公式的支持你在工作岗位上会很迷茫,会不知所措的去摸索,结果还会是一知半解。
实习的最后2天我们一起进行了实地测量。这个任务单靠一个人的力量和构思是远远不够的,只有小组的合作和团结才能让实习快速而高效的完成。这次测量也培养了我们同学间的分工协作的能力,增进了同学之间的感情。测量中我们每个组员都分别独立的观察,记录每一站,并准确进行计算。做到每步都检查无误,这样做不但可以防止误差的积累,及时发现错误,更可以提高测量的效率。我们怀着严谨的态度,认认真真完美的做好每一步,直至符合测量要求为止。培养了我们严谨的科学作风。
半个月的实习真正做到了让我们从一个学生到一个公司职员的转变,使我们体会到什么才是真正的社会,真正的工作。实习时间不长,但却教给我们在学校永远学不到的,在实习期间,感谢各位领导老师对我们实习提供的帮助,在你们的帮助下,我们学到了很多,使我们深知,毕业只是求学的一小步,社会才是真正的大学。
本文关键词:大学生实习报告,大学生社会实践报告心得体会,大学生暑期实习,大学生顶岗实习周记,大学生暑期实习网站。这就是关于《大学生实习心得,大学生顶岗实习周记(备忘录模式不只是记录怕忘记的东西那么简单)》的所有内容,希望对您能有所帮助!更多的知识请继续关注《犇涌向乾》百科知识网站:http://www.029ztxx.com!
版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。