[原] Python 開發者如何正確使用 RStudio 編輯器

概述

資深Python工程師能夠選擇的編輯器有不少,好比 RodeoSpider,Eclipse,Vim,Visual Studio,Atom,Sublime Text,Jupyter等等,可是如今爲何如今不少資深的 pythonista 都開始擁抱 RStudio 呢?要回答這個問題,首先咱們要了解到Python工程師的需求究竟是什麼?html

需求一

資深的pythonista不依賴於集成開發環境,須要沉浸式編程。

真正的高手每每是不須要交互式編程環境的,他們更傾向於沉浸式編程,這些高手之前每每選擇Vim或者Sublime Text這樣的文本編輯器來解決問題。好比之前Sublime Text(Sublime Text是用Python寫的)很火爆的時候,不少Python開發者都是Sublime Text安裝幾個插件,加一個REPL和代碼高亮就開始幹活了。而一些剛剛開始學習 Python 的同窗則傾向於使用諸如 PyCharm,Visual Studio 這樣的集成開發環境來輔助編程。python

資深的Python開發者認爲,過多的代碼智能提示會打斷本身的思路,提示一些並不須要的信息反而會下降本身的效率,沉浸式編程纔是最理想的選擇,代碼自己就擁有很強大的反饋機制,加入過多的輔助功能只是多此一舉而已。c++

clipboard.png

需求二

資深的pythonista是免運維的全能戰士,須要掌管服務器。

他們喜歡一我的拯救世界,從Web開發、自動化測試、自動化運維、爬蟲開發、數據倉庫、任務調度、機器學習、硬件開發所有都要本身獨立完成,只單單開發某一個模塊是無法知足胃口的,也永遠不會甘於只作某個環節上的螺絲釘。Python 由於自己簡潔的語法設計使得入門的門檻很是之低,這使得本來從事不一樣開發領域的專家都開始嘗試使用Python來再造輪子。git

運維工程師 A 曾經作了一個 docker-py 來控制 Docker 的API,以支撐服務器上數百個容器的調度與監控;數據工程師 B 如今用 Airflow 來控制 ETL 的流程以保證天天在Hadoop和Spark的洪荒之力的衝擊下,數據倉庫的治理可以有條不紊。Web工程師 C 也用過 Django 快速開發面向消費者的網站以響應一日三變的用戶需求。爬蟲工程師 D 在用 Scrapy 爬取各大新聞網站和社交媒體的最新資訊以知足搜索引擎的需求。硬件工程師 E 在樹莓派上用OpenCV來調試一我的臉檢測的功能,以較低的成本完成核心功能的調試。測試工程師 F 正在用 Selenium 對各類客戶端進行自動化測試來檢測各類狀況下的Bug ... 而在更多的狀況下,ABCDEF 頗有可能就是同一我的(被稱爲全佔工程師)。github

對比

其實,pythonista只須要一個沉浸式的編程環境和一個即時通向服務器的管道。sql

然而,Sublime Text 只知足了第一點;Jupyter 只知足了第二點。直到 RStudio的出現,把兩者結合了起來。docker

下面咱們對比一下這三者的異同:編程

序號 功能 Sublime Text Jupyter RStudio
1 Vim模式 yes no yes
2 自定義佈局 yes no yes
3 自定義快捷鍵 yes no yes
4 文件夾管理 yes yes yes
5 全局搜索 yes no yes
6 函數跳轉 yes no yes
7 多行編輯 yes yes yes
8 多格式輸出 no yes yes
9 圖表輸出 no yes yes
10 Markdown預覽 yes yes yes
11 Terminal no yes yes
12 版本控制 yes no yes
13 項目管理 yes no yes
14 Spark鏈接 no yes yes
15 插件系統 yes yes yes
16 Web訪問 no yes yes
17 權限管理 no yes yes
18 變量管理 no no yes
19 多語言高亮 yes yes yes
20 集羣管理 no yes yes
21 實時保存 yes yes yes
22 多人編輯 no no yes
23 文檔發佈 yes no yes

如何正確使用RStudio

正確使用RStudio的流程是這樣的:segmentfault

1. 安裝RStudio

在服務器上使用root帳戶安裝 RStudio(並打開8787端口),若是有多人協同建議不要用 Docker 安裝,若是你依然想要,這裏有相應的教程瀏覽器

2. 帳號註冊

設置登陸RStudio登陸的帳號密碼,以及默認的用戶目錄(建議不要給到root權限)。

adduser FinanceR # 設置新用戶名
passwd FinanceR # 設置該用戶的密碼
mkdir /home/FinanceR # 初始化工做空間
chmod -R FinanceR /home/FinanceR # 給工做空間賦權

3. 打開編輯器

經過瀏覽器訪問服務器的8787端口:e.g.123.456.789.1:8787

4. 項目管理

點擊左上角新建項目按鈕,新建一個 Project 並引入Git或SVN做版本控制,拉取遠端代碼。

5. 新建文件

新建一個空文件夾保存爲.py後綴文件將提供Python代碼高亮,保存爲.sql後綴將提供SQL代碼高亮。(還有html,c++可選)

6. 代碼執行

經過 ctrl + alt + s(source) 執行python代碼,在console中能夠查看執行結果。

7. 掌管服務器

若是須要登陸服務器,在菜單欄中選擇Tool-》Shell便可進入服務器端直接解決深層次問題。

8. 代碼排查

當程序出現一些問題,在代碼有點複雜的時候,經過ctrl + shift + f(find)能夠全局搜索你的代碼段

9. 文件搜索

事實上,咱們你發現有時候是本地的csv文件路徑弄錯了, 想要找到項目中某個文件,能夠經過ctrl + shift + . 來全局檢索文件名(相似 find /|grep 文件名

10. 偏好設置

感受默認的偏好設置不知足我的胃口,在偏好設置中能夠設置快捷鍵、Vim模式、高亮、字體、snippet等等細節。我我的偏好solarized dark的深綠色主題。

總結

一方面,在服務器上寫好代碼,直接在服務器上拉取提交Git/SVN或者部署Docker鏡像,這樣就避免了在Windows/Mac下寫的代碼在服務器上跑不通的問題,也就是說開發環境和測試環境的代碼與環境始終保持了一致性。另外一方面,經過Web IDE在任何一個瀏覽器中就能夠直接前往服務器現場,不管是一臺Chrome OS、 Windows XP 甚至是樹莓派。事實上,RStudio做爲個人主力編輯器90%取代了Atom、Sublime Text、Jupyter等等編輯器,如今好多Python工程師都在學習如何使用它。

clipboard.png

參考資料

]

更優閱讀體驗可直接訪問原文地址: https://segmentfault.com/a/11...
做爲分享主義者(sharism),本人全部互聯網發佈的圖文均聽從CC版權,轉載請保留做者信息並註明做者 Harry Zhu 的 FinanceR專欄: https://segmentfault.com/blog...,若是涉及源代碼請註明GitHub地址: https://github.com/harryprince。微信號: harryzhustudio 商業使用請聯繫做者。
相關文章
相關標籤/搜索