前言
Paiza 是一個雲端開發環境 (cloud development environment),這類開發環境只要透過主流瀏覽器 (Chrome, Firefox, Safari 等) 就可以操作,不需在本地端額外安裝其他的軟體。Paiza 的產品線有兩條,paiza.io 是雲端編輯器,paiza.cloud 則是雲端 IDE,本文會分別介紹這兩項產品。
其實雲端開發環境不是什麼新鮮事,Paiza 也不是最知名的開發環境 (參考這個排名)。為什麼筆者要特別介紹 paiza 呢?Paiza 開發團隊來自日本,在開發這類產品時,對於亞洲語系 (中日韓語系等) 會比歐美團隊來得更注重。例如,以下的 C 程式用到一些中文:
#include <locale.h>
#include <stdio.h>
#include <wchar.h>
int main(void)
{
// Trick to print multibyte strings.
setlocale(LC_CTYPE, "");
wchar_t *s = L"你好,世界";
printf("%ls\n", s);
return 0;
}
在 Paiza 的開發環境上,中文可以正確無誤地顯示;若讀者拿這段程式去其他同質的產品上試,就會發現很多開發環境無法正確地顯示其中的中文字串。
paiza.io 雲端程式編譯器 (editor)
paiza.io 是雲端編輯器,共支援了 29 種程式語言 (參考這個清單)。由於 Paiza 背後是跑 GNU/Linux 平台,故 GNU/Linux 上主流的程式語言都支援。但 paiza.io 算是輕量級環境,沒有 SSH 遠端連線權限,也不能開終端機視窗,基本上就是提供一個編輯框讓使用者直接在網頁上寫程式。
以下是在 paiza.io 上撰寫 Objective-C 程式的畫面:
雖然 paiza.io 不用註冊帳號也可直接使用,但註冊帳號會有一些額外的好處,像是可以管理自己的程式碼,可以和 GitHub Gist 同步化等。除了用電子郵件註冊外,paiza.io 也支援 GitHub 帳號、臉書帳號、Google 帳號等快速註冊。此外,paiza.io 上寫的程式碼也可以直接內嵌 (embed) 在網頁中,對於技術部落客來說相當方便。
paiza.cloud 雲端整合式開發環境 (IDE)
paiza.cloud 則是一個雲端 IDE,這個軟體需要註冊帳號才能使用其服務;不過,可以用 GitHub、Google、Facebook 等帳號快速註冊,這個過程不會太麻煩。
剛啟用 Paiza Cloud 時,還沒有啟動任何伺服器:
根據訂閱計畫的不同,可使用不同層級的服務:
一開始試用時,先選 FREE plan 即可;但 FREE plan 啟動的伺服器在 24 小時後會自動銷毀,如果需要長期在這個雲端 IDE 上撰寫程式,最好還是升級到 LITE plan 以上;應該不會有人想每天重新建置一次開發環境吧。至於 BASIC plan 的功能是可以直接將雲端 IDE 兼做網頁伺服器,用來發佈自己的作品;以一般最低階的 VPS (個人虛擬主機) 來說,大約每個月 5 至 10 美元,所以每個月 19.8 美元的價格訂得相當微妙。
在建立伺服器時可選擇是否要快速啟用某些開發環境:
開啟檔案時竟然是開一個新的虛擬小視窗,而不是像 Cloud 9 整個貼在頁面上,只能說這個開發團隊的美學不太一樣:
不過,Paiza Cloud 其實可以在 TAB Window Mode 及 Floating Window Mode 間切換,切到 TAB Window Mode 就會比較像在用 Cloud 9 或其他雲端 IDE 的感覺。筆者試用的感覺是目前 Floating Window Mode 做得比較完整。
當然,也有終端機環境可以用:
我們寫了個 Sinatra 小程式來測網頁伺服器的功能:
require 'sinatra'
get '/' do
'Hello World'
end
輸入以下指令就會自動啟用網頁伺服器:
$ ruby hello.rb
Traceback (most recent call last):
1: from hello.rb:1:in `<main>'
hello.rb:1:in `include': wrong argument type String (expected Module) (TypeError)
~$ ruby hello.rb
== Sinatra (v2.0.4) has taken the stage on 4567 for development with backup from Puma
Puma starting in single mode...
* Version 3.12.0 (ruby 2.5.3-p105), codename: Llamas in Pajamas
* Min threads: 0, max threads: 16
* Environment: development
* Listening on tcp://localhost:4567
Use Ctrl-C to stop
開啟網頁程式如下圖所示:
結語
Paiza 雲端開發環境是一套新的產品,除了免費的 paiza.io 雲端編輯器外,主力產品是 paiza.cloud 雲端 IDE。從實際的使用經驗來說,paiza.cloud 的使用者介面和說明文件相對比較陽春些,而且完全不用終端機的話有些動作,如編譯程式,無法完成,應該還有一些進展的空間。不過,Paiza 的開發團隊相當注重萬國碼語系的支援,這是同質的歐美團隊所缺乏的優勢。目前 Paiza 知名度不算高,如果在 UI/UX 上加強一下,應該還是一個大有可為的產品。