.Net 例外処理に悩む

みなさんは例外処理ってどう設計していますか?

僕は悩んで悩んで答えがでません。

例外の種類は①致命的なエラー②業務上のエラーがあると思いますが

この②に悩んでいます。

Exceptionを継承(ApplicationExceptionは非推奨のようです)するのか、

プロパティを用意し、コードや内容を設定するのか、または別の手段があるのか...

プロパティに設定する場合ってMVP(Model View Presenter)などの構造の場合、

各階層にエラー情報を渡していくのかな?それは何だか違う気がする。

業務エラーはプロパティで処理する方法が推奨されいるような記事も見かけました。

もう悩むばかりで答えが出ません...誰か助けて(T T)

 

Windows10にアップグレードしてみた。

MediaCreationToolx64.exeを使って、Windows10にアップグレードしてみました。

アップグレードの通知は待っても待っても全然通知来ないし、、、

PCはIdeaPad Yoga シリーズ Yoga 13を使っています。

アップグレードは簡単で「このPCを今すぐアップグレードする」を選択し進めていくだけです。

f:id:GraySilverCoin:20150807004215p:plain

 

少しビックリしたのが、アップグレードが終わるとログイン画面が表示されるのですが、キーボードが反応しませんでした。

え。。。ログインできないし。。。と思ったけど、再起動すると反応しました。無事にログインしデスクトップが表示されたのですが、これもまたキーボードが反応せず、再度再起動すると反応しました。

なんだか不安が残るアップグレードでした。

 

Windows 10インストール用のメディア作成ツールを使ってみた

Windows10インストール用のメディア作成ツールを使ってみました。

 

下記のサイトからツールをダウンロードします。

https://www.microsoft.com/ja-jp/software-download/windows10

 

ダウンロードした「MediaCreationToolx64.exe」を実行します。

実行する操作を選択します。今回は「他のPC用にインストール メディアを作る」を選択しました。

f:id:GraySilverCoin:20150730065419p:plain

 

言語、エディション、アーキテクチャを選択します。

f:id:GraySilverCoin:20150730065521p:plain

 

使用するメディアを選択します。

今回は「ISOファイル」を選択しました。

USBフラッシュドライブは確認していませんが、フォーマットされるようなので注意が必要です。

f:id:GraySilverCoin:20150730065559p:plain

 

ダウンロードが開始されます。

f:id:GraySilverCoin:20150730065820p:plain

 

f:id:GraySilverCoin:20150730065847p:plain

 

これで完成です。

このISOファイルでクリーンインストールする場合はプロダクトキーが必要です。

マイクロソフトは上級者向けとしているようです。

Get Windows 10やWindows Updateからアップグレードする方法を推奨しているようなので注意が必要です。

ドライバとか自分でインストールできたら問題ないような気もしますが...

f:id:GraySilverCoin:20150730065903p:plain

Windows10 Build10130にRedmineをインストールしてみた(挫折

Windows10にRedmineをインストールしてみました。

 

まずRailsinstallerでインストールします。

*1

今回のバージョンは3.1.0で下記のパッケージが含まれます。

Packages included are

インストールが終わったらruby -vでバージョンを確認しましょう。

2.1.5となっているはずです。

 

次はMySQLです。

Windows 版の MSI Installer をダウンロードします。

...32bit版?。とりあえずインストールしてみる。

今回は「developer Default」を選択しました。

"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysql.exe" --version

でバージョンを確認します。「Ver 14.14 Distrib 5.6.25, for Win64 (x86_64)」がインストールされたようです。

 

この時点で肩凝りが...Ubuntuのほうが簡単ですね。

次にCommand Prompt with Ruby and Railsで下記のコマンドを実行し

Railsをインストールします。

 gem install rails --include-dependencies

 

次にSVN(subversion)をインストールします。

本当はgitにしたいのですが、仕事でSVNを利用しているので

今回はSVNにします。

 

下記からVisualSVN Serverをダウンロードしました。

https://www.visualsvn.com/downloads/

インストール後にsvn --versionを実行するとバージョンは version 1.8.13 (r1667537)でした。

 

今回は"C:\svn\repository"をリポジトリにしたいと思います。

svnadmin create "C:\svn\repository"

 

次にソースをインポートします。

svn import ソースコードへのpath file:///C:\svn\repository\ -m "initial import"

例えばC:\src\hoge以下のソースを対象とする場合は

 svn import C:\src\hoge\ file:///C:\svn\repository\ -m "initial import"

と入力します。

 

次にSubversionリポジトリからチェックアウトします。
svn checkout http://svn.redmine.org/redmine/branches/2.6-stable redmine

 

次にMySqlにデータベースを作成します。

create database redmine;*2

 

次にRedmineをインストールした場所にConfigフォルダ内のdatabase.yml.exampleファイルをdatabase.ymlにリネームします。リネーム後のファイルを開き,production:部分のDBの設定を編集して保存します。

username、passwordは自由に設定します。

production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: root
  password: ""
  encoding: utf8

 

次にテーブルを作成するために下記のコマンドを実行します。

rake db:migrate RAILS_ENV="production"

 

...で、ここで挫折しました。

下記のエラーが表示されます。

Could not find gem 'rails (= 3.2.21) x86-mingw32' in the gems available on this machine.
Run `bundle install` to install missing gems.

 

わからない...。また違う環境、方法でトライしたいと思います。

残念...

*1:http://railsinstaller.org/en

*2:データベース名はRedmineじゃなくてもOKです

Ubuntu15.04にRedmineをインストールしてみた

Redmineはタスク管理、進捗管理、情報共有が行えるオープンソースのプロジェクト管理ソフトです。

 

インストールするにはApacheRuby on Rails モジュール、MySqlサーバーが必要なのでインストールします。

sudo apt-get install apache2 libapache2-mod-passenger mysql-server

MySqlを初めて導入する場合は管理者パスワードの設定が促されるので、任意のパスワードを入力します。

準備は以上です。

 

次にRedmineをインストールします。

sudo apt-get install redmine redmine-mysql

途中でRedmineデータベースも作成するので、途中で「はい」を選択します。

redmine/instances/default のデータベースを dbconfig-common で設定しますか?」と聞かれるのでYesを選択し、次にデータベースはmysqlを選択します。

 

次にApache用の設定を行います。

nano(テキストエディタ)でファイルを作成します。

sudo nano /etc/apache2/sites-available/redmine.conf

テキストファイルの内容は下記のように設定します。

<Directory /redmine>

  Options FollowSymLinks

  RailsBaseURI  /redmine

  PassengerResolveSymlinksInDocumentRoot On

  AllowOverride None

</Directory>

 

次にRuby on RailsモジュールのApache用設定ファイルを作成します。

sudo nano /etc/apache2/sites-available/passenger.conf

<IfModule mod_passenger.c>
  PassengerDefaultUser www-data
  PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini
  PassengerDefaultRuby /usr/bin/ruby
  RailsBaseURI /redmine
</IfModule>

 

ApacheのドキュメントルートにRedmine用の公開用データディレクトリのシンボリックを張ります。

 sudo ln -s /usr/share/redmine/public /var/www/html/redmine

 

次にredmineディレクトリ以下の所有者をwww-dataに更新します。

 sudo chown -R www-data:www-data /usr/share/redmine

 

Apacheを再起動します。

sudo systemctl restart apache2.service

 

Webブラウザで「http://localhost/redmine/」でログインページが表示されます。

初期の管理者名、パスワードはadminでログインできます。

「プロジェクト」-「新しいプロジェクト」でプロジェクトを作成できます。

f:id:GraySilverCoin:20150614185317p:plain

Blend for Visual Studio 2013でお絵かきしてみた

WPF(XAML)でお絵かきしてみました。

私は絵の経験値0です。

今回はXAMLの素晴らしさを体感する為に描いてみました。

※イヤ…もっと別の方法があると思いますが...

XAMLってこんなに自由なんですね。

実はこれを描くのに2日かかりました。

絵心のない私にしては上出来だと思います。

※輪郭とか髪の毛とかマジで難しい

 

f:id:GraySilverCoin:20150601225737p:plain

Windows 10 無償アップグレード予約開始

ついに予約が始まりました!

私も予約したいと思います。

まずはWindows Update でKB3035583 をインストールします。

インストールが終わると、下記のようになります。

f:id:GraySilverCoin:20150601193859p:plain

右クリックすると下記が表示されます。

f:id:GraySilverCoin:20150601194227p:plain

クリックすると予約画面が表示されます。

f:id:GraySilverCoin:20150601194011p:plain

特に難しい箇所はありませんでした。

Windows10楽しみですね。