依存性の注入(DI)とは

Springをやっており、依存性の注入(DI)という謎の言葉が出てきたので、自分の理解を確認する意味でそれについて書いておく。ただ、正直、こちらに全て記されている感はある。記事内のコードはNTTデータの『Spring 徹底入門』からお借りした。クラスAを動かすためにはクラスBが必要であること「クラスAを動かすためにクラスBが必要」ということをクラスAの中に書かずに、外に書いて外から注入できるようにすること

Continue...

Emacsでのコードリーディング環境を整えておく

前回の続きで「Emacsコーディング環境を整えよう」シリーズ。今日はコードリーディング環境について。プログラマというのは意外にコードを書くよりも読むことの方が多いらしい。そこで、いかに効率的に読むかということを考える必要があると思う。ここで「効率的に読むとはこういうことだ!」とドヤ顔で言えるといいのだが、自分は大規模なアプリケーションのコードリーディングをやった経験があまりないので、そういう話はできるはずもない。

Continue...

Windowsでの開発に備えて、Emacsコーディング環境を整えておく

来たるべきWindows機での開発に備えて、着々とEmacsコーディング環境を構築していこうと思う。調べてみると、WindowsでEmacsを動かすには選択肢がいくつかあるらしい。A. Windowsに直接Emacsを入れる NTEmacsやgnupackでWindows用にビルドしたEmacsを導入できる。しかし、NTEmacsに関しては日本語入力に難有りとの情報がある。

Continue...

Gatsby-Stater-Lumenに月別アーカイブ機能を追加する

以前の記事でGatsby-Stater-Lumenのサイドバーにカテゴリーリストを追加した。引き続き、今回は月別アーカイブリストを追加したい。この前のカテゴリーリストの際は、サイドバーのコンポーネントにデータを流して、UIを追加するだけという感じだった。今回はプラスアルファで、月別の記事一覧のページを作成する必要がある。

Continue...

Github-Flowを理解しながら、Gitの基本コマンドを復習する

個人で開発をしていても、git cloneでローカルにリポジトリを移植したり、ブログを書いてgit pushでリモートに上げたりするので、gitに触れる機会はある。でも、自分はgitがどういうところに効くかはちゃんと分かっていないと思う。というのも、自分の個人開発の範疇ではgitでバージョン管理をする必要性をほとんど感じなかったからだ。(このことからして個人開発のレベルの低さがうかがえる)

Continue...

Gastby-Starter-Lumenにカテゴリーリストを追加する

Gatsby-Starter-Lumenはmatejlatin/Gutenbergにインスパイアされているらしく、シンプルでテキストそのものが読みやすいようなデザインを志向している。そういうこともあって、一般的なブログサービスにデフォルトで装備されている機能がないケースがある。例えば、サイドバーのカテゴリーリストとか月別アーカイブなどである。

Continue...

Dockerでコンテナ作りまくって、クローリングをはかどらせる

Dockerってみんな使っているからっていうことで使っていたけど、イマイチ使いどころがよく分からなかった。まあ、個人開発でやっている分には誰かに環境を配布することもないし、複数の同じ環境が必要になることもなかったからだろうと思う。しかし、今回初めてDockerええなあと思うことがあった。クローリングである。

Continue...

静的サイトジェネレータ・Gatsbyで技術ログ

技術ログをGatsbyという静的サイトジェネレータで書いていくことにした。Gatsby自体は前に一度ガチャガチャいじっていたのだが、本格的に使うこともなくそのままにしていた。久しぶりにドキュメントを覗いてみると、前よりもだいぶ発展していて使いやすそうになっていたので、「Gastbyで技術ログをやるかあ」という感じで始めてみた。

Continue...

beautifulsoupのドキュメントで見つけた便利な関数

スクレイピングで目的の要素にアプローチする方法は色々あると思う。1. find系のメソッドでアプローチ 2. CSSセレクタでアプローチ 3. 正規表現でアプローチ 今日は1のアプローチからBeautifulSoupのsibling系のメソッドをご紹介する。

Continue...