请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

课程跳跃有点大

目前看到4-4,前一节课还在讲理论,这节突然项目结构和基础代码就出来了,连BaseStarter从哪来的都不知道,看了之前同学的提问知道是免费课中讲过,但如果没看到呢?

给老师提点建议吧

  • 本门课程是实战课且推在慕课网首页,而免费课没有,所以没看过免费课的同学大有人在,而且课程标题是从零开始,所以我认为本课内容应该跟之前没有太大关联
  • 退一步说即使非要用到免费课的内容,也应该在视频中做个简单的介绍,可以提供一个开始项目并做个简单的介绍,比如这个BaseStarter是啥
  • 如果跟免费课关联太大那可以在此提示同学去观看免费课,在视频中介绍如何从之前课程过渡到本课,现在这样体验很不好

希望老师能在后续中改进,并提供补录或修改相关章节,谢谢

正在回答 回答被采纳积分+3

4回答

枫荇 2019-05-19 07:39:37

@柳言飞同学,首先非常感谢您的建议!BaseStarter是我在课程设计上故意留下的一个疑问,哈哈,本意是:

  1. 同学们对这个设计的自我思考和理解

  2. 希望同学们能通过问答区提问的方式来验证自我思考和理解的准确性

  3. 另一方面也是为了”本课内容应该跟之前没有太大关联“,同时还要避免重复的内容在不同的课程中出现,毕竟是实战课程。

但没想到给同学带来了更多疑惑,非常抱歉。

退一步说即使非要用到免费课的内容,也应该在视频中做个简单的介绍,可以提供一个开始项目并做个简单的介绍,比如这个BaseStarter是啥

如果跟免费课关联太大那可以在此提示同学去观看免费课,在视频中介绍如何从之前课程过渡到本课,现在这样体验很不好


这个2个问题,也是为了”本课内容应该跟之前没有太大关联“,避免如果因为在课程中提到”在免费课程或者哪个课程中介绍过“的内容时,也会引起歧义”必须要学免费课程“,本课程在设计上就是避免了跟之前没有任何关系,一方面课程内容不能重复,一方面免费课程不是必须的,但还是给同学造成了疑惑和体验不好,很抱歉。


也望@柳言飞同学能够理解,课程设计上很难顾全大局,满足所有人的需求。另一方面同学的建议也非常好,以后再课程设计上也会尽量改进。



1 回复 有任何疑惑可以回复我~
  • wlxz #1
    说实话,真应该说明一下BaseStarter哪里来的,
    虽然有golang基础的同学可以去看源码会明白,
    但是课程中突然跳出没有讲解到的源代码,学习体验真的不是很好
    回复 有任何疑惑可以回复我~ 2020-01-22 17:25:05
qq_红_14 2020-05-06 16:21:53

+1 一脸懵。。。。

0 回复 有任何疑惑可以回复我~
oog 2020-02-21 14:14:07

同样的感受,我是看完了第四章实在迷糊,把代码翻了半天才搞明白

0 回复 有任何疑惑可以回复我~
枫荇 2019-05-19 22:47:31

BaseStarter实际上被设计为一个具备基本功能的结构体,实现了所有的接口方法,默认不做任何事情。对于不同类型的starter,在其生命周期中执行的事情也不一样,有些是全阶段都要执行,有些是只需要在某个阶段执行就行,所在在实现各种starter的时候,可以直接嵌套BaseStarter,来减少没必要的代码,起到代码复用的目的,类似继承的概念,但不太一样。在go语言,采用结构体的嵌套模拟继承功能的。被结构体嵌套实际上被叫做匿名或者嵌入字段(类型名充当了字段名),所以实际上就是这个结构体的一个Field, 当嵌入一个结构体类型时,这个嵌入类型的方法就变成了外部类型的方法,但是当它被调用时,方法的接受者是内部类型(嵌入类型),而非外部类型。如果外部类型实现了同样的方法,这个方法被调用时,如果外部类型包含了符合要求的方法,它将会被使用。否则,通过方法提升,任何内部类型的方法可以直接被外部类型使用。

0 回复 有任何疑惑可以回复我~
  • 提问者 柳言飞 #1
    谢谢回复、看了之后确实明白了,但上面的内容真应该在课程中体现出来。还有课程剪辑的问题很大、编辑器边栏裁切的太多了导致看不清目录层级
    回复 有任何疑惑可以回复我~ 2019-05-25 22:36:12
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信