タグ

programmingに関するstealthinuのブックマーク (816)

  • いつでも聞けるTDD入門 #TDDBC_NAGOYA

    2014/05/18 TDDBootCamp in Nagoya でkyon_mmが基調講演に使用したスライドです。org-mode -> reveal.js -> pdfで変換したのでアニメーションは切られています。BDDようそRead less

    いつでも聞けるTDD入門 #TDDBC_NAGOYA
    stealthinu
    stealthinu 2014/05/23
    これはとても参考になった。てかTDD誤解してた部分があった。熟練者は1分でサイクル回すというくらいの粒度なんだ。もっと大きな粒度で認識してた。それだけでも大きな収穫だった。
  • 実践的な設計って、なんだろう?

    Devlove 名古屋 2014-5-18 DDD, Object Oriented Design, ドメイン駆動設計 オブジェクト指向設計Read less

    実践的な設計って、なんだろう?
    stealthinu
    stealthinu 2014/05/21
    画面や機能、テーブル単位ではなく「ドメインモデル」で設計することでコードが重複しない変更に強いシステムに出来ると。なんかこのスライド見ちゃうとそれが正しそうな気にさせられるな…
  • 使いやすいシェルスクリプトを書く

    できればシェルスクリプトなんて書きたくないんだけど,まだまだ書く機会は多い.シェル芸やワンライナーのような凝ったことではなく,他のひとが使いやすいシェルスクリプトを書くために自分が実践していることをまとめておく. ヘルプメッセージ 書いてるシェルスクリプトが使い捨てではなく何度も使うものである場合は,体を書き始める前に,そのスクリプトの使い方を表示するusage関数を書いてしまう. これを書いておくと,後々チームへ共有がしやすくなる.とりあえずusage見てくださいと言える.また,あらかじめ書くことで,単なるシェルスクリプトであっても自分の中で動作を整理してから書き始めることができる.関数として書くのは,usageを表示してあげるとよい場面がいくつかあり,使い回すことができるため. 以下のように書く. function usage { cat <<EOF $(basename ${0})

    stealthinu
    stealthinu 2014/05/20
    色つけるとかはクリアコードさんも書いてたな。こうやってある程度ひな形化してあるとそれベースにして書きやすい。ということでこれコピーしてひな形にしとこう。
  • プログラミングの生産性を上げるには - 聞かれてもいないことを喋る

    Yak Shaving の誘惑に打ち克つ ソフトウェアを作っている途中で、「これを作るのを効率化するためには ○○ が必要だ」と思い、来やっていた作業の手を止めて ○○ を作り始めてしまうことは往々にしてある。 しかしその作り上げた ○○ が最終的に当に(長期的にみて)効率化に役立ったケースは、自分の経験からいって 10 個のうち 1 つくらいではないかと思う。 効率化のための努力をするなということではない。大事なのは、アイデアを寝かせることだ。 人はゴミみたいなアイデアでも、気付かずにこれこそが素晴らしいアイデアだと信じこんでしまう。自分の考えたアイデアには愛着が湧くものだ。 そのアイデアが当に優れているかどうか客観的に判断するには時間が必要だ。最低でも 1 晩、できればもう 2, 3 度は同じ必要性を感じてから作るのがいい。 1 回しか必要性を感じたことのないものをその場の勢いで

    プログラミングの生産性を上げるには - 聞かれてもいないことを喋る
    stealthinu
    stealthinu 2014/05/20
    うわわわああ… 『「これを作るのを効率化するためには ○○ が必要だ」と思い、本来やっていた作業の手を止めて ○○ を作り始めてしまうことは往々にしてある』イタタタた… これ防ぐために一旦寝かせる、と。
  • Javaトラブルに備えよう #jjug_ccc #ccc_h2

    Concepts and tools of logging in Java. Javaにおけるログ出力の考え方と道具について説明. CC Attribution Licenseの元に公開します.

    Javaトラブルに備えよう #jjug_ccc #ccc_h2
    stealthinu
    stealthinu 2014/05/19
    javaトラブル対応まとめ。とても参考になる。ログの出力オプションやダンプのコマンドとかまとまってて便利。Evernoteにコピーしておこう。
  • DbUtils – JDBC Utility Component -- Examples

    DbUtils Overview Download Examples Release Notes Dependencies Wiki Development Mailing Lists Issue Tracking Source Repository Building Javadoc Javadoc Archive Project Documentation Project Information Project Reports Commons Home License Components Sandbox Dormant General Information Security Volunteering Contributing Patches Building Components Commons Parent POM Commons Build Plugin Commons Rele

    stealthinu
    stealthinu 2014/05/16
    これはいいな。こういう書き方ができれば確かにだいぶシンプルにきれいに書ける。これは他のコンポーネントも全部眺めといたほうがよいな。
  • Apache Commons – Apache Commons

    Welcome to Apache Commons Apache Commons is an Apache project focused on all aspects of reusable Java components. The Apache Commons project is composed of three parts: The Commons Proper - A repository of reusable Java components. The Commons Sandbox - A workspace for Java component development. The Commons Dormant - A repository of components that are currently inactive. You may also read our ch

    stealthinu
    stealthinu 2014/05/16
    apache commonsの便利なユーティリティ
  • 5分で分かる名前空間とオートロード

    2019/9/25-6に開催されたUnite Tokyo 2019の講演スライドです。 岩城 進之介(株式会社バーチャルキャスト) こんな人におすすめ ・3Dアバターの取り扱い・開発に興味があるかた ・VRMについて詳しく知りたいかた ・VRで別の自分になってみたいかた 受講者が得られる知見 ・3Dアバターファイルフォーマット「VRM」についての全体的な知識 ・Unity上でのVRMファイルの取り扱いかた ・アバター文化の現状と未来像 Unityのイベント資料はこちらから: https://www.slideshare.net/UnityTechnologiesJapan/clipboards

    5分で分かる名前空間とオートロード
    stealthinu
    stealthinu 2014/05/14
    未だにPHPで自分で名前空間使ったこと無いや… オートローダーの使い方がいまいちわからん。ううむ。
  • 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 - Qiita

    あわせて読みたい 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 「オブジェクト指向プログラミング」と「関数型プログラミング」のたった一つのシンプルな違い あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 2015年に備えて知っておきたいリアクティブアーキテクチャの潮流 この記事について この記事は新人向けの研修内容を再編集してお送りいたします。 ここで述べる内容はどのようにして現在のプログラミングスタイルが生まれてきたかを理解することで、よりよいプログラムを書くためのもので、正確なソフトウェア工学の歴史を学ぶためのものではありません。正確な歴史を把握したい場合は、原典をあたるようにしてください。 また、想定している読者は「よくあるオブジェクト指向プログラミングの学習」を既にし

    新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 - Qiita
    stealthinu
    stealthinu 2014/05/14
    オブジェクト指向を中心としたプログラミング言語の歴史という感じで良い。perlのblessって「リファレンス自身に関数を探索するパッケージを示す」という意味合いだったのか。newとは意味が違うからこの名にしたのかな?
  • AngularJS使い方メモ - Qiita

    AngularJSアプリケーション開発ガイド を読みながら勉強したときのメモ。 HelloWorld AngularJS を入手する 公式サイトから angular.min.js をダウンロードする。 HTML を書く <html ng-app> <head> <script src="angular.min.js"></script> <script src="helloWorld.js"></script> </head> <body> <h1 ng-controller="HelloWorldController">{{message}}</h1> </body> </html> angular.min.js を読み込む。 ng-app ディレクティブを付けたタグの中が、 AngularJS のテンプレートとして処理される。 ng-controller ディレクティブを付けたタグの中

    AngularJS使い方メモ - Qiita
    stealthinu
    stealthinu 2014/05/07
    これAngularJS始めるのにすごくわかりやすくまとまってて良い感じがする。
  • 平方数かどうかを高速に判定する方法 - hnwの日記

    平方数とは、ある整数の平方(=二乗)であるような整数のことを言います。つまり、0,1,4,9,16,...が平方数ということになります。 ところで、与えられた整数が平方数かどうかを判定するにはどうすれば良いでしょうか。与えられた整数の平方根の小数点以下を切り捨て、それを二乗して元の数になるかどうか、というのがすぐ思いつく実装です。 <?php function is_square($n) { $sqrt = floor(sqrt($n)); return ($sqrt*$sqrt == $n); } しかし、平方根の計算は比較的重い処理です。もっと高速化する方法は無いのでしょうか。 多倍長整数演算ライブラリGNU MPには平方数かどうかを判定するmpz_perfect_square_p関数が存在します(PHPでもgmp_perfect_square関数として利用できます)。稿ではこの実装

    平方数かどうかを高速に判定する方法 - hnwの日記
    stealthinu
    stealthinu 2014/05/07
    うー… なんでn mod 256…で平方数の判定出来るのかわからん。82.8%はそれで判定できる、というところすら。
  • Modern JavaScript Applications: Design Patterns

    It's presented how classical OOP approaches and design patterns can be used for modern JavaScript applications.

    Modern JavaScript Applications: Design Patterns
    stealthinu
    stealthinu 2014/05/02
    今どきなjavascriptの書き方、なのだが最初のうちはそんな大したことは書いてない。でも後半になるともうついてくのがしんどくなってくる。モダンな書き方まとめみたいなの良いページないのかな?
  • JavaScriptのIIFEとモジュールパターン | fenomas.com

    他の多くのフラッシャーと同じく、最近色々HTML5開発を触ってみている。(現時点ではEdge Animateで色々を。)で、JSはAS3とかなり似ているため、それほど慣れにくくはない。(ほとんどのJSはAS3としてでもコンパイルできるし。JSを横目で見たら、変数の型を宣言しない人が書いたAS3と見間違えられる。) ただしJSとAS3は似ている言語にしても、使われる方言が違う。例えばこれ: 最初は「はあ?」と思った。でもJSにはよ〜くあるのだ。このパターンは英語圏で「IIFE」(イッフィー)とよばれる:「Immediately-invoked function expression」。つまり即時に実行される関数エクスプレッション。まあ、コードを見ればそういうもんですね。(@spacelogueさんによると日語では即時関数というんだって) まあそれはそれで良いんだが、何のために使うのだろう?

    stealthinu
    stealthinu 2014/05/02
    IIFEってなに?と思ったらネームスペース作るための即時関数の書き方を向こうではIIFEというらしい。
  • ざっくりJava JSP/サーブレット - Qiita

    書いてる人 プログラミング学習サービスやら、ペットサロン予約サービス、風俗検索サービスなど色々とやっている「かずきち」です。 ■運営サービス一部 http://crazy-wp.com/ http://webukatu.com/ 新宿のホストから不動産・保険の営業を経て、HTMLって何?という状態から3ヶ月独学でプログラミングやデザインを学び、IT業界で1年間実務経験を積んで年収は1超え。現在は起業家としてサービス運営やら不動産運営をしています。 Qiita内にそれ系の記事も書いてます。 エンジニアで稼ぐために大切な13のコト WEBサービス起業したい人に読んで欲しい18のコト JSPってなに? JSP(Java Server Pages)と言って、PHPなどと同じようにタグを使ってhtml内にそのまま記述出来るもの。 同じくサーブレットというものがあるが、それをもっと使いやすくした感

    ざっくりJava JSP/サーブレット - Qiita
    stealthinu
    stealthinu 2014/04/30
    JSPのまとめ。JSPについて必要な知識が簡潔にまとまっててチートシート的に使ったり説明するのに良さそう。
  • PHP Sandbox - Execute PHP code online through your browser

    Test your PHP code with this code tester You can test and compare your PHP code on 400+ PHP versions with this online editor. <?php // Enter your code here, enjoy! $array = array("1" => "PHP code tester Sandbox Online", "emoji" => "😀 😃 😄 😁 😆", 5 , 5 => 89009, "Random number" => rand(100,999), "PHP Version" => phpversion() ); foreach( $array as $key => $value ){ echo $key."\t=>\t".$value."\n";

    stealthinu
    stealthinu 2014/04/21
    web上でPHPの動きを確認出来るサービス。PHPのコードどんな風に動くかを簡単に確認したり、うまく動かないコードを示したりするのに使えそう。
  • バベル案内

    Steve Yegge / 青木靖 訳 2004年9月 これは駆け足の言語案内だ — Amazon Developers Journalのために今月書いていたのだが、どうもこれを見苦しくないようにする方法を見つけられなかった・・・。 ひとつには、私はどうも粗野で口汚くなりがちで、オフィシャルな趣のあるAmazonの出版物に載せるのは不適切に思えた。それでかわりに誰も読まない自分のブログに押し込めてしまうことにした。読んでるのはあなたくらいのものだよ。どうも! もうひとつ言うと、これは当に書きかけのものであり、そこかしこの断片を集めたものでしかない。全然磨き上げられていない。これもブログエントリにする理由になっている。ブログなら別に良質である必要も完全である必要もない。単に私が今日考えたことというだけのものだ。ではお楽しみを! この駆け足の案内では、C、C++、Lisp、JavaPerl

    stealthinu
    stealthinu 2014/04/17
    おもしろくてつい全部読んでしまった。EmacsとRubyを勧める話。js2-modeを書いた人。
  • プログラマーを悩ませる、命名の難しさについて

    話の発端は 先日公開された FC2 ソースへの感想から。 http://opensource.slashdot.jp/story/14/03/24/0937246/FC2%E3%83%96%E3%83%AD%E3%82%B0%E3%81%AE%E3%82%BD%E3%83%BC%E3%82%B9%E3%82%B3%E3%83%BC%E3%83%89%E3%81%8C%E3%82%AA%E3%83%BC%E3%83%97%E3%83%B3%E3%82%BD%E3%83%BC%E3%82%B9%E5%8C%96%E3%81%95%E3%82%8C%E3%82%8B isExistメソッドとか (スコア:1) by Anonymous Coward on 2014年03月25日 10時54分 (#2568810) もろに日人っぽいソースコードで好感が持てる。

    プログラマーを悩ませる、命名の難しさについて
    stealthinu
    stealthinu 2014/03/31
    うわわ、こないだの命名ネタの件を小林さんがまとめてくれたのがホッテントリしてる!ローカルで恥晒してたと思ったら全日本的に晒してるよ~ orz 知らぬは一時の恥と思って耐えるぜ。
  • 正規表現の機能の覚書き

    はじめに「はじめての正規表現」がホッテントリ入りしていますが、 導入としては、何に使うのかがわかりやすくて良いのではないかと思います。 あれを見て、基機能をまとめてみたくなったので、正規表現の基的な機能について書いてみます。 (正規表現が初めてという人は「はじめての正規表現」を先に見たほうがいいと思います。) 例では「検索」か「置換」をするものとして話を進めていきます。 (「はじめての正規表現」が実例を中心にしたのに対して、こちらは機能を中心に書きます) 正規表現は、プログラミング言語やその他のツールなど、それぞれで微妙な違い(方言)があるので、その点には注意が必要です。 (表記法が違ったり、ここに紹介する機能がサポートされていなかったり、逆に紹介していない機能をサポートしていたりする場合があります) メタ文字とリテラル文字正規表現には、メタ文字とリテラル文字というものがあります。 メ

    正規表現の機能の覚書き
    stealthinu
    stealthinu 2014/03/24
    正規表現まとめ。簡潔にまとまってて実用的。
  • 今まで見たもっともクソなテーブル設計 - 何か着ていればいいよ

    あれは、僕がデータベースを扱ううち最初から3件目のプロジェクトだった。 C++のソースが難解で火を吹いているという話で、自分は低スキルの若造。火にくべるには丁度良い程度のやる気と責任感をもっていた。折悪く別のプロジェクトが終了した直後だったもので投入されたのでした。 現場で『DBからデータを吸い出すツールかSQLを作ってくれ』といわれ話をきくと他社が作ったDB定義がすこぶる使いづらいという。 ER図やDB定義を見せてくださいと言ったのだけど、そんなものは無いという返事。 今ならもうここら辺で逃げ出すところですが、当時は『ふーん。』てなもんでそういうこともあるのかくらいの軽い気持ちで考えていました。 で、プロジェクトの資料をあさりまくって何とかDB定義のようなものも見つけDBのデータを調査し始めたのですが何かがおかしい。 機能の数に比して異様にテーブル数が少ないのです。 ふと周りを見ると、皆

    今まで見たもっともクソなテーブル設計 - 何か着ていればいいよ
    stealthinu
    stealthinu 2014/03/05
    はー、さすがにこんなすごいのは今まで経験したことないわ…
  • 「Javaが使われないのは、エンジニアが楽しくないからだ」 - 感謝のプログラミング

    面白い人に出会った。 彼を一文で表すと、 SIerにいるくせに技術が大好きで、コードを書きたくても書けない現状に嘆きつつ、 多額のローンを背負ってしまったため転職に踏み切ることもできず、夢と現実の狭間で苦しんでいる男だ。 この人の素直な感じがかなり好きで、出会いざますぐに心を開いてしまった。 やっぱりアツく技術的な話をしてくれる人は当に楽しい。 会社にいる人の5割はSSDって何?って人だし、6割はJavaJavaScriptの違いもわからない人で、8割はGoogle検索無しでコンソールに「Hello World」を出力させることもできないような人達だ。 実際に統計をとったわけではないけれど、これは全然大げさな話ではない。 「システムエンジニア」なのに、当にこんな感じなのだ。 その代わり、ExcelやWordを駆使して資料を作成する技術は素晴らしいものがある。 長時間の会議に耐えうる精

    「Javaが使われないのは、エンジニアが楽しくないからだ」 - 感謝のプログラミング
    stealthinu
    stealthinu 2014/02/28
    本題よりSIerについての『6割はJavaとJavaScriptの違いもわからない人で、8割はGoogle検索無しでコンソールに「Hello World」を出力させることもできないような人達』が。そうなんだよね。ほんと不思議だ。