項目 | 內容 |
---|---|
班級:北航2020春軟件工程 | 博客園班級博客 |
作業:Beta階段發布聲明 | 發布聲明 |
發布方式、發布地址與運行環境要求
軟件主體
我們的軟件主體作為Web應用在 http://114.116.135.181/ 發布,用戶只需要使用主流瀏覽器訪問網站即可。
下面是對運行環境的說明:
-
網站依賴於Cookie來存儲登錄信息,請不要阻止Cookie
-
在Safari瀏覽器中(MacOS / iPadOS)請不要勾選“阻止跨站跟蹤”選項,否則網站可能無法正常登錄跳轉
-
在Firefox瀏覽器中部分與瀏覽器快捷鍵沖突的快捷鍵可能無法使用,如使用
Ctrl + -
折疊代碼可能會觸發頁面縮放 -
請保證瀏覽器及系統版本較新以獲得最好的使用體驗
瀏覽器擴展
我們還為快速使用Visual Lab Online開發了簡潔小巧的瀏覽器擴展(支持Chrome瀏覽器和微軟新版Edge瀏覽器)。
擴展在GitHub Releases發布,請下載后解壓zip文件,得到一個名為vLab-chromeExtension
的文件夾。請按照如下步驟安裝:
-
打開Chrome瀏覽器/新Edge瀏覽器,地址欄輸入
chrome://extensions/
或edge://extensions/
; -
在打開頁面中勾選或打開“開發人員模式”,再點擊“加載已解壓的擴展程序”或“加載解壓縮的擴展”,選擇剛剛解壓出的
vLab-chromeExtension
文件夾; -
安裝成功后,擴展圖標將出現在“已安裝的擴展”列表中。
Beta版本新功能
登錄注冊頁
注冊時郵箱驗證
為方便用戶忘記密碼時能夠重置賬戶密碼,我們在注冊時新加入了郵箱驗證步驟:
用戶需要輸入用戶名與關聯郵箱,輸入密碼及二次確認密碼后,發送驗證碼到郵箱並填寫驗證碼,驗證通過后才可完成注冊。
忘記密碼
新加入“忘記密碼”功能,入口位於主頁登錄界面最下方,方便忘記密碼的用戶將賬戶密碼重置為新密碼:
只需輸入注冊時填寫的用戶名和郵箱、輸入並確認新密碼、進行郵箱驗證即可修改密碼。
其他優化
- 涉及到用戶決定賬戶密碼時,都加入了重復輸入框進行確認,避免用戶輸入錯誤導致賬戶無法登陸。
- 密碼框均加入“顯示/隱藏”密碼按鈕,方便用戶確認自己的密碼是否正確。
個人中心頁
向其他用戶分享項目
在每個項目卡片中加入分享按鈕,點擊可以通過輸入用戶名的方式向其他用戶發送分享邀請。發送分享邀請並被對方接收后,項目將被多人共享。
分享有只讀共享和可寫共享兩種模式,分享者可以選擇共享的權限。分享者也可以刪除共享的用戶。
查看項目分享邀請與確認
在頁面右上角加入項目分享邀請與確認功能。當有其他用戶向當前用戶分享項目時,將在右上角提示。點擊打開可以進行處理。
草稿模式入口
在頁面右上角加入“草稿模式”入口。
草稿模式能使用戶無需創建項目和創建文件、一步快速創建臨時代碼文件(即“草稿”的含義),並支持交互的運行與輸入輸出,滿足了用戶以下的使用場景:
- 突然想到某個點子需要用程序驗證;
- 需要編程解決某個問題,但只需要結果無需保存代碼;
- 不確定某個語法的正確寫法,需要開一個臨時代碼文件進行試驗
- ……
對草稿模式的具體描述詳見下文。
IDE頁
外觀
- 重構配色方案,成為“淺色模式”;新引入精心設計的“深色模式”,使夜間寫代碼更加舒適;加入一鍵主題切換按鈕。
- 重構UI組件,優化交互體驗,組件動畫更流暢,組件樣式更精致。
調試
- 在編輯器中點擊行號左側可以添加/刪除斷點,並以高亮顯示斷點行:
- 在左側的“構建設置”面板中新增“調試”按鈕,點擊跳轉到調試面板並運行調試器進程:
- 在左側新增“調試程序”面板,點擊 (Re)Start、Continue、Step Over、Step Into、Step Out、Stop能控制程序的執行過程,正如其他IDE一樣。
當程序運行到斷點或程序運行完一個Step后,點擊“Local Variables”能在控制台打印出當前程序塊所有局部變量及其值,方便調試。
- 在調試過程中,底部的“調試控制台”中將顯示代碼的執行位置、局部變量的值等信息:
上傳與下載
在上傳與下載面板中,我們進行了如下優化和功能新增:
- 合並上傳導入面板與下載導出面板;
- 優化上傳文件功能,支持同時上傳多個文件;
- 增加上傳文件夾功能,能上傳某文件夾及其子文件樹中的全部文件;
- 增加從GitHub導入功能,用戶填入GitHub倉庫地址后能通過clone的方式導入GitHub倉庫。
同時,我們也在右鍵菜單中增加了對選中的文件和文件夾進行下載(該文件)/上傳(到此處)的功能。
以默認代碼快速新建文件
在文件樹中右鍵菜單新增“使用默認代碼新建”選項。點擊可以創建如下的默認代碼文件,使得用戶可以快速上手,免去不必要的工作:
草稿模式頁
側邊菜單欄
我們將IDE模式下的頂部菜單欄移植到了左邊,使用戶仍然能獲得大部分功能的良好體驗。
編輯器
新建草稿時,將默認代碼填入編輯器,使用戶可以理解書寫其主要邏輯,不浪費用戶一點時間。
同時為效率考慮,草稿模式的編輯器取消了完整的語言服務,但仍提供了語言關鍵字自動補全和已輸入單詞(token)的自動補全,同時IDE模式下的“代碼片段”功能得到了保留,仍然保障了編程效率。
運行與輸入輸出
我們仍然提供了運行與交互式輸入輸出功能。
點擊運行按鈕將在Output框中提示“please send your input”,用戶在Input框中鍵入待輸入的內容(支持換行),點擊“提交輸入”即可獲得實時的輸出反饋。
瀏覽器插件
我們為用戶能快速、隨時隨地使用草稿模式,開發了Chrome/Edge瀏覽器插件作為快速入口,界面如下:
- 點擊選擇器可以選擇新建一個Python語言草稿還是一個C++語言草稿
- 點擊“新建隨筆代碼”按鈕將在新標簽頁跳轉到草稿模式頁面中
修復的缺陷
客戶端
- 將部分資源使用CDN加載,優化了頁面的打開速度
- 修復了只讀項目存在修改可能的bug
- 修復了刪除文件再創建同名文件,文件內容重新出現的bug
- 修復了文件未打開時debug出錯的bug
- 修復了菜單欄外觀樣式不居中、不對齊等bug
- 修復了Terminal的最下一行被邊框覆蓋的bug(見Alpha發布聲明——問題與限制)
- 修復了右鍵菜單和下拉菜單無法完全展開、存在滾動條的bug(見Alpha發布聲明——問題與限制)
- 修復了右鍵菜單點擊無響應的bug(見Alpha發布聲明——問題與限制)
- 增加了對隱藏文件的過濾(見Alpha發布聲明——問題與限制)
- 增加了對Terminal的主題調整(見Alpha發布聲明——問題與限制)
- 修復了Terminal中尚未提交的命令與新運行命令沖突的bug(見Alpha發布聲明——問題與限制)
- 修復了Terminal中的折行問題(見Alpha發布聲明——問題與限制)
服務器端
- 使用gzip壓縮大部分資源,優化了頁面的打開速度
- 將文件轉儲到第三方存儲提供商,大幅降低了磁盤占用壓力
- 借助文件轉儲優化,將docker容器的生命周期優化為“即用即焚”,大幅降低了內存占用壓力,並發支持更佳
已知的問題與限制
- 繼承自Alpha版本
- 語言服務不穩定,請避免引用過多不必要的頭文件
- 每個Notebook有一定的內存使用限制,請不要進行過分操作
- 在Firefox瀏覽器中,部分與瀏覽器快捷鍵沖突的快捷鍵可能無法使用
- 在Safari瀏覽器中,預覽定義/預覽引用的預覽框可能無法正常顯示
- 在編輯器的下端右鍵可能會導致布局出錯
- 文件管理器中的粘貼操作將會覆蓋重名文件,暫不支持 "duplicate"操作
- Beta版本的新問題與限制
- C++項目可能無法進行調試(GDB進程啟動可能出現異常)
- 在使用高峰期間部分請求可能失敗(一般刷新即可恢復正常)