坂道で -4ページ目

坂道で

ゆるめ

研修2日目を終えて。

今日はビジネスマナーとMS Office、資料作成についての研修でした。

ビジネスマナーでは、
・名刺交換
・エレベーター
・電話
・メール
の4項目が対象でした。

ぱっと見て、どれも簡単でしょって思た自分がバカでした。
今まで、電話やエレベーターのマナー、なんとなくで過ごしてきた分、
しっかりした解説を読んで冷や汗だらだら。
なるほどなるほど。

今日で覚えたので、次回からはきっとだいじょうぶ。と、思う。願う。

とはいえ、マナーと言われている事を愚直にこなしていけばいいというわけでも無く、
状況に合わせて、適宜対応する柔軟性も必要とのこと。
とはいえ、とはいえ、やっぱり当然、マナーを知らなくていいというわけではなくて、
マナーとはたとえ使わないとしても、知っている事が重要とのこと。

つまり、正しいマナーを知っておき、状況を見て、必要であれば断りを入れた上で、
とにかく相手にもっとも不快感を与えない選択をしていく事が重要。


・・・これから、ちゃんとマナーを調べよう。うん。

お疲れ様でした。
おやすみなさい。
研修一日目を終えて。
この日はおもに、自分が成長するための心構えについてのアドバイスを頂きました。

その中でキーワード、2つ。

1つ目「視点を高く持つ」


人の成長を分けるのは、どれだけ高く視点を持ち続けられるかという点にあるらしい。
たしかに、できることばっかりやってても、そんなに成長の糧にはならないかも。
なるほど、未来の自分のためにも、高い視点で生きていかないといけない。

2つ目「野心を表明する」


野心を文にし、忘れずに唱え続ける事で、道に迷わずに成長できるようになるらしい。
また、その野心が会社と同じ方向を向いている時、周囲には応援者が増える。
野心を明かし、応援してくれる仲間を増やすことで、成長と野心の実現が叶える事ができる。

と、いうことで、僕もここに、ひとつの野心を記す。
「新しいプログラミング言語を作って、さたなべの名前を広めよう」

今の僕は、オブジェクト指向というパラダイムすら完全に理解しているとは言えない。
関数型に関してはなおさらな状態。
そんな前途多難っぽい現状だけど、
この野心を忘れずに唱え続ける事でいつか絶対に叶えてみせようと思う。


とりあえず、研修一日目はこんな感じです。

お疲れ様でした。
codebreak;いいね。

githubは課金しないとプライベートリポジトリ作れない。

仕方ないから、
パブリックでいいものはgithubで公開して、
それ以外は自鯖のgitlabって感じだった。

で、gitlabもgitlabでバージョン更新とか、とても、めんどうくさい。

その点、codebreak;はお金かけず、手間もかけずにプライベートリポジトリもてて、いい感じ。


すてま。
今回はASTParserを使って、プロキシメソッドを作ってみるという話し。
ASTVisitorの使い方が分からなければ、過去の記事をどうぞ。

とりあえず、サンプルはこちら。



public boolean visit(TypeDeclaration node)
でクラス宣言を引っ掛けて、
node.bodyDeclarations()
でメソッド宣言全部に、
generateProxy(methodDecl)
を掛けている。

generateProxyでは
1.メソッド宣言のコピー
2.コピー元のメソッド宣言の改名(先頭に$をくっつける)
3.コピー先メソッド宣言のbodyへ、コピー元へのメソッド呼び出しを追加
なんて処理をしている。

ごちゃごちゃしてくるのは引数設定のあたりかな。
あと、ReturnType2周り。
void型以外のメソッドはreturn文が必要だから、
.equals(PrimitiveType.VOID)
なんて処理が必要になる。

今回は一行しか無いプロキシメソッドを生成してみたけど、
もっと色々やりたかったら、戻ってきたproxyMethodに
proxyMethod.getBody().statements().add(...)
とかやればいいかも。


java.lang.reflect.Proxyでいいじゃんと言われたらぐーのねも出ない。

ばいばい。
昔、このテーマで何を書きたかったのか、もう思い出せないので、またテキトーに進めてみる。
一応、続き物なので、よくわからなかったら、過去の同じテーマの記事を見るといいかも。


とりあえず、今回はASTParserを使ったメソッド呼び出し文の生成について。

とりあえず、サンプルはこちら。



難しいことは何も無くて、org.eclipse.jdt.core.dom.MethodInvocationクラスがあるから、
これのインスタンスをorg.eclipse.jdt.core.dom.AST#newMethodInvocation();メソッドで作る。
あとは、setExpression、setNameをしてやるだけ。
お好みに応じて、
methodInvocation.arguments().add(ast.newSimpleName("引数名"));
とかしてやるといいかもね。

ばいばい。