タグ

抽象化に関するotakumesiのブックマーク (6)

  • 「手段が目的化」してしまうシンプルな原因|播磨 直希

    みなさんは先輩や上司から「お前は手段が目的化してんだよ!」って言われたこと、ありませんか? 何故そんなことを言われなければならないのか、解説しましょうそうしましょう。 目次1.トイレが汚れてきた時の解決手段 2.手段が目的化する原因 3.具体と抽象を使いこなす 1.トイレが汚れたら普通どうする? ※そもそも今回はロジカルシンキングの話なので、ロジックツリーを使って説明していきます 【トイレが汚れてきたので、対策を考える】 みなさんは、トイレが汚れてきたらどうしますか? 恐らく大体の人は掃除をします。 例えば上の図は、社内のトイレが汚れてきた時の対策をロジックツリーで書き出したものです。 この図を見る限り、「トイレが汚れてきた時の解決手段はA社に依頼することだ」という解決手段が一つの手としてあげられます。 ただこの図に記載されている手段が、当に全ての解決策であると言えるのでしょうか? 2.

    「手段が目的化」してしまうシンプルな原因|播磨 直希
  • チーム全員が知っててほしい抽象化のこと - LIVESENSE ENGINEER BLOG

    はじめまして。転職会議ユニットでエンジニアをしている狩野です。 元々PHPerでしたが、最近はRuby(Rails)やReactを触ったりして楽しくやっています。 今回は、中堅エンジニア*1が最近受けた質問とそれに対する回答を、今までのシステム開発で得た知見と併せてブログを書きたいと思います。 はじめに 最近、若手のエンジニアから「クラスとかメソッドってどう分けるんですか?」という質問を受けました。 私は「実世界をそのまま表現するだけですよ。」と答えました。 真面目に答えたのですが、若手エンジニアには全く伝わっていないようでした*2。 良い機会なので、実世界の抽象化について少し掘り下げて書いてみたいと思います。 システムとは? 基的に、システムは「あるドメインを体系的に表現した仕組み」です。 システム開発*3とは、それを作る行為になります。 「ドメイン」とは全体の中に定義される一部の領域

    チーム全員が知っててほしい抽象化のこと - LIVESENSE ENGINEER BLOG
  • 説明が下手な人はもっと抽象化パワーを身につけるべきだと思う - coconutsfine's blog

    当たり前のことを当たり前にできる人間になりなさいと高校の恩師に何度も何度も言われて来たおれたちだから、当たり前のことを今日はかく。説明する上で対象を抽象化する力というものはとても重要だということは当たり前であるのだけれど、この超基的なことが出来ていない人が自分は説明が下手だの言っているので、説明するうえでどうやって物事を抽象化するかについて書いておく。 抽象化とは 結構な人々が抽象化を「曖昧にすること」とか思っていて、抽象絵画は「なんか曖昧な絵」みたく思っているので始末に負えない。まず「抽象(abstraction)」っていうのは、「物事の共通部分を抽出して把握すること」だ。つまり、人の顔を抽象化してみると、何億という全くことなった「ひと」の顔の中で共通する部分を抽出して象形することになる。おそらくは横並びに目が二つ、その下に鼻が一つ、口が一つの絵になると思う。もちろん目なども線や点まで

    説明が下手な人はもっと抽象化パワーを身につけるべきだと思う - coconutsfine's blog
  • プログラミングの経験は役に立つ 〜 論理的思考と抽象化思考の応用 | Social Change!

    プログラミングには、論理的に考える力と抽象化して質を捉える力が求められる。これらは、なにもプログラミングに限らず、あらゆる仕事の場面で役に立つ。むしろナレッジワーカーにとっては基礎力といっても良いのではないだろうか。 記事では、新米のナレッジワーカーが最初に身につけておくと良い論理的思考と抽象化思考について、プログラミングで鍛えられることについて考察した。 ビジネスの共通言語としての論理的思考 仕事をしていても、なんとなく考えたことは自信を持つことができない。だから、なんとなく説明しても伝わらない。そして、なんとなく実行したら、成功しても失敗しても、なんとなくしかわからない。なんとなくでは再現性がない。 論理的に考えるということは、選択肢を考えて、そこから選ぶ理由を考えることだ。そうして考えたことは、説得力がある。世の中には絶対の正解はないから、正しいかどうかは出せないが、少なくとも仮

    プログラミングの経験は役に立つ 〜 論理的思考と抽象化思考の応用 | Social Change!
  • 入社からの半年間でコードレビューで指摘されたことのまとめ - 30歳からのプログラミング

    実務未経験でプログラマとして入社して半年以上が経った。 コードレビューで指摘されたことを備忘録としてまとめておく。 自分なりにまとめたものなので、レビュアーが言いたかったこととニュアンスや解釈がずれている可能性はある。 初歩的な内容ばかりで我ながらうんざりする。 せっかく優秀な同僚ばかりなのだからもっと高度なことを学びたいが、こういう初歩的なことが出来ないのが俺の現状なのだから、仕方ない。 そもそもPullRequestを送ったこともなかったわけだし。入社初日は、一人でPullRequestの出し方を練習していた。 それを考えればまあ、こんなものだろうか。 当たり前のことをちゃんと当たり前に出来るようになって、早く、次のステージに進みたい。 PullRequest(PR) PRのタイトルは分かりやすいものに。必要に応じてチケットの番号なども入れる。 コミットやPRは出来るだけ粒度を細かくす

    入社からの半年間でコードレビューで指摘されたことのまとめ - 30歳からのプログラミング
  • この本はプログラミング言語Rustの教材です

    注意: 最新版のドキュメントをご覧ください。この第1版ドキュメントは古くなっており、最新情報が反映されていません。リンク先のドキュメントが現在の Rust の最新のドキュメントです。 プログラミング言語Rust ようこそ!このはプログラミング言語Rustの教材です。Rustは安全性、速度、並行性の3つのゴールにフォーカスしたシステムプログラミング言語です。 ガーベジコレクタなしにこれらのゴールを実現していて、他の言語への埋め込み、要求された空間や時間内での動作、 デバイスドライバやオペレーティングシステムのような低レベルなコードなど他の言語が苦手とする多数のユースケースを得意とします。 全てのデータ競合を排除しつつも実行時オーバーヘッドのないコンパイル時の安全性検査を多数持ち、これらの領域をターゲットに置く既存の言語を改善します。 Rustは高級言語のような抽象化も含めた「ゼロコスト抽象

  • 1