タグ

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

  • モダンPHPアンチパターン - Qiita

    アンチパターンなので、見出しの内容はすべてバッドノウハウです。 前に書いたやつ PHPのモダンな開発環境を紹介する - Qiita PHP - Functoolsを作った - Qiita PHPのlist()はタプル展開のための機能 - Qiita 関係ないけどこれも: シェル、ターミナル、コンソール、コマンドライン 追記: 文中でとりあげた「怖い話」について、ちゃんと説明しました PHP - namespaceとBOMに何の関係があるのさ - Qiita ファイルの最後に?>を書く PHPコードは<?phpで始まり?>で締める。それがPHPの常識(キリッ ……そんなことはもう綺麗さっぱり忘れよう。PHPはテンプレートエンジンではあるが、Webアプリケーションを書く上では、もはやテンプレートエンジンとしての機能は求められなくなりつつある。 不要な?>を書いてはいけない理由は明確で、<?p

    モダンPHPアンチパターン - Qiita
    stealthinu
    stealthinu 2015/09/30
    最近はやっぱrequire使わずにオートローダーに任せるのが良いのね。コンストラクタをクラス名で書いちゃう件はjavaとPHPどっちも書いてるとなかなか難しい。
  • namespaceとBOMに何の関係があるのさ - Qiita

    先日公開したモダンPHPアンチパターンの記事で、「namespaceを利用しない」の項目に「BOMが出力された怖い話」を書いたところ、いまいち理解されてない感があるので、地面に吐いた唾を飲み込む心意気で自分のギャグをことこまかに紹介したい。 過去に承認欲求欲しさに自分のを舐めたシリーズ PHP - Functoolsを作った 前に書いたMatzLispスクリプトについて説明する さておき、実際の例を見せる 説明の前に、稿の内容が有効であることをコード例をもって示す。使用したバージョンはOS X標準添付のPHP 5.5.27(cli)だ。 以下のコードはわかりやすさのため、Z Shellで実行する。エスケープめんどくさいので… % echo 'hello' | php hello % echo 'hello\n<?php' | php hello % echo '<?php echo "

    namespaceとBOMに何の関係があるのさ - Qiita
    stealthinu
    stealthinu 2015/09/30
    PHPのソースにBOM付いてると「echo "[BOM]";」のコードが頭に入ってるのと同義になるため「namespace」がエラーになるのか。なるほど。
  • 関数や変数のネーミングに悩んだら「codic」に日本語名を入力するとある程度解決するかも

    codicとは codicは、日頃、変数名や関数名に頭を悩ませるプログラマのためのネーミング辞書です。 以前は、プログラマ向けの単語辞書といった感じだったのですが、Ver.3からは、「日語を入力すると、ふさわしい名前を勝手に生成してくれる」という仕様になりました。 例えば関数名を作るのに、「従業員数を取得する」と入力するだけで「get_employee_count」という名前を勝手に生成してくれます。 これだけでも、かなり便利なんですが、codicにはその他にも、プログラミングのための便利な機能が満載だったので、その使い方などを紹介したいと思います。 codicの使い方 codicの主な機能は、日語を入力すると、勝手にネーミングを生成してくれると言うことです。 ただ、ちょっとした使い方次第で、より便利に利用できるので、その使い方などの紹介です。 基機能 まずは、基的な機能、「日

    関数や変数のネーミングに悩んだら「codic」に日本語名を入力するとある程度解決するかも
    stealthinu
    stealthinu 2015/09/17
    前に見た時は語彙が少なくてまだな感じだったが結構使えるようになってる。席数と席番が同じ「seat_number」になってしまうとかあるけど結構いい。あとエディタから使えるようになってるのもいい。
  • ノウハウの共有文化がない場所にコードレビューをねじ込んでみた結果とか - タオルケット体操

    コードレビューをキメると品質も上がるし自分のレベルも上がるので最高」みたいな論が巷を賑わせていて、以前はそういうイケてる制度を指をくわえてみるのみだったのだけれど、最近職場と、それと個人的に関わったプロジェクトコードレビュー制を無理矢理交渉して導入してみた結果、世間のイケてる書籍やエントリから得られる情報とはまた少し違う知見が得られたので書いてみる。 割と泥臭かったり、あまり希望に溢れてたりはしない感じのエントリなのでそういうのは期待しないほうがいいです。 準備 些末なコードレビューを極力避けるために、コードの規約やスタイルについてはlintとフォーマッターを用意した。 他は無策。 結論 結論から言うと、理想的な運用は出来なかったものの、コードレビューについて世間で言われるような成果(作業を共有する意識、レベルの向上)は得られた。良かった。 ぶっちゃけ僕なんかが浅はかな考えで導入しても

    ノウハウの共有文化がない場所にコードレビューをねじ込んでみた結果とか - タオルケット体操
    stealthinu
    stealthinu 2015/09/08
    たいへんためになる話だった。似たような啓蒙活動をしたいと思っていたがとりあえず現状ではコードレビューのところへもたどり着けそうにない。
  • PHP7の内部実装から学ぶ性能改善テクニック

    導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来についてshinjiigarashi

    PHP7の内部実装から学ぶ性能改善テクニック
    stealthinu
    stealthinu 2015/09/08
    メモリキャッシュを意識したデータ構造に変更したことで高速化したことが興味深い。ここまでのチューニングが必要になる仕事をしたいところだ。
  • うまくメソッド名を付けるための参考情報 - Qiita

    クラス名編をつくりました あるメソッドを定義しようとするとき、そのメソッドを使う人達が名前からどんなことをするか理解できるようにするには、メソッドの内容に応じて適切な情報量の命名が求められます。 この記事では、メソッド名に用いることでどのような情報が提供できるかを見ていきたいと思います。 真偽値を返すメソッド 場所 単語 意味 例

    うまくメソッド名を付けるための参考情報 - Qiita
    stealthinu
    stealthinu 2015/09/01
    命名でよく使うプレフィックス。こうやって表にしてあると迷いが減って表現が揺れなくて良いと思う。
  • 【前編】華麗なるキャリアの道程は、『ドワンゴ』から逃げ出したい一心から!?

    Twitterでハッシュタグ「#naoya_sushi」が生まれてしまうほど、無類の寿司好きとして知られる伊藤直也氏(@naoya_ito)。そんな伊藤氏をホスト役とし、トップエンジニアをゲストに招いて、寿司をつまみつつホンネで語ってもらおうという、この企画。 第七回にして対談もついに最終回を迎えることになりました。その栄えある最終回を飾ってくださるのは、あの『株式会社ドワンゴ』の川上量生氏! 創業期からエンジニアとして第一線で活躍し、現在は代表取締役会長と『象徴CTO』を兼務。そして『株式会社KADOKAWA・DWANGO』(10月1日付で社名を『カドカワ株式会社』に変更予定)の代表取締役社長、『スタジオジブリ』のプロデューサー見習い、アニメーション製作会社の『株式会社カラー』では取締役と、業界では知らぬ者はいないスーパースター。そんな川上氏が、プライベートでもゲーム仲間として交流のあ

    【前編】華麗なるキャリアの道程は、『ドワンゴ』から逃げ出したい一心から!?
    stealthinu
    stealthinu 2015/09/01
    言語どうするかの話とかがくっそ面白い。この人はほんとすごいわ。/大量退職が起きた件で例に上げられた人の見解出て経営側との意識の大きなズレが参考になる http://hiroki-uemura.hateblo.jp/entry/2015/09/01/230611
  • 続: OSSプロダクトとコミュニティの話 - たごもりすメモ

    先日書いた通りYAPC::Asia Tokyo 2015でOSSの開発とメンテナンスについての私見を話したところ、会場で id:t-wada さんから強烈な質問と、その後にまとまった量のエントリがきた。 t-wada.hatenablog.jp t-wadaさんの問題意識については上記エントリを読んでいただくとして、これに関連してYAPC::Asia期間中にいろいろな人と話したこと、およびその後に考えたことなどをまとめて書き下しておこうと思う。 明快な結論は無い。無いが、自分にとってのなんとなくの指針のようなものには多分なっており、こういうことを考えて自分はこれからコードを書くんだろうな、という気がする。 なお前提として自分がYAPC::Asia Tokyo 2015で話した内容がベースにあるので、できればそちらを把握しておいてほしい。t-wadaさんのエントリにあるメモは話した内容をよく

    続: OSSプロダクトとコミュニティの話 - たごもりすメモ
    stealthinu
    stealthinu 2015/08/31
    設計が良いものと、ぐちゃぐちゃでも入りやすいのとで、どちらが生き残るか、という問題も。以外にPHPやWordPressが生き残ってるし。
  • プログラミングスタイルガイドのスタイルガイド - Qiita

    文書は、プログラミング言語向けのスタイルガイドに向けたスタイルガイドである。 文書へのフィードバックはQiita上のコメントにて受け付ける。 構造 対象を明確にする そのスタイルガイドがどのような状況のどのような対象に向けたスタイルガイドであるか規定すること。 状況や対象は広すぎてはならない。 理由: 対象はスタイルガイド記述者には自明かもしれないが、似て非なる言語に誤用されたり、特定分野のアプリケーション向けスタイルガイドが他分野のアプリケーションを理不尽に拘束したりすることがある。これを防ぐべきである。 良い例: 「文書はRuby on Railsアプリケーション向けのスタイルガイドである」 「スタイルガイドはX社におけるRubyプロジェクトに適用すべきスタイルを規定する」 悪い例: (何も書かない) 「文書はX社におけるすべての開発に適用される ... 述語メソッドや述語関

    プログラミングスタイルガイドのスタイルガイド - Qiita
    stealthinu
    stealthinu 2015/08/26
    スタイルガイドのスタイルガイド。メタメタ。最後の「ユーモア」の項目いい。
  • Matz「Rubyの一番悪い点はPerlの影響」!? 次世代の言語の話も盛りだくさん #yapcasia #yapcasiaA

    まとめ YAPC::Asia Tokyo 2015 #yapcasia 全セッション総まとめ 前夜祭から大盛り上がりの様子を完全まとめしていきます。実況ツイートはトラック毎のハッシュタグ付き推奨! #yapcasia / 全体 #yapcasiaA / トラックA (国際会議場) #yapcasiaB / トラックB (701-702) #yapcasiaC / トラックC (703) #yapcasiaD / トラックD (605-606) #yapcasiaE / トラックE (607-608) #yapcasiaDinner / 懇親会 (レセプションホール) 16514 pv 94 39 users 57

    Matz「Rubyの一番悪い点はPerlの影響」!? 次世代の言語の話も盛りだくさん #yapcasia #yapcasiaA
    stealthinu
    stealthinu 2015/08/21
    YAPCでのまつもとさんの講演まとめ。長いけどすっごい面白かった。Streemの思想も面白い。
  • オライリー・ジャパンの書籍380冊、全部買った | ロードバランスすだちくん

    オライリー・ジャパンの書籍380冊、全部買った | ロードバランスすだちくん
    stealthinu
    stealthinu 2015/08/03
    いいなとは思うけどある意味インテリアアイテム扱いだよね。
  • http://www.eva.hi-ho.ne.jp/cgi-bin/user/zxcv/decodeUTF8.cgi?req=oct&oct=357+274+226

    stealthinu
    stealthinu 2015/07/27
    UTF8の8進コードからUTF8の文字にデコードしてくれるサービス。こういうちょっとしたこと確認したいときにいちいち自分で書かなくて良くって助かる。
  • アメリカの大学で受けたソフトウェア工学の授業が実践的ですごかった話 - stefafafan の fa は3つです

    私はアメリカの大学で「インタラクティブメディアとゲーム開発」を専攻しましたが、その時受けたSoftware Engineeringという授業が色んな意味で素晴らしかったのでその授業がどう素晴らしかったのかを紹介していきます。 リアリティーがすごい まずこの授業、生徒数が80人ほどいます。ここから教授がみんなを約15人ずつの5つの会社に分けていきます。そうです、我々生徒は実は会社員なのです。 そして初日に出された課題は「自分たちの会社のミッションステートメントを考えてくること」です。 それだけでなく、プロジェクトマネージャー・プロセスエンジニア・リリースエンジニア・ドキュメンテーションマネージャー・クオリティーマネージャーの役割を会社のどの社員が取るのかを決めてこないといけないというのです。私たちは言われるがままにミッションステートメントを用意し、次の授業に備えました。 プロセスがすごい S

    アメリカの大学で受けたソフトウェア工学の授業が実践的ですごかった話 - stefafafan の fa は3つです
    stealthinu
    stealthinu 2015/07/23
    なにこれすごい。こういうのってハッカソンみたいな短期のものでは出来ないし、なにかパートタイムでこれに近いことを経験できる良い方法ってないもんかな。
  • 長文日記

    長文日記
    stealthinu
    stealthinu 2015/07/21
    shi3zさんのこの手の話はだいたいとてもよくて共感出来るものが多い。それだけに先日の件はほんと不可解なのだが。
  • 優秀なJavaScriptの開発者になるための5か条 | POSTD

    (注記:7/15、いただいた翻訳フィードバックを元に記事を修正いたしました。) 子供の頃、私の興味は互いに関係性のない様々な分野に及んでいました。数学歴史も大好きでした。 ルネッサンスマン 、つまり 博学者 と言う、複数の分野に秀でた人になりたいと思っていました。これはとても難しい課題で、私は突如として、器用貧乏な人になってしまう危機に直面したのです。 私は特定の分野に特化しなくては、と考え始めました。そうすればたとえルネッサンスマンにはなれなくても、少なくとも、器用貧乏にならなくても済むと思ったのです。どうしたらソフトウェア開発をするのに必要な広い知識を保ちながら、1つの分野で専門性を高めることができるのでしょうか。 この記事では、過去5年間、私が良いJavaScript開発者になるために使ったテクニックとリソースの概要をお伝えしようと思います。 最近の多くのWeb開発者は、ある共通の

    優秀なJavaScriptの開発者になるための5か条 | POSTD
    stealthinu
    stealthinu 2015/07/15
    underscoreもbackboneもまだ使ったことない… とりあえずunderscoreから触ってみるか。
  • 流行のIT技術を追うのをやめたらプログラマとして成長した話

    私はもともと普通のプログラマとしてキャリアをスタートしましたが、2007年くらいから脱プログラマを目指してソフトウェア起業家として経営に軸足を移してきました。 それから8年くらいが経過して思うのは、経営者として大きな成功をおさめる前に、自分のプログラマとしての実力がめきめきとアップしてしまったということです。 8年前の私は、プログラマとしては基礎力はあるものの全般的には未熟であったように思います。コードも荒削りで、とにかくかろうじて動くものを作ることに四苦八苦していました。が、いまはプログラマとしてずっと良い仕事ができています。 この8年間は、自分でコードも書いていたので、経験が増えたことによって、良いコードを書けるようになったという面も多々あるとは思います。しかし、そのあいだ技術書を読むことはすっかりやめてしまい、流行の技術などは完全無視してきました。 経営層の一員として働くので、プロジ

    stealthinu
    stealthinu 2015/07/06
    この人の言いたいことはわかるしある程度同意も出来る。でもそうじゃなくもっと低レベルで全然世の流れを受け入れていかない人たちや集団もいるんだよ… 追い過ぎじゃなくてそっちをなんとかしたい。
  • Javaジェネリクス再入門 - プログラマーの脳みそ

    ジェネリクスでは、「型」を変数にした「型変数」というものを取り扱う。型変数で何が嬉しいかというと、メジャーな例ではコレクションAPIが挙げられる。java.util.Listとかjava.util.Mapとかのデータを格納するタイプのユーティリティクラスのことだ。 2004年にJavaのバージョンが5.0となるまでは、Javaにはジェネリクスの機能はなかった。なので、Listにデータを格納し、取得する場合は List list = new ArrayList(); list.add("hello!"); String str = (String) list.get(0); といったソースコードになる。 add()の引数はObject型で宣言されており、どんな参照型でもadd()することができた。 get()の戻り値もObject型で宣言されておりキャストが必要だった。このキャストはプログラ

    Javaジェネリクス再入門 - プログラマーの脳みそ
    stealthinu
    stealthinu 2015/06/24
    javaのジェネリクスについてのまとめ。C++からオブジェクト指向入ったもんでこの書式を見るとつい「テンプレート」と呼んでしまう。んでテンプレートの理解をしてしまうので良くない。
  • エンジニアのための英語

    日、以下のような文章を読んだ > I was suffered from ~ ~の部分には遭遇した諸問題について書いてあったので、この文章は「苦しめられた」と言いたいのだと推察できた。ただ、残念な事に、be suffered というのは多分現在ではほとんど使わないし、意味が若干違ってくると思う(詳しくは検索してきて!) sufferと言う言葉は「苦しむ・被る」という意味なので、受け身にすれば「苦し『められる』」という意味になるのではないか、というつもりだったのはないかと推察するが、sufferはすでに受け身の意味なので、I sufferですでに何かに苦しめられているのであり、これをさらに受け身にする必要はない。 > I had to suffer from having to deal with spaghetti code とかなら、「スパゲッティコードに立ち向かわなくてはいけなかった

    エンジニアのための英語
    stealthinu
    stealthinu 2015/06/24
    うおおお。これはいいな。というかこれが有効に使えるようになりたいものだ。
  • GitHub - adobe-fonts/source-han-code-jp: Source Han Code JP | 源ノ角ゴシック Code

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - adobe-fonts/source-han-code-jp: Source Han Code JP | 源ノ角ゴシック Code
    stealthinu
    stealthinu 2015/06/16
    コーディング用に調節された「源ノ角ゴシック Code」フォント。こういうのもgithubで公開される時代。
  • Unicodeの似た文字を整理してみた - y-kawazの日記

    XMLやCSV等のデータをJavaで色々加工して出力したりといったことをしてると必ずハマるのが波線などの文字化け問題です。 文字化けが発覚するたびにググって場当たり的な対処を繰り返すのに疲れたのでよく問題になる文字と形が似た文字をリストアップして、更にそれをJavaで各種エンコーディングに変換したらどの文字になるかを頑張って纏めました。 ついでに文字化けしないよう上手いこと出力可能な文字に置換する関数も作ってみました。 Javaの変換テーブル 表中の U,S,W,E,J はそれぞれ、UTF-8、Shift_JIS、Windows-31J、EUC-JP、ISO-2022-JP で出力した際の文字です。 見た目で分からないくらい似た文字ばかりなので、各セルにマウスカーソルを乗せたらツールチップで確認できるようtitleにコードポイントを書いておきました。 分かりやすいよう、青は文字化けなし、黄

    Unicodeの似た文字を整理してみた - y-kawazの日記
    stealthinu
    stealthinu 2015/06/01
    JavaでUTF-8の全角ダッシュ\u2015とかをISO-2022-JPに変換すると「?」になっちゃうのを良さそうなのに変換してくれる関数