2022年8月20日 星期六

微軟的 IDE 工具 Visual Studio 2022

一般程式設計都會選用 IDE 工具來幫助開發,

因為這些 IDE 工具通常都整合了許多實用的工具,

甚至提供快捷方式呼叫物件的屬性或者方法來取用,

當然自動完成也是必備的一個輔助工具,

今天就簡單介紹下

微軟的 IDE 工具 Visual Studio 2022 

Visual Studio 是非常老牌的一個 IDE ,

從最早發行的 Visual Studio 97 至今已經有 20多年了,

隨著時代演進,

程式語言也並非僅有 C/C++ 而已,

所以 Visual Studio 也支援了許多種不同的程式語言,

微軟提供了三種版本的 Visual Studio 供使用者選擇,

此處選擇 community 版 ,

也就是俗稱的 "社群版" 或者 "推廣版"等

首先要到官方網站選擇版本後下載


在 Visual Studio 中的程式碼自動完成功能稱為 IntelliCode,

從變數名稱、函式、物件、屬性、方法等,

這些程式設計會使用到的程式碼,

都能自動偵測並協助迅速完成


在 Visual Studio 2022 新版的功能中,

提供了熱重載的功能,

讓程式碼變更的呈現更加即時,

幫助更快速開發應用程式


既然從事程式設計,

肯定也需要為程式碼偵錯並修復,

Visual Studio 2022 也提供了許多實用的工具幫助偵錯,

可使用智慧中斷點來暫停與管理執行,

或是監看目前應用程式在系統中占用的資源,

這些都是為應用程式偵錯的實用工具

除了整合了與程式設計相關的輔助工具之外,

Visual Studio 也提供了數種主題供使用者切換,

不僅好用也要好看


在官方下載安裝程式之後,

還提供了許多線上的免費資源,

幫助初學者認識自己所使用的程式語言,

最後附上安裝的教學影片,

還沒有訂閱的朋友記得點選影片右下角的訂閱來支持本站 YouTube 頻道


2022年8月19日 星期五

Ubuntu20.04 GitLab 安裝教學

透過 Git 作為版控是目前程式設計的熱門,

GitLab提供了 CE(社群版) 與 EE(企業版) 兩種版本可使用,

可使用服務有 Git版本控制、CI/CD 自動部署、Wiki、Issue Tracking等等,

是一個基於Git的強大軟體開發平台,

今天就來教大家

Ubuntu20.04 GitLab 安裝教學

既然要架設GitLab伺服器,

準備一台 Ubuntu20.04 電腦或者VM是必備的,

進入之後首先要安裝需要的元件

sudo apt-get install curl openssh-server ca-certificates postfix tzdata perl

若僅要架設在內網不需要寄信功能可不安裝 postfix 


安裝完畢之後,

接著下載安裝的 Shell 腳本 

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

執行底下命令開始安裝

sudo apt-get install gitlab-ce


安裝完畢後會顯示底下的訊息,

在此之前,

先編輯相關的設定

sudo vi /etc/gitlab/gitlab.rb

找到 external_url 並更改為實際的伺服器位址

external_url 'http://伺服器位址'


最後執行底下命令,套用變更啟用 GitLab 服務

sudo gitlab-ctl reconfigure

最後可查詢 root 密碼

sudo cat /etc/gitlab/initial_root_password

在伺服器輸入 localhost 或者剛才輸入的伺服器位址並以 root 登入即可

新增使用者設定好預設的權限,

首次登入需要重設密碼,

並且要輸入 SSH Keys 才能正常上傳下載原始碼。

可直接執行 

ssh-keygen -t rsa -C "username"


接著到 public key 的資料夾找到 ../.ssh/id_rsa.pub,

用記事本打開將內容複製到

User Settings中的 SSH Keys


至此一個基本的 GitLab伺服器就架設完畢,

其他功能的話,

有機會使用到再分享出來。

底下為幾個常用命令供大家做個參考:

重新啟動:
sudo gitlab-ctl restart

重設 user1 密碼:
sudo gitlab-rake "gitlab:password:reset[user1]"

目前的狀態:
sudo gitlab-ctl status

若有修改設定檔
sudo vi /etc/gitlab/gitlab.rb  
套用執行:
sudo gitlab-ctl reconfigure



2022年8月16日 星期二

淺談幾種程式語言的 I18N處理

i18n 來自於 internationalization,字母 i n 中間共有18的字母,也就是國際化的意思。

底下列舉幾個程式語言在多國語言處理的原理,

基本上就是要將原始程式碼需要翻譯的字串改成轉換為各國語言的程式碼,

這部份各程式語言大同小異,之前也有介紹過 Django 的i18n處理,

底下就來看看

淺談幾種程式語言的 I18N處理

JAVA部分 (參照原始網址)

尚未有語系相關設定的文字訊息

程式改寫多國語言後為下圖,原始碼分成三部分,最上部根據執行的參數選定要使用的屬性檔,中間部分決定選用的語言,最底下則分別印出該語言的訊息


Python部分 (參照原始網址)

自行加入語言檔案於 locale/zh_Hant/LC_MESSAGES/demo.po

msgid “這是程式字串的id (多半都以英文為基礎)”

msgstr “翻譯的文字放此



修改此 po檔案中的字串資料,再用命令 build.mo檔:

python msgfmt.py -o locale/zh_Hant /LC_MESSAGES/ i18n_demo.mo demo.po

原始碼:


最後使用命令

export LANG=cn && python i18n_demo.py

就可輸出相應語言的文字


C#部分 (參照原始網址)

要將屬性欄的 Localizable 打開,



為各個語言新增資源檔案,例如德文使用' MainForm.de-DE.resx '

需要有 resource manager 來轉換資源檔中的字串:

public class ResourceManager

{

    public static string GetString(string data, CultureInfo cultureInfo)

    {

        return CommonResource.ResourceManager.GetString(data, cultureInfo);

    }

}

再透過 resource manager 提供的方法將 Label的顯示文字改為目前的語言:

myDisplayLabel.Text = string.Format("{0}", ResourceManager.GetString(FIXED_TEXT, CultureInfo.CurrentUICulture));

結論

以上就是幾個程式語言關於 I18N的處理方式,

基本上大家的方式都差不多相對的只是做法上些許的差異,

當然這些例子僅是淺談下原理而已,

實作部分得看各個專案的情況不同複雜度也相對不同,

此處僅是讓大家對多國語言的處理有個基礎認識