タグ

programmingとPHPに関するsuginoyのブックマーク (17)

  • [phpconfuk2017] PHP7で堅牢なコードを書く - 例外処理、表明プログラミング、契約による設計 和田 卓人

    2017年6月10日開催 PHPカンファレンス福岡2017 Fusicホール 10:30-11:15

    [phpconfuk2017] PHP7で堅牢なコードを書く - 例外処理、表明プログラミング、契約による設計 和田 卓人
  • PHP7 で堅牢なコードを書く - 例外処理、表明プログラミング、契約による設計 / PHP Conference 2016

    2016/11/03 @ PHPカンファレンス2016 2016/12/15 @ PHPカンファレンス2016再演イベントにて改訂 2017/06/10 @ PHPカンファレンス福岡2017にて改訂 2017/06/10 @ PHPカンファレンス福岡2017講演録画 https://www.youtube.com/watch?v=54jHDHvcYAo

    PHP7 で堅牢なコードを書く - 例外処理、表明プログラミング、契約による設計 / PHP Conference 2016
  • Domain-Driven Design in PHP

    In 2014, after two years of reading about and working with Domain-Driven Design, Carlos and Christian, friends and workmates, traveled to Berlin to participate in Vaughn Vernon's Implementing Domain-Driven Design Workshop. The training was fantastic, and all the concepts that were swirling around in their minds prior to the trip suddenly became very real. However, they were almost no PHP developer

    Domain-Driven Design in PHP
  • phpによるスクレイピング処理入門

    1. はじめに このサイトは php を利用したスクレイピング処理の具体的手法について記載されたサイトにしようと思っています。なので、あまり面白いサイトではありません。内容も偏重していることと思いますが、ご質問などがございましたら、りょーちまでご連絡ください。 1.1. スクレイピングとは スクレイピングの話しを始める前に、現在のWebサービスについて幾つか言及しておきます。 現在様々な会社が様々なWebサービスを展開しています。かなり昔、今よりWebサイトそのものが少ない頃の時代は、HTMLファイルを手動で作成することが殆どでした。しかし、現在はバックグラウンドにデータベースが存在し、データベースの内容を動的に表示し、ページを作成するようなサイトがかなり多くなっています。 さて、データベースを利用するメリットは何でしょうか? 幾つかの視点が挙げられると思います。 最も重要な点は、ひとつひ

  • PHPerはSpikaのどこを見たのか?

    レガシーズ 公式ブログ レガシーコードと戦い続ける謎の集団、レガシーズの公式ブログです。 ※レガシーズはレガシーコードを通じて正しいコードの構造や改善の手法を模索する覆面集団です。特定のプロダクトやサービスを誹謗中傷する事が目的ではありません。 みなさん、こんにちは。マスク・ド・レガシーです。 PHPカンファレンスも無事に終わり、ゆっくりと休暇を楽しんでいたところ、にわかにタイムラインが騒がしくなっていました。今回は話題の中心になったSpikaを題材にPHPのコーディングについて考えてみようと思います。 Spikaの概要SpikaはMITライセンス化のオープンソースとして公開されたメッセンジャーアプリケーションです。プロジェクトにはネイティブで実装されたiOS、Android向けのモバイルアプリケーションとPHPで実装されたサーバーサイドを組み合わせる事で独自のメッセンジャーサービスを構築

    PHPerはSpikaのどこを見たのか?
    suginoy
    suginoy 2013/10/09
    “※レガシーズはレガシーコードを通じて正しいコードの構造や改善の手法を模索する覆面集団です。特定のプロダクトやサービスを誹謗中傷する事が目的ではありません。”
  • わたしたちがDDDを実践するに当たってDoctrineをやめようと決断した動機 - Qiita

    断り書き:自分たちがやりたいDDDにDoctrineが必ずしも向いていないという判断をしたものです。Doctrineには非常にお世話になっており、批判するものではありません。どのツールにも適材適所があると思います。 機械的なORMでエレガントに表現できないものがあった(ValueObjectなど) Entityが1テーブルに固く対応していて、さらにその知識がインフラストラクチャレイヤからドメインレイヤに漏れ出していて、密結合が発生していた Doctrineロックから脱出したい。Domain ServiceはRepositoryに依存しており、RepositoryはDoctrineに依存している。Doctrineが破滅への道を歩めば、アプリの心臓であるDomainも道連れとなる。 ストレージロックを脱出したい。ドメインレイヤがある具体的なRepositoryに依存していると、簡単にストレージ

    わたしたちがDDDを実践するに当たってDoctrineをやめようと決断した動機 - Qiita
    suginoy
    suginoy 2013/08/13
    あとで読む
  • nakano_neko, 画像の右側が外注さんに頼んだソースコード。左側が僕が書きなおしたソースコード。...

    画像の右側が外注さんに頼んだソースコード。左側が僕が書きなおしたソースコード。 仕事をお願いしたのに、自分で修正するのって当にバカバカしい。 そういうプログラムにお金を払うって当にバカバカしくて涙がでてくる。 facebookに書いた文章なんだけど、ちょっと加筆して、tumblrに公開してみる。 外注さんを探す時の参考にしてもらえれば幸い。 作業が重なると自分のトコだけで捌けなくなる時が時々あるので、外注さんを増やす努力をしてる。 んで、先日・・・ ネット上で「プログラム組みます」的なセールスをしていた個人に仕事をお願いした。 ただ、最初から雲行きが怪しかった… 屋号を名乗るだけで個人名は開示しない、 こちらの名前は間違えたまま、指摘しても謝罪も無し・・・ ちょっと怪しい臭いはしたんだけど、技術には自信があるようなので簡単な仕事をお願いすることに。 まず、お見積りをお願いする。 お見積

  • 最近のウェブ系スタートアップが採用しているプログラミング言語やフレームワークまとめ - laiso

    http://www.quora.com/Node-js-Ruby-Python-who-wins-in-5-years を読んでて「勝利条件としてより多くの”スタートアップ”に選択されること」という話がでてたけど、そもそも今は何が採用されているのか状況がよくわかたっていなかったので調べた。 スタートアップ? 一般(自分の周辺)に「ウェブサービス」みたいな呼称されているもの。消費者向けというかなんというか、企業向けシステムとか、ソーシャルゲーム単品とかは含めないことにした なんでスタートアップ?(小規模な企業) 企業が大きくなってくると、いろんな領域で必要なことがあってこの企業は→このプログラミング言語みたいなひもづけができなくなるので 項目は =企業ではなく=サービスでわけた 順番、国内外は適当。できるだけ知名度のありそうなサイトを選んだ いわゆるサーバーサイドのアーキテクチャの話(それ

    最近のウェブ系スタートアップが採用しているプログラミング言語やフレームワークまとめ - laiso
  • プロとしてWebアプリケーションを開発するということ - ぷぎがぽぎ

    クロコスのエンジニアでもあり、日Symfonyユーザー会のメンバーでもある小川さん([twitter:@fivestr])が執筆した最新作「効率的なWebアプリケーションの作り方 -PHPによるモダン開発入門-」を献いただいたので紹介したいと思います。 最新の技術を追っているわけではなく、実績ある技術や手法の基礎編 サブタイトルに「モダン」という言葉があってPHPでの最先端な開発かと感じる方がいるかもしれませんが、内容はOOP、DI、そしてドメイン駆動開発などの基礎的なところを実例を通して紹介しています。つまり、これから5年後または10年後と利用することができる実績ある技術と手法について紹介していることが特徴だと感じました。*1 Webアプリケーションをプロとして開発するために必要な知識を理解するための一歩 PHPの書籍というと、PHPの構文などPHPの使い方にフォーカスした、または

    プロとしてWebアプリケーションを開発するということ - ぷぎがぽぎ
    suginoy
    suginoy 2012/06/04
    「そういった知識を得るためにはTDD、DDD、デザパタなどの世界へ足を踏み入れる必要がありますが、これらが敷居が高いと感じる方が多いのではないでしょうか?」PHPで書かれた本が少ないから?
  • ウェブサービスをゼロから作って成功したこと、失敗したこと - id:k-z-h

    php, 雑記いつもなら寝ている時間なのだけれど、なぜか睡魔がやってこないので過去の思い出をまとめてみる。去年の2月ごろ、新規案件のウェブサービスに開発メンバーとしてアサインされた。作るべきものが大量にあったため、4チーム(工期中多少増減したが)に分けてドメインごとに作業分担をした。そのうち、ウェブアプリケーション体(フロント、API、マネージツール)を担当するチームのサブリーダーが自分の役割だった。そのプロジェクトは去年の末に一旦の区切りを迎え、自分はそこで退職し、新たな環境に身を置くことにした。それから丸4ヶ月経って、自分が書いたコードと新しい環境で書かれていたコードを見比べて、思うところが多々ある。それらを文章としてまとめたいと思う。 失敗したこと簡単な骨組みを作ったあと、デプロイの仕組みを作った。php には phar という仕組みがある。これは jar/war のようにウェブサ

    suginoy
    suginoy 2012/05/09
    既存フレームワークを使わないでPHP5.3を選択する理由があるとは思えないなぁ。
  • PHPUnit でテスト駆動開発を始めよう

    PHPMySQL で 1 カチャカチャカチャ...ッターン! MapReduce (@ニコニコ超会議)Yuya Takeyama

    PHPUnit でテスト駆動開発を始めよう
  • PHPのinterfaceなめんな - なんたらノート第三期ベータ

    はいタイトルは釣りです。 OOPのインターフェースはただの実装漏れチェック機能じゃないし、ましてや継承は差分プログラミングツールじゃないぞ。というのはわりと一般的な話だけど、Ruby(respond_to?でホントにいいの)とJava(インターフェースが自然すぎてユーザが意識しないのよ)が、PHPに対してOOPどうこうで偉そうに言うのはどうかなと思ったもので。まあそれと同時に、PHPの人自身がその意義を発見してるのかなという疑問もあったりしたんですけどね。 Rubyというのは「オブジェクト指向ってのはつまりメソッドに応答できるアヒルはみんなアヒルとみなせるよね」というレベルのダックタイピングで割り切った言語だと、個人的に認識しています。継承とミックスインにはis_aが応答するけど質はrespond_to?のほうで、インターフェースを宣言してなくてもメッセージ送れたらいいあの感じ。 そんな

    PHPのinterfaceなめんな - なんたらノート第三期ベータ
    suginoy
    suginoy 2012/03/01
    「変数に型がない言語におけるインターフェースというのは...マーカーの意味合いが強い」「差分プログラミングするかどうかと、APIインターフェースの設計をどうするかという問題とは、直交しているべき」
  • try { Getting People To Come To a Talk On Exceptions }

    Answering the 5 most important questions you have about Exceptions in PHP

    try { Getting People To Come To a Talk On Exceptions }
    suginoy
    suginoy 2012/02/27
    Zendなどを例にしたPHPでの例外について。いろんな定番書籍から引用も。PHPの学習が進んでからもう一回読む。
  • PHP のよいところとよくないところ - id:k-z-h

    php前提。PHP はクソ。滅びろ。ruby はしらんが pythonperljava のほうがよっぽど楽。javascript は多分同じかもっと地獄。よいところ導入が安い動作環境的な意味でも、コード的な意味でも。置けば動くし、書けば動く。当に何も知らん人間でもなんとか動く。エンジニアの頭数もそろえやすい。運用コストのスケーリングができるapache+mod_php だけでも普通に早い。apc 入れればそれだけで大抵のリクエストさばける。nginx+php-fpm+apc なんて環境にすればもっとさばける(と思う。まだ試してない。)最悪 HIPHOP-PHP でなんとかできることは Facebook が証明している。ドキュメントが読みやすいphp.net のドキュメントはテンプレートがしっかりしていて全部それにそっているので非常に読みやすい。邦訳も早い。よくないところ標準の

  • 伝説のPHP作者「Rasmus Lerdorf」名言集を聞くと嫌PHP厨がファビョる

    今のPHPを作ったのは、何十人もの開発者ですよ。私は1人目の開発者だったに過ぎません。 問題を解くのが好きなだけで、プログラミングは大嫌いです。 いかにプログラミングを避けるかを考えていたら、コードを再利用するためのツールとしてPHPができました。PHPは、歯ブラシみたいなものですね。毎日使うものですけど、だから何でしょう?誰が歯ブラシのなんて読みたがります? パーザを書くのは苦手です。当にダメなんです。今でもね。PHPには「protected属性」も「仮想メソッド」もありますよ。情報学科の教官が「重要だ」っていうやつは何でもね。僕自身は、こんなものどうでもいいと思ってますけど。プログラミングを好む人がいるのは知ってますが、全く理解できないですね。 僕はホンモノのプログラマではありませんから、やっつけ仕事ですよ。ホンモノのプログラマは、「動いてるように見えるけど、メモリリークだらけじゃ

    伝説のPHP作者「Rasmus Lerdorf」名言集を聞くと嫌PHP厨がファビョる
  • PHPについて質問です。 オークションの統計サイトにて先日に引き続きマーケティングをしています。…

    PHPについて質問です。 オークションの統計サイトにて先日に引き続きマーケティングをしています。 文字のエンコードについてお聞きしたいのですが、 先日ヤフーオークションだと $query = 'イチロー シャツ'; $str = mb_convert_encoding($query, 'EUC-JP', 'auto'); $str = urlencode($str); $url = ' http://search.auctions.yahoo.co.jp/jp/search/auc?p=' . $str . '&auccat=0&alocale=0jp&acc=jp'; でエンコードした文字列をURLに載せてページ移動ができたのですが、 今回の統計サイトを http://aucfan.com/search1/sya-q~a5a4a5c1a5eda1bca1a1a5b7a5e3a5c4-tl

  • TDD(テスト駆動開発)をはじめたい人にオススメの資料(無料) | Act as Professional

    TDDBC in TokyoをPHPUnitでやる予定なので、TDD関連資料をあさってました。 実際に手を動かして、1から2時間で最後までやり通せるTDDの資料を見つけました。 TDDに興味を持った方が最初にやるのにちょうど良い内容なので、お知らせします。 オブラブで公開されている車窓からのTDDです。Java+JUnitの構成で書かれていますが、PHP+PHPUnitで、ほとんどPHPっぽく書き直せば問題なくTDDの雰囲気を学べる内容です。 Fake It 三角測量 リファクタリングなどのタイミングを具体的に理解できるストーリー仕立てになっています。内容のボリュームもお手軽なので、TDDに興味のある方は、やってみてはいかがでしょうか?TDDの良さが体験できると思います。 PHPのコードをgithubで公開しています。「PHPでどう書くの?」って思った方は参考にしてください。

    TDD(テスト駆動開発)をはじめたい人にオススメの資料(無料) | Act as Professional
    suginoy
    suginoy 2011/06/09
    すばらしい
  • 1