タグ

ブックマーク / dev.classmethod.jp (11)

  • [Swift]Dynamic Member LookupからSwift5.1で追加されたKeyPath Member Lookupまで | DevelopersIO

    [Swift]Dynamic Member LookupからSwift5.1で追加されたKeyPath Member Lookupまで この記事ではSwift4.2 の新機能として紹介された`Dynamic Member Lookup`を、Swift5.1 で追加される`KeyPath Member Lookup`とともに見ていきたいと思います。 Swift4.2 のDynamic Member Lookup。Proposal の Author が Chris Lattner ということで、重要な機能だということはわかっていたのですが、きちんと理解せずに過ごしていました。 すると 5.0 ではそれの拡張のDynamic Callableが追加され 5.1 では KeyPath に対して@dynamicMemberLookup できるKeyPath Member Lookupが追加されること

    [Swift]Dynamic Member LookupからSwift5.1で追加されたKeyPath Member Lookupまで | DevelopersIO
    chiqashi
    chiqashi 2024/07/11
  • [iOS 7] P2P 通信を手軽に実現する Multipeer Connectivity Framework を使ってみる | DevelopersIO

    [iOS 7] P2P 通信を手軽に実現する Multipeer Connectivity Framework を使ってみる Multipeer Connectivity Framework Multipeer Connectivity Framework は、Wifi や Bluetooth を利用した近距離にある iOS 端末間の Peer to Peer の通信を手軽に実現するためのフレームワークです。 このフレームワークでは、下記の3種類の通信方式を利用して通信を行います。 同一 LAN 内 での Wifi による通信 ピア同士の Wifi による通信 ピア同士の Bluetooth による通信 従来は、同一 LAN 内にいる iOS 端末間での通信を行うことができましたが、このフレームワークによる通信は端末が同一 LAN 内にいる必要がないところが大きな特徴です。 Multipe

    [iOS 7] P2P 通信を手軽に実現する Multipeer Connectivity Framework を使ってみる | DevelopersIO
    chiqashi
    chiqashi 2017/09/10
  • Swift Tweetsの振り返り用に発表者のまとめをまとめてみた #swtws | DevelopersIO

    はじめに こんぬづは、InsurgencyというFPSで残弾管理を怠って死んでしまい、これまで読んできたそれ系の漫画のキャラが一斉に「残弾数は確認しないとね♪」みたいなことを脳内で注意してくるのが聞こえる田中です。(Insurgencyは残弾とか武器種類を表示してくれるHUDが無い) 今回の記事は、2017/01/14(土)に行われたSwift Tweetsというイベントの発表内容まとめになります。自分の備忘録・振り返り用としても使いたいと思ったので、発表者がそれぞれQiitaにまとめたものをここにまとめます。 togetter 発表資料とともに、その時の参加者の方々のツイートを追うとまた他の良い情報が得られることもあると思います。 発表一覧 登壇枠(1枠約30分) LT枠(1枠約5分)

    Swift Tweetsの振り返り用に発表者のまとめをまとめてみた #swtws | DevelopersIO
    chiqashi
    chiqashi 2017/01/16
  • Google I/O 2016 で「Firebase」の新バージョンが発表!プッシュ通知機能を iOS アプリで使ってみた | DevelopersIO

    Firebase とは 日(2016/05/19、日時間)より開催されている Google I/O 2016 にて、モバイル向けのサービス群「Firebase」の新バージョンが発表されました。ログ解析ツール「Firebase Analytics」やプッシュ通知サービス「Notifications」が無料・無制限で利用できるところが注目を集めています。 Google Developers Japan: Firebase を拡張、統合アプリ プラットフォームとして登場 [速報]Google、モバイルアプリ用ログ解析ツール「Firebase Analytics」の無償提供を発表。ノーティフィケーションも無制限に無償で提供。Google I/O 2016 - Publickey 記事では iOS アプリへの Firebase の導入とセグメント通知を試してみました。 Firebase の導入

    Google I/O 2016 で「Firebase」の新バージョンが発表!プッシュ通知機能を iOS アプリで使ってみた | DevelopersIO
    chiqashi
    chiqashi 2016/05/25
  • Reactiveは哲学だ! with Swift | DevelopersIO

    おばんです、仙台の田中です。 この度「Reactive Programming in Swift」と題しまして、Sendai.swift 第一回を開催いたしました。 参加者の皆さんのおかげで議論できるとても有意義な会となりました。Reactiveとはなんなのかを実際にライブラリを使ってみて動きを追いつつ、定義ってこういうことらしいという話や、ライブラリの挙動の考察、便利なところについて話したり楽しかったです、ありがとうございます! 英語間違えたのはここの読者さまと僕だけの秘密にしてください。 英文学科出身 #とは Sendai.swiftで取り扱った内容に沿いながら、 このエントリではライブラリでの実装例が多い昨今、逆に「Reactiveってなに?」ってところから解説していこうと思います。 「違う!Reactiveというのはだな...!」というReactive警察の方はあとでこっそり取り締

    Reactiveは哲学だ! with Swift | DevelopersIO
    chiqashi
    chiqashi 2016/02/20
  • rbenv を利用した Ruby 環境の構築 | DevelopersIO

    こんにちは、クラスメソッドの稲毛です。 複数バージョンの Ruby を切り替えるだけでなく、ローカルディレクトリ毎に Ruby のバージョンを指定できる「 rbenv 」がとても便利だったので、インストール方法などを記しておきます。 ビルド環境の構築 Ruby をビルドする環境が構築されていない場合は、下記 ruby-build の Wiki を参考にビルド環境を構築する。 Suggested build environment rbenv + ruby-build のインストール rbenv で Ruby のインストールを行うので rbenv のプラグイン「 ruby-build 」を併せてインストールする。 Linux の場合 ここでは既に Git がインストールされているものとします。 $ git clone https://github.com/sstephenson/rbenv.

    rbenv を利用した Ruby 環境の構築 | DevelopersIO
    chiqashi
    chiqashi 2015/12/07
  • 「深津貴之氏に学ぶ、スマホUI/UX講座 〜iOS7についての考察とfladdictデザイン論〜」に参加してきました。 | DevelopersIO

    「デザイン = かっこ良くすること」だとは限らない。 デザインとは? 設計 複雑な問題を整理して解決すること わりとエンジニアリングに近い 文章を書く練習をすれば読みやすい文章を掛けるようになるのと同様に、勉強すれば人を困惑させないデザインは作れる。 ヒューマンインターフェースの原則 インターフェース = 接点、境界面、接触面、接合面、仲立ち、橋渡し ヒューマンインターフェース = 人とモノをつなぐもの ヒューマンインターフェースの原則 = アプリがユーザーとコミュニケーションをする時の原則 1.必然性のあるビジュアル 機能と外見が調和しているか? TPOにあわせた格好をさせる ユーザーとコミュニケーションを取る ドレスコードみたいなもの(例:ゲーム:楽しく、ツール:信頼性ありそうな) 機能に最適な外見を与えることで... 使い方がつたわる。 とっつきやすくなる 2.一貫性 アプリ全体でル

    「深津貴之氏に学ぶ、スマホUI/UX講座 〜iOS7についての考察とfladdictデザイン論〜」に参加してきました。 | DevelopersIO
    chiqashi
    chiqashi 2014/05/17
  • [iOS] 弱参照を扱えるコレクション NSHashTable と NSMapTable | アドカレ2013 : SP #8 | DevelopersIO

    この記事の内容は、ARC を有効にしていることを前提としています。 NSHashTable と NSMapTable コレクションと参照カウント オブジェクトに対してアクセスしやすくしたい等の理由で、NSMutableDictionary 等のコレクションに他のオブジェクトがオーナーシップを持っているオブジェクトの参照を格納しておきたいケースがたまにあります。こういった場合、オーナーシップを持っているオブジェクトが対象のオブジェクトを解放したと同時にコレクションからも参照を削除するべきなのですが、削除処理の実装を忘れてしまったり処理が煩雑になったりしてしまいがちです。 NSArray, NSSet, NSDictionary 等のコレクションは、オブジェクトが追加されるタイミングでそのオブジェクトの参照カウントをインクリメント(retain)しています。逆に、オブジェクトが削除される、もし

    [iOS] 弱参照を扱えるコレクション NSHashTable と NSMapTable | アドカレ2013 : SP #8 | DevelopersIO
    chiqashi
    chiqashi 2014/03/28
  • ソースコードからApple標準スタイルのAPIドキュメントを生成するappledocの書き方 | DevelopersIO

    サンプルクラスの作成 プロジェクトを作成したら、コメントを試すためのクラスとしてNSObjectを継承したSampleObjectを作成しましょう。 コメントの書式 appledocでは、以下で紹介する特別な書式で書かれたコメントからドキュメントを抽出します。また、もともとHeaderDocやDoxygenの書式で書かれた書式にも対応しているため、簡単に移植できます。 複数行のコメント appledocでは「/** コメント */」のように/(スラッシュ)1つと*(アスタリスク)2つで始まり、*(アスタリスク)1つと/(スラッシュ)1つで終わるコメントを解析対象とします。 /** コメントをかくぜぇ */ 試しにSampleObject.hのクラス定義の上に以下のように書いてみましょう。 SampleObject.h #import <Foundation/Foundation.h> /*

    ソースコードからApple標準スタイルのAPIドキュメントを生成するappledocの書き方 | DevelopersIO
    chiqashi
    chiqashi 2013/07/09
  • [iOS] 複数のStoryboardを使って画面遷移を作成する | DevelopersIO

    単一のStoryboardでうまく画面遷移を表現できない Storyboardを使ってアプリを作成していると、画面遷移の定義が楽な反面、巨大なStoryboardが生まれてしまったり、うまくSegueで表現できずに同じような画面遷移を2度定義してしまったりすることがあります。このため、Storyboardの使用をあきらめようとする事もあるかと思いますが、Storyboardを分割するとうまい具合に実装できることもあります。 そこで今回は、複数のStoryboardを利用して画面遷移を作成する方法をご紹介したいと思います。 開発環境 今回の開発環境は下記の通りです。 OSX 10.8 Xcode 4.6.1 iOS SDK 6.1 ソースコードはGitHubで公開しています。 共通の画面遷移を別のStoryboardに切り出す 共通の画面遷移部分を再利用したい NavigationContr

  • iOSアプリからnode.js+Socket.IOと双方向通信する | DevelopersIO

    iOSアプリからUIWebViewなどを介さずにnode.js+Socket.IOと双方向通信するための簡単なサンプルを紹介します。 サーバ側の実装 iOSアプリからnode.js+Socket.IO間で双方向通信するには、socket.IO-objcというライブラリを使用します。 今回はサーバ側には弊社うえじゅん氏が公開している記事で作ったチャットアプリを使用しますので、まずは以下の記事を参考にチャットアプリを作っちゃってください。 Node + Socket.IO で簡単なチャットアプリの作成 チャットアプリの準備が終わったら、早速iOSアプリ側の準備をしましょう。ここからは以下の環境を前提に説明します。 Mac OS X 10.8 Moutain lion Xcode 4.5.2 iOS SDK 6.0 iOSアプリの実装 サンプルプロジェクトのダウンロード 今回紹介するiOSアプリ

    chiqashi
    chiqashi 2013/01/25
  • 1