You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
労力をあまりかけずにアプリを開発したり、クオリティの高い UI を実現したりするためには、ライブラリは欠かすことができないものです。iOS アプリを開発するときにも、ライブラリを使用することがよくあると思います。 この記事では、iOS のライブラリを探すときに気をつけていることと、探すときに便利なサイトを紹介します。 ライブラリを探すときの2つのポイント ライブラリを探すときに、最低限これだけは押さえておきたい項目を2つ紹介します。 評価 これは Github についている Star や Watch の数で判断しています。やはりこれらの数の多いライブラリの方が、拡張性が高くバグが少ないものが多いです。しかし、新しくリリースされたライブラリなどはこれに当てはまらないので、注意してください。 最終更新日 2、3年前のライブラリだと ARC に対応していなかったり、新しい iOS のバージョンに
Code, Creatively. C4 is an open-source creative coding framework that harnesses the power of native iOS programming with a simplified API that gets you working with media right away. Build artworks, design interfaces and explore new possibilities working with media and interaction. Getting Started Install C4 Download the C4 installer to get up and running with C4 right away! Learn the basics of C4
1 APIKitとは Yosuke Ishikawa氏 作成のAPIKitは、比較的新しいHTTPクライアントです。 https://github.com/ishkawa/APIKit Swiftは、タイプセーフな言語ですが、APIKitは、このタイプセーフの利点を最大限に発揮していると思います。 動作条件は次のとおりです。 Swift 2.1 Mac OS 10.9 or later iOS 8.0 or later watchOS 2.0 or later tvOS 9.0 or later また、特徴としては、次のようなものが挙げられます。 エンドポイントごとにクラスを定義 パラメータなどを型で明確に制限できる(Enumも利用可能) レスポンスが、成功・失敗の2値となる レスポンスの型を定義することができ、アンラップが不要(エラー時はNSError) それでは、実際に使用してみたよう
UTI UTI とは Uniform Type Identifier のことで、iOS や OS X の世界で、ファイルなどの種類を表すために用いられる文字列です。 UTI の実例として、画像一般を表す public.image や、そのサブタイプで JPEG 画像を表す public.jpeg などがあります。iOS や OS X で利用されるほとんどのファイル形式には対応する UTI があり、例えば Keynote ファイルは com.apple.iwork.keynote.key などとなります。もちろんサードパーティも例外ではなく、Adobe Photoshop のファイルは com.adobe.photoshop-image となり、Microsoft Word の docx は org.openxmlformats.wordprocessingml.document です。 i
こんにちは。アプリケーションエンジニアのid:sakaharaです。 この記事ははてなエンジニアアドベントカレンダー2014の20日目です。 昨日はid:wtatsuru によるはてなにおけるサーバリソース可視化とMackerelでした。 今日ははてなのiOS開発で利用しているオープンソースのライブラリやサービスも含め、開発をよりスマートにしてくれる様々なものを紹介したいと思います。 パッケージ管理 CocoaPods (MIT License) まずライブラリ管理をするための管理ツールとして欠かせません。 最近ではSwiftに対応したCarthageも登場していますが、CocoaPodsのSwift対応版の開発も進んでおり そのまま使い続けるのもよいと思います。 ライブラリ AFNetworking (MIT License) 改めて紹介する必要はないほどの定番のHTTPネットワーク通信
Swift で使えるオープンソースライブラリ 2014年は新言語 Swift が登場し、iOS アプリ開発者にとってはかなり印象深い年になったのではないでしょうか。Swift の登場以後、さまざまな取り組みが iOS アプリ開発者の中で行われ、その結果の1つとしてオープンソースライブラリもかなり増えました。 Swift で一から書かれたものもあれば、既存のものを Swift でも使えるようにアップデートしてくれているものもあります。ある意味、混沌としている現状では「じゃあいまから Swift で iOS アプリ開発するときに何を使えば良いの!?」といったことになりかねません。ということで、現在までに公開されている Swift で使えるオープンソースライブラリを目的別にまとめてみました。 Swift アドベントカレンダーのために書いた記事なので、タイトルには「Swift 時代の」としています
ビッグデータとかの機械学習隆盛の背景にある文脈や、その拠り所となるコンピュータの処理性能から考えても「モバイルデバイス向けOSと機械学習を紐付けて考えようとする」ことはそもそもあまり筋がよろしくない・・・とは思うのですが、やはり長くiOSだけにコミットしてきた身としては、新たに興味を持っている機械学習という分野と、勝手知ったるiOSという分野の交差点はないのかなと考えずにはいられないわけでして。。 そんなわけで、「iOS と機械学習」について雑多な切り口から調べてみました。 iOSで使える機械学習ライブラリ DeepBeliefSDK コンボリューショナルニューラルネットワークを用いた画像認識ライブラリ。iOSとかのモバイルデバイスで処理できるよう、高度に最適化してある、OpenCVと一緒に使うのも簡単、とのこと。 https://github.com/jetpacapp/DeepBeli
GLDTweenを作るにあたって、まずパブリックAPIの仕様を決める。 自分はライブラリを作るときは、まず内部仕様より先に、パブリックAPIを定めるべきだと考えている。 まずユーザーが実際にさわるAPIを策定し、先にサンプルコードを書いて「ユーザーが使いやすいことを確信」する。その後ライブラリの中身を設計する。この工程を省略すると、パワフルかつ難解なオナニーライブラリが生まれてしまうからだ。設計にパブリックなAPIが従事するのではなく、パブリックなAPIに設計が従事すべきだと考える。 アニメーションエンジンの定番API というわけで既存のAPIを調査し、パブリックAPIの設計を下記3つの方式から選択することとした。 すなわちUIAnimation型、CATransition型、Tweener型だ。 1: UIAnimation型 UIAanimationやOpenGLのように、betinと
iOSのSDKが提供するアニメーションSDKは正直いってショボイ。 UIAnimationは機能が貧弱すぎるし、CoreAnimationは強力なものの手続きが煩雑で使えたものじゃない。JSやAndroidと比べれば悪くはないのだけれども、僕はもともとFlash業界で育ってきた人間だったので、Flashの柔軟な表現力が基準になってしまう。 しょうがないので結局、自分で作ることにした。 GitのリポジトリはGLDTween、ライセンスはMITを予定。 そもそも、なぜiOSのアニメーション系のSDKがショボイのか?というと、これはUIKitの設計のせいだ。 UIKitではViewの座標系が、CGPoint、CGSize、CGFrame、CGAffineTransformなど様々な構造体に分散して保持されている。構造体はNSObjectではないので、配列や辞書に突っ込むことができず、参照ではなく
先日 Go MemoというiOSアプリをリリースしました。 「あとで行く」ためのアプリ、Go Memoをリリースしました Go Memoは週末4日間くらいで作ってリリースしたアプリなのですが、こうしてスピードを出せたのは便利なライブラリのおかげです。 この記事ではGo Memoで使ったライブラリを紹介しようと思います。 便利なiOSライブラリ AFNetworking 言わずとしれた定番ライブラリ。作者の mattt さんも非常に有名です。サーバーとのHTTP通信はほとんどこれに頼っていて、NSURLSession とか自分で書いてないです。 Go Memoでは foursquare API をたたく所で利用しています。 NSDictionary *params = ...; AFHTTPRequestOperationManager *manager = [AFHTTPRequestOp
Swiftに浮かれているiOS開発者のみなさんこんにちは。Objective-Cの記事を書きます。 手になじんでるものから、良さそうなので使ってみたいものまで、 個人的に筋がいいと思っているObjective-Cのライブラリを紹介します。 YLMoment 日付や時間と文字列を扱いやすくしてくれるライブラリ。 タイムラインでよくある"19 hours ago"みたいな文字列をNSDateから作ったり。 日本語対応。 MTDates NSDateの便利カテゴリ。 何日から何日までのNSDateの配列を取得したり、その日・週・月の頭のNSDate、先週の頭のNSDateなど。 欲しいと思った機能はだいたいあります。 JLRoutes 開発の初期にはURLSchemeから自前で処理を振り分けたりしますが、当然のように辛くなるのでJLRoutes。 sinatraっぽく書けます。sinatra使っ
iOS7からは10分→3分と短くなっている。本格的な処理はiOS7から導入されたバックグラウンド送受信を使い、こちらはそこまで大げさではないちょっとした処理の延長で使う位置づけになったのだと思う。 使い方は簡単で基本1行のみ。AppDelegateの中で setupメソッドを1回呼ぶ。 #import "LKTaskCompletion.h" - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [LKTaskCompletion.sharedInstance setup]; : } バックグラウンドのタスクが終了した時はできれば下記を呼んでおく。 [LKTaskCompletion.sharedInstance endBa
画像を表示しようとしたら遅いよ! 外部データを取ってきて表示するときにまずはまるのが画像の処理だと思います。非同期で必ず処理しましょう。 画像の非同期ロードはライブラリを使った方が早いと思います。 ヘッダーやフッタをつけたいよ! tableView.tableHeaderView tableView.tableFooterView に突っ込む方法を書いてあるのが多いんですが、今回はもっと簡単な方法としてStoryboardなどでこれらのビューを直接突っ込んで管理できるのでおすすめ。 テーブルビューの上や下にUIViewをドラッグすると UIViewをIB上で直接追加できます。 後はIBでレイアウトをくめばok 使用するクラス、フレームワーク、ライブラリ ビュー UITableViewController https://developer.apple.com/library/ios/doc
明けましておめでとうございます。神トラ2クリアしました。 Facebook iOS Appのように、一覧をスクロールした際にUINavigationBarやUIToolbarを隠してフルスクリーン表示をするためのライブラリを作りました。 https://github.com/ninjinkun/NJKScrollFullScreen スクロールをフックしてフルスクリーン化をdelegateで通知する部分と、フルスクリーン時の動きを定義する部分を分離した設計になっています。 同じようにフルスクリーン化を行うYIFullScreenScrollというライブラリがあったのですが、UINavigationBarの移動などフルスクリーンの動きの部分が一体になっており、Facebook appぽい挙動にカスタマイズし辛かったので、動きを分離した設計のライブラリを別に作ることにしました。all-in-o
追記: ※この記事は、「既にアプリ開発者である人」がより生産性を上げれることを願って書いた記事になります。 よく理解してない方がこの記事を参考にして「これを使ったら簡単になるらしいよ」という解釈をするための記事ではありません。 利用すれば便利になる「かもしれない」というものであることを理解しておいてください。 アプリの開発は早く、その上クオリティ高く完成させるのが良いと思います。 自分で、便利クラスなどを作成している人も多くいるとは思いますが、 iOSはオープンソースなライブラリが充実しているので、できるだけ利用をして 早く確実に開発を終わらせちゃいましょう。 ライセンスはそれぞれを参照して確認してください。 ARCへの対応有無もよく確認してみましょう。 ※見出しタイトルがリンクになっています。 SDWebImage インターネット経由で画像を取得し、UIImageViewへ表示するとき、
追記(03/2014) COCOAPODS SEARCH 理想的なサービスが非公式にできていた。最高なので是非使いましょう。 以下は初稿 タイトルの件は忘れてください。 概要 CocoaPodsメインSpecリポジトリの全登録モジュールを対象にGitHubでのwatcher/star数などを参考にした一覧を作成しました+Objective-C Toolbox が欲しい話。 なにかというとローカルのCocoapodsのpodspecディレクトリの各:sourceからGitHub上のリポジトリを特定してAPIで取得しただけです。なのでGitHubにないリポジトリは換算されてない。 作業に使ったスクリプトがこのへんにあります https://github.com/laiso/objc-toolbox/tree/master/script なんでそんなものが必要だったのかというと、前からmetac
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く