コレクターのためのiPhoneアプリ「Showcase」
happy_ryo
- Audience level:
- Intermediate
- Category:
- Embedded Systems and Mobile / 組み込み機器・携帯アプリ
Description
デジタルショーケースアプリ「Showcase」
本アプリは、コレクターが収集しているコレクションのデジタル化とソーシャルネットワーク化による、
「究極のコレクション自慢アプリ」を目指して開発を進めているアプリです
自宅のコレクションをスマホのカメラで撮影し、簡単に自由なレイアウトで、
デジタルShowcaseに自分のコレクションを陳列することができ、
更に、Showcaseに付与できるハッシュタグをベースとして、
ユーザ同士でコミュニケーション機能できる搭載しており、
お互いのコレクションを軸にしたコミュニケーションを
楽しむことができるiPhoneアプリです。
サーバーサイドで自社のアプリケーションとしては初めて Python を採用し開発を行いました。
Abstract
# Showcase と Python
## 主に利用している箇所
認証や、各種 API 等、サーバーサイドの部分を全て Python を用いて開発しました。
## 主に利用したライブラリ
* Python 2.7 系
* Django 1.6.2
* boto 2.28.0
* South 0.8.4
* bpmappers 0.7
* python-social-auth 0.1.23
## 開発の進め方
Python に関しては全くの初心者だった為、プロジェクト進行中に、良くない書き方やより良い書き方を学び、リファクタリングを行う頻度が高くなる事が予測されたため、リファクタリングを安全に行うために、テストをしっかり用意する事を重要視しました。
Django にはリクエストのテスト用に Client が用意されて居るため、実際に API との通信が行われた時のテストを書くのが非常に簡単な事に驚きました。
また、アサーションの種類に関しても標準で複数の物が用意されており、今まで経験した PHP や Objective-C
よりも、テストが書きやすい印象を持ちました。
## 所感
Pyton で開発するのははじめてでしたが Django
を含め、ライブラリ群の強力なサポートにより、思った以上にスムーズに開発を行う事が出来。記述もしやすく、ソースコードの見通しも良い為、非常に楽しく開発する事が出来ました。
このプロジェクトを通して、小規模なツールを書くときの言語を PHP から Python へ移行する事にしました。