今天是2018年7月20号,周五。从周一开始实习到现在,终于想起来要写日记这种东西了,可以记录一下自己这一天所学所做所知也是蛮不错的。先简单总结一下自己的大学生活吧,算是多姿多彩,体验了很多东西。在大学里,我的学习轨迹大约是大一的一开始认真了一段时间,然后从大足赛回来,心思就已经不在学习上了。然后一直持续比较低的投入状态吧,一直到了大三下,算是猛然醒悟,危机感十足,开始恶补。奈何之前基础打的也一般,学习之路也比较坎坷,经常需要补一些之前的基础。但让我收获最多的,是在这段认真学习的时间中,享受投入在代码中的感觉,虽然比不上很多厉害的前辈,但也算是能沉浸在代码里面了。废话了这么多,回顾一下这第一周的实习吧。

  第一天

  因为这一天来的时候组长刚好请病假不在公司,所以顺其自然的划了一天水。早上主要是在之前看了几天Vue.js的基础上,再熟悉和实践一下Vue.js这个框架的使用,然后大概了解了一下vue-router的作用。对于这一天的我来说,大概搞明白了单页应用是怎么回事,因为之前没有看懂vue-router,不理解单页应用是怎么做到切换的。在了解了vue-router之后,大概明白了单页应用是通过配置<router-link>这个标签来控制页面中组件之间的跳转,当然还有编程式的方式,通过this.$router.push()这个方法,传入路由地址实现跳转。然后通过<router-view>这个标签,控制页面中组件的显示,如果是嵌套的组件,那么也可以通过在组件中使用这个标签来显示子组件。

  下午的时间基本也是在写Vue的一些简单demo,实现简单的todo list的功能,因为以前不怎么接触前端,所以对于Vue数据绑定这个功能感觉也是十分新奇和好玩。但是因为主要想做的方向不在前端,所以对于Vue我自己心中的定位也是在能够会用就好。除了写demo之外,和后面的同事要了他在做的项目的代码,当时想着看懂他们的代码,然后就能申请任务来做了,确实前端里组件这些东西的逻辑比较少,所以感觉看起代码来不会很费劲,还是很轻松的看明白的。JavaScript的部分的话,倒是看起来不是很舒服,首先语法和Java比起来就让我觉得很不规范,看着就难受。然后再看代码和写demo之中,一天就过去了。PS:公司的食堂味道在我意料之外,竟然还不错。说实话食堂的环境让我看起来觉得会是一家难吃的食堂,但是吃的时候觉得真的还ok,一周下来我也没觉得有特别无法接受的一天,这对我来说应该算一个极大的利好了。

  第二天

  今天组长回来了,和我简单的说了些话,大意是HR那边说我熟悉前端,然后想让我学多点Vue好写项目里的前端部分。其实我是更想发展后台的,于是我就和他说,HR那边应该是搞错了,我是更熟悉后端的,然后也更想做后台方面的东西。万幸从后面的任务来看确实也让我更多的接触到了后台,也是庆幸我说出了我的真实想法,没有憋屈的做不是很想做的东西。所以看来还是要勇敢提出自己的想法和需求的。这一天基本也是以熟悉Vue为主,因为周五写的实在想不起来具体做了些什么了哈哈,以后坚持每天写,这样才能写出东西。

  第三天

  今天组长布置下来了关于后端的任务,学习关于企业微信的开发,所以今天又是一天照着官方api文档写demo的一天。在这个过程中倒是了解了不少相关知识,收获特别丰富,有JSON处理主要是Http请求和响应这两个部分。然后我自己注册了一个企业微信,用于测试,说实话,因为以前从没有接触过需要调用别人接口的代码。所以当调用了微信官方的接口,得到了返回的数据后,那种感觉真的超级棒。总结起来就是,JSONObject可以用来处理JSON格式的字符串,生成JSON类型的实体,感觉就是一个集成了一些其他方法的Map。主要用到的也就是put和getString方法。然后Http请求这方面,确实是以前根本没有碰过的。哈哈这样一看好多以前没接触过的东西啊。

  HttpClient用于发送请求,HttpGet和HttpPost分别用于构造get和post请求。get和post主要应用场景是一个获取数据,一个提交数据。简单来说主要因为get方式的参数存放在url中,有多种限制且不安全,不适合用在提交数据的场景。而post则封装在http请求里,没有诸多限制,所以一般提交数据的场景是使用post方法。两个方法都可以拿到返回的响应,响应中可能有返回的数据也可能没有,就看实际情况了。HttpResponse就是返回的响应,其中有方法对应得到请求的header或entity等。Entity类可以和JSONObject相互转换,响应中的数据就是从entity类型转为JSON格式。这一天在我自己的企业微信上实现了不少简单的demo,成就感满满。

  然后今天组长在下班前给我提了一个需求...因为项目的页面在微信上显示的有一些问题,Vue生成的导航栏最后在html上生成的是<body>下的<header>标签。但是微信自己有一个顶部的显示栏,然后和我们自己写的导航栏就有很蛋疼的视觉效果,简单来说就是有两个页头,确实不好看。组长说,通过二次验证(实际上我觉得他应该是用错名词了,因为二次验证在企业微信特指成员加入企业微信时,需要跳转到企业自己的页面进行第二次验证才能加入,所以以后组长说的二次验证我都用授权登陆这个说法),就可以实现将嵌套的页面变为原生微信页面。在我这个前端小白听起来好像是那么回事,然后我就去做授权登陆。但是因为这个时候我没有后台代码,所以我构造了拿微信code的链接放在菜单里,回调的url是我们项目的主页,这样应该也算是授权登录了吧,虽然我没有处理code,但是用户毕竟授权了。结果显而易见,没有达到组长的需求。然而在我主动加班的时候,我发现,这个微信的原生顶部导航栏,其实就是网页里的标签页嘛,里面的文字属性是绑定的<head>标签下的<title>属性。知道了这个之后我更愁了,怎么反驳一位资历、经验都很厉害的项目组组长呢。唉,想来想去就发了一条微信简单说明了一下情况就没管了,第二天再和他说吧。于是这一天也就这样过去了。

  写的有点点小累,记了很多流水账,毕竟是第一次写博客,也没提供什么值得大家学习的东西,毕竟我连半桶水可能都算不上。第四天和今天的内容就放到下一篇来写吧。生活、工作上的东西之后会基本不写了,打算专注于代码或是一些相关的东西,毕竟写博客的意义在于记录自己掌握了什么内容以及遇到了哪些问题和怎样解决。那么今天第一篇博客先这样吧,不知道会不会有人能看,不过无所谓啦,单纯记录自己的daily coding,just for fun!

                                                            Terence Xie

2018.7.20 周五 22:51

TW实习日记:前三天的更多相关文章

  1. TW实习日记:第五天

    今天可以说是非常忙的一天了,要再项目中实现微信相关的功能:授权登录以及扫码登录,还有就是自建应用的发送消息.首先功能代码其实在经过了几天的学习之后并没有很难,但是最让我难受的是在项目中去加代码,首先s ...

  2. TW实习日记:第九天

    这两天有点忙,要改前端网页和加需求上去.所以昨天说的Vue缓存机制也没看,所以打算现在列个挖了的坑的清单: Vue缓存机制.生命周期和钩子函数 使用项目组自用组件来重写静态页面 SSM框架搭建.整合流 ...

  3. TW实习日记:第31-32天

    不知不觉的,实习的净工作天数,已经都超过一个月了.因为对工作内容不是很满意,所以打算月底离职,也不知道是公司太缺人还是我真的能干活,领导竟然三番两次找我让我再考虑...明天又要找我了,哎...随机应变 ...

  4. TW实习日记:第28天

    同前两天一样,等接口,开发,调试接口.重复地做着低级代码得搬运工作,确实挺没意思的.怪不得有些人一直说写低级代码很无聊,没有创造性和成就感.31号准备溜了,还是好好复习准备秋招吧. 挖坑清单: Vue ...

  5. TW实习日记:第26天

    这周组长休年假去了,并且之前主要负责的项目也已经上线了,可以说没那么忙了,手头就一个协助别的组做的移动端项目.可是这个项目特别坑,由于网端是9年前的项目,导致后台的接口有非常多的问题,并且入参多得令人 ...

  6. TW实习日记:第四天

    第四天 早上第一件事就是和组长说前一天的需求的事,简而言之就是两个导航栏不属于一个标签内,自定义导航栏属于<body>下的<header>,微信顶部的则是<head> ...

  7. TW实习日记:第十天

    今天任务很简单,就是出品项目的时间轴显示页面和动态路由设置.其实时间轴页面很快就做完了,在做完处理完数据之后,然而有很多细节需要打磨,这就又考验了我面向搜索引擎编程的能力,根据需求百度了很多css的样 ...

  8. TW实习日记:第八天

    今天早上主要是接着做昨天的微信端网页预览附件,听同事说当打包代码放入服务器上后,就不存在跨域问题了,也就懒得自己写接口了,那么就希望自己能一次过吧...结果写着写着,发现开发文档中关于预览文件的方法, ...

  9. TW实习日记:第七天

    今天早上,将项目的两个企业微信接口:登录和应用消息发送接口,做了最后的收尾工作,把目前我能解决的问题算是基本都解决了.早上还开了一个会,大意是组长封装了许多组件叫我们使用,在不断的使用中打磨组件的可用 ...

随机推荐

  1. FD.io社区中国行暨未来网络技术沙龙·南京站 会议小结

    What is FD.io VPP? FD.io VPP(Fast Data Input/Output Vector Packet Processing)is a new network multi- ...

  2. cocos2d-x开发: 完善接口范例分离模块

    在上一篇文章中,我阐述了一下为什么要做分离这种工作,这篇文章没什么重点,只是将上一次没有完善的工作做完.原本我想做到像Lua-tests那样子,能够一次完全显示所有的tests,然后选择要执行的tes ...

  3. Observer(观察者)模式

    1.概述 一些面向对象的编程方式,提供了一种构建对象间复杂网络互连的能力.当对象们连接在一起时,它们就可以相互提供服务和信息. 通常来说,当某个对象的状态发生改变时,你仍然需要对象之间能互相通信.但是 ...

  4. CentOS7网络连接问题以及重启网络服务失败

    1.重启网络服务失败 在运行“/etc/init.d/network restart”命令时,出现错误“Job for network.service failed. See 'systemctl s ...

  5. VB

    on error resume next: 从该语句开始,遇到错误时程序不会中止,也不会出现错误提示,将继续运行.作用范围直至程序结束或语句所在函数等结束 Public Property :可读也可写 ...

  6. 【js】 ajax 与 axios 区别

    ajax 与 axios区别 Ajax: Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发 ...

  7. java 关于String

    1.两种创建方式 String str1 = "abc"; //字面量创建 String str2 = new String("abc"); //构造方法创建 ...

  8. 大数据 : Hadoop reduce阶段

    Mapreduce中由于sort的存在,MapTask和ReduceTask直接是工作流的架构.而不是数据流的架构.在MapTask尚未结束,其输出结果尚未排序及合并前,ReduceTask是又有数据 ...

  9. 嵌入式C语言自我修养 09:链接过程中的强符号和弱符号

    9.1 属性声明:weak GNU C 通过 __atttribute__ 声明weak属性,可以将一个强符号转换为弱符号. 使用方法如下. void __attribute__((weak)) fu ...

  10. Linux了解一下

    VMware与CentOS系统安装 1, 下载CentOS系统ISO镜像: 国内镜像源 https://opsx.alibaba.com/mirror#阿里云官方镜像站 iso下载地址(此DVD映像包 ...