2014年5月31日土曜日

5/29,30 ようやくテストフェーズにいけそうです。

5/29は疲れのあまり、帰ってすぐ寝てしまった。
早くも3日坊主になるのかと自分でも思ったが、なんとか4日目に突入した。

この2日分の作業は、下記4点
(1)dlsym関数の戻り値の不正を修正。
(2)CoreEngineとExtentionの通信部分の見直し。
(3)共通関数の括り出し。
(4)TestExtentionの実装着手

(1)は、関数ポインタは引数までちゃんと指定してあげなければいけないことを知らなかった。
1つ勉強になった。(次使う機会は今のところなさそう。c++はstd::function使用すれば解決できそうですし。)

(2)はpipeを引数で渡すのをやめました。 Extentionクラスでなく、ExtentionInterfaceに持たせることで、Extentionクラスがすっきりした気がします。(もう少し見直しは必要そうですが。)

(3)はタイプ量削減のため。これは機会を見つけて実施していきたい。
今のところはerrnoが何を意味しているか表示する関数のみ。

(4)はよく考えればLogExtentionよりも早くとりかかるべきだった。
これができればCoreEngineの実装の確認ができる。1つ1つ取り組む癖を付けなければいけない。
LogExtentionを実装したのは、ほぼ出来上がっていたLog部分を移植したかっただけなのだが急ぎすぎた。

明日の予定はTestExtentiionの実装。
これができれば、Ver0.0.3としてCoreEngineまでをリリースすることにする。
ドキュメントも少し書きたい。

昨日、本日の作業:
https://github.com/chikin14niwa/hytframework/commit/4c4abb15091da8a5effbc45ce9f7b080a130b0be
https://github.com/chikin14niwa/hytframework/commit/927c24900695ab8168d0baef51f385550ae6e26c

2014年5月27日火曜日

2014/05/27 dl巻数

本日の開発は、ExtentionをロードするExtebtionManagerの実装。
dl関数は使用したことがなく、dlsym関数の戻り値と変数の型が合わないエラーが発生中。
明日はこれを調べる。

直近の予定:
 dlsym関数の戻り値と変数の型が合わない問題の対処。
 動的ライブラリの読み込みの動作確認。

次のリリース予定:
 LogExtention実装後

本日のコミット:
https://github.com/chikin14niwa/hytframework/commit/77fb52c14492e786e31531300ae325c019d0ffb0

2014/5/26 初投稿

本日は初投稿ということで今何をしようとしているかをご紹介。
 ・hytfwの根幹となるMainEngineの開発。
 CoreEngineはExtention(後述)との通信を行うエンジン。
 Extentionとの通信は、Extention -> CoreEngineがメッセージキュー、 CoreEngine -> Extentionがパイプである。
 Extentionは動的ライブラリで読み込みが可能で現在動的ライブラリの読み込み部分を実装中。
 その他、通信部分・設定ファイルの読み込み部分は一通り実装済み。(未テスト)
 Extention・・・CoreEngineに接続されるモジュール。
       動的ライブラリから読み込まれ、子プロセスを生成する。
・Extentionの一つLogExtentionの開発。
 LogExtentionはログの書き出し用Extention。
 Loggerクラスを使用して書き出す。各プロセスからは直接メッセージキューから送信される。

今後については明日以降にご説明できれば。
それでは。
 
 本日のコミット:
https://github.com/chikin14niwa/hytframework/commit/c3edfe286aae0c897faca15c98e04748b58bf252

ごあいさつ

このページを閲覧していただきありがとうございます。

このブログは自身が開発しているhytfwの開発日誌です。
自身の考え方や勉強したこと、リリースノートなどを書いていきたいと思います。
目標は毎日の更新。(もちろん開発も)
できるように日々精進していきたいと思います。

簡単に現在のプロジェクトの概要を説明させていただきたいと思います。
プロジェクト名:hytframework
URL:https://github.com/chikin14niwa/hytframework
プロジェクトの目標:以下の3点を目標とする。
 ・新たな技術を容易に試験できるフレームワークを目指す。
 ・綺麗な設計・実装を目指し可読性・再利用性の高いフレームワークを目指す。
 ・ Webシステムの公開
リポジトリ運用ルール:
 ・master 現行の最新版
 ・develop 次期リリース用の段階リリース
 ・unstable 開発中のリポジトリ。このリポジトリに毎日pushすることを目標とする。
現在提供済みの機能:
 JSONライブラリの提供。
 特徴:[key]で子要素へアクセス可能。
 example
  hfw::json::Object obj;
  obj.Parse("{\"Key\":\"Value\"}";
  cout << obj["key"] << endl;