Date

Dateは日時を扱うクラス。Date (Java Platform SE 8)現在日時を取得してみる。 MainClass.javaで、Dateオブジェクトdateを生成して、System.out.printlnにそのまま渡すと、日時が出力される。 Sun Jun 3 20:48:16 JST 2018このように出力される。Sample/java…

Math.abs

絶対値を計算するには、Mathクラスのabsメソッドを使う。Math (Java Platform SE 8)MainClass.javaで、10と-10の絶対値を求めて出力する。 10 10絶対値はどちらも10。Sample/java/Math/abs/src/Math at master · bg1bgst333/Sample · GitHub

ArrayList

ArrayListは、挿入や削除が可能な配列型のコレクションクラス。ArrayList (Java 2 プラットフォーム SE v1.4.0) ArrayList (Java Platform SE 8)ジェネリクスが無い時代は、Objectで出し入れしていたため、各型にキャストすることが必要だったが、ジェネリク…

Integer

Integerは、整数型intのラッパークラス。 ラッパークラスってよくわからないけど、Integer (Java Platform SE 8) 【Java入門】Integerなどのラッパークラスの使い方(変換/比較/null) | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイトインス…

String

Stringは文字列を扱うクラス。String (Java Platform SE 8)MainClass.javaで、Stringオブジェクトstr1は初期化も代入も無いので、このままだとコンパイルエラーというかコンパイルできない。 なのでnullを入れておく。 str2は文字列代入のような初期化。(""…

予約

予約

昨日から一夜明けて・・・。

ebay見たら、TP370QL ASUS Nova Goのオークション、すげー上がってるwww8GBなんて昨日、6万ぐらいだったのに・・・。www.ebay.com4GBは大きく変わらず・・・。www.ebay.comいつ動き出すんだか・・・。

わんくまでWindows 10 on ARMの話をしゃべってきました。

わんくま同盟 東京勉強会 #111でWindows 10 on ARMのセッションをしてきました。www.wankuma.com初めてトップバッターだったんで前回とは違う緊張がありましたが、なんとか話せました。 Windows 10 on ARM やるの?やらないの?どっちなんだい! from bg1 333…

Windows 10 on ARMのARM64バイナリのビルドを試してみた。

今週はいろいろと立て込んで忙しかったのですが、わんくまの準備でARM64ビルドを試してみました・・・。VS2017はあまりインストールしてないので朝4時までかかった・・・。VizCommand32はアプデが必要なので断念して、MFCはWin32新規プロジェクトで、 vcxpro…

予約

予約

さらにレポジトリを追加しました

応用アプリ編 なんでも開けるObjeqtNote github.com なんでも実行できてGUI/CUI連携表示できるVizCommand github.com 標準リストビューとウィンドウリストビューの2種類のUIを予定しているTwRIBE32 github.com 基本ゲーム編 シューティング github.com アド…

初詣

神田明神へ行ってきました大吉でした今年はいいことあるといいなあ・・・。

基本の4アプリが揃いました

さきほど、ZincのWindows版の0.0.0(Komagawa #5)をリリースしました。github.comこれで、再学習目的の基本的なアプリのリリースが揃いました・・・。 ここからちょこちょこ更新していって、ObjeqtNoteやVizCommandなどの独自アプリに繋げていこうと思ってま…

2018年

あけましておめでとうございます。 今年もよろしくお願いいたします。しばらく、ブログを放置してたり、アドベントカレンダーも放置してたりしましたが、 新年から、またブログを再開しようとおもいます。2018年は、いろいろ起きそうだし、いろいろやってい…

まずB.G-STATIONとは何ぞや

B.G-STATION Advent Calendar 2017 1日目です。 adventar.org まずは何ぞやって話です まあ、B.G-STATIONは、僕が以前から運営していたというか運営しているサイトであり、同人個人サークル名でもあります。 B.G-STATION 車輪のx発明 ~B.G's Blog~代表は僕で…

nullptr

C++

C++11からは、ポインタへのNULLのセットは、nullptrを使うことが推奨されている。nullptr - cpprefjp C++日本語リファレンスnullptr.cppで、intとconst char *を引数とするfuncがある。値、指定された文字列をそれぞれ出力するだけ。 // 0とNULLの場合. func…

ioctl

ioctlは、デバイスを制御するのに使う。Man page of IOCTL今回は、ネットワークデバイスであるNICからIPを取得する。ioctl.cで、インターフェース名を入力。 ioctlでSIOCGIFADDRを送る。 成功するとstruct ifreq型のsifrに情報が格納される。 $ ifconfig enp…

msync

msyncでメモリマップの内容に合わせてファイルを同期する。Man page of MSYNCmsync.cで、"test.txt"を開いたら、内容を"VWXYZ"に書き換えて、msyncで同期する。 $ ls msync msync.c test.txt $ vi msync.c $ gcc msync.c -o msync $ vi test.txt $ cat test.…

mmap

mmapは、ファイルの内容をメモリにマッピングすることで高速にアクセスできる。Man page of MMAPmmap.cで、ファイルサイズを取得し、メモリのページサイズも取得し、メモリマップサイズを計算。 "test.txt"を開いて、メモリにマッピング。 メモリマップの中…

isatty

isattyは、ファイルディスクリプタが端末を参照しているかどうかを返す。Man page of ISATTYわかりにくいので補足すると、ファイルディスクリプタの出力先が標準出力であれば、端末は参照されていると言えるし、 リダイレクトなどで、ファイルなどに出力され…

fileno

filenoは、指定されたファイルポインタの指すストリームのファイルディスクリプタを返す。Man page of FERRORstdio.hだが、標準関数一覧には何故かない。 fileno.cで、stdin, stdout, stderr, そして新たに開いた"test.txt"のファイルディスクリプタを出力。…

perror

perrorは、OSが返すシステムエラーメッセージを出力する。Man page of PERRORシステムコールっぽいが標準関数。 perror.cで、存在しないファイルを開こうとしてわざと失敗させる。 $ vi perror.c $ gcc perror.c -o perror $ ./perror fopen error!: No such…

getpagesize

getpagesizeは、メモリのページサイズを取得する。Man page of GETPAGESIZEgetpagesize.cで、これだけ。 $ vi getpagesize.c $ gcc getpagesize.c -o getpagesize $ ./getpagesize page_size = 4096 $4096Bらしい。Sample/unixsyscall/getpagesize/getpagesi…

iconv

iconvは、文字コード変換をする。Man page of ICONV「どの文字コードからどの文字コードへ変換するか」といった情報を指定して、変換ディスクリプタを取得しないといけない。test1.txtを読み込みbufに格納。 "utf-8"から"Shift_JIS"へ変換するディスクリプタ…

stat

statは、ファイルの情報や状態を取得する。Man page of STAT指定されたパスのファイル情報をstat構造体に格納する。"test.txt"のファイルサイズを調べる。 $ ls stat stat.c test.txt $ vi test.txt $ ls -al 合計 28 drwxrwxr-x. 2 h.miura h.miura 4096 8…

Interpreter

Interpreterパターンは、翻訳者(Interpreter)によって翻訳された指示に従って処理する構造。23.Interpreter パターン | TECHSCORE(テックスコア)main.cppで、式を解析して、計算結果を出力する簡単なインタプリター実装した。 $ $ vi main.cpp $ g++ -o mai…

Command

Commandパターンは、条件と要求を渡し、条件が整ったら、要求を実行してもらうような構造。22.Commandパターン | TECHSCORE(テックスコア)main.cppで、"print"と"exit"コマンドを追加。 $ vi main.cpp $ g++ -o main main.cpp command_loop.cpp print_comma…

Proxy

Proxyパターンは、代理人(Proxy)でもできる処理は代理人が処理し、できない処理は本体が行うような構造。21.Proxyパターン | TECHSCORE(テックスコア)main.cppで、class_proxy_printのコンストラクタに渡したclass_simple_printはnewで生成しているが、dele…

Flyweight

Flyweightパターンは、既に生成したインスタンスと実質同じであれば、新たに生成せず、他のインスタンスと共有することでリソースを無駄なく使うような構造。20.Flyweight パターン | TECHSCORE(テックスコア)main.cppで、"ABCDE"を2回、"XYZ"を1回、取得し…

State

Stateパターンでは、状態を定数リテラルなどで表すのではなく、クラスとして表すようにする。19.State パターン | TECHSCORE(テックスコア)main.cppで、定数リテラルだと、class_nostate_timezoneの中でif文が大量になり、分岐処理が大変だが、class_state_…