タグ

softwaredesignに関するksagaのブックマーク (14)

  • 多言語対応サービスを開発する際に気をつけるべき、4つのポイント : LINE Corporation ディレクターブログ

    こんにちは。Cureチーム、Nobeです。 NHN Japanではこの度、12言語対応コスプレフォトシェアリングサイト、『WorldCosplay』をリリースしました。 『WorldCosplay』では、Facebook・Twitterのアカウントでログインやコネクトが可能な点をはじめ、多言語対応を意識して機能やインターフェイスを開発しました。 日はその中で得られた知見を元に、多言語サイトを開発するにあたりディレクターが「目指す・用意する・気をつける」べきことを翻訳業務にフォーカスしてお伝えしたいと思います。 <目次> 対応言語を選ぶ多言語サイトの為の設計方針翻訳すすめるにあたっての準備膨大な固有名詞を多言語化する為の機能 対応言語を選ぶ まずは立ち上げようとしているコンテンツが、どの国においてニーズが強そうかの目安をつけます。 既存コンテンツを多言語化する場合、事前に国別ユーザー数の統

    多言語対応サービスを開発する際に気をつけるべき、4つのポイント : LINE Corporation ディレクターブログ
  • WordPressでブログじゃないWebサイトを作るときのいろいろ(サンプル付き)

    とても長い記事になってしまいましたが、WordPress を使って、コーポレートサイトのサンプルを作ってみました。WordPress はブログだけじゃなくて、色んな Webサイトが作れますよね!今回は、私が WordPress でサイトを作る時にやっていることをまとめてみました。 今までこのブログの中で、いろいろな WordPress の Tips を書いてきました。でも WordPress を使った Webサイトの作り方そのものは、今まで書いた事がありませんでした。そこで今回は、 WordPress を使ってブログじゃない Webサイトをまるごとひとつ作って、私なりの作り方をまとめてみました。 今回のサンプルサイトでは、WordPress の固定ページ機能はもちろん、カスタム投稿タイプやカスタムタクソノミー(カスタム分類)を使って作っています。 ページを表示する為に使っているテンプレート

  • Java開発を変える最新の設計思想「Dependency Injection(DI)」とは:ITpro

    「DIする」,「インジェクション(注入)する」──新しい技術に敏感なソフトウエア開発者たちの間で使われている言葉である。DIとは,「軽量コンテナ」を実現する新しい設計思想Dependency Injection(依存性注入)の略称である。同じ概念をIoC(Inversion of Control,制御の反転)と呼ぶ場合もある(詳細は後述)。「DIする」と言えば開発者の間では通用するぐらいに,この設計思想は注目されているのだ。 DIが注目される理由は簡単だ。ソフトウエア開発者の開発サイクルを大幅に改善するからだ。筆者が司会を担当した「軽量コンテナ」に関するパネル・ディスカッション(注1)では,DIを適用した軽量コンテナ「Spring Framework」のおかげで「睡眠時間が確保できるようになりました」と複数のパネリストが真顔でコメントしたほどである。DIは,それだけ有効な技術なのだ。 注1

    Java開発を変える最新の設計思想「Dependency Injection(DI)」とは:ITpro
  • Inversion of Control コンテナと Dependency Injection パターン

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

  • 「最強最速アルゴリズマー養成講座」関連の最新 ニュース・レビュー・解説 記事 まとめ - ITmedia Keywords

    最強最速アルゴリズマー養成講座: そのアルゴリズム、貪欲につき――貪欲法のススメ アルゴリズムの世界において、欲張りであることはときに有利に働くことがあります。今回は、貪欲法と呼ばれるアルゴリズムを紹介しながら、ハードな問題に挑戦してみましょう。このアルゴリズムが使えるかどうかの見極めができるようになれば、あなたの論理的思考力はかなりのレベルなのです。(2010/9/4) 最強最速アルゴリズマー養成講座: 病みつきになる「動的計画法」、その深淵に迫る 数回にわたって動的計画法・メモ化再帰について解説してきましたが、今回は実践編として、ナップサック問題への挑戦を足がかりに、その長所と短所の紹介、理解度チェックシートなどを用意しました。特に、動的計画法について深く掘り下げ、皆さんを動的計画法マスターの道にご案内します。(2010/5/15) 最強最速アルゴリズマー養成講座: アルゴリズマーの登

  • オーダーを極める思考法

    プログラムの実行に掛かる時間を把握しておくのは、プログラミングを行う上で基的な注意点です。今回は、計算量のオーダーについて学びながら、TopCoderのMedium問題を考えてみましょう。 プログラムの実行時間 業務としてプログラミングをされている方には釈迦に説法かもしれませんが、プログラムの実行に掛かる時間を把握しておくのは、プログラミングを行う上で基的な注意点です。そしてこれは、TopCoderなどのコンテストでプログラムを組む際にもよく当てはまります。通常、こうしたことは感覚的に理解している方がほとんどだと思いますが、具体的にどれくらいのループを回すと何秒掛かる、といった基準を持っている人は少ないのではないでしょうか? 非常に基的なことですが、プログラムの実行時間に関して再確認しておきたいと思います。 TopCoderの制限に関して TopCoderでは、実行時間およびメモリ使

    オーダーを極める思考法
  • さらに分かっておきたいトランジスタの種類 − @IT MONOist

    ECサイトを題材にソフトウェア開発の全工程を学ぶ新シリーズ「イチから全部作ってみよう」がスタート。シリーズ第15回は、ここまで作成してきた要求仕様書に対するテストの第1段階となる「セルフチェック」について説明する。

  • 矢沢久雄の早わかりGoFデザインパターン(1) | 日経 xTECH(クロステック)

    今回は、パターンを1つだけ紹介します。「Mediatorパターン」です。GoFでは、それぞれのパターンの「目的]「背景」「効果」などが明示されています。私も、ちょっと真似をしてみましょう。複数のオブジェクトを組み合わせてプログラムの機能を実現するという目的において、オブジェクト間の関連がゴチャゴチャになってしまうという背景(問題)があり、Mediatorパターンの採用によって関連をキレイに整理できるという効果があります。説明だけでは、何のことだかわからないと思いますので、具体例をお見せしましょう。 図1[拡大表示](1)をご覧ください。これは、UML(Unified Modeling Language、ユーエムエル)と呼ばれる表記法で記述されたプログラムの設計図です。UMLでは、四角形の中に下線付きで名前を書いてオブジェクトを表し、関連のあるオブジェクトを矢印で結んで示します。ここで関連

    矢沢久雄の早わかりGoFデザインパターン(1) | 日経 xTECH(クロステック)
  • サブシステムの「なに?」「なぜ?」「どうやって?」(後編) サブシステムとはモデリング概念である

    サブシステムの「なに?」「なぜ?」「どうやって?」(後編) サブシステムとはモデリング概念である:The Rational Edge (23) 4.サブシステムの使用方法と実装方法 サブシステムとは何か、なぜサブシステムを使用すべきなのかをこれまで説明してきたので、次にサブシステムの実装方法と使用方法を考えてみよう。まず初めに、サブシステムの内部をモデリングする方法を説明する。このモデリングを行うには、「サブシステムの実現」と呼ばれるモデリング要素のコラボレーションを使用する。 サブシステムの実現 サブシステムの内部を設計するときにやらなければならない作業は、特定の振る舞いを実現するためにコラボレーションする設計要素の集まりを定義することである。これはユースケースの設計作業とよく似ているため、ユースケースの設計と同様のアプローチを利用できる。表は、これらの類似点を示している。 ユースケース

    サブシステムの「なに?」「なぜ?」「どうやって?」(後編) サブシステムとはモデリング概念である
  • サブシステムの「なに?」「なぜ?」「どうやって?」(前編)

    現在流通している「コンポーネントベース開発」に関する書籍群の多くは、システム全体を(交換可能な)ユニットに分割する方法を示しているにすぎない。つまり、コンポーネントベース開発というのは、“そのようなものである”との認識が一般的になっているようであり、稿のタイトルも単に「サブシステムを活用したコンポーネントベース開発」としようかと思ったくらいだ。 多くの書籍でコンポーネントと呼ばれているソフトウェアの部品(ユニット)は、UML(Unified Modeling Language)の世界ではサブシステムと呼ばれている。いずれにせよ、意味は同じである。確かに、UMLにおけるサブシステムの概念は、モデリング(という作業、あるいはモデリングを熟知したエンジニア)にとっては非常に有用な概念だと思う。しかし、一般的なエンジニアは、サブシステムの使用方法さえ知らず、そもそも、サブシステムを活用すること自

    サブシステムの「なに?」「なぜ?」「どうやって?」(前編)
  • モデリング・リファクタリングのススメ

    ビジネス・モデリングなどのモデリングを始めてはみたものの,なかなか上手くモデリングできない…そんな悩みを持っている方も多いと思います。そこで,今回はモデリングを上達させるための「モデリング・リファクタリング」という方法をご紹介します。 モデリング・リファクタリングとは 「モデリング・リファクタリング」とは筆者が考えた造語です。(すでに誰かによって提唱されているかもしれませんが)筆者が発明したものではなく,モデリングに慣れている方なら自然とやっているようなテクニックです。 もともと「リファクタリング」というのは,小さなプログラム(例えばクラス)を作るときに,プログラムの外側の仕様(使われ方)は変えずに,中身の構造だけを変えることです。 なぜそんなことをするかというと,とりあえず仕様は満たしていたとしても,中身が汚い設計のままでは,変更に弱く,保守性も悪いからです。そこで,小さなプログラムを作

    モデリング・リファクタリングのススメ
  • 63歳の世界的デザイナーが挑む、新しきウェブデザインの世界 - CNET Japan

    航空の鶴を使ったマーク、ティファニーの広告デザイン、楽器メーカーであるナカミチのコンセプト設計――これらのすべてに携わった日人のデザイナーを知っているだろうか。米国ニューヨークに拠を置くKatsuji Asada氏がその人だ。世界的なブランドのデザインやアートディレクションを数多く手がけるAsada氏が、新たな活躍の場としてウェブの世界に飛び出した。 インデックス・ホールディングスとサイボウズの共同出資会社であるZINGAが開発したビジネスパーソン向けのコミュニケーター「Zinga」。PCと携帯電話の両方に対応し、メールや電話などビジネスパーソンが業務に必要な連絡をすべて一カ所で取れるようにしたサービスだ。Asada氏はこのサービスのアートディレクターを務めている。 ZINGA代表取締役社長の大森洋三氏と旧知の仲であったことから実現した今回の企画は、インターネットサービスのデザイン

    63歳の世界的デザイナーが挑む、新しきウェブデザインの世界 - CNET Japan
    ksaga
    ksaga 2007/05/17
    プロダクトデザインという考え方
  • UMLモデルをどうやってC言語に落とし込むか(1/3) ― @IT

    組み込みソフトウェア/ハードウェア開発における技術力の向上、改善・最適化などを幅広く支援する“組み込み開発エキスパート”のための情報フォーラム

  • 組み込み開発フォーラム - MONOist

    世界各国でAI関連規制の整備が進む中で、AIシステムの開発に求められるのが「検証(Verification)」と「妥当性確認(Validation)」から成る「V&Vプロセス」である。特に、自動車や航空宇宙の分野を中心に高い安全性や高い信頼性が重視されるセーフティクリティカルなシステムにAIを導入する際に重要な役割を果たすとみられている。

  • 1