サービス終了のお知らせ NAVERまとめは2020年9月30日をもちましてサービス終了いたしました。 約11年間、NAVERまとめをご利用・ご愛顧いただき誠にありがとうございました。
重要なお知らせ: この記事で公開した情報は,AndroidのMVCフレームワーク「Android-MVC」の機能の一部として取り込まれました。 より正確な設計情報や,動作可能な全ソースコードを閲覧したい場合,「Android-MVC」の公式ページより技術情報を参照してください。 AndroidのMVCフレームワーク - 「Android-MVC」 http://code.google.com/p/android-mvc-... マルチスレッドの処理を,シングルスレッドであるかのようにコーディングしたい場合がある。 1番目の非同期タスクの処理結果を,2番目の非同期タスクが利用する場合など。 つまり,並列化されたタスクを,取扱い上は「逐次化」したいのだ。 まずは手っ取り早く,やりたい事をUMLで表現しよう。 「非同期タスクの連鎖」を実装する際, しばしば下記のような「コールバックの入れ子」が生
今回は、mmap(2)で共有メモリを実装すると処理能力の向上が見込めること、そしてその実装方法にはいくつもの選択肢があることを紹介し、次回以降の比較につなげていく。(編集部) 共有メモリ活用方法のバリエーション 第5回では、プロセス間でデータをやりとりする方法としてパイプpipe(2)と共有メモリmmap(2)の双方を取り上げ、それぞれの利点・欠点について紹介した。 パイプpipe(2)を使う方法は実装がシンプルだし、概念としても分かりやすい。どのタイミングでロックがかかるかも明確だ。一方、小さいサイズのデータを何度もやりとりするようなケースでは、大量のread(2)/write(2)システムコールが発生し、効率が悪いことも紹介した。 共有メモリmmap(2)を使う方法は、pipe(2)/read(2)/write(2)と比べて実行速度の面で利点がある。共有メモリを使うと、それぞれ独立した
コード リーディング(code reading)とはソースコードを読むことです。コード リーディングについてもう少し詳しく知りたい人は「 コード リーディングについて 」をご覧ください。 本書では筆者が「あのアプリケーションのあの機能はどうやって実現されているのか?」と思ってソースコードを読んで発見したことや奮闘の記録を掲載しています。題材とするソフトウェアはオープンソースで開発されているもので筆者の好奇心によるものです。 文書はプログラミング言語別に分類しています。
はじめに ソースコードは設計であり、コードの記述は品質に直結するのは言うまでもない。ちなみに、プログラマにとって特に重要なのは保守性だ。コードは書いた直後から保守対象となるからだ。コードは要求文書の範囲で動けばいいと思っている人がいれば今すぐ、ソースコードをコピペして100klに増えるプラグインがいつの間にかインストールされる呪いをかけてあげよう。幸い、ここを読んでいる人にはそんな人はいないだろうと思うけれども。 ということで、コードの品質を下げる要因、すなわちシステム全体の品質を下げる要因となり、かつ使われやすいアンチパターンを挙げ、対策を検討していくことにする。対象は以下: 出力パラメータ 処理状態返却 意味のある配列 無意味な初期化 多すぎるtry-catch 暗黙の順序 コンパイラ警告の無視 過剰なコメント e.printStackTrace() 出力パラメータ メソッドの引数にオ
目次 第1章 ソースコードを読む 第2章 汎用ライブラリ Jakarta Commons Logging/Pool 第3章 テスティングフレームワーク JUnit 第4章 Webアプリケーションフレームワーク Struts 第5章 統合開発環境 Eclipse 第6章 Webアプリケーションサーバ Apache Tomcat 第7章 テンプレートエンジン Jakarta Velocity 第8章 DIコンテナ Spring Framework 第9章 データベースエンジン HSQLDB 第10章 ソースコード読解の手法 付録A Mavenによるビルド 付録B ソースコードのライセンス 内容紹介(「はじめに」より) 本書はJava言語で書かれたオープンソースプロダクトを対象とし、そのソースコードを読解します。単にソースコードの断片を題材にプログラミングのテクニックを解説するのではなく、一歩踏
Doom や Quake といったゲームで知られる id Software は、そのゲームエンジンのソースコードを、それが旧世代になったところで定期的に GPL で公開してきたが、昨年11月には Doom 3 のソースコードを GitHub で公開している。 そして、それからおよそ半年経ち、そのソースコードを解析した全五部作(+ジョン・D・カーマックのインタビュー集)のページが公開された。 Doom3 Source Code Review: Introduction Doom3 Source Code Review: Dmap preprocessing Doom3 Source Code Review: Renderer Doom3 Source Code Review: Profiling Doom3 Source Code Review: Scripting VM Doom3 Sou
ARMアーキテクチャー用オープンソースソフトウェアの最適化などを手がけるエンジニア組織 LinaroがAndroid 4.0.4の処理性能の高速化に成功したというニュースが伝えられています。 LinaroのBernhard Rosenkränzer氏が香港で開催された同組織のミーティングにおいてデモを披露したそうです。デモではTI OMAP 4430を搭載したPandaboardを2つ用意し、片方にGoogle提供のAOSP版Android 4.0.4を、もう一方にLinanoがビルドしたAndroid 4.0.4をインストール。Google Playストアで公開されているベンチマークアプリ 「oxbench」の「3D」を実行したところ、AOSP版は30fps、Linaro版は60fpsという結果が得られたそうです。Linaro版はソースコードに手を加え、独自のツールチェインを使用してビル
Python + Flaskでサンプルアプリを書いてfluxflexにデプロイしてみたら、思いの外使い勝手が良かった。 fluxflex fluxflexとは、クラウドホスティングサービスのひとつ。 Platform as a Service、略してPaaSなどと呼ばれてるサービス。 競合するサービスにdotcloud, Heroku, GAEなどが存在してる。 複数の言語(いまのところPHP, Ruby, Python, Perl, Node.js, Haskell)が利用できて、フレームワークも好きなものが使えて、FastCGIで動く。 個人的な印象で言えば、dotcloudに近いものを感じる。 dotcloudは、規定のクライアントをインストールして、基本コンソールでデプロイしたりなんやかんやする形だけど、fluxflexは、Githubにソースコードが存在していたらボタン1つでデプ
$Id: readingcode.html,v 1.13 2003/12/06 00:01:08 aamine Exp $ 2006-05-02 gonzui 追加。thanks: 冨山さん 2003-12-03 ltrace と sotrace を追加 2003-12-03 ツールのところに DDD を追加。thanks: 和田さん 2003-05-27 VCG, SXT などについて追加。thanks: 梅沢さん 2003-05-27 これもすっかり忘れていた strace, ktrace, truss, etags などについて追加 2002-08-30 すっかり忘れていた ctags を追加 2002-07-07 匿名希望さんからメールでいただいた情報を追加 (動的コールグラフ) 2002-06-13 日記経由でいただいた意見をもとに文章を追加。thanks: 柳川さん、まつもとさ
このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 日本のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 レジストラ「GMO Internet Group, Inc. d/b/a Onamae.com」のシェア値を集計。 2023年10月時点の調査。
前回の復習 前回は、アプリの設定画面の作り方に関して学びました。 具体的には、 XMLによる設定画面の作り方 設定画面から設定値の保存方法 の説明を行いました。 Android OSには、設定画面を簡単に実装できる枠組みが用意されており、値の保存も自動的に行ってくれるので、設定画面を作る場合は、この枠組みを上手く活用してアプリを仕上げてください。 アプリのデバッグ方法 アプリの開発段階では、不具合の修正を行ったり、パフォーマンスの改善を行うことがあります。AndroidのSDKには、効率良くデバッグやパフォーマンスチューニングが行えるツールや仕組みが用意されているので、今回は、それらをご紹介します。 最もベーシックなLogCat バグの修正を行う場合、現状の動作状況を把握したいことがあると思います。 このとき、ソースコード中にブレイクポイントを設定して、ステップ実行をしても良いのですが、頻
英語でこの記事を読む(Reading in English) ・4/5 追記: 好きなプロジェクトのコードが読めるPocketCodeをリリースしました。 クリスマスも当然の如く開発充なはむへいです! 僕と同じくクリエイティブで孤独なXデイを過ごす500万人のエンジニアを応援する為に 『CodeLibrary』というOSS(オープンソースソフトウェア)のコードをスマフォ上で読めるアンドロイドアプリをリリースしました! きっかけ 「OSSも読まないエンジニアって...」という記事を読んで、慌ててコードリーディングを始める 移動中にSNSを見る時間を、コードリーディングに充てたい スマフォでソーシャルにコードリーディングが出来るプラットフォームを作ろう! ベータ版ができたから公開するお^^ ←イマココ どんなアプリ? ちょっとした空き時間に、スマートフォン上でソースコードが読める、アンドロイド
2010-11-24 05:56:00 GMT 某所で『プログラマが読むべき10冊』というのが公開されてましたが、 どうみても中身が重いし、バックグラウンドの知識が必要なものが多いと感じたので、 即、血となり肉となる本を独断と偏見でまとめてみました。 ジャンルごとの順番です。どれも読むべきだと思うので敢えて順番はつけません。
JavaScript対応のIDEをまとめてみたの続きのようなもので、その中で紹介していたWebStormが素晴らしいので別途紹介。 WebStormはHTML(5)+CSS+JavaScriptに対応してるIDEで、Windows, Mac OS、Linux上で動作します。 有料のソフトウェアですが、オープンソースライセンスがあったり体験版は45日間使えるのでとりあえず試してみましょう。 この記事の続編(アップデート版)を書きました 特徴 とにかく膨大な機能が載ってるので全てを紹介するのは無理があるため、凄いと思ったところを掻い摘んで紹介。 主にJavaScriptを書くエディタとして使っていますが、CSSやHTMLも普通のIDEより書きやすいです。 基本的にWebStormで日本語に関する問題は少なめです。一部IMEの変換候補が出てくる場所がずれたり、プラグインで日本語がダメだったりする
2010/09/26(日) に京都で Kanasan.JS jQuery コードリーディング #2 が行われる(告知ページ)。みんなで jQuery のソースコードを読むイベントで、今回が2回目だ。参加者募集中です。 jQuery はファイル1つだけのライブラリなのですごい環境とかもってなくても大丈夫なんだけど、読むうえで参考になるサイトとかをまとめてみた。この辺の準備をしておくと理解が深まると思う。 ソースコード http://code.jquery.com/jquery-1.4.2.js http://github.com/jquery/jquery まずは jQuery のソースコードを取ってこないと始まらない。今回はバージョン 1.4.2 を使用する。jQuery の公式サイトから圧縮していないコードをダウンロードしよう。 それと、jQuery ソースコードは Git で管理されて
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く