YAPC::Kyoto 2023 2023-03-19 Yusuke Wada
PHP 2大 web フレームワークの徹底比較!1. PHP 2大 web フレームワークの 徹底比較! サポーターズ勉強会@株式会社ウィルゲート Room0 2. 池添 誠(いけぞえ まこと) • 開発グループ コンテンツユニット所属 • 2015年にウィルゲートに新卒入社(3年目) • クラウドソーシングサービスのサグーワークスの開発 • 今日は CakePHP 担当 2 自己紹介 3. 池添 誠(いけぞえ まこと) • 開発グループ コンテンツユニット所属 • 2015年にウィルゲートに新卒入社(3年目) • クラウドソーシングサービスのサグーワークスの開発 • 今日は CakePHP 担当 3 自己紹介 テストコード いいぞ 4. 岡田 正平(おかだ しょうへい) • 開発グループ ソリューションユニット所属 • 2015年にウィルゲートに新卒入社(3年目) • webコンサルティ
ずいぶん前のことだが、Webアプリケーション開発フレームワーク「Ruby on Rails」が00年代後半にブームを巻き起こしたとき、強い主張を持つソフトウェアとしてRailsは多くの議論を呼び起こした。その中でも最大のものはプログラマの生産性に関するもの。当時、すでにいくつも存在していたJavaベースのWebアプリケーション開発フレームワークに比べて、Ruby on Railsは10倍の生産性を達成できるという主張だ。 Rubyの生産性はJavaの10倍――。この主張が多くのエンジニアの琴線、もしくは逆鱗に触れた。「さすがに10倍は大げさだ」、「いや、現実に設定ファイルやコードを書く行数が劇的に減るのだから、そのぐらい当然だ」と意見が分かれたのだ。 2005年のリリースから約10年。Railsの生みの親で、今もプロジェクトをリードするデイビッド・ハイネマイヤー・ハンソン氏は当時を振り返り
いろいろと原則論はあるんですが。昨今のアプリケーションは複雑化し、扱う情報はよりセンシティブになり、そしてより幅広く使われるようになっています。よって「安全な」アプリケーションを作るために必要な知識はますます増える傾向にあります。 よく分かってない人は以下のことにとりあえず気をつけましょう 1. なるべく自分で作らない これは最も重要なことです。検索する、他人に聞く、自分で考えない。これは重要です。大抵の問題は他人が作ってくれた解決策を適用できます。 例えばセキュアな問合せフォームを作ることにしましょう。気をつけるべきことは以下のことぐらいでしょうか。 送信内容の確認画面を表示する場合、ユーザーの入力した値は適切にエスケープするように 送信内容をアプリケーションの DB に格納する場合には SQL インジェクションを防がなければならないので、プリペアドステートメントを用いる CSRF 対策
Dropwizardについて3回に渡って説明したいと思います。 今年に入ってリファクタリングなどで有名なマーティン・ファウラーらが所属するthoughtworks社のTechnology RadarのLanguages & frameworksでADOPT(つまりプロジェクトで採用すべきプロダクト)に入りました。 他に入っているものが、Clojure,Scala,Sinatraなので、それらと同じくらい注目すべきプロダクトということになります。 他のプロダクトに比べると日本語の記事が少なく、また、バージョンも上がり変わった部分もあるので記述しました。 なお、Dropwizardは日々進化しているので、この記事の内容もすぐに古くなるかもしれません。 概要 DropWizardは、YammerのWebサービス部分で利用するために作られたフレームワークでした。 自分が思う一番の特徴は、 「1つの
Android フレームワークは、あまり強力とはいえないものの、ある程度のテストフレームワークを内包しています。 ベースが JUnit3 なので、記法が古かったりすることもありますが、とりあえず JUnit3 の作法を身に付ければある程度のテストは書くことが出来ます。 Android のテストケースフレームワーク Android がもつ各種のコンポーネントをテストするためのフレームワークが有ります。 いろいろな種類がありますが、おそらく最も頻繁に使うのはAndroidTestCaseでしょう。 AndroidTestCase Android でユニットテストをするなら、ほぼ間違いなく使うであろうクラスです。 そのようなテストケースでは、すべてこのクラスを基底に作っていきます。 もう少し具体化して言うと、Contextに依存するすべてのテストはこのテストクラスを使うことで、イイカンジにテスト
Seasar2の機能追加停止が宣言されてから、すでに6年弱たっています。 Seasar2.4に対する追加要望があれば、もちろん検討します。ただし、大きな変更や追加はもうないでしょう。 Seasar2の今後のロードマップ 2008-01-29 - ひがやすを blog 後継になる予定だったSeasar3も開発が中止されて3年たちました。 Seasar3開発中止 2010-08-06 - ひがやすを blog ここでSeasar2.5を出す方向で動くということでしたが、実現しませんでした。 あのころSeasar2に関わっていた人も、ScalaがメインになったりNode.jsをさわったり、不本意ながらPHPをさわったり、さわってみるとPHPもそれほど悪くなかったり、やっぱりPHP気に食わなかったりと、いろいろな道を進んでいます。 DIコンテナ自体の機能も時代遅れ感がでてきており、関連プロダクトも
アプリケーションの画面に対してボタンを押したり入力を行い、正しい結果や答えが返ってくるか? ユーザーインターフェイスを含むテストコードの開発は一般に手間がかかり面倒であり、テスト用のライブラリやフレームワークが欠かせません。 Googleは、Android用のUIテスト自動化のためのフレームワーク「Espresso」をテクノロジープレビューとして公開しました。 Espresso - android-test-kit - a fun little Android UI test API - Testing Tools For Android - Google Project Hosting EspressoはこれまでGoogle社内で、Google DriveやGoogle Maps、Google+など30種類のアプリケーションのテスト自動化に使われてきました。 特徴は、軽量でシンプルな記述
iOSとAndroidに最適化したJavaScriptフレームワーク「jqMobi」登場。jQuery Mobileより小さくて高速 jQuery Mobileと同様に、HTML5のマークアップでモバイルアプリケーション開発を実現するオープンソースのJavaScriptフレームワーク「jqMobi」のβ版が公開されています。 jqMobiのコンセプトは、jQueryとjQuery Mobileの機能のサブセットを、iOSとAndroid向けに最適化したものといえるでしょう。 すでにjQueryやjQuery Mobile、あるいはSencha Touchなど、さまざまなモバイル向けHTML5/JavaScriptフレームワークが登場する中で、jqMobiの特徴はどこにあるのか、ブログで次のように説明しています。 jQuery - still focuses on the desktop.
Zend Framework その7年 あけましておめでとうございます。 Zend Framework 日めくり Calendar 2012の1日目としてお送りします。 この日めくりカレンダー、前月に流行ったAdventカレンダーの、アイデアフォーク(パクリ)となっております。 記事書いていただける方を募集中です。ぜひatndへのリンク先からご登録ください。 以下は前編としてお送りします。 なお、この記事はかなり書きなぐりでつづっており、間違いがありましたらご一報ください。 Zend Framework って? この記事をご覧になる方はある程度予備知識がある方が多いと思いますが、 改めてZend Framework(以下、ZFと表記)についてご紹介します。 ZFの概要については以下の記事がよく参照されてるかと思います。 http://framework.zend.com/manual/ja
その場でインタラクティブにレイアウトや配色を 調整出来るようなテーマを作る為の開発者向け WordPressテーマフレームワークのご紹介。 久々に凄いなーと感じて脊髄反射的に記事に。 PressWorkで作られたテーマならユーザーが 直感でレイアウトを作る事が出来ます。 以前、直感でWebサイトを作成できるフリーWebサービスという記事を書いたんですが、このサービスのように、インタラクティブにレイアウトやカラーなどを決める事が出来るWordPressテーマ。というだけでも凄いんですが、これがフレームワークとして配布されているのでちょっと驚きでした。 HTML5で出来ています。管理画面に入る事も無く、FTP不要で直感的に、インタラクティブにレイアウトを組む事が出来ます。やばい。 以下に解説を少し。 テーマをアクティブにする 最初にテーマをアクティブにします。外観でPressWorkを選択する
■ [ruby][rack] 5分でわかるRack RackはRubyのためのWebサーバインターフェイスだ。 RubyでWebっていうとRailsが有名だけど、実はRails以外にもいろんなRuby用のWebアプリ用フレームワークが存在する。 Ramaze Merb Camping Waves などなど…。 一方Webを実際に動かすにはWebサーバが必要だ。RubyのためのWebサーバも、これまたいろんなものがある。 Apache(CGI, FastCGI..) WEBrick Mongrel Ebb Thin などなど…。 ここで問題が一つ。それは「フレームワークが増えるたびに、いろんなサーバをサポートするためのコードが必要になる」ってとこだ。 各フレームワークの作者がみんなそれぞれにCGIやMongrelに対応するためのコードを書いてるなんて、無駄だと思わないか? RackはWebア
プログラミングと設計は本来切り離せないものなのではがすごい反響だったのですが、結局この記事で私が言いたかったことは、 Java EEなどの現代的な開発環境はCOBOLなどの古い言語を使った開発とは根本的に設計の手法が異なる 多くの現場では未だに古い設計手法を使っているため、オブジェクト指向などの最近の開発環境のメリットが活用できず、低い生産性にとどまっている。 ということに要約できると思います。ただし、どうして、Javaではオブジェクト指向で開発しないといけないのか、どうして昔ながらの伝統的なやり方を改め、新しい設計手法を採り入れないといけないのかと疑問を持たれた方もいらっしゃるかもしれません。ここでは、開発手法と生産性の問題について、もう少し掘り下げて検討してみたいと思います。 レガシー言語の生産性 最近のCOBOLでは、オブジェクトやスタック変数すら使えますが、ここではCOBOL85の
最近はアーキテクトという役割で客先に常駐し、フレームワークの選定をしたり、事前に共通部品を設計したりする役割を担う仕事を引き受けることが結構あります。そこで運よくお客様のマネージャーがオブジェクト指向開発の経験が十分にある方だと、IDEなどの開発環境やインターネット接続環境を当然のように用意してくれるので最初から仕事がスムーズにできるのですが、そうでないとMS Officeしか入っていないロースペックのノートPCを渡されて、要件定義フェーズの期間中、フレームワークの設計をお願いしますとか、私としてはちょっと首をかしげてしまうような困ったことを言われてしまう場合があります。開発フェーズが始まる半年後まではコーディングは基本的に不要という考え方です。アプリケーションのアーキテクトという役割では少なくともコーディング規約を考えたり、ツールやフレームワークの選定をしたりする必要がありますし、プロジ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く