読者です 読者をやめる 読者になる 読者になる

集中力なら売り切れたよ

プログラミングや、将棋などについて書きます。

C#やPowerShellでOSのバージョンを確認する方法

C#ではSystem.Environment.OSVersionで取得できます。

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine(Environment.OSVersion);
        }
    }
}

PowerShellでも同様です。

PS C:\Users\Ryo> Write-Host ([System.Environment]::OSVersion)
Microsoft Windows NT 10.0.14393.0

Rubyでnilだったら代入するイディオム

他の言語ではあまり見かけませんが、左辺がnilだったら代入し、nilでなければ代入しない式として以下のものがよく使われているようです。

a ||= "abc"
# つまりこういうこと?
a = a || "abc"
# ifを使うならこうなる?
a = "abc" if a.nil?

個人的には暗号めいたように感じたのですが、そのうち慣れるのでしょうかね。

Rubyで開発するときは冗長モードを有効にするほうがよい

コマンドラインでの実行時に-wオプションをつけるとコンパイル時、実行時の警告を出してくれる。具体的には使っていないローカル変数などがあれば警告してくれる。デフォルトでは警告は出ない。いちいち指定するのが面倒な場合はRUBYOPT環境変数に-wをセットすると良い。

def main()
  a = 1 # 使っていない変数
  b = 2
  c = 3
  puts b + c
end

if __FILE__ == $PROGRAM_NAME
  main()
end

> ruby -w main.rb
main.rb:2: warning: assigned but unused variable - a
5

参考書籍

Effective Ruby

Effective Ruby

Windows 10で環境変数のPATHを設定する方法

Windowsキー+X」でメニューを呼び出し、「システム」を選択します。

「システムの詳細設定」を選択します。

環境変数」を選択します。

「PATH」という項目を編集します。

ZenFone 3 Laserを買ってgoo g06と2台持ちにしました

タイトル通り、ZenFone 3 Laser(ZC551KL)を購入しました。

ネットで見た限りではgoo g07(5.5インチ フルHD)は、安いですが、画面下にボタンがなくオンスクリーンキーで使える画面が狭くなってしまうので自分には合わないと思ってやめました。また、前世代のZenFone 2 Laser(5インチ HD)を使った経験があり、独自UIのZenUIの使い心地が良かったのも理由で、ヨドバシカメラで実機を確認してゴールドの色の質感や操作性が良いことを確認でき、その場で買えたので買いました。goo g07との約10,000円の値段差は質感とメモリ量やカメラ性能の差として納得できるものでした。

今まで使っていたgoo g06(4インチ 480x800)はOCNモバイルONEの通話SIMを入れて通話とテザリング専用にして、ZenFone 3 Laserは0simデータ通信SMSなしを入れて基本的にWi-Fiで使う無料運用をしています。通話するには5.5インチはやっぱり大きいですからね。

買った気づいたのですが、意外と5.5インチフルHDと並べて比べてもgoo g06(4インチ 480x800)のディスプレイの文字はそんなに汚くはありません。CPU-Zというアプリで確認すると5.5インチ 1080x1920は403ppiで、4インチ 480x800は240ppiなのですが、人間の目にはそれ以上細かくなっても、あまり差を感じないのかもしれません。動画などを見るなら5.5インチのほうがいいですが、携帯性では4インチに分があります。ガジェット好きなので、2台持ちは苦になりません。

gooのスマホ g06 + 選べるOCNモバイルONEセット 【送料無料】 | gooSimseller

ZenFone 3 Laser (ZC551KL) | スマートフォン | ASUS 日本