作业4:从需求分析到软件设计

vs code作为目前最受开发人员欢迎的文本编辑器之一,优秀的远程开发和调试功能必不可缺。而vs code通过Remote Development插件来实现这一功能。

需求分析

当我们要去逆向一个程序,首先要明白我们想从这个程序获得那些体验,这时候就需要进行需求分析。也就是这个程序哪些功能是我们自己制作时需要去实现的。

功能需求 

1.完整的开发和调试功能。

2.源码的同步。

3.运行远程主机的系统和开发环境。

4.允许多个机器或位置访问远程主机。

5.本地机器可以连接到不同开发环境的远程主机,使用容器和WSL。

性能需求

稳定且延迟在可接受范围的连接。

安全需求

1.网络连接的安全

2.只有在获得权限后才能修改远程主机的内容。

逆向工程

 

vs code基于electron开发。而vscode插件一般用TypeScript和JavaScript进行开发,Remote Development同样如此。

Remote Development使用C/S架构,本地主机作为用户端,远程主机作为服务器端。

在客户端中,Remote Devlopment插件创建了终端窗口,通过SSH隧道将用户的操作请求发送到远程服务端上。

在服务端中,插件通过监听客户端请求的方式来对用户操作做出响应。

src/vs/platform/remoteTunnel 实现隧道相关的功能。

src/vs/platform/remote 实现了与远程主机通信相关的一些接口

src/vs/workbench/contrib/remote 包含了关于remote devlepment相关的主要实现

src/vs/workbench/services/remote 包含 remoteAgentService.ts 提供远程代理服务等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值