最近續費了JetBrains全家桶,看到多了一個 DataSpell
看了一圈介紹,貌似 jetbrains 在 Pycharm 原生支援 jupyter notebook,既有插件也有 DataGrip 操作資料庫的前提下,還選擇為 Jupyter notebook 群體開發一款軟體。
于是趁着國慶,果斷下載下傳體驗了一波,看看後面是否需要切換到這個軟體進行工作,下面是一些使用下來的感受。
Part1 亮點
1資料面闆
一個讓我覺得比較亮眼的操作,是可以在單獨的視窗預覽資料、修改資料、導出資料
單獨面闆看資料,不用再設定max_columns等參數,就像操作 Excel 一樣,有需要調整的甚至可以直接右鍵修改值,右鍵也可以直接導出到Excel
這種讓你少寫幾行代碼的快捷操作,在代碼開發階段還是比較舒服的,畢竟有時候一些簡單的操作需要寫很長的代碼。
不過轉念一想,Pandas 将操作 Excel 代碼化,IDE又将一些功能 Excel 化,确實有些灰色幽默。
2自動補全
這也是得益于 IDE 的一個非常好的功能,當我們敲代碼時可以智能的進行自動提示,這樣代碼寫起來就很舒服了,至少對于我來說,平時一半的代碼都是 IDE 寫的
3快速搜尋
如果你使用過 Alfred ,那麼一定是喜歡那種一個搜尋框搜尋全部檔案軟體的功能,在DS中也支援敲兩下 shift 鍵來快速搜尋一些功能、檔案等操作,例如輸入run below 就會自動運作目前單元格之後的全部代碼
4檔案管理
回想之前機遇浏覽器的資料科學任務,每次建立一個檔案,都要傳回到目錄頁面,建立 ipynb 檔案,若要是項目關聯的檔案比較多,可能急需要打開一排視窗。
如果在加上需要寫一些本地的 py 檔案,操作起來将會在多個軟體之間切換,過程是比較痛苦的。
現在使用 DS 将會更好的進行項目開發,
5異常調試
既然是基于強大的 IDE 開發出來的産品,斷點調試等debug功能,自然是原生支援,用起來很絲滑。
6插件
讓我想的一個重要原因就是我已經離不開 Pycharm 的一些插件,現在有種回到家的感覺
7Git支援
同插件一樣,如果你的工作需要用到 Git 進行版本管理的話,那麼使用 DS 進行資料科學工作将會更有效率。
此外,一些 IDE 該有的功能例如遠端開發、終端調用、代碼統計分析、包管理等功能都能極大提升效率。
Part3不足
當然也有一些地方讓我感覺這款IDE還不夠完美。
一個對我來說很關鍵的問題就是,貌似不支援使用Jupyter Notebook插件,例如我很喜歡的contents目錄插件,可以友善的進行markdown導航與跳轉,另外還有一些使用很順手的插件也都不能安裝。
不過我已經送出了回報,希望能在未來某一天支援吧。
另外一個讓我覺得不夠完美的地方,就是所有之前的主題樣式,都不夠美觀,老粉絲知道我是顔值黨,之前寫 Pandas學習網頁顔色、位置等參數都一點點調了很久才滿意。
如果 IDE 黑 notebook 白,缺少一種「科技感」,但如果全黑色配色,代碼框、輸入區域、輸出區域就會有一種疊加在一起的感覺。
另外,由于功能複雜,真正能用于寫代碼的區域很小(雖然可以折疊),如果你是筆記本電腦,那麼可能一個頁面隻能容納下2-3個單元格,用起來比較雞肋
這也是我之前不使用 Pycharm 寫 notebook 的原因,可能是這種基于互動式的開發的IDE主題需要更多時間設計吧,
Part4推薦嗎?
以上就是我體驗下來的全部感受,其實不難發現,除去為了賣錢之外,jetbrains似乎想讓以notebook為主要開發工具的資料科學家們,切換到更專業的IDE。
不論是代碼檢查、異常調試、版本控制、項目管理、遠端開發等标準化開發功能,都是一個程式員需要具備的技能,而在這之前我見到的一些資料分析、機器學習相關人員,大多隻是會資料、算法本身的工作,對于工具卻比較薄弱。
最後是個人推薦,如果你從事資料科學相關工作,工作頻繁使用 notebook 進行資料處理、算法模型開發,那麼可以不妨嘗試切換到 DataSpell ,進一步如果你本身是 Pycharm 黨,那麼這款軟體更值得你嘗試。