上司に何を求めるか 1対1のミーティング 目的は2つ 1. 上司との間に人間的な「つながり」を作ること。 「部下にも私生活がある1個の人間」として扱う 2.「要検討事項について上司と1対1で話し合う定期的な場を設けること」 上司と責任を分かち合いたい…
if 基本 条件をかっこで囲む必要はない 三項演算子はサポートされていない if x%2 == 0 { fmt.Println(x, "is even") } 変数の初期化 ifステートメント中に変数の初期化ができる。 スコープはifブロックの中だけになる。 if num := getnumber(); num < 0 { f…
概要 優れた意思決定プロセスの条件 さまざまな人に入ってもらう。 意思決定できる状態で会議する。 肩書きは脇に置いておく 意思決定プロセス改善のための 5 ステップ 解決策ではなく問題を明らかにする クリティカルシンキングを促進する 意見の不一致を想…
パッケージ パッケージ パッケージの作成 ディレクトリ構成 パッケージソース ビルドの実行 モジュールの作成 ローカル パッケージ の参照 準備 go.modの作成 go.modの編集 パッケージの使用 外部 (サードパーティ) パッケージの参照 go.mod パッケージの作…
関数定義 関数定義 構文 例 関数の戻り値に名前をつける 複数の値を返す ポインター渡し 構文 func name(parameters) (results) { body-content } 例 package main func sum(x int, y int) int { return x + y } func main(){ sum := sum(2, 3) println("Sum…
変数の宣言 単数 複数一括 初期化 定数 変数の宣言 単数 var firstName string 複数一括 var ( firstName, lastName string age int ) 初期化 var ( firstName string = "John" lastName = "Doe" // 型推定 age int = 32 ) 定数 const ( StatusOK = 0 Status…
準備 テーブル定義 CREATE TABLE `categories` ( `id` int(10) unsigned NOT NULL, `name` varchar(45) NOT NULL, `parent_id` int(10) unsigned DEFAULT NULL, PRIMARY KEY (`id`), FOREIGN KEY (`parent_id`) REFERENCES `categories` (`id`) ON DELETE SE…
MySQLクライアントのインストール ❯ brew install mysql-client Mariadbコンテナの作成 ❯ docker run -d -e MARIADB_ALLOW_EMPTY_PASSWORD=1 mariadb/server コンテナの確認 ❯ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a7252458d78…
インストール ❯ brew install docker --cask バージョン確認 ❯ docker --version Docker version 20.10.7, build f0df35096d 起動 ❯ open /Applications/Docker.app
概要 ソフトウェアにおけるモノリシックとは、分割されていない1つのモジュールで構成されたものを指す。 マイクロサービスとは、複数の小さいサービスの集合体から一つのアプリケーションを構成するアーキテクチャの一種。 モノリシックとマイクロサービス…
概要 Don't repeat yourself 直訳:同じコードを重複させるな。 本来の意図:ソフトウェア開発全体において情報を重複させない DBスキーマ、テスト計画、ビルドシステムや、ドキュメンテーション等、幅広く適用できる。 この原則がうまく適用されたとき、い…
概要 You ain't gonna need it 機能は実際に必要となるまでは追加しないのがよい 後で使うだろうという予測の元に作ったものの90%は無駄になる。 予期しない変更に対しては、設計を単純にすることが備えとなる。 コードをすばやく実装するために最も良い方法…
概要 Keep It Simple Stupid.(シンプルで愚鈍にする) 以下の様な解釈もある Keep it short and simple Keep it simple, stupid どちらにしてもシンプルに設計・開発する様にという事。 技術力を見せつける為の様な複雑な設計は要らない。
概要 Single Responsibility Principle:単一責任の原則 Open/closed principle:オープン/クロースドの原則 Liskov substitution principle:リスコフの置換原則 Interface segregation principle:インターフェース分離の原則 Dependency inversion princi…
概要 DBアクセスが合計 N+1 回実行される問題 SELECT を 1 回実行し、N レコードを取得 Nレコードに関連するデータを取得するSELECT を N 回実行 抽象化コード list_all = select_all() // Nレコード取得 for( row in list_all){ detail = select_detail(row…
Atomicity(原子性) トランザクション内の処理がすべて実行されるか、または全く実行されないことを保証する性質。 Consistency(一貫性) トランザクションによりデータの矛盾が生じず、整合性を満たすことを保証する性質。 Isolation(独立性) 複数のトランザ…
インターネット インターネットの仕組み DNSとは・DNSの仕組み ドメイン名とは ホスティングとは 基本的なフロントエンドの知識 OSの基本的な知識 OSの仕組み プロセス管理 スレッドと同時並行性 メモリ管理 プロセス間通信 入出力管理 POSIXの基礎 基本的な…