サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Google I/O
qiita.com/0w0
新人「言ってることはわかるんですけど〜、利便性がよくわからないっすw」 君たち新人はいつもそうだね。抽象化についてありのままに伝えると、決まって同じ反応をする。 わけがわからないよ…。 良質なコーディングには必要不可欠でありながら、伝達が非常に難しい「抽象化」の概念。「オブジェクト指向には抽象化が大事だぞ」なんて口にしつつも、実はよくわかってない方も多いんじゃなかろうか。 当記事では、そんな「抽象化がなんとなく腑に落ちない…」というエンジニアを相手にリアルで試してみてウケがよかった例え話をいくつかまとめてみた。 基本的にアカデミックな正確性より勢い優先、その場の雰囲気重視でお送りします。マサカリコワーイ 本題の前に、まずはWikipediaを紐解く 抽象化(ちゅうしょうか、英: Abstraction、独: Abstraktion)とは、思考における手法のひとつで、対象から注目すべき要素を
はじめに 普段のようにトゥイッターしていたらタイムラインにステキ拡張が流れてきたので、布教のためにバーっと紹介記事を書いてみる次第。 Rainbow CSV Rainbow CSVって何? VSCodeでCSVを扱いやすくするためのステキ拡張 便利でステキな機能をいくつも持っている とにかくヤバイ(語彙) Rainbow CSVの何がヤバイの? ①CSVが読みやすくてヤバイ ちょうどいいCSVが無かったので、適当にポケモンのCSVデータを生々しく開いてみた。 CSVの見た目ってこんなのだよね。日本語項目はともかく、数値が連続している箇所は「あれ、この"49"ってどの項目に対応してるんだっけ…?」みたいな混乱が起きて発狂しがち…。 しかし、このファイルをRainbow CSVに通すと…なんということでしょう! ヘッダー項目とデータ項目にカラフルな色が付き、項目の種類が一発でわかるようになって
発端 QiitadonでDIの話題が盛り上がっていた時に「LaravelのDIはつよい」みたいなことを書いたら一部反響があったので、その解説です。 はじめに LaravelのDIコンテナ(サービスコンテナ)はめちゃ強力です。「DIコンテナとは何ぞや」という説明は良記事が大量に存在するので詳細を省きますが、超初心者向けに端折った説明をすると「クラスをnewするときに必要なインスタンスを外からブチ込んでくれる人[1]」みたいな感じです。 [1]:かなり雑な説明。真面目に書くなら「クラスに関わる依存性の取り扱いを責務とするフレームワークの総称」という方が適切ですが、まあ初心者はよくわからんと思うので手を動かして勘を掴んだ方がよいかと思う次第。 実際にコイツのヤバさをサンプルコードで確認してみましょう。 RequestFormを用意する まず、検索リクエストを雑にバリデーションするSearchRe
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 巷では「メテオフォール型開発」という小粋なワードが流行っているそうですね。 幸いなことに、私が担当している現案件では役員各位の配慮により円満な開発体制を維持できているわけですが、かつては「神よッ…何故そのようなお戯れをなさるのですか…?!」と血涙が零れた案件もあったとかなかったとか。(辛いことがあると人は記憶が曖昧になるといいます…) 今回は、そんな当時の私が状況改善の為に意識していた方法論をまとめてみました。 題して**「エンジニアらしく組織を変える為のプログラミング・マネジメント」**です! 例えばこんな問題があるじゃろ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Inspire the Next, デスマサバイバルガイド 僕はもう長い事デスマーチに関わることなく生きられているが、徐々に忘れつつあるので、若いころに獲得したデスマーチを生き残る方法論について記録しておく。 良記事でござんした。 大変良い刺激を受けたので、私も一つインスパイア的な記事を書いてみる次第。 使用上のご注意 当記事は炎上時の極限状態に対する対処療法集です 主な対象者として炎上案件に放り込まれた末端メンバーを想定しています 一部マネジメントの話題も含みます。鎮火を命じられたPMにとっても役立つ点がある筈 インスパイア元同様、当
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 前回までのあらすじ 先日、プロジェクトの残業を50%削減したタスク管理手法を惜しみなく公開するという記事で、私的に上手く行ったタスク管理手法を紹介した。幸いな事に概ね好評だったようだが、「中長期管理はどうしてるの?」という意見を多数見かけたので、オマケとしてちょこっと書いてみる次第。 ※前記事の流れを踏まえるので、予め読んで頂いた方が理解がスムーズかも? ちなみに、中長期計画は案件状況によって管理手法を大きく変えた方が良いと思っているので、あくまで「手法の一つ」と捉えて貰えると嬉しい。なお、期間の単位は2〜3ヶ月程度を想定する。(なので
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? おしながき メンバーは3〜5名、協力企業は1〜2名の小規模チーム メインは某小売店の大規模ECサイト案件統括(開発は外部委託) サブで基幹連携等を担う周辺業務システム開発・運用 マネジメントが上手く回らず高残業が常態化。PM前任者異動に伴い、部下だった私にお鉢が回る 上長指示により残業削減へ そんな2〜3年前のお話です。 改善"前"のタスク運用 ※あくまで改善"前"の話です。 基本はRedmine + Kanbanプラグインでタスク(チケット)運用。 ナレッジ可視化の意識付けも目的の一つだったので、以下を徹底した。 作業に伴うタスク発行
お題目 Eloquentはとっても便利! あまりにも便利なのでEloquentをそのままドメインモデルにしたくなっちゃう! でも、何も考えずにドメインモデル化すると酷い目に合うかも…? なんで? 何がいけないの? Eloquentが扱う問題領域(DB操作)は本来インフラストラクチャ層が正解。 つまり、Eloquentをドメインモデルとして扱ってしまうと、レイヤー構造(≒責務の範囲)の侵犯による副作用が発生する。 つまり…どういうことだってばよ? 1.他層のDB操作に歯止めが掛からなくなる ドメインクラスを経由すればどこでもDBを弄れるので、最悪だと「アプリケーション層からInsertを書く」なんて芸当が可能。 「ヘボグラマーが各種バリデーションやエラー処理を迂回してDBにダイレクトアタックできてしまう」と言い換えると危険性が伝わりやすいかも? ユビキタス言語なんて知ったこっちゃねえSQLは
このページを最初にブックマークしてみませんか?
『@0w0のマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く