2017-08-29 日報

ここ数日、ソースコードをモリモリ書いてる。
小さい常駐プログラムを3つ、ほぼ実装完了。あとは他人のチケット完了待ち。
よく「在宅ワークで集中して作業できる?」って聞かれるんだけど、やるべきタスクが明確になっていないから作業に集中できないんじゃないか、と、ふと思った。
事務処理なんかも全てチケット駆動にすれば捗るんじゃないかなー。
僕は10年近くGTDを意識して仕事やってるから、チケット駆動的なやり方が染み付いているんじゃないかしら。

今日調べたこと

Java enum の要素に String を持たせる

public enum DataType {
  HOGE("hoge"),
  FUGA("fuga"),
  PIYO("piyo"),
  ;

  private final String text;

  private DataType(String text) {
    this.text = text;
  }

  @Override
  public String toString() {
    return this.text;
  }

  public static DataType getDataType(String text) {
    for (DataType t : values()) {
      if (t.toString().equals(text)) {
        return t;
      }
    }
    throw new IllegalArgumentException(String.format("'%s' is undefined.", text));
  }
}
enumにprivateなコンストラクタを用意し、private finalなインスタンス変数にコンストラクタの引数で与えられた値を格納する。
switchでenumを活用する際に、文字列からenumの要素を返すstaticメソッドがあると便利。

PostgreSQL serialのリセット

select setval ('sequence_name', 1, false);
3つめのパラメータを false にしてると、次に nextval したときには 2つめのパラメータに指定した値が返ってくる

PostgreSQL truncate後にvacuum必要?

データベース/JDBC | MOYO Laboratory
  • truncateの場合は通常のvacuumはいらなそう
  • 頻繁に使うテーブルは vacuum いりそう

コメント

このブログの人気の投稿

Classpath entry org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER is marked for publish/export but is not exported on the project classpath

蛍光灯フリッカー現象 (ちらつき) の対策

[node.js] CP932のテキストを読み込む