技術研究部 活動レポート 2021/12/23
週刊技研NEWS
Qiita Advent Calendar 2021
クリスマスに開催される投稿イベント
以下のようなカテゴリがある
- プレゼント
- Qiita主催
- プログラミング言語
- ライブラリ・フレームワーク
- データベース
- Webテクノロジー
- モバイル
- DevOps・インフラ
- IoT・ハードウェア
- OS
- エディタ
- 学術
- サービス・アプリケーション
- 企業・学校・団体
- その他
- 未設定
ググり力、それはエンジニアには必須の能力である
ググって解決しずらかったこと。。あると思います!Googleの上手な活用方法を紹介した記事。
ポイント1:日本語のサイトだけでなく英語のサイトもしっかり読もう!
英語圏の人口が圧倒的に多い故に情報が多い。
「lr=lang_ja」のクエリをつけると、日本語サイトを除外して検索することができる
ポイント2:記号系のサイトは、英語名(例:question mark)に置き換えると出てくる
ポイント3:Googleの検索で「-」を使うと、特定のKWを除外して検索することができる
「resouce -resouces」と検索すると、「resouces」を除外して検索することができる
完全一致検索はダブルクォーテーションで囲むことで検索可能
結論
Googleの検索作法を知っていれば、解決策にたどり着ける可能性が高くなる。
クリーンアーキわからんかった人のためのクリーンじゃないけどクリーンみたいなオニオンに見せかけたSOLIDの話
SOLID原則とクリーンアーキテクチャの関係について解説した記事。
SOLID原則とは…?
単一責任の原則
一つのモジュールの中で焦点を当てるべきは一つだけにしましょう。
開放閉鎖の原則
改変されないモジュールに依存するようにしましょう。
逆に言えば、よく更新するモジュールに依存するのをやめよう
リスコフの置換原則
なにかのモジュールがかわったときに、他のモジュールを更新しないで良いような仕組みをつくろう
インターフェース分離の原則
不要なモジュールに依存しないようにしよう
依存関係逆転の原則
具体的なモジュールが抽象的なモジュールに依存するようにしよう
結論
クリーンアーキテクチャは 「SOLID原則をよく満たした設計」 ということと理解して良い。
具体的には以下のようなことを気をつけて設計しましょうね。という考え方である。
実装が記述されたモジュールとは別に,モジュールが満たすべき要件を記述したインターフェイスを用意し,インターフェイスに合わせた実装モジュールを用意する.また,実装モジュールはインターフェイスに依存する(リスコフの置換原則,依存関係逆転の原則)
一つのモジュールが担当する課題は一つに限定する.また,別の側面から見て複数の課題が含まれているときはインターフェイスを用いて着目すべき問題に限定する(単一責任の原則,インターフェイス分離の原則)
更新・変更が頻繁に行われるだろうモジュールは,より更新頻度の小さいモジュールに依存する(開放閉鎖の原則)
所感(しんめん)
エンジニアにとって自走力は超重要。特に実装者はたくさんの知識を身につけるより、いろんなツールは使っていかに早く解決策にたどり着けるかが大事だと思います。
様々な考え方に触れておくことで、実務レベルで役に立つことも多いにあります。
保守性の高いコードを書く
バグが少ない設計を行う
エンジニアとしてのレベルを上げるためにも、様々な考え方に触れて実務レベルに落とし込んでいけたら良いですね。