第27回 WebSig会議に参加してきた

スマートフォンに対応させる方法についての話が多かったけれど、対応する際にどういうことに気をつければいけないかが、見えてきた気がする。 これは、コンソールアプリでも、GUI アプリでも、同じような点に気をつけばければいけないってことなんだろうね。 それと、もっとデザイナーという仕事は何をするのかが知りたかったかな。 第27回 WebSig会議 来るべきスマホ時代のコミュニケーションデザイン ~技術とコミュニケーションデザインの両側面から http://websig247.jp/meeting/27/000213.html

Read More

わんくま同盟 東京勉強会 #59

参加してきました。 TDD は、何となくは知っていたけれど、やり方や考え方を知ることができたかな。 わざわざ細かく失敗させるのは、あまり良い気分がしないけれど。 わんくま同盟 東京勉強会 #59 「名古屋1合目 ~関数型都市へのパスポート~」秋野氷雨さん Lv.1くまー 「リーン原則とソフトウェア開発」by You&Iさん Lv.1くまーTDD道場 「TDD の おさらい(改) ~ どうやるんだっけ? なにが美味しいんだっけ?」by biacさん Lv.1くまー 「デジタルカメラ ステップアップ術」by りょーいち Lv.1くまー 「Hudson以外の何か with 任意」by bleis-tiftさん Lv.2くまー わんくま同盟 東京勉強会 #59 http://www.wankuma.com/seminar/20110528tokyo59/

Read More

JNI の "Hello, world" (C から Java のメソッドを呼ぶ)

Java 側のメソッドを C 側から呼んでみた。手順を踏まないといけないところが面倒だ。 引数の渡し方とか、戻り値の受け取り方とか、クラスを使った場合など、ちょっと追加で調べてみたいかも。 ソースコード #include <stdio.h> #include <stdlib.h> #include <string.h> #include "jni.h" int main(int argc, char **argv) { JNIEnv *jenv; JavaVM *jvm; JavaVMInitArgs jvm_args; JavaVMOption jvm_options[1]; jclass klass; jmethodID mid; int ret; jvm_options[0].optionString = "-Djava.class.path=./java"; jvm_args.version = JNI_VERSION_1_6; jvm_args.options = jvm_options; jvm_args.nOptions = 1; jvm_args.ignoreUnrecognized = 1; ret = JNI_CreateJavaVM(&jvm, (void**)&jenv, &jvm_args); if (ret < 0) { fprintf(stderr, "cannot create JVM\n"); exit(1); } klass = (*jenv)->FindClass(jenv, "HelloWorld"); if (klass == 0) { fprintf(stderr, "cannot find class\n"); exit(1); } // public static void main (String[] args) mid = (*jenv)->GetStaticMethodID(jenv, klass, "main", "([Ljava/lang/String;)V"); if (mid == 0) { fprintf(stderr, "cannot get method id\n"); exit(1); } (*jenv)->CallStaticVoidMethod(jenv, klass, mid, NULL); (*jvm)->DestroyJavaVM(jvm); exit(0); } コンパイル gcc -I$JAVA_HOME/include -I$JAVA_HOME/include/linux -Wall -c sample.

Read More