「ブログ」カテゴリーアーカイブ

ブログ投稿用のカテゴリ

Excel:西暦から和暦へ変換する方法

Excelで西暦から和暦へ変換する方法をご紹介します。

動作環境

    Microsoft Office Professional 2013
  1. 和暦表示するセルを選択して右クリックし、「セルの書式設定」を選択します。
  2. セルの書式設定ダイアログが表示されたら、「分類=ユーザー定義」を選択し、種類欄へ「ggge”年”m”月”d”日”」と入力します。これだけで設定は終了です。
  3. 後は書式設定したセルへ西暦で入力すると和暦へ変換されて表示されます。

Excel:ドロップダウンリストの設定方法

Excelでドロップダウン(プルダウン)リストを設定する方法をご紹介します。
Excelでは入力規則を使用することで簡単にドロップダウンリストを作成する事が出来ます。

動作環境

    Microsoft Office Professional 2013

ドロップダウンリストの設定手順

  1. ドロップダウンリストを設定するセルを選択し、「データ」タブ⇒「データの入力規則」を選択します。
  2. 入力値の選択で「リスト」を選択、「ドロップダウンリストから選択する」へチェック、「元の値」へドロップダウンリストへ表示する値をカンマ区切りで入力しOKを選択します。
  3. 基本的には、これだけで選択したセルへドロップダウンリストが設定されます。
  • 入力規則へ直接ドロップダウンへ表示する値を入力するのは少し使い勝手が良くないので以下の様に別シートへリストへ表示する内容を入力して設定する方が実用的です。

Excel:ピボットテーブルの使い方

Excelでデータが箇条書きで順不同で一覧になっているような場合、通常はソートしてSUM関数やAVARAGE関数で合計や平均を算出したりしますが、ピボットテーブル機能を使用すれば簡単に集計処理やフィルタリングが行えるので使用すると作業が格段に楽になります。

動作環境

    Microsoft Office Professional 2013

ピボットテーブルの使用方法

  1. まず集計対象とするセル範囲(列名含む)を選択します。
  2. 挿入タブを選択し、一番左にある「ピボットテーブル」を選択します。
  3. ピボットテーブルの作成ダイアログが表示されますのでテーブル範囲に問題なければそのまま「OK」ボタンを選択します。
  4. ピボットテーブルのフィールドオプションが表示されるので表示したい列を選択すればピボットテーブルが作成されます。
  5. 表示列の商品コードを外すと以下の様に商品名単位で表示することも出来ます。

jbossとtomcatの違い

Web開発では必ずアプリケーションサーバ(APサーバ)とかWebサーバなどという言葉が出てきます。
ここでは「アプリケーションサーバ」とは何者なのか、またこの「アプリケーションサーバー」として使用されている「JBoss」と「Tomcat」の機能や違いについて整理しておきます。
その前に「アプリケーションサーバ」って何?という方もいると思いますので、簡単にまとめておきます。

アプリケーションサーバとは

  • Webシステム開発する上で構成される「プレゼンテーション層」「アプリケーション層」、「データ層」の3階層モデルにおいて、「アプリケーション層」のプログラムを実行するサーバーのこと。
  • アプリケーションサーバで提供するのは基本的に以下の3つとなります。
    • Javaなどのプログラム実行環境やデータベースへの接続機能の提供。
    • 複数の処理(スレッド)を連結するトランザクション管理機能。
    • 業務処理の流れを制御するビジネスロジックの実装。

Jbossとは

  • EJB(Enterprise JavaBeans)のオープンソース実装であるJavaによるオープンソースソフトウェア開発コミュニティのこと。
  • JBossはEJB(J2EE対応アプリケーション)を動作させるためのサーバソフトウェアとして利用されています。本来JSPやサーブレットは動作しませんが、これらを動作させるためにWebコンテナとしてTomcatを採用しています。
  • Jbossで提供される機能は「JTAトランザクションマネージャ」、「EJB」、「MDB」、「JPA」、「JMS」、「JCA」、「JAX-WS」、「JMX」、「log4jを用いたログ基盤」、「分散キャッシュなどの各種クラスタリングサービス」などがあります。

Tomcatとは

  • Apache Tomcat Project内で開発されているオープンソースのソフトウェア。
  • JavaサーブレットやJSPを処理するアプリケーションサーバ(APサーバ)/サーブレットコンテナの一つ。
  • 単独でWebサーバとして動作することも可能。
  • 実際にはプラグインとしての利用が主流となっています。
  • Tomcatで提供される機能は基本的にServlet, JSP, JDBC接続プールのみ。

とつらつら書いてみましたが、要はJbossもTomcatも「JavaをWeb(ブラウザ)上で動かすためのプログラム」という感じで理解しておけば最初の内はいいのかなあと思います。ただTomcatでは使用出来る機能が限られる為、Tomcatの機能も包含しているJBossを使用しているケースが最近は多いようです。

インスタンス変数とローカル変数の違い

Webシステムは基本的に複数人で同時利用されるのが前提のため、マルチスレッドアクセスを考慮した設計・実装を行う必要があります。業務でJavaの各変数とスレッドセーフについて考える機会があったので、「インスタンス変数とローカル変数の違いとスレッドセーフとの関係」について今回は整理してみようと思います。

Javaでの変数毎のメモリ管理イメージ


    上記は変数毎のメモリ管理イメージとなります。Javaではクラス変数やインスタンス変数はヒープ領域と呼ばれる共有メモリ領域へ保存されます。複数のスレッドで共有され別のスレッドに書き換えられる可能性があり,スレッドセーフではありません。対してローカル変数はJavaスタックと呼ばれるスレッド固有メモリ領域へ保存されます。スレッド固有領域なので別のスレッドに書き換えられる可能性はないのでスレッドセーフとなります。

インスタンス変数とは

  • サンプルコード
  • メソッドの外に記述します。staticは付けません(staticが付くとクラス変数になります)。
  • ヒープ領域と呼ばれる共有メモリ領域へ保存される為、宣言しただけではスレッドセーフにはなりません。
  • スレッドセーフを保つ為には初期化する必要があります。
    • コンスラクタで初期化
    • インスタンス宣言時に初期化
    • 最初のget時に初期化
  • 他のスレッドからの更新を防ぐ為、修飾子はprivateにする必要があります。
  • 当該クラス内の任意のメソッドから参照可能となります。

ローカル変数とは

  • サンプルコード
  • メソッド内に記述します。
  • そのメソッドが実行中の間だけ有効となります。
  • Javaスタックと呼ばれるスレッド固有メモリ領域へ保存される為、スレッドセーフとなります。

SQLの絵本

「SQLの絵本」はDBの勉強をしようと講座を受けたときのテキストだった本です。

当時初心者だった私にも分かりやすく、仕事でSQLを書くようになって今でも手元に置いてちょっとした事を確認するのに使用しています。

書いてある事は基本中の基本ですが、同時に利用頻度の高い事でもあります。
プログラムを書くのに最近はネットで調べると直ぐにサンプルが出てくるので、言語を覚えない癖がついてしまったように思います。
SQLもブログラムを書く為に、たまに必要になるのですがちょっと間をあけると細かいルールを忘れてしまいます。
もちろんネットで調べるのも手ですが、自分の引っかかりやすいツボを押さえているのであれば、本で手元に置いてあるほうが、たくさんあるネットの情報から探すより、付箋を貼ってあるページを開くほうが早い場合があります。

同僚に質問されるような時も、この本を開いて「ここ」といった風に伝えることもあります。
言葉でまわりくどく伝えるよりも、読みやすい字で分かりやすく図解されているので、渡されたほうにとっても理解しやすい場合もあるようです。

著者:アンク
発売日:2004/08

DTOとVOの違い

様々な業務でシステム開発をしているとDTOやVOというクラスが出てきて違いが曖昧になってくる事があるので両者の違いについて整理しておきます。

DTO(Data Transfer Object)

  • 基本的には値をまとめて受け渡す事のみを目的とするクラス。
  • DTO(Data Transfer Object)はデザインパターンの一つ。
  • 過去、J2EEではVO(Value Objects)と呼ばれていた。
  • VOとは違い、値は変更可能なのでsetterメソッドを持つ。

VO(Value Objects)

  • VO(Value Objects)もデザインパターンの一つ。
  • インスタンスコンストラクタでプロパティを初期化してプロパティの変更(set)は外から出来ないようにするクラス。
  • VOは不変である事が前提のため、MVC間で使用する場合にはDTOを用いた方が相性が良い。
  • VOクラス例

jQueryのバージョン:1.x系と2.x系の違い

jQueryの豆知識ですが、jQueryのバージョンは大きく1.x系と2.x系の2つに分けられます。この2つの違いについてメモしておきます。

jQuery 1.x 系

    主に、IE8以前のバージョンを含むレガシーブラウザ向けをサポートするバージョンです。

jQuery 2.x 系

    IE8以前のサポートは切り捨てて、より高速に安定して動作させることを目指したモダンブラウザ向けのバージョンです。

jQuery 本体のダウンロード

  1. 以下サイトへアクセスし、左上にあるDownloadボタンを選択します。
    http://jquery.com/
  2. Downloadページが表示されると 1.x系と2.xに分かれているのがわかります。

案件により対応ブラウザを確認してjQueryのバージョンは選択しましょう。

Web制作者のためのCSS設計の教科書

Web制作の勉強をしようと思った場合に必ず手に取るのがCSSに関しての書籍です。
そのほとんどは初歩的なもので運用フェーズのことについても書かれておりませんし、技術的にはかなり前時代的なものを紹介していることが多かったりします。
ですが今回たまたま書店で手に取った「CSS設計の教科書」は違いました。
そもそもがCSSがしっかりとわかる現場でそれなりに経験を積んだフロントエンドコーダーを対象にしている時点で他の数多あるCSS書籍とは一線を引きます。
CSSにもオブジェクト指向の概念を取り入れようというOOCSSや話題になっているSMACSS、他にもBEMといった命名規則についても紹介しています。
現場の人間が知りたいことが盛りだくさんなのです。
具体的なコードを例示して紹介しているのはもちろんのこと、著者のスキルレベルも高いのですーっと入ってくる説明になっています。

久しぶりにWeb制作関係で良書を見つけたように思います。
更に掘り下げた第二弾も読みたくなってくる書籍のひとつですね。

著者:谷 拓樹
発売日:2014/07/24

基礎Ruby on Rails

この本は現場開発で即効性のある内容が多分に含まれています。

開発物の題材は、架空の野球チームの公式ページです。Railsを活用して、1からページを作り上げていきます。
いきなり開発本番に入るのではなく、開発環境の構築に多くのページを点に好感を持ちました。
私が今までに触れてきたRailsの入門書は、検索をすればものの数分で手に入るような情報ばかりが掲載されていたからです。
一方で、この本は開発に使うOSごとに発生し得るエラーの対処法が易しく説明されていました。
幸いにも開発環境の構築でエラーが発生しませんでしたが、初学者に配慮している部分は評価できると考えます。
Railsを用いて開発を行う技術者が、現場で多用するであろうメソッドの説明に重点が置かれていました。
そのように考えられるのは、この本の内容を見た開発経験18年の上司が「現場でよく使うメソッドの説明が丁寧だ」と言っていたからです。

日曜プログラマーから本格的に学びたいと考える人まで、全てのRails初学者に効果的な良書だと思います。

著者:黒田 努、佐藤 和人
発売日:2012/03/05