哆啦酱的博客

记录学习和生活中的杂事


  • Startseite

  • Archiv

学习react

Veröffentlicht am 2018-01-21

最近在学习react框架,经过差不多一个月了,多少有点收获,中间的过程可以说是举步维艰了(我太笨)。记录一下
首先,这次学习react框架,其中用到了cesium,redux,material这些。这些对我来说也全部都是新的,没有接触过,其实学习react最难的部分,就是喝redux结合的部分,关于怎么正确的梳理state的流向,如何使用state让我的一个头两个大。不过还是硬着头皮继续学习,redux刚刚在一知半解的状态。不过刚刚学会怎么进行界面之间的组建交互。
这里记录一下在react中使用material-ui吧,这是谷歌出品的一个专门为界面而生的选手,界面效果灰常的不错,可以通吃pc和移动端,毫不费劲。最简单的例子,使用yarn add react-app react 创建一个最简单的react例子
在这个简单示例中使用yarn install material-ui来安装。组件内的响应可以自定义函数,实现控件出现,消失。使用state来管理。这中间涉及es6语法,用的比较多的算是箭头函数,导入,导出,webpack打包机制,npm(yarn)来启动程序。
react框架中,index.js是程序的入口js,里面的render即为入口函数的渲染,react框架遵循一个自上而下的数据流,整个框架的入口挂载只有一个父节点,通过父节点,将数据一层一层的传下去,而不是硬挂载。可以通过this.props来传入全局的state,使用class类来继承父组件。其中,props的引入是在类中的构造函数里面,构造函数中要将定义的函数进行绑定,即内联的方法添加了事件处理函数。

使用react这个框架已经两个多月了,记录一下心得。

  • 安装
    --- react npm install -g create-react-app
    --- create-react-app my-app
    --- cd my-app
    --- npm start
    
  • 通过上述操作即创建了一个react,可以通过这个脚手架可以写一些自己的代码了。
  • 这次主要记录的是react中组件的创建,可以通过function Component(){return()} 形式来创建一个不传状态的组件;通过class MyComponent extend React.Component(){} 来创建一个带状态的组件。
  • 状态的提升 如果有两个平行组件需要实时通信互通有无,这个时候需要状态提升,即把这两个平行组件的状态都放在最近的一个父组件中,来实时更新子组件的状态。

最近学习cesium

Veröffentlicht am 2017-12-25

osg基础知识

Veröffentlicht am 2017-11-23

今天看osg的视频学习了两个知识点:
1.定时器
2.基本图元

定时器:
osg::Timer类和osg::FrameStamp两个类来实现定时器。通过计算当前帧来和每秒需要播放的帧数来设置sleep值。有两种方法可以读取加载模型前后的时间,通过Frame来读取当前帧数。其实我家没有去看最长的一帧,据说很经典,对帧数的理解很是浅薄,等看了之后,再把这边补上。

基本图元:
在osg中,场景图形采用一种自顶向下,分层的树状数据结构来组织空间数据集,以提高渲染效率。场景图形树结构自顶部是一个根结点,从根结点向下延伸,各个组节点中均包含了几何信息和用于控制其外观的渲染状态信息。根结点和各个组节点都可以有0个或多个子成员。在场景图形的最底部,各个叶结点包含了构成场景中物体的实际几何信息。几何体简单点来说就是场景图形节点下面悬挂的物体呐~484

osg中所有的几何体的渲染都必须与Geode相关,Geode类,使用addDrawable()函数来关联应用程序中需要渲染的几何信息。一个Geode可以包含多个Drawable,通过addDrawable()方法加入Geode类中,生成一个Geomety或者是一个shapedrawable。

在osg中生成几何体的三种方法:1.松散封装的OpenGL绘图基元osg::Drawable;2.OSG中预定义的基本几何体;3.从文件中导入的场景模型
这三个方法的基类都是osg::Drawable,派生子osg::Object(该类派生子osg::referenced),最常用的是DrawPixels,Geometry,shapedrawable,osgText::TextBase,其中:DrawPixel用于绘制图像;osgText用于绘制文字;在场景中添加一个几何体,必须要先定义一个Geode用于添加图形节点;,通过addDrawable来添加osg::drawable类型。在该类的构造函数中提供了关联osg::Shape的方法:实际应用中提供了osg::ShapeDrawable来完成这个功能
ShapeDrawable(Shape shape,TessellationHints hints=0)//第一个参数即为要绘制的几何体,第二个为网格化类,主要用于设置几何体的精细程度。绘制几何图元对象时,先创建一个Geometry对象,这个对象中要设置绘制所需的基本信息,图元的顶点、顶点颜色、顶点关联方式以及法线。

今天通过写小例子对osg算是有了一个入门的认识!虽然说看视频是效率最低的行为,不过我觉得能通过这个来入门也是不错(对我这种笨人来说可能很适合)

第一个项目的结束

Veröffentlicht am 2017-11-18

其实这篇博客应该是两天前写,但是由于我的懒散拖到了现在。从我进公司开始到2017年11月15号项目终于验收完成!可以说这是我工作以来的一段比较难忘的经历吧,从一个非常抵触写代码,到义无反顾的辞职来武汉写代码(鬼知道我经历了什么)。刚刚开始肯定是很痛苦的(现在也是),甚至不知道网页调试在哪儿,不知道怎么去编辑js代码,甚至说为什么我刚刚来就让我哦写一个下个月就要验收的功能?那段时间做梦都在写代码,每天回到家里根本没有时间去看书补充理论知识,只想躺在床上,放空一下大脑。经过一个多月的磨练吧,可以说是磨练,我终于把那个功能写出来了,不过还是有bug,以至于在去水利厅汇报的时候,心惊胆颤的说,千万不要挂掉!想想那段日子还是挺熬人的,不过这也是成长呢!
在进入11月的时候,模型组终于加进来了,当然也马上面临项目的验收,这个时候,终于和水利厅对接完了最终的需求。我们得到的结果就是,必须要马不停蹄的加班改改改!我又进入了急速运转的模式,写前端,调用接口。可能真的是积累有收获吧!这次虽然任务重,时间紧,不过我觉得做起来比刚刚开始的时候得心应手多了!虽然也难,不过还是应付过来了,终于在连续上班十几天,加班七八天之后,我们的项目顺利验收!
这一个项目结束了,接下来就是做底层,作三维。对接下来的目标更加清晰了一点,自己想要的也明确了一点。加油吧!少年!

在武汉的这些日子

Veröffentlicht am 2017-10-25

不知不觉已经来武汉整整三个月了,自以为终于解脱了原来的单位,长长的舒了一口气,就连喝农夫山泉都觉得是甜的!可是,骚年你不知道嘛?大城市里吗处处都是危机。。。不过总算是暂时在武汉落脚了。有一个不错的舍友,还有自己单独的一间房子,可以做饭(这一点特别满意!)。在来武汉之前与一个自认为还不错的好友发生了矛盾以至于我现在和别人住在一起,当然了也和那个“好友”没有了联系了,翻篇。
来说一下工作吧!
刚刚来到单位我的任务就是在我们小组中写前端,也就是对接她们的底层接口,这里要为我同学打call(经常有不会的问题去骚扰,并没有管是不是不堪其扰~)。虽然前端的东西不难,可是对于一个一年多没有碰代码的人来说,也是灰常有难度的(啊!直接说自己笨就可以了,23333)。每天的日子就是,啊这个该怎么办,下个月要去演示了啊!好紧张,怎么办?中间还写代码的过程还是有点艰辛的,不过挺过来了。事实证明,着急解决不了问题哒~要去看书要去查资料还要还要去问。经过两个多月的练习,这个时候对我们整体的系统框架和业务也有了进一步的了解,就在这个时候,师兄说你开始了解底层吧??What??黑人脸问号!一万个不情愿啊,但是没有办法,这个项目也快验收完结了,所以目前来说前端工作做的差不多了,不过对于两个月的小白的我来说也是收获了一些,不过对前端还没有一个系统的认识,对设计模式,还有框架都是似懂非懂的~所以入了几本前端的书籍,准备在以后的日子中不断分享自己的读书心得,嘻嘻。
来说一下生活吧!
我来武汉的时候正是7月份,开始热起来的时候,中间经过了酷暑!!我以为我会瘦成一道闪电,氮素,图样图森破,我胖了。期间和我老弟聚了几次,但是由于时间关系,都是匆匆一聚而别,总感觉还是小时候好,天天在一起。以前盼着长大,现在觉得小时候真好!
暂时写到这里吧~2017-10-25

昨天一天真的好丧,大概是来武汉最丧的一天了。具体原因就是各种无厘头的小事找上自己,弄的整个人很焦虑,为了结束丧丧的一天,下班回家的路上路过花店给自己买了两束鲜花,可是香呢~一个晚上都是香的,早上是被香醒的!昨天给自己定的前端小任务也没有如期完成,然后底层的简单任务依旧没有完成。。。我的心啊!!早上我的同门(昭妹)做了我的树洞,还越好周末去骑行一并散心,去除焦虑,嗯!中国好同门。今天晚上去做痘痘,把脸上弄的干净一些,心情也会好一些吧!2017-10-26

这两天一直在弄项目验收的事情,写一些文档和ppt,然后好像没有看底层代码,然后压力也没有那么大了,可能也是坚定了自己的学习目标吧!一心想学习js和webgl的知识,同事也给予了很好的帮助,这个时候需要的就是自己的努力了。确实,想要搞好一件事情是不容易的,就像自己想要一个完美的人生一样,什么事情都要走心,马虎不得。
上周末和我的同门骑行东湖,哇撒,那个风叫一个放纵!被吹的东湖的水往脸上拍,可是,我们依然走完全程,然后吃了饭,聊了半天天回家了,整个人真的感觉舒服很多啊!也许这就是放纵的感觉吧!放纵完了之后接下来要专心投入我的目标了。加油!2017-11-01

连着上班两周了,中间连续加班7天。。。也许今天在加班我就废掉了。15号项目验收,目前为止我依然不知道自己做了些什么了(苦笑),每天忙忙的不知道做了什么,只是知道自己很忙,很忙,脖子很痛很痛。不过最近也是有收获的。以前两个月才能做出来的事情,我一周就弄完了,然后以前不知道在哪儿改的样式现在也知道一些了。这让我觉得,好像持续学习真的是有用的,最起码在deadline的时候可以学以致用,只想说前几个月的积累还是有效果的。
这些天的加班也让自己认识到自己一个很大的问题,那就是对一些知识掌握的不透彻,导致很多细节问题,对一些逻辑考虑不周全,导致系统运行出现bug。还有就是对自己改了一些什么不清楚(是真的老年痴呆)。前天休息了一天并没有让我很好过,因为睡醒了之后只想吐,终于吐出来之后发现,整个人已经坚持不住了。造成这个结果的就是自己技术不够过关,然后自己做很多多余的工作,所以要加强技术学习。
今天熬了一些红枣姜红糖膏,来补一下元气,不得不说这是一个好东西,就是看上去没有那么友好了。不过为了身体嘛,忍了。每次记录都是流水账,文笔太差了,对自己也是讲究一下了。。。2017-11-13
——-待更——-

Hello World

Veröffentlicht am 2017-10-13

折腾了三天之后终于在同学的帮助下把gitbub的博客搭建好了~~真是面对自己真的不知道该说什么,也许折腾一下就好了!
从《javascript高级程序设计》开始看起。面向对象即说的是一个为Object创建一个实例,其中包含对象的属性和方法。

12

yanhejin

没有铜锣烧就没有四次元口袋

16 Artikel
1 Tags
© 2018 yanhejin
Erstellt mit Hexo
|
Theme — NexT.Muse v5.1.3