しぐれがき

これまで挑戦したことの備忘録!!

はてなブログをTwitterに自動投稿をさせよう

はてなブログでは投稿後に手動でTwitterに投稿することはできたのですが、予約投稿をさせたときに投稿と同時には投稿できなかったので、Twitter自動投稿機能を有効にしました。
本記事ではその方法をまとめます。
f:id:shiguregaki:20170320122252j:plain

目次

ゴール

はてなブログで予約投稿をさせたときに投稿と同時にTwitterで投稿されるようにすることを目指します。


必要なもの

必要なもの 価格(円)
1 PC ピンキリ
備考 インターネット接続可能なこと
2 はてなブログのアカウント 無料
備考
3 Twitterのアカウント 無料
備考

はてなブログでのTwitter自動投稿方法

はてなブログで予約投稿をさせたときに投稿と同時にTwitterで投稿する方法をまとめます。

外部連携サービスの有効化

はてなブログのホームにアクセスし、右上にある設定をクリックします。

ユーザ設定ページが表示されるので、上部にある外部アプリケーション認証をクリックします。

外部アプリケーション認証の画面が表示されたら"はてなのサービスから、外部のアプリケーションを利用する"をクリックします。

はてなのサービスから、外部のアプリケーションを利用するのページが表示されたら、"アカウントを認証する"ボタンをクリックします。

Twitterアカウントを認証するページが表示されたら、"Twitter認証画面にすすむ"ボタンをクリックします。

Hatenaにアカウントの利用を許可しますか?ページが表示されたら、"連携アプリを認証"ボタンをクリックします。

すると、現状ブラウザでログインされているTwitterアカウントが自動で選択されてアカウント登録されます。

これでTwitterでの自動投稿するための外部連携サービスを有効化できました。
次の章以降で正しく自動投稿されるかチェックしていきます。

Twitter自動投稿の設定方法

自動投稿するためには投稿ページで右側にあるメニューで設定します。
設定方法を以下にまとめます。
①.右側のメニューの歯車マーク(編集ボタン)をクリックします。
②.投稿日時を指定して"指定日時で予約投稿する"ボタンをチェックします。
③.公開と同時にシェアするメニュー欄で"Twitterに投稿"ボタンをチェックします。
④.Twitte投稿時のメッセージ内容を編集します。
(デフォルトで「はてなブログを投稿しました。 #はてなブログ」というメッセージが入力されています。)
⑤.記事内容を記載します。
⑥.すべて記載できたら、"予約投稿する"ボタンをクリックします。


自動投稿の確認

上の自動投稿の設定方法の画像の記事をテスト用で投稿しました。
すると、指定した時刻にTwitterに自動投稿されていることを確認できました。
また、自動でTwitterカード化もされていました。


まとめ

SNSからのアクセスは多いので、効果的な時間にSNSへ投稿させることでより大きなアクセスが見込めます。
本記事で紹介した予約投稿機能で指定時刻にTwitterに投稿できるようになるので、アクセスが見込める効果的な時間帯を狙った投稿ができるようになります。
ぜひお試しください。

以上!

【実践】働きながらでもJava Silverを1か月で取得する!

f:id:shiguregaki:20170320085515j:plain

目次

本記事について

本記事は日本オラクルJavaプログラマ向けの資格であるJava プログラマ SE 8Silverを1ヶ月で取得することを目指し、そのための試験申込み方法、教材や勉強方法、受験前に気を付けるポイントをまとめたものになります。
働きながらでも1日1時間くらいを想定した勉強法もまとめています。
本記事がJavaプログラマの資格取得を検討している方の参考になればうれしいです。

ちなみに私自身が本記事で記載した内容を実践することで、Java プログラマ SE 8 Silverに合格することができました。
下の画像はそのときの試験結果レポートになります。


資格情報

Java Silverとは

Javaプログラマ試験は日本オラクルが実施しているJavaプログラマ向けの資格です。Javaによるオブジェクト指向Javaアプリケーション開発スキルについて証明してくれます。
Javaのバージョンアップごとに資格もアップデートしており、2017年3月19日時点ではJava SE 8が最新バージョンとなっています。
(本バージョンの認定試験は2015年5月下旬から開始されました。)

各バージョンごとに資格のランクが下記の様に3種類用意されています。

レベル 概要
1 Bronze SE 7/8 プログラミング未経験の方が理解すべき基礎知識が問われる入門資格
※Brozeは「SE 8」のみの資格は無いようで、「SE 7/8」が最新バージョンの資格になるようです。
2 Silver SE 8 Javaプログラミング中級者もしくはその他の言語経験者でJavaの知識を得たいという方に向けた中級資格
3 Gold SE 8 プログラミングのみではなく設計に関する知識も問われる上級資格
※前提資格としてJava Silver SE 8/Java Silver SE 7のどちらかを持っていないと受験できません。

受験方法

Java プログラマ Silver SE 8の資格試験はピアソンVUEが運営する公式なテストセンター会場にて受験します。ですので、受験申込みもピアソンVUEからすることとなります。
下のブログで申込み方法についてまとめましたので参考にしてください。

shiguregaki.hatenablog.com



試験情報一覧

試験情報 詳細
1 試験番号 1ZO-808
2 出題数 77問
3 試験時間 150分
4 合格基準 65%
5 受験料 28,728円(税込)

教材紹介

教材は以下の2つです。
1.オラクル認定資格教科書 Javaプログラマ Silver SE 8

2.オラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集

オラクル認定資格教科書 Javaプログラマ Silver SE 8

本情報

■タイトル
オラクル認定資格教科書 Javaプログラマ Silver SE 8
■価格(2017/2/14現在)
4,104円
■著者
有限会社ナレッジデザイン 山本道子
■ページ数
全453ページ
■章構成
第1章 Java プログラミングの基礎
第2章 配列
第3章 演算子と分岐文
第4章 繰り返し文と繰り返し制御文
第5章 クラス定義とオブジェクトの生成・使用
第6章 継承とポリモフィズム
第7章 Java APIの利用
第8章 例外処理
模擬試験

■詳細

内容

Java Programmer, Silver SE 8資格に向けた参考書です。
各章に詳細な解説ページとソースがたくさん載っている印象があります。
学習した内容に対して、実際に動かすソースが提供されていてコンパイル成功するコードと失敗するコード、実行時エラーとなるコードの比較ができました。
実際の試験内容はほとんどがソースを見て結果を判断する内容になるので、コードをきちんと読めないといけないのですが、このテキストのおかげで知識のみではなくコードにも慣れることができたと思います。

各章の最後に20問ほどの練習問題もついているため、解説で知識を学ぶ->演習で知識の定着が図れました。
私はこの参考書をJava Programmer, Silver SE 8の知識定着と演習問題集の逆引き辞書としても使用しました。

オラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集

本情報

■タイトル
オラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集
■価格(2017/2/14現在)
3,240円
■著者
日本サード・パーティ株式会社
■ページ数
全427ページ
■章構成
1章 Javaの基本
2章 Javaのデータ型の操作
3章 演算子と決定構造の使用
4章 配列の作成と使用
5章 ループ構造の使用
6章 メソッドとカプセル化を操作する
7章 継承の操作
8章 例外の処理
9章 Java APIの主要なクラスの操作
模擬試験

■詳細

内容

Java Programmer, Silver SE 8資格に向けた問題演習書です。
すべてで308問収録されています。Java Programmer, Silver SE 8の試験問題数は77問ですので、これ一冊で4回分解いたことになります。
各章ごとに数十問の問題数があります。1問解く->その解説->次の問題を解く・・・の形式です。

この問題演習書は何と言っても、メモリ上のイメージが非常にわかりやすいです。
継承について考えるときにメモリイメージをつけられるかがポイントになってくるのですが、この本は各問題の解説に丁寧なメモリイメージ図を乗せているので、メモリイメージをしっかり定着することができ、最終的には継承の問題でほぼ間違えないくらいまでイメージを付けられるようになりました。

この問題集で知識の確認と定着を図りました。間違ったら解説を読みつつ、上の「オラクル認定資格教科書 Javaプログラマ Silver SE 8」で確認しました。

勉強方法

勉強方法:4ステップ

下のステップを確実にこなして合格できました。
1か月間1日1時間くらい勉強していたので、全体で30時間くらいの勉強量だと思います。

ステップ1:知識詰め込み

オラクル認定資格教科書 Javaプログラマ Silver SE 8を一気読みします。
このとき、演習問題を解かずにとにかくスピード勝負で知識を詰め込みます。
不明なところ、重要そうなところは付箋でメモを残しておきます。

ステップ2:知識定着させる

再度、オラクル認定資格教科書 Javaプログラマ Silver SE 8を読み直します。
このときは知識の定着を心がけます。
演習問題をしっかり解き、間違えたところは解説ページのみならずそこを説明している個所に戻ります。
また、本だけでは解決できない問題はググるなりして、解決しておきます。
解決した内容は付箋なりでメモをきちんと残しておきましょう。
(私はこのときは本に直接書いてしまいます。)

ステップ3:問題集を解く

オラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集を使って問題演習をします。
ここで間違えたときは問題集の解説にとどまらず、オラクル認定資格教科書 Javaプログラマ Silver SE 8にも立ち戻って確認をします。
ここでも本だけでは解決できない問題はググるなりして、解決しておきます。
解決した内容は付箋なりでメモをきちんと残しておきましょう。

ステップ4:前日に参考書を一気に読み直す

今回の資格はプログラムを見て解答するタイプですので、あまり効果はないかもしれませんが、知識問題の時はこれは効果絶大です。
いわゆる詰め込み学習で勢いで解いていくスタイルです。
前日にオラクル認定資格教科書 Javaプログラマ Silver SE 8を演習問題を除き一気に読み直すことにします。

Java Silver資格取得に向けて気を付けるポイント

Javaプログラマ SE8 Silverの資格試験に向けて勉強する中で、気を付けるべきポイントがあったのでまとめました。

下のブログでJava Silver資格取得に向けて気を付けるポイントについてまとめましたので参考にしてください。


shiguregaki.hatenablog.com



試験時の経過報告ブログまとめ

私が受験したときの経過報告のブログを下にまとめておきます。
もしよかったらご覧になってください。

shiguregaki.hatenablog.com

shiguregaki.hatenablog.com


shiguregaki.hatenablog.com

shiguregaki.hatenablog.com

shiguregaki.hatenablog.com



まとめ

Javaはサーバ上のWebアプリ開発からアンドロイドなどの端末内のアプリ開発、ゲームの開発などさまざまな分野で使われている言語ですが、オブジェクト指向や継承などが原因でとっつきにくい印象がありました。
しかし学んでみるとオブジェクト指向の考え方は分かりやすいですし、1つ1つの機能はイメージがつきにくかったのですが、オブジェクト指向を実現するための機能として継承やカプセル化などがあるんだと考えて学ぶとすんなり理解できました。

Java プログラマ SE 8 SilverJavaによるオブジェクト指向Javaアプリケーション開発スキルについて証明してくれます。
Javaの知識を習得したい、オブジェクト指向のスキルを得たい方などにおすすめの資格です。
みなさまの試験受験の検討に本記事が参考になれば幸いです。

以上!

Java Silver資格取得に向けて気を付けるポイント

f:id:shiguregaki:20170319173801j:plain
Javaプログラマ SE8 Silverの資格試験に向けて勉強する中で、気を付けるべきポイントがあったのでまとめました。
試験日前日にさっと目を通すことで知識を整理できました。

目次

Javaプログラムのコンパイルと実行

注意ポイントは下記です。

注意ポイント
1 main関数の記述(補足)
2 ソースファイルにpublicクラスは1つしか定義できない
3 識別子の1文字目は数字はNG
4 アンダースコアはリテラルの先頭,末尾,記号の前には使えない
5 try~catchも1スコープ 変数定義には気を付けること
6 同じ変数名の変数が複数定義された場合、一番内側のブロックで定義された変数が優先的に使用される。
つまり、int set(int i){i=i;}では引数のiに同iを代入しているだけとなる。
7 staticとpublicはどちらも修飾子のため入れ替えても問題ない
8 静的インポート:static変数やstaticメソッドをクラス名を指定せずに使用するためのimport機能
import static パッケージ名.~には注意
9 0除算について
整数型に対しての実行時エラーになるが
double型の0除算は以下のような振る舞いをする
dnum > 0 dnum/0Infinity
dnum = 0 dnum/0NaN
dnum < 0 dnum/0-Infinity

メイン関数の記述

main関数の記述は下記
public static void main(String args){...}

<コンパイルエラー>
stringが小文字(Stringは大文字であるべき)
・戻り値がない/void以外(戻り値はvoidであるべき)
・引数なし(Stringがあるべき)

<実行時エラー>
Stringのがない
staticがない
Mainのようにmain関数が大文字始まり

<注意>
・引数名はargsでなくてもOK
・引数はString argsでも可
public static void main(String args){...}とは別のmain関数をオーバーロードすることは可能(実行はされないが)

1次元配列

注意ポイントは下記です。

注意ポイント
1 配列の添え字は0から n=new int[3]に対してn[0]-n[2]はアクセスできるが、n[3]アクセスは実行時エラーとなる
2 配列の初期値(補足)
3 ArrayList<データ型>のデータ型は参照型のみ有効。
基本データ型(intやdoubleなど)は使用できない。ラッパークラス(IntegerやDoubleなど)を使うこと
4 < >のデータ型が左右で会わない->ArrayListコンパイルエラー
5 < >で指定された以外のデータ型を格納->ArrayListコンパイルエラー
6 ArrayListジェネリックスを使用しないこともできるが、.getするときはキャストしないとコンパイルエラーになる
7 比較式は左結合で実行
*1では、((i < 0) && (j < 0)が判定後、その判定結果と|| (k < 0)が判定される。
8 可変長変数は配列定義と同じ
public static void main(String... v){・・・}
public static void main(String[] v){・・・}と同表現になる

配列の初期値

配列はインスタンス化(newしたとき)に以下の値に初期化される。

データ型
byte,short,int,long 0
float,double 0.0
char \u0000
boolean false
参照型 null

演算子と分岐文

注意ポイントは下記です。

注意ポイント
1 インクリメントとデクリメントの前置き(++a,--a):先に計算してから代入
インクリメントとデクリメントの後置き(a++,a--):代入後に計算
2 newを使用しないStringはすでに同じ文字列があったら参照先を同じにする。
newを使用すると、同じ文字列でも別々に定義も可能
3 StringStringBuilderの仕様の違い<文字追加>
String:新しい文字列として追加された文字列の参照先を定義する
StringBuilder:既存の参照先の文字列に追加する
4 nullは小文字 大文字は予約文字ではない
5 Switch文の式の評価結果のデータ型はbyte,char,short,int,enum,Stringのみ有効
Switch文の式の内では変数定義できない->コンパイルエラーする
6 演算子の優先順位(補足)

演算子の優先順位

種類 演算子 結合規則
1 単項演算子 ++ -- + - ~ !
2 算術演算子 * / %
+ -
3 シフト演算子 << >> >>>
4 比較演算子 < > <= >= instanceof
== !=
5 ビット演算子 &
^
|
6 論理演算子 &&
||
7 三項演算子 ?:
8 代入演算子 = *= /= %= += -= <<= >>= >>>= &= ^= |=
※優先度が高い順

繰り返し文と繰り返し制御文

注意ポイントは下記です。

注意ポイント
1 while(false)コンパイルエラー
2 for(式1;式2;式3)で式1は文である必要がある。
例えば、for(i1;式2;式3)コンパイルエラー
for(i1++;式2;式3),for(i1=0;式2;式3)などはOK
3 for(式1;式2;式3)の式は省略できるが、;は省略できない
無限ループもfor(;;)とする。
4 繰り返し文以外のところでcontinueコンパイルエラー
5 配列の長さを求めるlengthは()はいらない array.lengthで配列の長さになる
6 拡張for文for(変数宣言 : 配列名){・・・}で配列には[]は不要

クラス定義とオブジェクトの生成・使用

注意ポイントは下記です。

注意ポイント
1 オーバーロードは戻り値による区別はない
2 staticメンバはクラス名で呼び出すことができる(クラス名.static変数名,クラス名.メソッド名)
インスタンス化済みのオブジェクト名でも呼び出しも可能
3 アクセス修飾子について(補足)
4 引数の型に注意
・データ型:値をコピーしているだけなので、返値などで値もらわないと引数の値は変わらない
・参照型:参照先を渡すので、実行元に戻っても引数の値は変わっている。
5 パッケージ化したクラスはクラス名単体で扱えなくなる
パッケージ名に対応するディレクトリ構成にする必要がある->構成が違うと実行時エラーとなる
6 importでのワイルドカードはパッケージ名には使用できない->コンパイルエラーとなる
7 double型はchar型を暗黙的にキャストして受け取れる
8 this()の引数内でthisキーワードを使用できない→コンパイルエラーとなる

アクセス修飾子

<コンパイルエラーとなること>
protected,privateはクラス宣言時に使用不可
・ローカル変数には修飾子は使用できない

継承とポリモフィズム

注意ポイントは下記です。
















注意ポイント
1 extendsできるのは1つだけ->コンパイルエラーとなる
2 finalクラスをextends->コンパイルエラー
finalメソッドをオーバーライド->コンパイルエラー
3 finalの位置はアクセス修飾子の次に記載する
[アクセス修飾子] final 戻り値の型 メソッド名(引数リスト)
4 this()はコンストラクタ定義の先頭につける->つけないとコンパイルエラー
5 super()の落とし穴(補足)
6 this(),super()の呼び出しはコンストラクタ定義の先頭にする
7 abstractは戻り値の前に入れる->異なる位置に入れるとコンパイルエラー
[修飾子] abstract クラス名{...}
[修飾子] abstract 戻り値 メソッド名(引数リスト);
メソッド名(引数リスト)の次に{}はいらない
8 interfaceに宣言できる変数はstaticな定数のみ->初期化しないとコンパイルエラー
※強制的にpublic static final修飾子がつけられす->public以外の変数はコンパイルエラーとなる
9 interfaceでのメソッドは以下の3つ
・抽象メソッド(暗黙でpublic abstractがつくのでpublic以外の修飾子はコンパイルエラーになる)
・デフォルトメソッド([修飾子] default 戻り値 メソッド名(引数リスト)で定義)
・staticメソッド
10 デフォルトメソッドではjava.lang.Objectクラスで提供されているequals(),hashCode(),toString()はオーバーライドできない
11 extendsとimplementsを両方書くときはextendsを先に書くこと->コンパイルエラーになる
12 interfaceの継承はinterfaceに対してのみextends可能
interfaceの継承は具象クラス/抽象クラスに対してはextends可能
さらに、interfaceは複数のinterfaceを継承(extends)することができる。
※具象クラスや抽象クラスは1つしか継承(extends)できない
13 演算対象(オペランド)の最少はint型
short s1=10;
s1 = s1 + 1;->(s1 + 1)はint型となるためコンパイルエラーになる
s1 = (short)(s1 + 1);->キャストしないといけない
14 オペランドの変換はdouble型->float型->long型->int型の順に変換していく
15 instance ofは右辺と左辺が継承関係でないとコンパイルエラーになる ※0以外の値が変えるとかでないのに気を付ける
16 Autoboxingは暗黙の型変換を行わない
double d1 = 10;->暗黙の型変換で10が10.0と変換されている
Double d2 = 10;->暗黙の型変換が行われないため、コンパイルエラー
17 親子関係で気を付けること
・アクセス修飾子はのスーパークラスに比べて同じかより広い範囲のもの
・戻り値はスーパークラスのメソッドと同じかその型のサブクラス
スーパークラス側がprivateになっていないか(publicである必要あり)
・親クラスでコンストラクタがオーバーライドされていないか(super()の落とし穴)
18 キャストの無理やりな明示的な変換はコンパイルは通るが、実行時エラーとなる
19 getClass()は参照しているオブジェクトのクラス名が出力される
20 (キャスト)クラス.メソッド;は右から実行される
したがって、(キャスト)の対象はクラス.メソッドの戻り値に対する型変換となる
21 staticメソッドは「super.メソッド名()」の形式では呼び出せない。
「クラス名.メソッド」を使うこと
22 基本データ型の暗黙型変換(補足)

super()の落とし穴

明示的に定義しないと親クラスのコンストラクタはsuper()が実行される。


基本データ型の暗黙型変換

基本データ型の型変換は広いほうへの代入はOK


Java APIの利用

注意ポイントは下記です。

注意ポイント
1 StringBuilderは必ずnewによる生成が必要
StringBuilderでのequals()の比較はできない※toString()でString型に変換して比較する
2 異なるラッパークラス間でのequals()はfalseになる
Integer val1 = 150;
Long val2 = 150;
val1.equals(val2)
->false
val1.equals(val2.intValue())->true
3 クラス名をprintlnしたときはtoString()メソッドが呼ばれる
4 paeseメソッドの引数に不適切な値を入力すると、コンパイルは通るが実行時エラーが発生する。
5 <実行時エラーのパターン>
・日付の範囲外設定->DateTimeException例外
・日付のフォーマットが異常->DateTimeParseException例外
・asListで生成した固定リストに対し、削除や追加する->UnsupportedOperationException例外

例外処理

注意ポイントは下記です。

注意ポイント
1 catchする例外の順番はサブクラス->スーパークラスの順に書く->コンパイルエラーとなる
2 throwsthrowは別物
throws:メソッドにつける、エラー発生時に親クラスに投げる
throw:任意の場所で例外を発生させられる
3 例外のオーバーライド時の注意
・親クラスの例外と同じかサブ例外
・RuntimeExceptionとそのサブクラスは継承を意識せずスロー可
スーパークラスのメソッドにthrowsがあっても、サブクラス側でthrowsをつけなくともOK
3 クラス名をprintlnしたときはtoString()メソッドが呼ばれる
4 paeseメソッドの引数に不適切な値を入力すると、コンパイルは通るが実行時エラーが発生する。
5 Trowableクラスの主なメソッド
void printStackTrace():エラーのスタックトレースの表示
String getMessage():エラーメッセージを取得する
6 親と子のthrowsの取り扱いの違い
・親がthrows定義→子はthrowsつけなくても問題ない
・子がthrows定義→親にthrowsが定義されていないとコンパイルエラー

まとめ

Javaプログラマ SE8 Silverの資格試験に向けて勉強する中で同じところ、あいまいなところがいくつかあったので直前の知識の整理のために本記事をまとめました。
個人的に間違えたところを中心にまとめていますが、結構間違いやすいところって共通しているのではないかと思います。
Javaプログラマ SE8 Silverの資格試験を目指している方に役立てば幸いです。

以上!

*1:i < 0) && (j < 0) || (k < 0

Javaプログラマ試験 【申込み方法】

f:id:shiguregaki:20170319153718j:plain

目次

ゴール

Javaプログラマの試験はピアソンVUEが運営する公式なテストセンター会場にてPC上で受験します。
その受験のためにはピアソンVUEのサイトから申込みする必要があります。
本記事ではJavaプログラマの申込み方法をまとめます。
※今回の記事では例としてJava プログラマ Silver SE 8の申込み方法をまとめています。

必要なもの

必要なもの 価格(円)
1 PC/スマフォ ピンキリ
備考 インターネット接続可能なこと
2 ピアソンVUEのアカウント 無料
備考 本ブログでアカウント登録方法をまとめています。持っていなくても大丈夫です。
3 クレジットカード -
備考 受験料を支払う時にクレジットカードが必要になります。

Javaプログラマ試験とは

Javaプログラマ試験は日本オラクルが実施しているJavaプログラマ向けの資格です。Javaによるオブジェクト指向Javaアプリケーション開発スキルについて証明してくれます。
Javaのバージョンアップごとに資格もアップデートしており、2017年3月19日時点ではJava SE 8が最新バージョンとなっています。
(本バージョンの認定試験は2015年5月下旬から開始されました。)

各バージョンごとに資格のランクが下記の様に3種類用意されています。

レベル 概要
1 Bronze SE 7/8 プログラミング未経験の方が理解すべき基礎知識が問われる入門資格
※Brozeは「SE 8」のみの資格は無いようで、「SE 7/8」が最新バージョンの資格になるようです。
2 Silver SE 8 Javaプログラミング中級者もしくはその他の言語経験者でJavaの知識を得たいという方に向けた中級資格
3 Gold SE 8 プログラミングのみではなく設計に関する知識も問われる上級資格
※前提資格としてJava Silver SE 8/Java Silver SE 7のどちらかを持っていないと受験できません。

申込み方法

冒頭で説明した通り、Java プログラマ Silver SE 8の資格試験はピアソンVUEが運営する公式なテストセンター会場にて受験します。
ですので、申込みもピアソンVUEからすることとなります。

ピアソンVUEの申込みフォームには下記のURLからアクセスできます。
http://www.pearsonvue.com/japan/IT/oracle_index.html

アクセスすると下記のようなサイトが表示されるはずです。

アカウントを持っている方は、次の章は飛ばして本ページの試験申込みより下を参照してください。
アカウントを持っていない方はこのまま下のピアソンVUEアカウント取得を参照してください。

ピアソンVUEアカウント取得

ピアソンVUEの申込みフォームで"アカウントの作成"ボタンをクリックします。
最初にプライバシーポリシーへの同意を求められるので、よく読んで同意します。

あとは、サイトの手順に従って情報を入力していけばアカウントの作成ができます。

個人情報の入力

まずは個人情報を入力します。
下記参考にしてください。

記入事項 記入内容例
1 Oracle Testing ID 今回は初回受験を想定していますので、"いいえ、Oracle Testong IDを知りません。"をチェックします。
2 Title(タイトル) 男性:Mr. 女性:Ms.
3 First Name(氏名(名)) 受験者の名前を入力
4 Middle Names(氏名(ミドルネーム)) 持っていたら入力 持っていないなら空欄でもOK
5 Last Name(氏名(姓)) 受験者の名字を入力
6 Suffix(サフィックス) 持っていたら入力 持っていないなら空欄でもOK
7 Eメールアドレス 受験者が確認できるEメールアドレス
ピアソンVUEからメールを受け取りたい場合は"ピアソンVUEからのマーケティングEメールを希望します。"にチェックする。
受け取り不要なら、チェックを外す。

連絡先の入力

次に連絡先を入力します。
下記参考にしてください。

記入事項 記入内容例
1 住所の種類 個人受験を想定しているので、"個人"を選択します
2 Country of Residence(居住国) Japanを選択します
3 Post Code(郵便番号) 受験者の自宅の郵便番号を入力します
4 Prefecture(都道府県) 受験者の自宅の都道府県を入力します
東京なら"Tokyo"と入力する
5 City/Ward(市区町村) 受験者の自宅の市区町村を入力します
目黒区なら"Meguroku"
6 Address1(町域名) 受験者の自宅の大字/字名を入力します
7 Address2(番地) 受験者の自宅の番地を入力します
8 Address3(建物名・部屋番号) 受験者の自宅がアパートなどなら建物名・部屋番号を記入します
Address2(番地)に部屋番号をまとめて、ここは空欄でもOK
9 Company(会社名) 空欄でOKです(個人で受けている想定)
10 電話番号 受験者の連絡がつく電話番号を記入
自動で入力されているはずですが、日本なので"81 xxx"と入力します
11 内線番号 空欄でOKです(個人で受けている想定)
12 携帯電話番号 受験者の連絡がつく電話番号を記入
自動で入力されているはずですが、日本なので"81 xxx"と入力します/td>
英語での入力が済んで次へをクリックすると、希望の言語をきかれるので日本語と選択します。
すると日本語で住所を求められます。
二度手間ですが、日本語住所の登録をします。
※登録内容は上で記載した内容と同様のため割愛します。


その他の情報

"あなたの所属する企業はオラクルパートナーネットワーク(OPN)のメンバーですか。"と聞かれるので、"いいえ"を選択します。
(個人で受験することを想定)


アカウントの作成

アカウントの情報を入力します。
下記参考にしてください。

記入事項 記入内容例
1 ユーザ名 Oracle認定プログラム用アカウントのユーザ名です。重複しないように決定します。
2 パスワード 8文字以上、大文字と小文字、数字と記号の組み合わせで作成します
3 秘密の質問 2つ利用できるので質問を選択して、回答を記入します。
解答は半角ローマ字で記入しないといけません。

登録完了の確認

登録が完了すると、下記のような"プロファイルが登録されました。"と表示されます。
また登録が完了すると、上で登録したEメールアドレスに「ピアソン VUE オンライン予約「ログインアカウント」のご案内」という題面のメールが届くはずです。


試験申込み

アカウントにサインインすると下の画像のようなホーム画面が表示されます。
ピアソン会場での受験に申込みするために、"試験会場での受験"を選択します。

試験を選択するために検索フォームに
1Z0-808-JPN: Java SE 8 Programmer Iと入力してJava SE 8 のSilver試験を選択します。
※Programmer IがSilverの資格のようです。

試験の詳細が表示されたら、試験内容が間違っていないかを確認して、"試験を予約する"をクリックします。

再度、選択した試験の確認ページが表示されるので、内容を確認して"受験予約に進む"をクリックします。

すると、テストセンターを決定するページが表示されるはずです。
ピアソンVUEのアカウントで登録した住所をもとに自動で近場のテストセンターの会場がリストアップされています。
お好きな会場を選択して"次へ"ボタンをクリックします。

上で選択した会場で開いている日付が表示されます。
お好きな日にちをクリックしてください。

次に、受験する時間帯を選択する画面が表示されます。
お好きな時間をクリックして下さい。

オーダー確認画面が表示されるので、内容を確認したうえで下方にある"次へ"をクリックします。

次に支払い処理にはいります。
個人情報を確認したら、"次へ"をクリックします。

ポリシーに同意するページが表示されたら、ポリシー内容をよく読み同意したうえで"次へ"をクリックします。

支払い情報の入力が表示されたら
受験料を支払うクレジットカード情報と個人情報を入力後、下方にある"次へ"ボタンをクリックします。

予約内容の確定のページが表示されたら、内容を確認の上、下方にある"次へ"ボタンをクリックします。

最後に、概要のページで試験概要、受験日時や場所、予約内容を表示してくれます。
これで受験予約完了です。

また、受験予約が完了すると、ピアソンVUEで登録したメールアドレスに「Oracle認定プログラムの予約確認」という題名のメールが届くはずです。

まとめ

本記事ではJavaプログラマ試験の申込み方法をまとめました。
試験を受けるうえで必ず必要になるプロセスです。
私は直前に申込みをしようとしたら受験予定日にピアソン会場が休みでどこも開いていませんでした。
結局一日早めて受験することになり、スケジュール調整が大変でした。
くれぐれも直前の申込み避け、計画的に受験日の申込みをしてください。

とりあえず、申込みをしておけば後は試験合格に向けて勉強に励むのみです。
合格に向けて頑張ってください。

以上!

【実践】Java Silverを1か月で取得する! その5

f:id:shiguregaki:20170318212234j:plain
こんにちは、しぐれがきです。

Java Silverを1か月で取得する! の日記(こちら)で立てたスケジュールに従って勉強してきました。

目次

補足:勉強スケジュール

勉強方法:4ステップ

ステップ1:知識詰め込み

オラクル認定資格教科書 Javaプログラマ Silver SE 8を一気読みします。
このとき、演習問題を解かずにとにかくスピード勝負で知識を詰め込みます。
不明なところ、重要そうなところは付箋でメモを残しておきます。

ステップ2:知識定着させる

再度、オラクル認定資格教科書 Javaプログラマ Silver SE 8を読み直します。
このときは知識の定着を心がけます。
演習問題をしっかり解き、間違えたところは解説ページのみならずそこを説明している個所に戻ります。
また、本だけでは解決できない問題はググるなりして、解決しておきます。
解決した内容は付箋なりでメモをきちんと残しておきましょう。
(私はこのときは本に直接書いてしまいます。)

ステップ3:問題集を解く

オラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集を使って問題演習をします。
ここで間違えたときは問題集の解説にとどまらず、オラクル認定資格教科書 Javaプログラマ Silver SE 8にも立ち戻って確認をします。
ここでも本だけでは解決できない問題はググるなりして、解決しておきます。
解決した内容は付箋なりでメモをきちんと残しておきましょう。

ステップ4:前日に参考書を一気に読み直す

今回の資格はプログラムを見て解答するタイプですので、あまり効果はないかもしれませんが、知識問題の時はこれは効果絶大です。
いわゆる詰め込み学習で勢いで解いていくスタイルです。
前日にオラクル認定資格教科書 Javaプログラマ Silver SE 8を演習問題を除き一気に読み直すことにします。

勉強スケジュール

日程 ステップ
2017/2/15(水)-2/19(日) ステップ1
2017/2/20(月)-3/1(水) ステップ2
2017/3/2(木)-3/17(金) ステップ3
2017/3/18(土) ステップ4
2017/3/19(日) 試験日

進捗

今週から演習問題を解いてきて、思ったより時間に余裕があることが分かりました。
また、演習問題の正答率はオラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集の巻末演習問題:77.9%,オラクル認定資格教科書 Javaプログラマ Silver SE 8の巻末演習問題:83.1%でした。
時間も正答率も十分余裕があるレベルまで至りましたが、当日は何があるかわからないので直前まで見直しを続けることにしました。

試験日は当初予定していた日程では会場が開いていなかったので1日早めた2017年3月18日(土)に受験することにしました。

日程 ステップ 進捗
2017/2/15(水)-2/19(日) ステップ1 完了
2017/2/20(月)-3/1(水) ステップ2 完了
2017/3/2(木)-3/17(金) ステップ3 完了
2017/3/18(土) ステップ4 完了
2017/3/18(土) 試験日 完了

結果

2時間半ありましたが2時間くらいで試験は全問解き切ることができ、あとは確実に合格できるように入念に見直しをしました。

結果は下の画像の様に合格できました!!
合格ライン65%に対して87%とこれまでで一番いい成績を出すことができました。

まとめ

1か月間、仕事で出張が多い期間が続いた中、電車移動時間や朝の時間帯など空き時間を見つけては勉強をつづけてきました。
結果、合格ラインを大幅に超えて見事合格することができました。

今回勉強をするなかで、Javaプログラミングのスキルはもちろんですが、これまでぼんやりしていたオブジェクト指向を理解することができました。
Javaオブジェクト指向を実現するためにいろいろな機能があります。
Javaスキルアップ、プログラミングのスキル取得などを目指す以外にも、オブジェクト指向のイメージを付けたいと方にもおすすめの資格となります。
是非受験の検討してみてください。

最後になりますが、今回のJava Silverの資格取得についての備忘録はまとめるつもりですが、せっかくJavaの知識もある程度理解できたので
自分の学んだレベルでJavaに関する記事もまとめていきたいと考えています。

以上!

【実践】Java Silverを1か月で取得する! その4

f:id:shiguregaki:20170314004305j:plain
こんにちは、しぐれがきです。

前々回の日記(こちら)で立てたスケジュールに従って勉強しています。

目次

補足:勉強スケジュール

勉強方法:4ステップ

ステップ1:知識詰め込み

オラクル認定資格教科書 Javaプログラマ Silver SE 8を一気読みします。
このとき、演習問題を解かずにとにかくスピード勝負で知識を詰め込みます。
不明なところ、重要そうなところは付箋でメモを残しておきます。

ステップ2:知識定着させる

再度、オラクル認定資格教科書 Javaプログラマ Silver SE 8を読み直します。
このときは知識の定着を心がけます。
演習問題をしっかり解き、間違えたところは解説ページのみならずそこを説明している個所に戻ります。
また、本だけでは解決できない問題はググるなりして、解決しておきます。
解決した内容は付箋なりでメモをきちんと残しておきましょう。
(私はこのときは本に直接書いてしまいます。)

ステップ3:問題集を解く

オラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集を使って問題演習をします。
ここで間違えたときは問題集の解説にとどまらず、オラクル認定資格教科書 Javaプログラマ Silver SE 8にも立ち戻って確認をします。
ここでも本だけでは解決できない問題はググるなりして、解決しておきます。
解決した内容は付箋なりでメモをきちんと残しておきましょう。

ステップ4:前日に参考書を一気に読み直す

今回の資格はプログラムを見て解答するタイプですので、あまり効果はないかもしれませんが、知識問題の時はこれは効果絶大です。
いわゆる詰め込み学習で勢いで解いていくスタイルです。
前日にオラクル認定資格教科書 Javaプログラマ Silver SE 8を演習問題を除き一気に読み直すことにします。

勉強スケジュール

日程 ステップ
2017/2/15(水)-2/19(日) ステップ1
2017/2/20(月)-3/1(水) ステップ2
2017/3/2(木)-3/17(金) ステップ3
2017/3/18(土) ステップ4
2017/3/19(日) 試験日

進捗

先週も出張が多い中、今日でオラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集の巻末の演習問題以外をすべて解き切りました。

点数は以下となりました。
1章 Javaの基本:10/16(62.5%)
2章 Javaのデータ型の操作:10/13(76.9%)
3章 演算子と決定構造の使用:17/20(85.0%)
4章 配列の作成と使用:17/20(85.0%)
5章 ループ構造の使用:20/27(74.0%)
6章 メソッドとカプセル化を操作する:33/37(89.1%)
7章 継承の操作:26/34(76.4%)
8章 例外の処理:31/41(75.6%)
9章 Java APIの主要なクラスの操作:16/23(69.5%)
全体 :180/231(77.9%)
1章を除き合格点である65%は達成できています。
1章は変数のスコープや{・・・}のひっかけなどにことごとくミスしてしまいました。
変数スコープや変な改行などには気を付けたいと思います。

また、間違えた問題の解き直しも終わったので、明日からは模擬試験に入りたいと思います。
模擬試験はオラクル認定資格教科書 Javaプログラマ Silver SE 8オラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集の巻末にそれぞれあるので、2回分きちんと時間をはかって解きたいと思います。
これまで章ごとに演習問題をしてきたので、すべてまぜこぜで出てくると確認観点が分からず間違いやすくなると思います。
それぞれの構文や問題文の内容から確認観点を読み取る練習もしたいと思います。

Java Silver資格取得に向けて気を付けるポイントver2

演習問題を解くことで、気を付けるべきポイントが少しずつわかってきました。
自分の整理もかねて、Java Silver資格取得に向けて気を付けるポイントをまとめたいと思います。
※前回の日記(こちら)のアップデートになります。

Javaプログラムのコンパイルと実行

注意ポイントは下記です。

注意ポイント
1 main関数の記述(補足)
2 ソースファイルにpublicクラスは1つしか定義できない
3 識別子の1文字目は数字はNG
4 アンダースコアはリテラルの先頭,末尾,記号の前には使えない
5 try~catchも1スコープ 変数定義には気を付けること
6 同じ変数名の変数が複数定義された場合、一番内側のブロックで定義された変数が優先的に使用される。
つまり、int set(int i){i=i;}では引数のiに同iを代入しているだけとなる。
7 staticとpublicはどちらも修飾子のため入れ替えても問題ない
8 静的インポート:static変数やstaticメソッドをクラス名を指定せずに使用するためのimport機能
import static パッケージ名.~には注意

メイン関数の記述

main関数の記述は下記
public static void main(String args){...}

<コンパイルエラー>
stringが小文字(Stringは大文字であるべき)
・戻り値がない/void以外(戻り値はvoidであるべき)
・引数なし(Stringがあるべき)

<実行時エラー>
Stringのがない
staticがない
Mainのようにmain関数が大文字始まり

<注意>
・引数名はargsでなくてもOK
・引数はString argsでも可
public static void main(String args){...}とは別のmain関数をオーバーロードすることは可能(実行はされないが)

1次元配列

注意ポイントは下記です。

注意ポイント
1 配列の添え字は0から n=new int[3]に対してn[0]-n[2]はアクセスできるが、n[3]アクセスは実行時エラーとなる
2 配列の初期値(補足)
3 ArrayList<データ型>のデータ型は参照型のみ有効。
基本データ型(intやdoubleなど)は使用できない。ラッパークラス(IntegerやDoubleなど)を使うこと
4 < >のデータ型が左右で会わない->ArrayListコンパイルエラー
5 < >で指定された以外のデータ型を格納->ArrayListコンパイルエラー
6 ArrayListジェネリックスを使用しないこともできるが、.getするときはキャストしないとコンパイルエラーになる
7 比較式は左結合で実行
*1では、((i < 0) && (j < 0)が判定後、その判定結果と|| (k < 0)が判定される。

配列の初期値

配列はインスタンス化(newしたとき)に以下の値に初期化される。

データ型
byte,short,int,long 0
float,double 0.0
char \u0000
boolean false
参照型 null

演算子と分岐文

注意ポイントは下記です。

注意ポイント
1 インクリメントとデクリメントの前置き(++a,--a):先に計算してから代入
インクリメントとデクリメントの後置き(a++,a--):代入後に計算
2 newを使用しないStringはすでに同じ文字列があったら参照先を同じにする。
newを使用すると、同じ文字列でも別々に定義も可能
3 StringStringBuilderの仕様の違い<文字追加>
String:新しい文字列として追加された文字列の参照先を定義する
StringBuilder:既存の参照先の文字列に追加する
4 nullは小文字 大文字は予約文字ではない
5 Switch文の式の評価結果のデータ型はbyte,char,short,int,enum,Stringのみ有効
Switch文の式の内では変数定義できない->コンパイルエラーする

繰り返し文と繰り返し制御文

注意ポイントは下記です。

注意ポイント
1 while(false)コンパイルエラー
2 for(式1;式2;式3)で式1は文である必要がある。
例えば、for(i1;式2;式3)コンパイルエラー
for(i1++;式2;式3),for(i1=0;式2;式3)などはOK
3 for(式1;式2;式3)の式は省略できるが、;は省略できない
無限ループもfor(;;)とする。
4 繰り返し文以外のところでcontinueコンパイルエラー
5 配列の長さを求めるlengthは()はいらない array.lengthで配列の長さになる
6 拡張for文for(変数宣言 : 配列名){・・・}で配列には[]は不要

クラス定義とオブジェクトの生成・使用

注意ポイントは下記です。

注意ポイント
1 オーバーロードは戻り値による区別はない
2 staticメンバはクラス名で呼び出すことができる(クラス名.static変数名,クラス名.メソッド名)
インスタンス化済みのオブジェクト名でも呼び出しも可能
3 アクセス修飾子について(補足)
4 引数の型に注意
・データ型:値をコピーしているだけなので、返値などで値もらわないと引数の値は変わらない
・参照型:参照先を渡すので、実行元に戻っても引数の値は変わっている。
5 パッケージ化したクラスはクラス名単体で扱えなくなる
パッケージ名に対応するディレクトリ構成にする必要がある->構成が違うと実行時エラーとなる
6 importでのワイルドカードはパッケージ名には使用できない->コンパイルエラーとなる
7 double型はchar型を暗黙的にキャストして受け取れる
8 this()の引数内でthisキーワードを使用できない→コンパイルエラーとなる

アクセス修飾子

<コンパイルエラーとなること>
protected,privateはクラス宣言時に使用不可
・ローカル変数には修飾子は使用できない

継承とポリモフィズム

注意ポイントは下記です。















注意ポイント
1 extendsできるのは1つだけ->コンパイルエラーとなる
2 finalクラスをextends->コンパイルエラー
finalメソッドをおーばライド->コンパイルエラー
3 finalの位置はアクセス修飾子の次に記載する
[アクセス修飾子] final 戻り値の型 メソッド名(引数リスト)
4 this()はコンストラクタ定義の先頭につける->つけないとコンパイルエラー
5 super()の落とし穴(補足)
6 this(),super()の呼び出しはコンストラクタ定義の先頭にする
7 abstractは戻り値の前に入れる->異なる位置に入れるとコンパイルエラー
[修飾子] abstract クラス名{...}
[修飾子] abstract 戻り値 メソッド名(引数リスト);
メソッド名(引数リスト)の次に{}はいらない
8 interfaceに宣言できる変数はstaticな定数のみ->初期化しないとコンパイルエラー
※強制的にpublic static final修飾子がつけられす->public以外の変数はコンパイルエラーとなる
9 interfaceでのメソッドは以下の3つ
・抽象メソッド(暗黙でpublic abstractがつくのでpublic以外の修飾子はコンパイルエラーになる)
・デフォルトメソッド([修飾子] default 戻り値 メソッド名(引数リスト)で定義)
・staticメソッド
10 デフォルトメソッドではjava.lang.Objectクラスで提供されているequals(),hashCode(),toString()はオーバーライドできない
11 extendsとimplementsを両方書くときはextendsを先に書くこと->コンパイルエラーになる
12 interfaceの継承はinterfaceに対してのみextends可能
interfaceの継承は具象クラス/抽象クラスに対してはextends可能
さらに、interfaceは複数のinterfaceを継承(extends)することができる。
※具象クラスや抽象クラスは1つしか継承(extends)できない
13 演算対象(オペランド)の最少はint型
short s1=10;
s1 = s1 + 1;->(s1 + 1)はint型となるためコンパイルエラーになる
s1 = (short)(s1 + 1);->キャストしないといけない
14 オペランドの変換はdouble型->float型->long型->int型の順に変換していく
15 instance ofは右辺と左辺が継承関係でないとコンパイルエラーになる ※0以外の値が変えるとかでないのに気を付ける
16 Autoboxingは暗黙の型変換を行わない
double d1 = 10;->暗黙の型変換で10が10.0と変換されている
Double d2 = 10;->暗黙の型変換が行われないため、コンパイルエラー
17 親子関係で気を付けること
・アクセス修飾子はのスーパークラスに比べて同じかより広い範囲のもの
・戻り値はスーパークラスのメソッドと同じかその型のサブクラス
スーパークラス側がprivateになっていないか(publicである必要あり)
・親クラスでコンストラクタがオーバーライドされていないか(super()の落とし穴)
18 キャストの無理やりな明示的な変換はコンパイルは通るが、実行時エラーとなる
19 getClass()は参照しているオブジェクトのクラス名が出力される
20 (キャスト)クラス.メソッド;は右から実行される
したがって、(キャスト)の対象はクラス.メソッドの戻り値に対する型変換となる
21 staticメソッドは「super.メソッド名()」の形式では呼び出せない。
「クラス名.メソッド」を使うこと

super()の落とし穴

明示的に定義しないと親クラスのコンストラクタはsuper()が実行される。


Java APIの利用

注意ポイントは下記です。

注意ポイント
1 StringBuilderは必ずnewによる生成が必要
StringBuilderでのequals()の比較はできない※toString()でString型に変換して比較する
2 異なるラッパークラス間でのequals()はfalseになる
Integer val1 = 150;
Long val2 = 150;
val1.equals(val2)
->false
val1.equals(val2.intValue())->true
3 クラス名をprintlnしたときはtoString()メソッドが呼ばれる
4 paeseメソッドの引数に不適切な値を入力すると、コンパイルは通るが実行時エラーが発生する。
5 <実行時エラーのパターン>
・日付の範囲外設定->DateTimeException例外
・日付のフォーマットが異常->DateTimeParseException例外
・asListで生成した固定リストに対し、削除や追加する->UnsupportedOperationException例外

例外処理

注意ポイントは下記です。

注意ポイント
1 catchする例外の順番はサブクラス->スーパークラスの順に書く->コンパイルエラーとなる
2 throwsthrowは別物
throws:メソッドにつける、エラー発生時に親クラスに投げる
throw:任意の場所で例外を発生させられる
3 例外のオーバーライド時の注意
・親クラスの例外と同じかサブ例外
・RuntimeExceptionとそのサブクラスは継承を意識せずスロー可
スーパークラスのメソッドにthrowsがあっても、サブクラス側でthrowsをつけなくともOK
3 クラス名をprintlnしたときはtoString()メソッドが呼ばれる
4 paeseメソッドの引数に不適切な値を入力すると、コンパイルは通るが実行時エラーが発生する。
5 Trowableクラスの主なメソッド
void printStackTrace():エラーのスタックトレースの表示
String getMessage():エラーメッセージを取得する
6 親と子のthrowsの取り扱いの違い
・親がthrows定義→子はthrowsつけなくても問題ない
・子がthrows定義→親にthrowsが定義されていないとコンパイルエラー

まとめ

テキストと問題集での知識定着ができたので、明日からは模擬試験に入りたいと思います。
模擬試験はオラクル認定資格教科書 Javaプログラマ Silver SE 8オラクル認定資格教科書 Javaプログラマ Silver SE 8 スピードマスター問題集の巻末にそれぞれあるので、2回分きちんと時間をはかって解きたいと思います。
あと残り5日ですが、頑張ります!

※1ヶ月程度の知識でいろいろ注意するポイントをまとめましたので間違いがある可能性がありますがご容赦ください。

以上!

*1:i < 0) && (j < 0) || (k < 0

メニューバーのデザインを変更しよう

Simplicity2のメニューバーの色を変更したかったのですが、外観カスタマイズのメニューバーの色を変えてもだめだったので、直接cssを変更することで色を変換することにしました。その方法をまとめます。
f:id:shiguregaki:20170306021951j:plain

目次

ゴール

Simplicity2のメニューバーのデフォルトの色はバックの色と同じで見づらかったので、下の画像の様に色を変更しました。
この記事ではメニューバーの色を変更すことを目指します。


必要なもの

必要なもの 価格(円)
1 PC ピンキリ
備考 インターネット接続可能なこと
2 WordPressのアカウント 無料
備考 持っていない場合は、こちらを参照→WordPressのインストール方法

メニューバーのデザイン変更方法

HTMLのデザインはCSS(Cascading Style Sheets;カスケーディング・スタイル・シート)によって定めれれています。
ですので、ブログのデザインを変更する場合はCSSファイルの内容を変更していくことになります。
テーマごとにCSSファイルは定められていると思いますが、今回の記事ではSimplicity2を例としてまとめたいと思います。

CSSファイルの編集するにはWordPressの左側のメニューにある外観->テーマの編集を選択し、スタイルシート style.cssを選択します。
また、このとき編集するテーマが"Simplicity child"であることにも注意してください。

本ブログでは
/* Simplicity子テーマ用のスタイルを書く */
の下にデザインを設定するコードを追加していくことにします。

style.cssの追加コード

下記のコードをstyle.cssに追加します。

/*メニューバーの色設定*/
#navi ul{
position: relative;
clear: both;
margin-bottom: 0;
border: 1px solid #ddd;
background-color:#00008b;
border-radius:3px;
margin:0;
padding:0;
width:100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
/*メニューバーの文字設定*/
#navi ul li a{
font-size:14px;
display: block;
padding: .3em .7em;
color:#fff;
text-decoration:none;
z-index:99;
}
/*カーソルが乗っているときの色設定*/
#navi ul li a:hover{
background-color:#87ceeb;
}

デザイン確認

デザインを確認するために、自分のホームページにアクセスしてみてください。
私のブログのように紺色白字のメニューバーができあがっているはずです。
※もし反映されていなかったら・・・cssはブラウザのキャッシュの影響ですぐには反映されません。
すぐに確認するためにブラウザの履歴を削除して再度ホームページを読み直してみてください。


まとめ

この記事ではメニューバーのデザインを変更しました。
ブログのタイトルやメニューバーは最初に目に入ってくるところなので、自分の好みのデザインにこだわりたいですよね!?
なぜか外観/カスタマイズの色変更メニューでメニューバーの色を変更しても、うまく反映されなかったので直接cssを変更することで対応できました。
上のソースを変更するだけで簡単にデザインが変えられるので是非お試しください。

以上!