並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1306件

新着順 人気順

DIの検索結果1 - 40 件 / 1306件

  • Webアプリケーションフレームワーク導入時に考慮すべき22の観点 - Qiita

    本記事では、 チームによる持続的に変更可能なWebアプリケーションの開発を目標に、フレームワーク導入時に考慮すべき22の観点を紹介する。 フレームワークによって特徴は異なるが、本番導入にあたって、考慮すべきポイントはあまり変わらないので、極力フレームワーク1に依存しすぎないよう配慮する。また、話をシンプルにするため、REST APIを提供するアプリケーションを題材とする。 前提 ソフトウェアのエントロピー ソフトウェアがエントロピー増大の法則を避けられないことを、体感している開発者は多いだろう2。普通にアプリケーション開発を続けると、開発スピードは鈍化し、品質は低下してバグが増え、開発者からは技術的負債への怨嗟の声が聞かれるようになる。エントロピー増大というフォースは極めて強力で、意思を持って立ち向かわなければ、容易にダークサイドに堕ちてしまう。 関心事の分離 大規模Webアプリケーション

      Webアプリケーションフレームワーク導入時に考慮すべき22の観点 - Qiita
    • Backbone.JSからAngular2まで、全9大JavaScriptフレームワークを書き比べた! - paiza times

      (English article is here.) こんにちは、吉岡([twitter:@yoshiokatsuneo])です。 ウェブ開発に欠かせないJavaScriptフレームワークですが、日々発展しておりReact.js, Ractive.js, Aurelia.js, AngularJS2.0など次々と新しいフレームワークが出てきています。 一体どれを使えばいいのか?何が違うのか?何から調べていいのか迷うことがあります。 そこで、現時点で事実上全てとなる、9大主要フレームワークについて、実際に使ってみて比較を行います。 Backbone.js Ember.js Knockout.js AngularJS(1.x) React.js Ractive.js vue.js Aurelia.js AngularJS2.0(アルファ版) これらのフレームワークでは、以下のような機能が実現さ

        Backbone.JSからAngular2まで、全9大JavaScriptフレームワークを書き比べた! - paiza times
      • Vimで開発するならこれだけはやっとけ - 何気に大変

        開発効率を上げるためのプラグインや機能のご紹介。 ■neocomplcache http://github.com/Shougo/neocomplcache 自動で補完候補をポップアップしてくれるプラグインで、Vimで効率的な開発をしようと思うのであれば必須のプラグインです。vimrcに以下の1行を加えればプラグインが有効になります。 let g:neocomplcache_enable_at_startup = 1有効にした上で適当にファイルを編集すれば自動で補完候補が出てきます。候補を選ぶ時はCtrl+Nで次の候補、Ctrl+Pで前の候補が選択できます。 設定項目もたくさんあります。:help neocomplcache@ja とすれば日本語ヘルプが見れるので、参照しながら設定してください。 もしこのプラグインを使ったことがないのであれば、人生の半分は損をしています。 ■テキストオブジ

          Vimで開発するならこれだけはやっとけ - 何気に大変
        • 「なぜDI(依存性注入)が必要なのか?」についてGoogleが解説しているページを翻訳した  - Qiita

          イマイチ理解しきれていなかったDIに関して調べていところ、Google Guiceの解説がすごく分かりやすかったので、和訳してみました。 (ところどころ意訳気味です。明らかに解釈の誤った訳がありましたら、ご指摘ください) ちなみにGoogle Guiceというのは、Googleが開発したDIライブラリです。この例ではJavaが使用されていますが、Scalaでも使用可能です。最近Play Frameworkでも採用されたので話題になっているようです。 用語の定義 本文を読む前に目を通すことで、内容をスムーズに理解できます。 用語 意味 本文中の例

            「なぜDI(依存性注入)が必要なのか?」についてGoogleが解説しているページを翻訳した  - Qiita
          • http://kakipy.com/articles/5

            See related links to what you are looking for.

            • SCOUTER開発者ブログ

              2024-04-29 CSSってどんな勉強をしたらいいの?おすすめの勉強法3選! 文字やタブなどWebサイトのデザインを作成するマークアップ言語がCSSです。 CSSを勉強すると、おしゃれなWebサイトやかっこいいWebサイトが作れるようになります。 また、Webサイトを作るときに必要なHTMLを理解するのにも役立ちます。 CSSを勉強するならできるだけ効率よく勉強できるようになりたいですよね。 ではCSSの勉強法はどのようなものがあるのでしょうか。 CSSの勉強法は、スクール […] 2024-04-29 WEBエンジニアから見たXserverの使い勝手と評判 レンタルサーバーのおすすめサイトを見ると、大体どこでも上がってくる有料のレンタルサーバーの一つに「Xserver」があります。 このXserverとは、どのようなサーバーで、サービスにはどのようなものがあるのか。 ホームページ関連

                SCOUTER開発者ブログ
              • 『新米Androiderが開発する上できっと役立つであろう10のサイト』

                はじめまして、 ogaclejapan です。 昨年の6月にサーバサイドJavaエンジニアからAndroiderへ暗黙な型変換でジョブチェンジしました。会社ではAmeba事業本部でAndroidアプリの開発を担当しています。

                  『新米Androiderが開発する上できっと役立つであろう10のサイト』
                • 作って理解するWebフレームワーク - きしだのHatena

                  前回、簡単なDIコンテナを作ってみたので、次はこれを使ってWebフレームワークを作ってみたいと思います。 Webサーバーをつくる まず、WebフレームワークなのでHTTPサーバーが必要ですね。なので簡単なものを作ります。 とりあえずブラウザからリクエストを受け取ったら200 OKとHTMLを返すだけのサーバーです。 今回は、そこらのブラウザからアクセスできればいいや、ということで、RFCとかの仕様に準拠することは考えません。 public class Server { public static void main(String[] args) throws IOException { ServerSocket serverSoc = new ServerSocket(8989); for (;;) { Socket s = serverSoc.accept(); new Thread((

                    作って理解するWebフレームワーク - きしだのHatena
                  • 要するに DI って何なのという話 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く

                    友人から「しんぺいさん DI について書いてほしい」みたいな話をだいぶ前からされてたんだけど書く気力ずっとなかった。でも仕事の気分転換にちょっとずつ書いたやつがいい量まとまったので公開するです。たいしたことは書いてないっていうか知ってるひとにはあたりまえのことしか書いてない。サンプルコードはわたしの趣味で Scala で書いてあるが、Java が読めればなんとなく読めると思います。 DI ってなに Dependency Injection、日本語で言えば依存性の注入です。おしまい。 で記事を終えてもいいんだけど、そもそも依存性とはなんなのか、それを注入するとはどういうことなのか、なぜ DI が必要となるのかみたいな話をこれからします。 そもそも依存性ってなあに 例を出します。入力された文字列をもとにおみくじをひいて、その結果を twitter に投稿するプログラムにしましょう。 まずは普通

                      要するに DI って何なのという話 - 猫型の蓄音機は 1 分間に 45 回にゃあと鳴く
                    • 作って理解するDIコンテナ - きしだのHatena

                      DIコンテナ使ってるけど、アノテーションってなんなの!って聞かれて、作ってみたらわかるよと答えてみたので、自分でも作ってみました。 よくわかった。 「DIコンテナ使うと何がいいの?」ということも、作ってみるとわかります。あと「DIって何がいいの?」に関しては、「DIはちょっとコードを書くのが楽になるだけで、それだけあっても仕方ない、大事なのはコンテナ」と答えるようにしてますが、コード比率からもそれがよくわかります。 続編としてWebフレームワークも作っているので参考まで。 作って理解するWebフレームワーク - きしだのHatena まずはコンテナを作る とりあえず1ソースの状態で。 こんな感じで、管理する型を登録できるようにします。 static Map<String, Class> types = new HashMap<>(); static void register(String

                        作って理解するDIコンテナ - きしだのHatena
                      • Inversion of Control コンテナと Dependency Injection パターン

                        以下の文章は、Martin Fowler の「Inversion of Control Containers and the Dependency Injection pattern」を、かくたにが翻訳したものです。原著者の許可を得て翻訳・公開しています。 翻訳にあたっては、kdmsnr さんにご協力をいただきました。ありがとうございます。公開後の改訂履歴を記事の最後に記述しています。 Java コミュニティでは軽量コンテナが花盛りである。 軽量コンテナは、異なるプロジェクトのコンポーネントをひとまとまりのアプリケーションとして組み立てることを支援する。 このようなコンテナの根底には、コンポーネントの結び付け方についての共通したパターンがある。 そのパターンのコンセプトは「Inversion of Control(制御の反転)」と、まことに包括的な名前で呼ばれている。 本記事では、このパタ

                        • 速報:グーグルが新言語「Noop」を公開。JavaVMで動作

                          グーグルが新プログラミング言語「Noop」を公開しました。Noopは新旧のプログラミング言語からいいとこ取りをした、JavaVMで動作するプログラミング言語と説明されています。 Noopは、サン・マイクロシステムズで開催中の「JVM Language Summit」で、グーグルの2人のエンジニア、Alex Eagle氏とJérémie Lenfant-Engelmann氏によって発表されました。 すでにJVM Language Summitでの発表資料がPDFとして公開されており、その資料には、Noopのミッションが次のように説明されています。 Noop's mission Help teams develop software that is easier to understand and maintain. Noopのミッション 分かりやすくメンテナンスしやすいソフトウェアのチーム開

                            速報:グーグルが新言語「Noop」を公開。JavaVMで動作
                          • 社内の備品貸出にTSUTAYAのレジ風システムを導入した - Qiita

                            概要 社内の備品(主にスマホやパソコンなどの端末)をアプリで「ピッ」とスキャンするだけで、簡単に貸出/返却処理ができるTSUTAYAのレジ風システムを作りました。 その名も「ネコレジ」 OSSなテスト支援ツール「Chibineko」に続く、ねこシリーズ第2弾です。 ネコレジのシステム構成 備品を識別する仕組み 備品の識別にはQRコードを使用します。 各備品にはそれぞれ一意のIDを埋め込んだQRコードを貼り、リーダー側(クライアントアプリ)で識別できるようにします。 QRコードの印刷にはテプラPRO SR5900Pを使用。 このテプラはLAN接続対応なので、iPhoneからも直接印刷ができるスグレモノです。 ちなみにうちの部署にはスマホやガラケーなどが1,000台以上ありますが、気合いですべてに貼りました。 会員カード(通称ネコカ) ユーザーの識別も同様にQRコードで行います。 できるだけお

                              社内の備品貸出にTSUTAYAのレジ風システムを導入した - Qiita
                            • DI (依存性注入) って何のためにするのかわからない人向けに頑張って説明してみる - Qiita

                              追記 2022/11/12 追記 この記事読んで、DI 便利だなって思ったらこちらも併せて読んでみてください。クリーンアーキテクチャーの開設の中で依存性逆転の説明が出てきます。難しいかもしれませんが、一度理解すればつぶしが効く考え方なので腰を据えて読んでみてください。 本文 ここでは、最近のそこそこの規模のアプリだと大体使われてる(と私は思ってる)Dependency Injection(DI)について、何故使ってるのか?というのを私の理解で書いていきたいと思います。 今回の対象言語は C# ですが、DI 使ってる言語であれば大体同じ事情なのかなと思います。 単体テストしたいよね アプリケーションを作るとうまく動いているかテストをすると思います。 たとえ、そのアプリがハローワールドだとしても動かして目視で確認してると思います。 もうちょっとアプリの規模が大きくなってくるとクラス単位やクラス

                                DI (依存性注入) って何のためにするのかわからない人向けに頑張って説明してみる - Qiita
                              • block.fm

                                ダンスミュージック、ヒップホップ、R&B、ポップミュージックなど国内外の音楽情報を中心に、最新のユースカルチャーをラジオと記事で毎日配信。

                                  block.fm
                                • Javaフレームワークの比較検討資料公開 - 矢野勉のはてな日記

                                  Java仕事で各種フレームワークを比較検討したので、比較用に作った参考資料を公開します。ちなみに現在私は、ドワンゴさんの社内システム開発をお手伝いしてまして、その一環で調べたものです。会社資料じゃなく、私の資料ということでブログで公開してよい、むしろしとけ、とのことなので公開しときます。 今回の案件向けにアプリケーションを画面層コンテナ層データアクセス層に分けて、それぞれフレームワークを選ぶのが目的です。コンテナ層はDIコンテナのうちいずれか、データアクセス層はO/Rマッパーを選ぶことになります。 太枠の範囲が選定対象です。よく本に出てくる杓子定規な階層図とは変えてあります。 次のものを比較検討しました。画面層SAStrutsApache Wicket(ほかにもTeedaとかClick Frameworkとかももともとは候補にあったが、調査が追いつかないので二つに絞った)コンテナSeasa

                                  • Windows Azure : Windows Azure Joins Windows Server in a New Organization: Server & Cloud Division

                                    In Visual Studio 2022 17.10 Preview 2, we’ve introduced some UX updates and usability improvements to the Connection Manager. With these updates we provide a more seamless experience when connecting to remote systems and/or debugging failed connections. Please install the latest Preview to try it out. Read on to learn what the Connection ...

                                      Windows Azure : Windows Azure Joins Windows Server in a New Organization: Server & Cloud Division
                                    • Angularが嫌い - mizchi's blog

                                      僕は本当にAngularが嫌いで、もはや許せないレベルに達していて、今ではもう本当に使いたくない。 イカ理由。 APIがほんっっっっっとうに糞 趣味の問題といえばそうでもあるが僕は糞だと思う 実装が黒魔術 良識あるJSエンジニアなら Function.prototype.toString() しない 実際に一部のクロージャが破壊されてて挙動が直感に反する DirtyCheckの実装、表面的にもDirtyな挙動として現れるのでデータバインドとして何も嬉しくない Googleだから許される、みたいなコミュニティの驕りが本当に嫌 Angularの都合だけでChromeでObject.observeを前倒しするのやめろ Angularの内部モジュール同士が密結合 DI, module, factory, それぞれ大きなテーマなのに密結合 使いはじめるとAngularをやめることが困難 パフォーマン

                                        Angularが嫌い - mizchi's blog
                                      • アプリ開発と状態遷移の管理 - ninjinkun's diary

                                        このエントリーは読者としてスマートフォンアプリ開発者とWebフロントエンドエンジニアを想定して書いています。 CROSS2016に出るので、最近の自分の考えを整理しておく。 最近ReduxのSwift実装であるReSwiftを使って開発している。使った感想なども最後の部分に書いたけれど、このエントリーの本題はアプリの状態管理の話。 アプリは大きなシングルトン iOS、Android共にアプリを実装しようと思うと大抵シングルトンが必要になる。各ViewController内をまたがってデータを共有したいというユースケースが多いからだ。例えば ユーザーのログイン情報を集約するUserManager コンテンツへのいいね情報を集めるLikesManager ブックマーク情報を集めるBookmarkManager などなど。もちろんアプリの内容によってこれらの顔ぶれは違ってくると思うけれど、大抵U

                                          アプリ開発と状態遷移の管理 - ninjinkun's diary
                                        • App Engineではどの言語を使えばいいのか - ひがやすを技術ブログ

                                          App Engineで使える言語は基本的にはPythonとJavaです。それでは、どちらを選ぶのが良いのでしょうか。 それ以外の言語の人向けの話は後から出てくるのでしばらくこのままお読みください。 趣味ならば単に好きなものを選ぶだけでいいのですが、仕事で使うためには、長所と短所をきちんと把握した上で選ぶ必要があります。また、ここでの話は言語としての一般的な話ではなくApp Engineで使うとき限定の話としてお読みください。 まず安定度ですが、インフラ部分の安定度は、どちらも基本的に同じです。もしかすると、まったく同じものを使っているのかもしれません。 その上で動くAPIの部分は、インフラと直接結びついている低レベルな部分と低レベルなAPIの上に構築された高レベルな部分とに分けて考える必要があります。 低レベルなAPIはLLAPIと呼ばれたりしますが、安定度は、PythonとJavaも同じ

                                            App Engineではどの言語を使えばいいのか - ひがやすを技術ブログ
                                          • The Seasar Foundation Project Site

                                            利用者向け情報 ニュース & Wiki プロダクト一覧 メーリングリスト Eclipseプラグイン Mavenリポジトリ ライセンス 各種リソース イベントサイト ファウンデーションサイト 開発者向け情報 SeasarWiki ソースコードリポジトリ 課題追跡 継続的ビルド 開発者ログイン サーバチームサイト Java プロジェクト S2Container.Java Seasar2 (S2Container) Presentation.Java Cubby Mayaa mobylet S2BlazeDS S2Flex S2JSF S2OpenAMF S2Portlet S2Struts SAStruts Teeda Ymir Persistence.Java DBFlute Doma Kuina S2Dao S2Hibernate S2JDBC S2OpenJPA S2TopLink Co

                                            • ハイブリッドクラウド 実現のための最適解 - CloudForms 3.0 -

                                              注目のクラウドサービスアプリケーションを迅速に構築、デプロイ、拡張できます。あとの管理はお任せください。

                                                ハイブリッドクラウド 実現のための最適解 - CloudForms 3.0 -
                                              • DI・DIコンテナ、ちゃんと理解出来てる・・? - Qiita

                                                意外と分からずに、「とりあえず」とか「なんとなく」で使っちゃうパターンが多い系案件な気がして書いてみます。 こんな事ありませんか? DIとDIコンテナの違いを説明出来ない DIとサービスロケータの違いを説明出来ない DIを使ってるつもりが、サービスロケータになっている DI、サービスロケータが、ただの「パターン」の1つであることを理解してない DI(Dependency Injection)を正しく理解する そもそも、Dependeny Injectionを日本語にするとどういう意味になるでしょうか。 多くの人が「依存性の注入」とか応えるのではないでしょうか? 私もそうでした。きっと何かで読んだのでしょう。 (wikipediaに「依存性の注入」と書いてありますね) 補足 なぜ依存性を注入してあげると良いのか、そのメリット等は後述しますが、 DIというのはただのパターンの1つです。 たまに

                                                  DI・DIコンテナ、ちゃんと理解出来てる・・? - Qiita
                                                • SpringのCache Abstractionについて

                                                  ╭━━┳╮╭━╮╭━━━┳━╮╭━╮ ╰┫┣┫┃┃╭╯┃╭━╮┃┃╰╯┃┃ ╱┃┃┃╰╯╯╱┃┃╱┃┃╭╮╭╮┃ ╱┃┃┃╭╮┃╱┃╰━╯┃┃┃┃┃┃ ╭┫┣┫┃┃╰┳┫╭━╮┃┃┃┃┃┃ ╰━━┻╯╰━┻┻╯╱╰┻╯╰╯╰╯ @making's tech note HomeEntriesCategoriesTagsNoteAbout HomeLatest EntriesTanzu Application Platform 1.9 (Full Profile) をEKSにインストールするメモ 🗓 Updated at 2024-04-19T04:20:37Zllama-cpp-pythonを使ってGemmaモデルを使ったOpenAI互換サーバーを起動しSpring AIからアクセスする 🗓 Updated at 2024-02-25T09:05:48ZKubernetesクラスタ内から

                                                    SpringのCache Abstractionについて
                                                  • 維新 コロナの法律上扱い“季節性インフルエンザと同程度に” | NHKニュース

                                                    オミクロン株への対応をめぐり、日本維新の会は、重症化率が低いというデータが出ているなどとして、新型コロナの法律上の扱いを季節性のインフルエンザと同程度に引き下げることなどを政府に要望しました。 日本維新の会の藤田幹事長らは13日、厚生労働省を訪れ、後藤厚生労働大臣と面会しました。 そして、オミクロン株は重症化率が低いというデータが出ていることなどを受け、医療提供体制や社会経済活動への影響をできるだけ抑える対策を要望しました。 具体的には、新型コロナの感染症法上の扱いを「二類相当」から、季節性のインフルエンザと同じ「五類」に引き下げることや、現在は14日間となっている濃厚接触者の宿泊施設などでの待機期間を短縮することを求めています。 このあと、藤田氏は「人流の抑制と感染拡大や重症化の相関性に疑義を呈する論説もかなり出てきているので、ことしは、科学的なデータに基づいた対策へと移行していくべきだ

                                                      維新 コロナの法律上扱い“季節性インフルエンザと同程度に” | NHKニュース
                                                    • ふつうのユニットテストのための7つのルール - ブログなんだよもん

                                                      最近、久しぶりにコードレビューをすることが増えたのですが、UnitTestのコードを見るとヒドイ部分が多く残念な気持ちになることもあります。 原因のひとつとして、プロダクトコードと違いテストの書き方をあまり書き方を明文化してなかったのが悪かったなと思い、とりあえず明文化してみました。 今回は、命名規則とかそのレベルまではいかず「ユニットテストかくあるべし」ってところまでをまとめます。正直、これ守ってくれたらあとは好みの世界もあるしね。 追記: テクニカルな部分も最低限ですがQiitaに記載しました。 qiita.com 追記: もうちょっと大上段の規約に関してもまとめてみました。 koduki.hatenablog.com 前提 ここではユニットテストを関数レベルのテストをJUnitのような自動テストツールで取り扱う場合に限定します。 また、Mavenでビルド時は常にテストを回すことを想定

                                                        ふつうのユニットテストのための7つのルール - ブログなんだよもん
                                                      • 選定した技術が1年で死んだ話 | そど

                                                        今年の夏頃から、特にサービスとして出すわけではなく、社内で使っているシステムのリプレースを行う事になりました。主な目的はレガシーすぎる設計をある低度モダンにする事、そして他のシステムと連携出来るようにする事、です。 対象のシステム 見積書や請求書などを管理・発行している。機能はそれなりに多いがUI操作はFormベース、テーブルタグで諸情報を表示するシンプルな物。ノンフレームワークで1画面1PHPファイルな古き良き時代のコード。おそらく10年ぐらい?稼働している。当初はPHP 5.1、PostgreSQL 8.x系だったが、現在はPHP 5.6とPostgreSQL 9.6で稼働しています。 その他の社内システム かつてはノンフレームワークだったり、太古のバージョンのCakePHPだったり、PHPが4系だったりしたが、概ねCodeIgniter 3系最新版 + PHP 5.6~7.1 + P

                                                        • AngularJSアンチパターン集 - Qiita

                                                          (150522追記)本稿の続編としてAngularJSモダンプラクティスを掲載しました。本稿は2014年9月に執筆し、情報がかなり古くなっています。続編では、AngularJS 1.4やAngular 2に関する情報をまとめ、入門者への新鮮なチュートリアル、熟練者の移行手引として作成しました。どうぞご覧ください。 この記事は記録のため残します。 AngularJS歴1年の筆者による個人的なAngularJSアンチパターン集です。自分のための戒めとメモを兼ねています。個人差があると思いますので、参考程度に。 また、筆者はTypeScriptで書いています。 Components ComponentsのDI数が6以上になる 危険度★★★ angular.module('myApp') .service('FooService', [ '$q', '$resource', '$rootScope

                                                            AngularJSアンチパターン集 - Qiita
                                                          • テンプレートエンジンのくせに最近のPHPはオブジェクト志向やらDIやらイキり始めた件 - JavaScriptをがんばるブログ

                                                            ※2017/05/29現在Repositoryの章までしか聞けていません。聞いている際に浮かんだインスピレーションが揮発しないよう永続化する為に書いた記事です。 php-genba.shin1x1.com まさか日本語でこの内容を聞けるコンテンツがあるとは思わなかったです。 これは英語をマスターすれば Sound of Symfony The Laravel Podcast Ruby on Rails Podcast JavaScript Air devchat.tv などのPodcastからより多くの興奮を得られる事を意味します。 プログラミング経験3年、細かい修正ばかりで設計レベルの経験値が全くない自分ですが、各章について以前から個人的に思っていた事、お三方の知見からインスピレーションを得た内容を書き残します。 1. DI 「依存性の注入(Dependency Injection)」と

                                                              テンプレートエンジンのくせに最近のPHPはオブジェクト志向やらDIやらイキり始めた件 - JavaScriptをがんばるブログ
                                                            • なぜクライアントJavaScriptの単体テストを書くのが難しいか、考えてみた - mizchi's blog

                                                              ってsinonのスタブ漏れを探しながら何度目かわからない感じにキレてた。 とにかく仕事でJSのテスト書くのが辛いので考えてみる。比較的JSのテストに慣れてる自分ですら辛いのだから、世界はもっと辛いに間違いない。サーバーサイドのnode.jsの話ではない。 JavaScriptで完結しない 構造がHTMLの構造と密結合している。装飾や位置、表示/非表示はCSSによって制御されている。 クライアントJSはHTMLと密結合しており、CSSからビューは影響を受ける。それらがネットワークの結果を受け非同期に振る舞いを帰る。その最終的な値を取得するのが難しい。 もちろんサーバーサイドだってDBやネットワークという外部リソースを扱うが、モックの手法が確立しているし、局所的な複雑度は、JSの方がはるかに多い。 言語仕様が貧弱 mochaやjsmineはrspecを真似てるけど、本質的にJavaScript

                                                                なぜクライアントJavaScriptの単体テストを書くのが難しいか、考えてみた - mizchi's blog
                                                              • Firebaseの存在をフロントエンドから隠蔽するために

                                                                「Firebase は安いし楽だしマジ最高」という一心で技術選定してしまったプロダクトが成功して見えてきた課題、割高なコスト・権限管理・カスタマイズ性、そして (特性やスキルセット的に)RDB 製品が適していたのに無理やり Firestore を採用したことによるデータ不整合。 その結果チーム内で Firebase を抜ける機運が高まるも、Firebase べっとりなアプリケーションすぎて移行しづらいといった問題に出会うかもしれません。 そのような場合に備え、Firebase の存在を隠蔽して開発することに挑戦してみましょう。 注意: Firebase を剥がしているときに「俺、次は絶対そうするわ」と感じたものを書いているだけであり、まだ実際にはこのパターンでプロダクション導入していません。 あくまで個人開発で試してみていけそうと思ったので、提案しますという体です。 また Firebase

                                                                  Firebaseの存在をフロントエンドから隠蔽するために
                                                                • 今から新規でAndroidアプリを書き始めるなら。 - wakwak3125's blog

                                                                  この記事は Android Advent Calendar 2016 2日目の記事です。 こんにちは。わくわくです。 現在お仕事で書いているアプリを新規で書き始めたのが2015年で、現在は2016年です。 そう、1年が経ちました。その頃から今まで書いてきて、今から書くならこんなライブラリや設計を採用するよ(したいよ) というのをまとめたいと思います。 これからAndroidアプリを書くけどどんなものつかっていけばいいんや〜?といった方の参考になれば幸いです。 すでにAndroid開発をされている方にとっては内容が薄く感じられることと思いますがご了承いただければと思っております…(予防線) (裏の目的としては自分の備忘録のようでもあったりします。) この記事では紹介しているライブラリや設計などに関しては深くは説明を書きませんが、参考になる資料などをまとめて行ければと思っております。 言語につ

                                                                    今から新規でAndroidアプリを書き始めるなら。 - wakwak3125's blog
                                                                  • Webアプリケーションの構成に関する予備知識 - Qiita

                                                                    自分の担当したWebアプリケーションを引き継ぐ際に、予備知識として説明したことのまとめ 注意事項 もともと明確に定義されていない概念や、簡単に説明するため正確さを犠牲にした部分が多い 間違っていることを前提に、疑いながら読むのがベター アプリケーションの層構造 アプリケーションを構成するオブジェクトには非常の多くの種類がある アプリケーションの(より良い)構成をオブジェクト単位で考えるのは難しいので、もっと粒度の大きい単位で考えたい アプリケーションをいくつかの層(オブジェクトの所属するグループ)に分割し、層単位でアプリケーションの構成を考える View層(ビュー層) レスポンスをクライアントにとって都合のいい形(i.e. 画面)に変換する層 View層のオブジェクトは Controller層のオブジェクトから利用される DomainModel層のオブジェクトを利用して、ユーザーに表示した

                                                                      Webアプリケーションの構成に関する予備知識 - Qiita
                                                                    • .NET アプリケーションのパフォーマンスとスケーラビリティの向上 - 第 5 章 「マネージ コ ード パフォーマンスの向上」

                                                                      Recommendations on how to design and develop custom applications using the Microsoft platform Each patterns & practices offering contains a combination of written documentation and re-usable source code. Many also include a reference implementation. As the guidance is being developed it is reviewed and approved by internal Microsoft product teams and by external customers and partners. This produc

                                                                        .NET アプリケーションのパフォーマンスとスケーラビリティの向上 - 第 5 章 「マネージ コ ード パフォーマンスの向上」
                                                                      • MacRuby: The Definitive Guide

                                                                        Thank You! Open Feedback Publishing System (OFPS) is now retired. Thank you to the authors and commenters who participated in the program. OFPS was an O'Reilly experiment that demonstrated the benefits of bridging the gap between private manuscripts and public blogs. Readers gained access to in-progress O'Reilly manuscripts and were able to communicate suggestions with the authors, follow others'

                                                                          MacRuby: The Definitive Guide
                                                                        • 実装クリーンアーキテクチャ

                                                                          最近何かと騒がしいクリーンアーキテクチャですが、丁度プロダクトで採用したところだったので折角なので情報共有ということで Qiita の初記事にしてみようと思います。 こちらの記事は GUI や CUI のアプリケーションを対象にしています。 Java コードの記事リンク:https://nrslib.com/clean-architecture-with-java/?preview_id=1263&preview_nonce=542ba7b70f&_thumbnail_id=1293&preview=true その他解説もしています。もしよろしければチャンネル登録をお願いいたします。 より実践的なコード(WEBアプリケーション): https://github.com/nrslib/itddd/tree/master/CleanLike YouTube での解説(WEBアプリケーション):

                                                                            実装クリーンアーキテクチャ
                                                                          • 2013年 Androidアプリ開発で使いたいライブラリ - Just posted a blog

                                                                            30億のデバイスのみなさん、こんにちは、ジャバです。 何の前触れもなく、2013年 Androidアプリ開発で使いたいライブラリを発表します。 JsonConverter => gson JSONRPCでサーバーサイドと通信を行うときに、毎回パーサーを書くのは面倒なので、JsonConverterを使いたくなります。 そこで開発ではgoogleが開発しているgsonを使っていました。 NamingPolicyやDeserializerの使い方を覚えれば、手でjsonのパーサーを書くより圧倒的に楽で、 Person person = gson.fromJson(json, Person.class); このように一行でjsonからオブジェクトに変換できるようになり、 String json = gson.toJson(person); 一行でオブジェクトからStringに変換することも出来ま

                                                                            • ひがやすを blog

                                                                              今週の土曜、9/24にSeasar Conference Finalを行います。 10年前に始まったSeasar Conferenceもいよいよ今度でFinalです。 お申し込みはこちら。 http://seasar.connpass.com/event/38679/ Seasar Projectの面白かったところって、開発方法論が盛り上がったところだと思うんですよ。 ステートレスなサービス + DTO vs Fatなドメインモデルみたいな。 マーチンファウラーをはじめとして、著名な人たちのほとんどが「ドメインモデル推し」の中、僕は、「ステートレスなサービス + DTO推し」だったからね。S2Daoは、このために作ったようなものです。 あの開発方法論の議論に、かなりの人が参加したり、自分で考えたりしたでしょう。それが、面白かったところです。みんなが自分の事として考えたから。そんな難しい話で

                                                                                ひがやすを blog
                                                                              • Scalaにおける最適なDependency Injectionの方法を考察する 〜なぜドワンゴアカウントシステムの生産性は高いのか〜 - Qiita

                                                                                DIを使わない状態ではUserRepositoryというインターフェースが定義されているのにもかかわらず、UserServiceはUserRepositoryImplの参照も持っていました。 これではせっかくインターフェースを分離した意味がありません。 UserServiceがUserRepositoryインターフェースだけを参照(依存)するようにすれば、具体的な実装であるUserRepositoryImplの変更に影響されることはありません。 この問題を解決するのがDIの目的です。 それではDIのインジェクタを加えて、上記のクラス図を修正しましょう。 謎のインジェクタの登場によりUserServiceからUserRepositoryImplへの参照がなくなりました。 おそらくインジェクタは何らかの手段でサービスであるUserRepositoryImpl(Dependency)をクライアン

                                                                                  Scalaにおける最適なDependency Injectionの方法を考察する 〜なぜドワンゴアカウントシステムの生産性は高いのか〜 - Qiita
                                                                                • 上松瀬朗良のえんぎがよいブログ – 上松瀬朗良のえんぎがよいブログです。

                                                                                  スマホの普及で、さっぱりサイトが身近になったこの世ですが、その便利な文化の方策は恋愛とのコンタクトにも使われています。男性はレディースと、女性はパパと、それぞれ構成から真剣な交際まで意欲は様々です。しかし昨今コンタクト関わりサイトのユーザに多いのが、誠に女子です。いつぞやコンタクト関わりサイトというと、初々しい一人暮し女性が年上パパとデートするために利用するフィーリングがありました。しかし現在は、すでに結婚してある女子が積極的に新コンタクトを求めています。では、何でとっくにパートナーがいる女子がコンタクトを突きつけるのでしょうか。それは女子特有の単独とも言われています。恋愛成婚の場合、恋愛消息筋はうれしいのですが、成婚という場所を向かえてしまうと、これから物足りない気持ちになる女性がいるようです。女房と華やかに試合に出かけていた妻年代から、ファミリーや育児という地味な生活に切り替わり、昔の