タグ

programmingに関するjuno_cのブックマーク (63)

  • オブジェクト指向と10年戦ってわかったこと - Qiita

    この記事の内容 オブジェクト指向は難しい!わかった気になって実践すると詰みます... ウギャー この記事は10年以上オブジェクト指向と戦った筆者が、通常とは異なるアプローチでオブジェクト指向を解説したものです。 筆者はJavaを使って格的なシステム開発をしたことがありませんが、オブジェクト指向言語として最もポピュラーなJavaをベースにオブジェクト指向について解説させていただきました。 また、この記事の続編にあたります「なぜオブジェクト指向は難しいのか」を更に2年の時を経て執筆させて頂きました!是非こちらも一読していただけると嬉しいです。 オブジェクト指向三大要素の謎 オブジェクト指向三大要素ってありますよね。オブジェクト指向は「カプセル化」「継承」「ポリモーフィズム」の3つの要素で成り立つと言われています。最近では、この三大要素が語られる傾向は薄いようですが、一度は耳にしたことがある

    オブジェクト指向と10年戦ってわかったこと - Qiita
  • プログラマの実力は経験だけであがらないことがレベル格差につながる - きしだのはてな

    プログラマというのは、道具に慣れることが、実力があがることにならないのですよね。だから、勉強せず業務経験だけだとレベルが低いままということになってしまう。 Javaを10年さわり続けて、Strutsを5年さわり続けても、それだけでは、与えられた画面を手際よく作成できるようになるだけで、たとえばStrutsすらよりよく使えるようになるわけではなかったりする。 Javaにしても、「volatileってなんですか?」という問いに、まあ知らないのはしかたないとしても、解説を見ながらですら答えられない可能性がある。 プログラムの反復生産は、プログラミング能力の向上にあまりつながらない。設定や記述に慣れるだけだ。そして、この「慣れ」というのには「難しいからそもそも実装を回避する」というようなものも含まれる。実力の向上は、作業ができるレベルで止まってしまう。 プログラマとしての実力をあげるための勉強が自

    プログラマの実力は経験だけであがらないことがレベル格差につながる - きしだのはてな
  • 言語処理100本ノック - 東北大学 乾研究室 / Inui Lab, Tohoku University

    FrontPage / 言語処理100ノック 3 秒後に NLP 100 Drill Exercises に移動します。 (移動しない場合は、上のリンクをクリックしてください。) © Inui Laboratory 2010-2018 All rights reserved. 研究室紹介/About Us 過去に在籍したメンバー Members 研究室環境 Lab Facilities ↑研究会/Research Meetings 概要 Overview 総合研究会 Research Seminar 意味研究会 SIG Semantics 談話研究会 SIG Discourse 知識獲得研究会 SIG Knowledge Acquisition Embedding研究会 SIG Embedding KIAI Knowledge-Intensive Artificial Intellige

  • 米国人からコーディングについての怒りのメールを頂戴した - その手の平は尻もつかめるさ

    "米国人からコーディングについての怒りのメールを頂戴した" の補足 - その手の平は尻もつかめるさ ↑の方で補足いたしました。(2012.09.04 追記) 最近、英語のメールでよく怒られます。moznion です。 海を隔てて共同作業しているアメリカ人から、僕のコーディングについてお叱りのメールを頂いたので、 自戒の念を込めて邦訳して記します。 書いてあることは「当然」とも言うべき内容ですが、僕はその「当然」も守れていなかったのかぁ〜と反省。 以下、邦訳(意訳)です。 1. 郷に入っては郷に従え 既にソースコードが存在しているって事は、そこには同時にコーディングスタイルも存在しているってことだ。 その既存のソースコードに手を加える場合、別のコーディングスタイルを導入してはならない。 もし君がバックエンドのソースコードを弄っているなら、バックエンドのコーディングスタイルで記述するんだ。 フ

    米国人からコーディングについての怒りのメールを頂戴した - その手の平は尻もつかめるさ
  • FizzBuzz 問題どや顔で解くひとなんかよりも "KEN_ALL.csv" をうまく扱える人の方が社会的貢献度高い

    🐶Kazuhiro OSAWA @Yappo 郵便番号API 作ろうと思ったんだけど、ちゃんと作るなら DB に突っ込んで使った方が良いから作るモチベーションだいぶ低い 2012-08-08 12:27:21

    FizzBuzz 問題どや顔で解くひとなんかよりも "KEN_ALL.csv" をうまく扱える人の方が社会的貢献度高い
  • IBM Developer

    IBM Developer
  • 新社会人の君へ-disるということについて - あんちべ!

    「ご趣味は?」と聞かれて「Lispをdisることですね(キリッ」と答えてしまい、 合コン開始4秒で蚊帳の外に放り出されるあんちべです、こんばんは。 今から長い文章を書く。 結論だけさっさと言っちゃうと 「まぁ、初めのうちは、あんまり『○○は使えない』とかdisらない方が良いよ」の一言だ。 さぁ、それで話しはおしまい。もし暇だったら続きも読んで欲しい。 (あと、この文章はたった一人のために書いた。 ちょっと妙に聞こえるところもあるだろうけど、そこは聞き流して欲しい) 私はよくいろんなものを嫌いだ嫌いだとdisる。 にわかベイジアンが嫌い(話すと長くなる)、Javaが嫌い(JVMは愛してる)、Perlが嫌い、 MavenとかCVSとかが嫌い、アジャイルアジャイル言ってる人が嫌い(アジャイルが嫌いなわけじゃないよ)… 言い出したらキリがない!毎日新しいdisりの種が沸いてくるんだ! 何度か様々な

    新社会人の君へ-disるということについて - あんちべ!
  • レキシカルスコープとダイナミックスコープ

    1. レキシカルスコープとダイナミックスコープの違い 言語によって、変数のスコープに関する仕様が異なる。スコープには、レキシカルスコープとダイナミックスコープがある。採用しているスコープにより、変数の参照の仕方が違う。 レキシカルスコープでは、プログラムとして書かれた字句を解析すれば、変数のスコープを把握できる。実行時のことは考えなくて良い。これに対して、ダイナミックスコープでは、実行時における関数の呼び出され方により、参照できる変数が異なる。 用語の説明を見る前に、具体例を見た方が理解しやすい。 Scope (computer science) - Wikipedia の Lexical scoping and dynamic scoping によると、 … if function f invokes a separately-defined function g, then under

  • これはPHPです。 | quipped

    自分で訳した"This is Water"のパロディをここに。真面目なことばっかりでも人生つまらないし、自分で自分をちゃかすくらいの方が、気楽にやれるものだ。非常にギークな内容になっているので、読者層を狭めてしまうことになるが、一部の人たちは楽しんでくれるのではないだろうか。パロディと言っても、家ほど密度の濃い話を、えんえんと書けるわけではないので、あまり多くを期待しないように。 こんにちはーおめでとうーSQLの脆弱バグでデータを全て失った皆さん。ある時、二人の新米エンジニアが、老獪なオッサンエンジニアとすれ違いました。オッサンは言います。「やあ若者たち。今日もコードレビューに追われてるのかね。」新米エンジニアたちは、数メートル歩いてから、顔を見合わせて言いました。「てかコードレビューって何?」 この話は寓話でもなんでもありません。コードレビューは大事だという話だけです。どんなにユニット

  • Mahdi Yusuf

    Fear Not of Man

    Mahdi Yusuf
  • いっしょに仕事をしたいプログラマ 5つの特徴 - たごもりすメモ

    ちょっとこんなことを考えるきっかけがあったので、ざっと書き出してみた。Webに公開されている情報からあるプログラマについて見てみたとき、どういう人ならいっしょに働いてもいいかについて。 ここに書く内容はソースコードの品質以前の問題についてのみにしてある。だからこの特徴を満たしていればどうということに直接なるわけではない。ただ、欠けているところがあれば、少なくとも自分はその人といっしょに仕事をしたいとは思わないだろう。 なお自分は現勤務先の採用活動にはかかわっておらず、このエントリの内容は勤務先の採用基準とは全く無関係です。 学生さんなどの場合にはまた話が違うと思います。 あと割と自分のことは棚に上げてます。「お前これできてねえじゃん」という部分については都度ご指摘をいただけますと大変ありがたく思います……。 1. その人が書いたソースコードが公開されている 日語で何を言われてもぶっちゃけ

    いっしょに仕事をしたいプログラマ 5つの特徴 - たごもりすメモ
  • 触れる価値あり。Google Chromeをプログラミングエディタ化する·SourceKit MOONGIFT

    SourceKitGoogle Chrome内で動作するテキストエディタ。Dropbox APIを使っている。 SourceKitGoogle Chrome向けのフリーウェア(ソースコードは公開されている)。なかなかWebアプリケーション化しないものの筆頭として考えられてきたのがテキストエディタだ。特にプログラマ向けのエディタになると手になじんでいるかどうかの問題が大きく、なかなか格化しなかった。 まさにエディタ 確かにWebベースで開発するということに大きなメリットは感じられなかったのは確かだ。だがSourceKitを見たら、その考えが変わってしまいそうだ。 SourceKitGoogle Chromeの機能拡張として提供される。左側にファイルツリー、右側に編集画面が表示される。開発者向きに各言語向けのハイライトに対応している。さらにテーマも幾つも用意されており自分好みの配色を選

  • プログラミング用フォント Ricty

    お知らせ Ricty および Ricty Diminished は、2010 年代前半には欧文・和文合成プログラミング用フォントとして先駆的でしたが、現在は前時代的な存在となっています。不具合もいくつか確認されています。良質なプログラミング用フォントが数多く登場していますので、それらの利用をおすすめします。 序文 Ricty(リクティ)は Linux 環境での研究・開発を想定したプログラミング用フォントです。テキストエディタやターミナルエミュレータ、プログラミング言語やマークアップ言語に対する使用に適しています。Inconsolata と Migu 1M の合成、および、プログラミング用フォントとしてのいくつかのチューニングを行う生成スクリプトを配布しています。Inconsolata 作者の Raph Levien 氏、Migu 1M 作者の itouhiro 氏、M+ M Type-1

  • 長文日記

  • プロとしての行為 Act as Proffesional

    スーパーエンジニア達の習慣が大人気だったので、自戒の意も込めて、反面教師として成長しないエンジニアの悪習慣について僕の経験と視点からまとめてみる。 業務時間外での学びがない プロ野球選手は日々練習をして、試合という番で勝敗の結果を出して評価されるこれをエンジニアに置き換えると、どこかで練習をして、仕事という試合をして、ソフトウェアという勝敗の結果をつくりだす。プロ野球選手が試合を練習だと思って取り組んでいたら、結果を出せるのだろうか? 業務外で練習をして、番で良い結果を出せるように努力しよう。練習大事!! 時間をかければよいものができると信じているいくら時間をかけたって、バグのないエレガントなコードのソフトウェアはできない。効率的に仕様を満たしていくことが求められている。むしろ、時間をかけるべき所は上記で指している練習!! 参考:集中力を発揮して、生産性を高めるために知っておくべきこと

    プロとしての行為 Act as Proffesional
  • SQLiteのテストコードは4567万8000行! 本体のコードは6万7000行

    軽量なリレーショナルデータベースとして人気のSQLite。そのWebサイトに掲載されている「How SQLite Is Tested」の内容が、海外のプログラマなどのあいだで話題になっています。 3月に公開された最新バージョンのSQLite 3.6.23。体のソースコードは約6万7200行(67.2KSLOC、Kilo Source Lines of Code:空行やコメントを除いた行数)なのに対し、テストコードはなんと4567万8300行(45678.3KSLOC)だと紹介されているのです! これはテストコードが体の約679倍もの大きさだということになります。 100%のブランチカバレッジ SQLiteコアのライブラリをテストするテストコードとして、以下の3つが紹介されています。 TCL Tests TCL Testsはもっとも古いテストコードで、TCL scripting lang

    SQLiteのテストコードは4567万8000行! 本体のコードは6万7000行
  • 4月22日(金)にエンジニア向け「第2回 開発コンテスト24」を開催します

    2011年4月22日~24日に「第2回 開発コンテスト24」を開催します クックパッド株式会社は、昨年に引き続き、課題発表後24時間以内に「課題を解決する開発」を行い、成果物を応募いただく開発者向けコンテストを主催します。 コンテストの課題を4月22日(金)21:00に当サイト上より発表、入賞者は4月24日(日)中に決定、発表されます。優勝賞金は30万円、賞金総額は約50万円を予定しております。 English page コンテストに関する情報は、昨年と同じく以下のTwitterアカウントから継続的に発信して参ります。 Twitterアカウント:@24contest ハッシュタグ:#24contest ものづくりが好きなエンジニアの皆様の参加表明をお待ちしております。 (4/21追記) 4/23(土)10:00~21:00の間、クックパッドのラウンジを皆さまの開発スペースとして解放いたしま

    4月22日(金)にエンジニア向け「第2回 開発コンテスト24」を開催します
  • University of Aizu Online Judge

    Welcome This online judge system includes problems criated by faculty members and students of The University of Aizu. In addition, it includes an archive of problems from different programming contests. You can solve problems which were given in the programming contests for high school students, Japan domestic contests for ACM/ICPC, and Asia regional contests for ACM/ICPC in Japan. The system wil

  • Kazuho@Cybozu Labs: brainf*ck でマジメに素数探索

    « brainf*ck で計算機 | メイン | DNS ラウンドロビンと高可用性 (High Availability) » 2006年06月28日 brainf*ck でマジメに素数探索 「キミならどう書く 2.0 - ROUND 1 - 」の〆切は過ぎていますが、逃避力を発揮して brainf*ck で書いてみました。 竹迫さんのものとは違い、brainf*ck で素数探索を行っています。でも brute force なアルゴリズムなので遅いです (笑) >++++[<++++++++>-] // 0 pm2 = ' ' >+++++++[<++++++++>-]<+>+++++++++> // 1 pm1 = '9' p0 = 9 >++++++++++[<++++++++++>-]<-- // 1 p1= 98 p2 = 0 [ >[-]<[->+>+<<]>>[-<<+>>]<

  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう