コラム

優れたプログラムとは (3)

○再利用と保守性の関係  継承は非常に高い再利用性を持つ反面、スーパークラスへの依存度が高くなればなるほどそこへの修正コストが高くなるという欠点があります。低階層に位置するこれらの要素は、プログラムの大部分に影響を及ぼす可能性がある...
2020.10.16
コラム

ポリモーフィズムについて

 ポリモーフィズムは一般的にオブジェクト指向の代名詞のように扱われることが多いですが、ポリモーフィズムを再利用性の観点から説明する場合には慎重に行わなければならないと私は考えます。なぜならポリモーフィズムの根源的な意味とは、オブジェクト同...
2020.10.16
コラム

下流工程の質

 以前のエントリーでは日本特有の上流・下流の分離構造について、それが必ずしも諸悪の根源とは言えないのではないかというお話しました。ただ、だからと言って、この分離構造に問題がないとはまったく思っていません。分離構造の一番の問題点は、下流工程...
2020.10.16
Android Tips

リストビューのカスタマイズ

リストビューのカスタマイズには、ArrayAdapterクラスを使用します。 まずはリスト要素のデータクラスを作成します。下記の例では、アイコンとタイトルが表示されることを想定してます。 リスト要素のクラス packag...
2020.11.15
Android Tips

リストビュー

リストビューを実現するには、ListViewクラスとArrayAdapterクラスを使用します。最もシンプルな文字だけのリストの場合、以下のようになります。ArrayAdapterが若干ややこしいですが、柔軟なカスタマイズを可能とするため...
2020.11.15
Android Tips

背景形状(shape)の定義

shapeタグを使用することにより、グラデーションや枠線、角丸などの効果を持った背景形状を定義できます。これでボタンをわざわざ画像にする機会も減りますね。定義した形状は、backgroundで指定して使用します。注意点としては、とある角(...
2020.11.15
Android Tips

レイアウトの部品化

レイアウトはmain.xmlだけでなく、部分部分に分けることができます。部品化したレイアウトをプログラム内でインスタンス化するには、LayoutInflaterクラスを使用します。 import android.app.Activi...
2020.11.15
Android Tips

リソースの定義

res/values配下にXMLファイルを置くことで、以下の様々な定義ができます。 ・色の定義・文字の定義・スタイルの定義 例では慣例に従ってそれぞれ別ファイルにしていますが、resourcesタグで囲っていればどのようなファ...
2020.11.15
Android Tips

タブメニュー

タブメニューはTabActivityを継承することで実装します(継承しなくても実装できます)。setIndicatorでタブのレイアウト、setContentでタブに対応する画面のレイアウトを設定します。また、タブ切り替えはOnTabCh...
2020.11.15
Android Tips

サブメニュー

サブメニューを表示させる場合は、menu.xmlでitemの中にさらにmenuを作ります。 res/menu/menu.xml <?xml version="1.0" encoding="utf-8"?> <...
2020.11.15