40歳からのキャリアチェンジ

20代はエンジニア・PM、30代はWeb系エンジニア向けのキャリアアドバイザー。40代の今はフリーランスで開発含めて色々やってます。技術ネタとしてはRuby/RailsとJavaScript関連あたり

Titanium Mobile

035-iPhone側のページング処理考える前に記事一覧→記事詳細表示の実装を行う

記事一覧から、記事詳細情報を表示する Sinatraで生成したJSONをxhrで読み込み→TableViewで記事一覧生成→clickイベントで、記事詳細情報に画面遷移までやっと出来た! twitterより とtwitterでつぶやいたように下記のような画面遷移する処理までは出来てまし…

033-今度はUnable to parse JSON stringのエラーにはまる

Unable to parse JSON string MongoDBに格納した情報を、Sinatra + mongoidでJSON形式で出力するところまでは出来たので、これを読み込むような処理をするためにこんなコードを書きました var Blogger = function(){ this.httpclient = Titanium.Network.cre…

030-Google Readerのスターアイテム一覧を取得する

しばらくサーバーサイドの開発してて、Titanium MobileをいじりたくなってきたのとGoogle Readerから情報取得するコードをちょっと見直していたので、試しにGoogle Readerのスターアイテム一覧を取得するコード書いてみました。 //google_account.js var Goo…

025-ついつい脱線してGoogleReaderのライブラリ作り始めた

会社の方のブログでWindowsでもGoogleReaderでスターを付けたエントリをまとめてEvernoteへ自動クリッピング出来そうですというのを書いたのですが、そのエントリのコメントでGoogleReader→Evernote連携が出来ないというコメントがあったので、そちらのソー…

022-ブロガー選択→記事一覧表示UI

昨日の朝は、大学の友達の依頼で、人と会っていたので、ほとんどコード書けなかった。*会う直前に、相手の所属の会社がわかって、事前の予想とおり保険の勧誘だったので、自分が現在加入している保険契約の内容、うちの奥さんが以前、保険関連の事務業務し…

021-ブロガー一覧からブログ記事に画面遷移するUI

昨日、書いたエントリで 「ブロガー情報を引き継ぎつつ、そのブログエントリの一覧を生成ってどうやるんだろう?」 という部分について、一旦Macから離れて、画面のイメージと書いたコードを印刷して対応関係を整理してみました。 WindowとかTabGroupとかの…

020-TableView活用して具体的な画面イメージ作る

前回TableView使い始めて徐々に理解できるようになってきたので、もう少し具体的な画面を作ってみることにしました。donayamaさんがまとめられているこちらのWikiの内容がすごく参考になったので基本これを活用してこんな感じで作ってみました。ブロガーをク…

019-TableView使ってUI部分のサンプルを作る

前回書いたエントリ等でTitanium.Yahoo.yql使わない処理について検討すると書き、なんとなく目処がついたのですがWeb上からのデータ取得部分の処理ばっかり考えていて、気分転換したくなったので、TableView使ってUI部分のサンプルを作ることにしました。Kit…

018-JavaScriptの変数のスコープについて

年末年始は、なるべく育児と家事をしようと思っていたのと、ファイルサーバとして利用していた旧MacbookのHDDがクラッシュして自宅のネットワーク環境を再整備するのに時間をとられて開発の時間があまり取れませんでしたが、今日から再び開発再開していこう…

017-YQL

ブログ本文はHTTPClient使えば取得できるのはわかったのですが、その中で必要な箇所だけ抜き出すとなると面倒かなと思っていました。 ただ、なんとなくYQL使えばいけそうかなーと漠然と思っていたのと、前回のエントリを読んでいただいたdonayamaさんからア…

016-HTTPClient使ってブログ本文を取得する実装考える

あすなろブログは執筆者別にRSSフィード生成してないため執筆者の最初のエントリを基点にして、次のエントリのリンクの有無を確認して・・という実装をもりこまないといけません。例えば横田さんの場合だと 最初のエントリである「さあ、はじめよう」のURLは…

015-Titanium Mobileでお手軽に使えそうなORMのjoli.js

ここ最近ずっとJazzRecordを検証してきたのですが前回書いたように'this.result' [null] is not an object. at jazz_record.jsのエラーではまっていたのと、このエラーの原因探る中でたまたまjoli.jsを見つけたのでこちらを試してみることにしました。 joli.…

014-JazzRecord(ActiveRecord for JavaScript (ORM)検証その2

JazzRecord使う下準備 githubにあるbuildされたやつを自分のプロジェクトのResources配下にコピー 自分はユニットテストにQUnitを使っている(詳しくはこちら)ので、tests_to_run.jsに以下を記述 Titanium.include('test/test_jazzrecord.js'); JazzRecord…

013-JazzRecord(ActiveRecord for JavaScript (ORM)検証その1

JazzRecord(ActiveRecord for JavaScript (ORM)のソースは自分の中では結構読み易いから、自分が作っているアプリで参考になりそうなので気がしてます。JazzRecordのページには A JS ORM for Google Gears, Adobe AIR, and Appcelerator TitaniumJazzRecord …

012-ユニットテスト(データベース接続)

こんなテストを準備して実行したらexpected: "199/14992.html" result: "101/14977.html"という感じでテストにパスないことが判明 Ti.include('database.js'); var blogDB = new blogDB(); module("database connection"); test("unit test for database con…

011-ユニットテスト実行時の別ファイルからオブジェクトを読み込む処理にはまる

インスタンス化に失敗 ユニットテストでQUnitを使うというの書きましたがあの時のテストコードは実際の開発をする上ではあまり意味をなさないものだったので本格的にテストコード書き始めました。 こんな感じのテストコードを準備 //db_connection.js module…

010-ターミナル上でTitaniumのプロジェクト実行

Titanium Mobileでアプリ開発のネタもこのエントリが10個目。手作業だけどこうやって連番ふっておくことで作業記録をしっかりとまとめようというモチベーション維持につながっているように感じます。さて本題のターミナル上でTitaniumのプロジェクト実行の話…

009-TitaniumのユニットテストでQUnitを使う

Titaniumでユニットテストがものすごく参考になったので、こちらを読みながらひとまずQUnitというものを使うことにしました。 準備 Titaniumから利用しやすいものをlukasoさんという方がいて、ソースがgithubにあったのでダウンロード ダウンロードしたもの…

008-データベース接続処理は別ファイルに!

後々のことを考えてUI部分とデータベース接続処理のコードを分けてみた sqlite3のデータベースから、日本語が含まれるデータを読み込み表示させる処理についてはやっとわかりました。今後開発を進めていく中でこういうデータベース接続の部分とUI部分のコー…

007-Mac標準で利用できるsqlite3を使ったデータベース接続処理はこう書く

再度問題点を整理 昨日書いたエントリで 日本語が含まれるsqlite3のデータベースからデータを読み込む方法について書きたい と最後書きましたが、とりあえず現状の問題点を整理 出来ていること sqlite3に日本語のテストデータを登録するまでは出来ている。 T…

006-Mac標準で利用できるsqlite3を使ったDB処理

Unit Testについて書こうと思っていたのですが、DB接続処理で所々はまっているのでそちらについてしばらく触れておきます。 Mac標準で利用できるsqlite3でデータベースの準備 Mac OS X. 10.6 Snow LeopardでSQLite3を動かしてみたよ。のページを参考にしてま…

005-Project creation error:Error creating projectは解決

解決までの流れ 昨日書いたProject creation error:Error creating projectのトラブルは Android SDKダウンロード&ZIPファイルを解凍。 解凍したフォルダを「android_sdk」とリネーム。【第58回】MacでGoogle Android(その1)をとりあえず参考にして/De…

004-Titaniumの新規プロジェクト作成時に「Project creation error:Error creating project」が出てはまる

このエントリでiOS Developer ProgramのActivation失敗について触れましたが、Appleのサポート窓口に問い合わせて手動でActivationしてもらって無事にそちらの作業は完了しました。 Project creation error:Error creating project? 上記のActivation作業と…

003-iOS Developer Program?

iOS Developer Program? この週末にMacbookAirのクリーンインストール&必要アプリのインストールを完了させました。Xcode & iOS SDKも最新のものをインストールして、これでTitaniumでアプリが作れると思って早速起動しました。起動した画面を見て、「App i…

002-Titanium Mobileの環境構築

Titanium Mobileの環境構築と思ったら・・・ TitaniumでiPhoneアプリ開発しようと思ったけど、冷静に考えたらiPhoneSDKインストールしてなかったので、まずはSDKのダウンロード・・思ったら、iOS SDK 4.xは、Snow Leopardじゃないとダメなんでしたね。Snow L…

001-Titanium Mobileでアプリ開発をはじめる

最終的につくろうとしているアプリ 会社のほうで書いているあすなろブログをオフラインでも読めるためのリーダー あすなろブログでは、執筆者ごとのRSSフィードが無く、読み手側からすると執筆者ごとに記事が読めたほうがありがたいはず つくろうと思ったき…