なみひらブログ

学んだことを日々記録する。~ since 2012/06/24 ~

プログラミング

社会人人生で出会った良本のまとめ【入社~5年】

今年度が終わると社会人満5年が経つので、この期間に読んだ良本をまとめておきます。略歴 学生時代 物理専攻、プログラミング経験なし オシロスコープ、Linux(Vine Linux)などなど。 1年目 社会人研修、情報系研修 C、C++、Java、オブジェクト指向、組み込み…

「Java6以前」と「Java7&8」の言語仕様をコードで比較しました。

最近Java8の言語仕様でコードを書いていて、「このコードをJava6以前で書いたらどんな感じだっけ?」と気になったので、比較してみました。 簡潔な記載になってきて、だんだんコード量が少なくなっています。(≒バグ混入機会が減る。)~今でいう「なんで拡張fo…

JDK の互換性の情報

JDKの新しいバージョンがリリースされると、下位バージョンとの互換性についての情報もリリースされます。例えば、以下のような情報です。 JDK 8の互換性ガイド今まで意識していませんでしたが、製品のJDKのバージョンを上げる際には一読しておきたいもので…

「第七回 #渋谷java」に行ってきました。

プログラミングJavaの勉強会(LT大会)「第七回 #渋谷java」に行ってきました。第七回 #渋谷java - connpass開催概要 2014/07/19(土)14:00-17:00 株式会社ビズリーチ@渋谷クロスタワー12F 参加者数 約20人 会場雰囲気@始まる前 セッションメモと雑記参加…

coreライブラリを利用するための準備

以下のように、jspでcoreライブラリのようなタグライブラリを使う場合、 <c:forEach items="${items}" var="item"> ID:<c:out value="${item.id}"/><br> Title:<c:out value="${item.title}"/><br> </c:forEach> まずjspで以下を宣言する必要があります。ネット上だと意外と書いていない(;´Д`)当たり前のことだからも知れませんが。。。 <%@ taglib uri='http://java.sun.com/jsp…

Tomcat 7.xとTomcat 8.xのJDBC Driverの扱いの違い

Tomcat 7.xまでは、JDBC Driverは{webapp}/WEB-INF/libなどに置いていましたが、Tomcat 8.xだとTOMCAT_HOME/libに置かないといけなくなった。 理由としては、そもそもJDBC DriverはDriverManagerで管理されていて、そもそもそれは全アプリで共有される資源だ…

「第六回 #渋谷java」に行ってきました。

プログラミングJavaの勉強会(LT大会)「第六回 #渋谷java」に行ってきました。第六回 #渋谷java - connpass開催概要 2014/05/31(土)17:00-20:00 株式会社ビズリーチ@渋谷クロスタワー12F 参加者数 約20人 発表資料はこちら参照 第六回 #渋谷java まとめ …

Beanをうまくインジェクションできなかったときの話

springで書いたコードをtomcatにデプロイしたら、以下のエラーがでました。 org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [jp.co.**.dao.XXDao] found for dependency: expected at least 1 bean which qu…

org.springframework.jdbc.core.RowMapper を解決できません

Java+Springで、DBに接続するコードを書いたら、以下のコンパイルエラーがでました。 型 org.springframework.jdbc.core.RowMapper を解決できません。必要な .class ファイルから間接的に参照されています pom.xmlにて、 以下の記載をする必要があるそうで…

コーディング時に気をつけること。

最近忘れ&サボり気味なので、再認識(;´Д`)Copyrightは必ず書くお給料を貰って書くコードなので。 /* * Copyright (C) 2014 XXXX Co.,LTD. All rights reserved. */ インデントは、タブではなくて、スペースにするタブは環境依存があるから、いろんなヒト…

「Developers Summit 2014」に行ってきました。【1日目】

日本最大級のソフトウェア開発者の集い「Developers Summit 2014」に行ってきました。Developers Summit 2014:開発者のためのITカンファレンス開催概要 2014/02/13(木)、14(金) 10:00-18:00 目黒雅叙園 参加者数 約1000人/日 発表資料はこちら。 デブサミ…

Springでのプロパティ変数のデフォルト指定

一般的にSpringでのプロパティ変数の指定は以下のように指定します。sample.properties # URL url=https://www.xxx.yyy.zzz.com/ sample.javaでの指定の例 package com.zzz.yyy.xxx; /** * サンプルクラス * * @author kohsuke NAMIHIRA * */ public class S…

Javaで、プリミティブ型の名前でClassオブジェクト返すメソッドを用意した。

Javaおいてリフレクションを利用する際、クラス名を指定してClassオブジェクトを得るメソッド クラス:java.lang.Class メソッド:static Class forName(String className) 指定された文字列名を持つクラスまたはインタフェースに関連付けられた、Class オブ…

Rubyの勉強:セルフスタディ1日目

下記の中にあった練習問題について、メモ 7つの言語 7つの世界作者: Bruce A. Tate,まつもとゆきひろ,田和勝出版社/メーカー: オーム社発売日: 2011/07/23メディア: 単行本(ソフトカバー)購入: 9人 クリック: 230回この商品を含むブログ (57件) を見る探…

幅広い言語の習得

下記の本を読みながら、言語の勉強を始めました。この本使って、多種多様の言語仕様と、特にRubyとScalaの知識を深めたいです。7つの言語 7つの世界作者: Bruce A. Tate,まつもとゆきひろ,田和勝出版社/メーカー: オーム社発売日: 2011/07/23メディア: 単…

各言語のコーディング規約

各言語についてのコーディング規約の一例を以下に挙げます。 Java オブジェクト倶楽部 http://objectclub.jp/community/codingstandard/ Sun Microsystems http://numata.designed.jp/javacodeconv/ Ruby Shugo Maeda http://shugo.net/ruby-codeconv/codeco…

不正パラメータチェックについて

「防御的プログラミング」とは、 引数が正しい値でないことを検査し、不正であればシステムを停止させて、デバッグさせること。 コード例: unsigned int hash(char *str) { // 引数チェック if (str == NULL) { // strがNULLのときは、assertでシステム停止…

不正パラメータのテスト、assert実装方法について

テストでは、正常系処理のテストだけでなく、不正パラメータの処理に対してのテストもすべきです。 不正パラメータの処理に対してのテストとは、例えば以下のような関数を実装した場合、 /** * 与えられた値の平方根を返します。 * valueが負の値のときデバ…

不具合に対するテストの書き方

本文は、以下の書籍を参考にしました。 継続的インテグレーション入門 開発プロセスを自動化する47の作法作者: ポール・M・デュバル,スティーブ・M・マティアス,アンドリュー・グローバー,大塚庸史,丸山大輔,岡本裕二,亀村圭助出版社/メーカー: 日経BP社発売…