データベーススペシャリスト試験のために1ヶ月間でやったこと
はじめに
去年の春は試験会場にすら行かなかったので今年こそは、でリベンジ。
セキュリティスペシャリストの時と同じく、記録がてらブログに残そうと思う。
以下は受験時の前提条件。
使った書籍やサイト
ネット上で提供されている問題集
午前問題2は過去問から多くが出題されるので、ひたすら繰り返すのみ。情報処理教科書 データベーススペシャリスト 2015年版
モデルや概念スキーマなど、そもそも基礎がダメだったので、こちらをメインに1から。 過去問10年分の解説もついている。過去問
情報処理系は過去問に学ぶのが1番。ポケットスタディ データベーススペシャリスト第2版
セキュリティスペシャリストの時と同じく利用。 でも情報処理教科書が身についていれば、かぶる部分が多いと思うので特に使わなくてもよさそう。
勉強の進め方
午前問題は勉強期間を通して演習しておく
情報処理教科書で基礎知識を学ぶ
個人的な勉強法としては、こういったイチから学ぶ場合、理解度は横において繰り返し読むことを重視している。
初めから100%理解できるわけもなく、ペンキを塗るように全体をムラなく学ぶ感じ。1~2日で1周みたいに。
これを2週間くらい。ポケットスタディで細かいところを埋める
試験で問われそうな部分について、重要度順に強化していく。
これを1週間くらい。過去問での演習
直近3年分以外は、テキストの学習に平行して、適宜確認演習として使用する。
試験1週間前から、実際に過去問でまとめて演習。
2回くらいは時間をはかって取り組むのがよいと思う。
特に午後1は時間がかなりタイトなので。。
結果
合格しました。午前2:84 午後1:86 午後2:68
午後2、手応え通りの微妙な感じ。。
Xamarin(Visual Studio)でデザイナーがエラーで機能しない
環境
- Visual Studio Community 2015 (Update2)
- Xamarin 4.0.4.4
現象
axml
ファイルはソースとデザイン画面があるが、デザイン画面での編集が出来なくなる。エラーメッセージとしては以下が表示される
Connecton to the layout renderer failed. This may be caused by misconfiguration of Java.
Xamarinのログファイル(
%USERPROFILE%\AppData\Local\Xamarin\Logs
)では以下のエラーが出力されていた。Xamarin.VisualStudio.ActivationManager Information: 0 : [2016-05-29 14:56:47.3330] Error occurred during initialization of VM Xamarin.VisualStudio.ActivationManager Information: 0 : [2016-05-29 14:56:47.4908] Could not reserve enough space for object heap Xamarin.VisualStudio.ActivationManager Information: 0 : [2016-05-29 14:56:48.0968] Error: Could not create the Java Virtual Machine. Xamarin.VisualStudio.ActivationManager Information: 0 : [2016-05-29 14:56:48.2438] Error: A fatal exception has occurred. Program will exit. Xamarin.VisualStudio.ActivationManager Error: 0 : [2016-05-29 14:56:49.6750] Connection failed System.AggregateException: 1 つ以上のエラーが発生しました。 ---> System.Exception: Could not start Java process 場所 Xamarin.AndroidDesigner.JavaProcessConnection.<>c__DisplayClass70_0.<InitializeJavaProcessAsync>b__0() 場所 System.Threading.Tasks.Task`1.InnerInvoke() 場所 System.Threading.Tasks.Task.Execute() --- 内部例外スタック トレースの終わり --- ---> (内部例外 #0) System.Exception: Could not start Java process 場所 Xamarin.AndroidDesigner.JavaProcessConnection.<>c__DisplayClass70_0.<InitializeJavaProcessAsync>b__0() 場所 System.Threading.Tasks.Task`1.InnerInvoke() 場所 System.Threading.Tasks.Task.Execute()<---
対応
- システム環境変数に
_JAVA_OPTIONS
を設定する。(値例:-Xmx512M
)
つぶやき
ちょっとしたバランスの崩れでエラーが出てしまい、時間がくわれて辛いなあ。よく理解できていない、ということだろうけど。
Xamarin.AndroidでListViewを実装する
実装例
独自アダプターを作ってみました
https://github.com/yomika4-14/ListViewSample
簡単な説明
MainActivity.cs
- メイン画面の動作を実装
- ListViewクラスのAdapterに、独自アダプターを設定する
- SDK標準のAdapterも利用できる→参考:Part 3 - Customizing a ListView's Appearance - Xamarin
ListView memoList; MemoListAdapter memoListAdapter; List<Memo> memos; // 省略 btnDeleteAllMemo.Click += (sender, e) => { memos = new List<Memo>(); memoListAdapter = new MemoListAdapter(this, memos); memoList.Adapter = memoListAdapter; };
Memo.cs
- ListViewに表示させるメモのクラス
MemoListViewAdapter.cs
- 独自アダプター
- BaseAdapterクラスを継承する
- MemoクラスとListViewクラスの橋渡し役
- GetViewメソッド内でリスト1項目分を設定している
public override View GetView(int position, View convertView, ViewGroup parent) { Memo memo = memoList[position]; // Viewが再利用されていない場合は新しく作成 var view = convertView; if (view == null) view = context.LayoutInflater.Inflate(Resource.Layout.Memo, null); // 表示内容の設定 TextView tvTitle = view.FindViewById<TextView>(Resource.Id.title_text); TextView tvContent = view.FindViewById<TextView>(Resource.Id.content_text); TextView tvMemoDate = view.FindViewById<TextView>(Resource.Id.date_text); tvTitle.Text = memo.title; tvContent.Text = memo.content; tvMemoDate.Text = memo.memoDate.ToString("yyyy/MM/dd HH:mm:ss"); return view; }
Main.axml
- メイン画面のレイアウト
Memo.axml
- メモ一つひとつのレイアウト
実際の画面
NuGetでパッケージの管理ができなくなった
背景
諸事情により、システムの復元をしたところ、VisualStudioでプロジェクトを右クリックして出てくるはずの[NuGetパッケージの管理]が出てこなくなった。
また、メニューの[ツール]-[オプション]で[NuGetパッケージマネージャー]を選択しても、「プロパティファイルの読み込みでエラーが発生しました]」という文言が出て、設定が変更できなくなった。
環境
- Windows10 64bit
- VisualStudio 2015
対処法
結論から言うと、NuGetパッケージマネージャーをアンインストール→再インストールでOKだった。
手順
Window10にアップグレードしたらタッチパッドが自動で無効にならなくなった(Lenovo G580)
背景
仕事でWindows10を半年ほど扱ってきて特に不満もなかったので、自宅のメインノートPCをWindows10にアップグレードした。
クリーンインストールをしたのだが、それまでUSBマウスを接続すると、自動でタッチパッドが無効になっていたのに、その動作をしなくなった。
本来であれば Fn + F6
でタッチパッドの有効/無効が切り替えられるが、それも効かない。
環境
Windows10 64bit Home
バージョン 1511 (10586.164)
対応
- デバイスマネージャーを起動
- [マウスとそのほかのポインティングデバイス]→[Lenovo Pointing Device]を選択し、右クリック
- [ドライバー ソフトウェアの更新]を選択
- [コンピュータを参照してドライバー ソフトウェアを検索します]を選択
- 検索場所を
C:\
(Cドライブ全体)として[次へ]を選択 - 処理が終わったらダイアログを閉じる
- [デバイス設定]タブで[USBマウス接続時に内蔵ポインティングデバイスを無効にする]をチェック
Raspberry Pi2 にIPが割り当てられなくて困った話
環境
経緯
RaspberryPiを作っては壊して遊んでいたら、急にLANに接続してもIPが割当たらず、Windowsから接続できなくなってしまった。
ラズパイはルーターのLAN側ポートに接続していた。
解決策
結論から言うと、ルーターのファームウェアをバージョンアップしたら、今まで通りLANに接続した時点でDHCPからIPが割り振られるようになった。
多分、の話だけども、IP競合が起きてしまったのではないかと思う。
ファームウェアアップデートのタイミングでリース情報の履歴がリセットされたため、解決したのではないかと推測。
やったこと
ラズパイをディスプレイに繋ぎ、IPアドレスを確認。
→169.254.XXX.XXXのリンクローカルアドレスになっていた。
この時点でDHCPからIPが取得できていないことに気付く。念のためOSを最新のRaspbian JESSIE 2.26版にして再インストール。
→上と同じ結果に。LANに接続した前後のルーター側のログを見る。
→sending OFFER ...``Request incoming from ...
は見当たるが、ACKが来ていない。割り当てのやり取りが上手くいっていない?ルーターのIP固定設定を解除してみる。
→状況変わらず。Windows側の有線LANポートと無線LAN(メイン)をブリッジ接続し、ラズパイと有線LANで接続。WireSharkでパケットをキャプチャしてみる。
→DHCP decline...``Duplicate...
というような文字列が頻繁に見える。Windows側の有線LANポートでインターネット共有を設定し、ラズパイを有線LANで直接接続。
→有線LAN側のネットワークで無事IPが割り当てられ、ここでラズパイに接続することはできるようになった。結局にっちもさっちもいかない状態になったので、ルーターのファームウェアをアップデート。
→再起動後、元通りルーターのLAN側ポートに有線で接続すると、無事IPが割り当てられた。
まとめ
IP固定のあたりで変な設定にしてしまったのだろうと思う。重複という文言も出ていたし。
DHCPのあたり、仕組みをぼんやり理解しているだけなので、勉強せねば…。
セキュリティスペシャリスト試験のために1ヶ月間でやったこと
はじめに
勉強を始めたときの状況を書く。
- 2014春に応用情報技術者試験に合格
- 2014秋にネットワークスペシャリスト試験を受験したときに、セキュリティはわりと知識を得ている。(試験自体は不合格…)
- 業務ではほとんどセキュリティには関わらない。
こんな状態で2015年9月も中ごろになり、そろそろ勉強を始めないと大変、ということで重い腰をあげて勉強を開始した。
使った書籍やサイト
情報セキュリティスペシャリストドットコム
有名サイト。応用情報技術者試験の時もお世話になりました。 午前問題はこのサイトをひたすら繰り返すだけでOK。ポケットスタディ 情報セキュリティスペシャリスト 第2版
基礎知識がある人向け。知識はあるが問題になると応用できない、という人にお勧め。
こうきたらこう答える!というセオリーがいっぱい記載されているので、役に立つ。情報セキュリティ10大脅威 2015
正確に言うと書籍ではないが、参考文書。
毎年IPAより発行されている、ホットなセキュリティの10脅威をまとめた文書。
この中からセキュリティスペシャリストの問題の題材になる可能性もあり、それぞれの脅威の仕組みや背景、対策を知るのに役立つ。
勉強の進め方
基礎知識はある程度あったので、本当の意味での基礎勉強はすっ飛ばした。
情報セキュリティスペシャリストドットコムで、1週間くらい集中して午前問題を解く
大体の問題が正解できるようになったら、試験までは25問/日くらいで復習をしておく。ポケットスタディを読み進める
私の場合は以下のような順で進めた。「情報セキュリティ10大脅威 2015」を一読する。
仕組みや対策を中心に流し読みしただけ。
結果
合格しました。午前2:84 午後1:67 午後2:84
毎度ながら午後1が鬼門。