Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

利用前端三件套重写对话机器人 #1522

Open
pyz610173878 opened this issue Jan 5, 2023 · 4 comments
Open

利用前端三件套重写对话机器人 #1522

pyz610173878 opened this issue Jan 5, 2023 · 4 comments

Comments

@pyz610173878
Copy link

最近在学习前端技术,想利用前端三件套重写对话机器人,通过搜索,发现有几种类型的存在形式。

  1. 各种APP上面的对话机器人,自动机器人。
  2. 通过调用微软的Web chat实现
  3. 纯HTML上面的对话机器人。(点进去有些网页,会自动弹出一个对话框,然后你可以跟他进行对话,他会回答。)

为了降低难度,打算先写一个纯HTML界面的。我下意识地第一个思路就是,采用课程讲过的方式。经过初步的尝试与探索,发现以下相同点与不同点。

  1. 依旧是输入处理输出的方式。不同的只是,交互方式的改变(不是在命令行里面了,而变成了浏览器界面)与语言的不同写法,(用HTML显示问题,JavaScrip显示答案)
    image这是自己的尝试结果。我尝试找出他们之间的共性,进行泛化。发现都需要获取标签,选择事件,以及执行事件的效果。但我不知道,该以什么方式进行类似的泛化与责任分离。想听听老师的思路。

image

@neolee
Copy link
Owner

neolee commented Jan 13, 2023

你的问题可能要更具体一点……

@pyz610173878
Copy link
Author

image
想练习UDB程序设计方法,练习这个方法的思考模式。但不用python进行实现,利用HTML CSS,js。三种语言设计出责任分离的模块化设计,包括各个模块的职责、实现思路以及将各模块粘合起来的方法,但卡在不知道该如何设计出责任分离的模块。

@neolee
Copy link
Owner

neolee commented Feb 1, 2023

卡在不知道该如何设计出责任分离的模块

这个不用执着,先努力想办法实现你要的功能,先实现最最基本的一点点功能,然后不断加功能直到完成你的目标。

在这个过程中你会发现有些地方改起来特别麻烦,这时候就可以想想如何优化你的系统架构,哪些东西可以抽取出来变成公共模块,哪些可以合并起来处理,哪些可以利用面向对象和面向函数的思想来优化抽象层次,等等。

顺便:Web前端技术栈用来学习抽象思维,是比较难的,因为配套的工具不是为这个设计的,初学者比较容易陷入到工具的细节中。

@pyz610173878
Copy link
Author

谢谢老师

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants