タグ

xcodeとswiftに関するkasahiのブックマーク (56)

  • minne iOSの2021年の開発環境 - Pepabo Tech Portal

    開発言語と主要フレームワーク 95%以上Swiftで、特に古いテストやエンティティはObjective-Cが少しだけあります。新規のものは必ずSwiftで開発していて、残っているObjective-Cは少しずつ減らしています。 使っているSDKのバージョンに関しては、Xcode 12への移行対応が終わっており、近日中に12でビルドしたバイナリーを公開する予定です。 ほぼほぼUIKitですが、いくつかの画面でSwiftUIを使っています。最低対応のSDKはiOS 13なので、LazyStack系やLazyGrid系がまだ使えないのですが、設定周りの画面など、CollectionViewっぽくない画面を今年中にたくさん移行しようと思っています。移行自体は色々考えてプロトタイプを作るなどして、2020年のiOSDCで発表しました。また、UIKitはモダンなAPIを使うように心がけており、例えば、

    minne iOSの2021年の開発環境 - Pepabo Tech Portal
  • 使うと手放せなくなるSwift Extension集 (Swift 5版) - Qiita

    こんにちは、たなたつです 汎用性高めのExtension集です。Protocolやstructなども一部含まれています。 使うと手放せなくなるSwift Extension集 (Swift 4版)のSwift 5版です。 (2年ぶりの更新) Swift 5.1の新機能や記法の最適化によって段々と良くなっています。 今回紹介したExtensionは全て下記のリポジトリに入っています。他にも便利な機能がたくさん入っているので、利用したい方はコピペやSwift PM/Carthageで導入してみてください。 https://github.com/tattn/SwiftExtensions ※ Swift 5.1, Xcode 11.2.1 で動作確認をしています。 ※ コード片ごとに紹介していますが、別のコード片のExtensionに依存している場合がありますので、ご注意ください。 ※ これらの

    使うと手放せなくなるSwift Extension集 (Swift 5版) - Qiita
  • Auto Layoutをコードで書いてみた - Qiita

    生成したビューのプロパティにtranslatesAutoresizingMaskIntoConstraintsというものがあり、これをオフにする必要があります。 このプロパティはAuto Layout以前に使われていた、AutoresizingMaskという仕組みで、ビューの動的なサイズ変更を実現していました。 これをAuto Layoutに変換するかどうかを設定するフラグです。 このtranslatesAutoresizingMaskIntoConstraintsは、AutoresizingMaskの設定値を Auto Layoutの制約に変換するかどうかを決めるものです。 デフォルトではtrueになっていて、これをtrueにすると、自分で追加する制約とコンフリクトしてしまうので、特に理由がなければ上記のようにfalseにしておく方がいいです。 NSLayoutAnchorを使ってみる

    Auto Layoutをコードで書いてみた - Qiita
  • 1週間でアプリのパフォーマンスを5倍に改善した話 - Qiita

    Swift Advent Calendar 2018 の 7 日目です。 先日開発中のアプリのプロトタイプを完成させ、自信満々に仲間に見せたところ 「動いてるけど動作重いね、、」 と言われショックで2日間放心状態に陥りました。 しかし!そこから1週間集中的にパフォーマンス改善に取り組み 起動時間を大幅に改善することに成功しました。 今回はその時の取り組み、アホみたいに遅かった原因、結果どれくらい短縮できたのかをまとめました。 ※当然ですが、効果は各プロジェクトの実装に完全に依るものです。あくまで一例として参考にしていただけたらと思います。 ① TIME PROFILERを活用しよう( −5.6s ) まず、基のキとして、Xcode Instrumentsの機能であるTIME PROFILERを使いました。 参考:XcodeのInstrumentsのTime Profilerを使って重たい

    1週間でアプリのパフォーマンスを5倍に改善した話 - Qiita
  • iosの開発を始めたあの日の僕に伝えたいこと。 - Qiita

    0. 自己紹介 entakuです。 元々はSIerでWebエンジニア(JavaとかPHPとか)書いてました。 その前はネットワークエンジニアとかやってました。 今は株式会社LifeSportsでスポーツマッチングアプリ作ってます😀 僕が格的にios開発を始めたのは、今年初めからです。 swiftアプリはUdemyなどで勉強してなんとなくわかるかなとは思っていたのですが、 学習サイトをみながら作ることと、実際にアプリを作って行くことはかなり違いました。 1年弱経って、1年前の自分に伝えたいことをまとめてみました。 1. ViewControllerのライフサイクルをつかもう! xcodeでアプリを作成すると最初にviewControllerが作成されています。 viewControllerには処理の順番があらかじめ決まっており、「このタイミングで処理する」というのを意識しておく必要があり

    iosの開発を始めたあの日の僕に伝えたいこと。 - Qiita
  • [Swift] 読み上げ機能、簡単に使えるライブラリつくったよ - Qiita

    こんにちは。 読み上げ、音源ファイルの再生、を簡易化するライブラリをつくってみました。 特徴 ・コード1行で実装できる (発音してほしいテキスト、言語を渡すだけです) ・発音の割り込み、スピード、トーンを調節できる ・発音開始、終了タイミングを感知できる ・国で言語指定できる (Country Codeを調べる必要ありません) ・37カ国の言語に対応している ・Swift4.0でも使える ・音源ファイルの再生も可能。終了タイミングを感知できる ライブラリは こちら にあります。 対応する国とコード アイルランド(en-IE), イギリス(en-GB), イスラエル(he-IL), イタリア(it-IT), インド(hi-IN), インドネシア(id-ID), オーストラリア(en-AU), オランダ(nl-NL), カナダ(fr-CA), ギリシャ(el-GR), サウジアラビア(ar-S

    [Swift] 読み上げ機能、簡単に使えるライブラリつくったよ - Qiita
  • [iOS] card.ioを使ってクレジットカードをスキャンする | DevelopersIO

    クレジットカードをカメラでスキャンしたい こんにちは!モバイルアプリサービス部の加藤潤です。 クレジットカードを使って決済するアプリを作る場合、使用するクレジットカードの情報(番号とか有効期限とか)をユーザーが手入力するのは面倒だったりします。 iPhoneのカメラを使ってスキャンして自動入力出来たら素敵だなぁ〜と思って探したところ、card.io SDK for iOSが良さそうだったので試してみました。 card.io SDK for iOSとは PayPalによって提供されている、iOSアプリにクレジットカードのスキャン機能を簡単に組み込むことが出来るSDKです。 MITライセンスで公開されています。iOSだけでなく、Android用のSDKもあります。 検証環境 今回検証を行った環境は以下となります。 Xcode Version 8.2.1(8C1002) Swift 3.0.2

    [iOS] card.ioを使ってクレジットカードをスキャンする | DevelopersIO
  • 2016年いいなと思ったSwiftのライブラリ - Qiita

    2016年ももうすぐ終わり。 なので今年いいなと思ったマイナーっぽいライブラリを紹介していきます。 地味に便利系が多いかも。 RxSwift RxとはReactiveX(Reactive Extensions)のSwift実装です。他にもRxJavaやRxJSなど各言語や各プラットフォーム用のRxがあります。 observableなどの考え方が面白いなと思い今コレを使って何か作ろうかと思ってます。 最近注目されてるであろうライブラリです。 Qiitaでもたくさん記事があります。 他にもRxSwiftと一緒に使うことができるライブラリなどもあります。 RxRealmなどの有名ライブラリなどが対応しています。 RxSwift Community PermissionScope 画像のように簡単に通知や位置情報の使用の許可などを取ることができます。 AsyncKit 有名かもしれない。 これは複

    2016年いいなと思ったSwiftのライブラリ - Qiita
  • Swift3への移行時に役に立ちそうなXcodeのOption

    Swift3移行時に、ビルドする度沸いて出て来るエラー。 それを直したと思って再度ビルドしても またでてくる…。 そんな時に、、ちょびちょびではなくて一気にエラーの箇所を出して修正していきたい場合は、Xcodeの設定を少し変えるだけでよくなります。 Xcodeの設定画面を開く 「cmd + ,(カンマ)」で設定画面を開き、「Continue building after errors」の項目にチェックを付けます。 これで、ビルドしてエラーが出たとしても、全体を通してビルドが終わるまで続けてくれます。 ただ、普段使う時は、エラーがある時点でビルドが止まるほうが良いので、使う必要がなくなったらチェックを外しましょう。

    Swift3への移行時に役に立ちそうなXcodeのOption
  • iOSDC2016の発表のまとめ - Qiita

    iOSDC2016というiOSに関してのカンファレンスが2016年8月19日と20日にありました。 参加してみて、とても楽しく、ためになる発表がたくさんありましたので、いち早くシェアすべく、ここに発表資料などをまとめました。 資料は随時更新します。編集リクエストをいただければ、すぐに反映します。 動画 前夜祭 Track A 前夜祭 Track B Track A Track B 発表資料 ユーザーに受け入れられ、問題を起こしづらい大規模リニューアルの進め方 https://speakerdeck.com/shoby/yuzanishou-keru-rerare-wen-ti-woqi-kosiduraida-gui-mo-riniyuarufalsejin-mefang http://niwatako.hatenablog.jp/entry/2016/08/19/181554 Swift

    iOSDC2016の発表のまとめ - Qiita
  • Swift+XcodeでiOSアプリを作ってみた(導入編) - Archiva

    Make a note of it: Web tech, montaineering, and so on. 2月中旬からiPhoneアプリ作ってました。 アプリ自体が初めてなので右も左も判りませんでしたが、SwiftJavaSciptに似てるので取っつきやすかったと思います。 良くあるTableView + WebViewのニュース系アプリですが、1人で実装して3月末には公開申請出せたんで、まあ入りやすいんじゃないですかね(申請通ったとは言ってない)。 UIパーツの配置はStoryBoardで行う JSONを取得してTableViewCellに流し入れる データの保存にCoreDataを使用する TableViewCellからWebViewに遷移する NavigationBarとTabBarを共存させる 通信中を示すインディケーターと、通信失敗時のエラー表示 無限スクロールによる逐次読

    Swift+XcodeでiOSアプリを作ってみた(導入編) - Archiva
  • Health Swift Meetup@FiNCまとめ - Qiita

    テーマ Swiftで気持ち良く開発をするためには FiNCさんによるご挨拶 ■会社紹介 一生に一度のかけがえのない人生の成功をサポートする。 ■サービス紹介 FiNCプラス 法人向け ダイエット家庭教師 個人向け パーソナルカラダサポート ■iOS開発環境 Swift100%、Swift2.2 slack / github / JIRA を使っている ゲストスピーカー発表 @kishikawakatsumiさん ■Swiftらしいコードとは 一概に言えるものではないし、同じことをやるにもいろいろな表現と、それに伴うメリット・デメリットがある。ゆえに、それぞれの適性を理解した上で書けるようにすべき。Swiftらしさに拘って盲目的に使うべきではない。 ■Protocolについて Dependency Injection with the Cake Pattern in Swiftのエッセンスを

    Health Swift Meetup@FiNCまとめ - Qiita
  • 開発が爆速になるSwift用Xcodeプラグインをまとめてみた - Qiita

    2017/10/15 更新 とりあえず、入れておくと便利なXcodeのプラグインをまとめてみました。 汎用性のあるものを重視して、厳選しています。 プラグイン初心者向けに有名なものも含まれています。 主に Swift 向けです。 Xcode7.3.1 (一部 Xcode9.0) で動作確認しています。 Xcode 9.0で動作確認済みのものには 、Xcode8.3で動作確認済みのものには を付けています。 Xcode 9 / 8 2017/10/15追記 Xcode9や8でこれらのプラグインを使用するためには、各プラグインにUUIDを追加する必要があります。 追加を一括で行ってくれるツールがこちらです。 インストールして、実行後、Xcodeを再起動することで、Alcatrazを含むいくつかのプラグインが使用可能になります。 環境にもよりますが、プラグインのインストール後、Xcodeを起動す

    開発が爆速になるSwift用Xcodeプラグインをまとめてみた - Qiita
  • try! Swift 最速レポート 1日目午前 #tryswiftconf | DevelopersIO

    弊社のレポートは以下になります try! Swift 最速レポート 1日目午後 try! Swift 最速レポート 2日目午前 try! Swift 最速レポート 2日目午後 try! Swift 最速レポート 3日目午前 try! Swift 最速レポート 3日目午後 try! Swift 最速レポート 1日目午前 こんにちは!加藤 潤です。 今日はSwift開発者たちの大規模なカンファレンスであるtry! Swiftにやって来ました!!このイベントは世界中のSwiftデベロッパーが一堂に会し、知識や技術を互いに共有し高め合うことを目的としています。今日から3日間の開催となりますが、Developers.IOではこの模様を随時お届けしていきます! では、さっそくいってみましょう! 目次 朝 開会の挨拶 Swiftのエコシステムに飛び込む 実践的クロスプラットフォームSwift コードリ

    try! Swift 最速レポート 1日目午前 #tryswiftconf | DevelopersIO
  • 「try! Swift」1日目の復習 #tryswiftconf - その後のその後

    iOSのカンファレンス「try! Swift」がいよいよ昨日から始まりました。恥をさらすようですが、半分ぐらいのセッションでリアルタイムについていけませんでした。。 ので既に上がっている発表資料やレポート記事を参照しつつ復習をしていこうかと。(WWDCもリアルタイムでは理解できないのでいつもスライドpdfが出てから自分のペースで手を動かしながら勉強する、というスタイルでやってます) オーバービュー的な話、考え方的な話はありがたく参考にさせていただきつつ、ここでは主に実装面のセッションについて復習していきたいと思います。 実践的クロスプラットフォームSwift / Practical Cross-Platform Swift Realm の JP Simard さんの話。 SwiftApple以外のプラットフォームでも利用できるようになりました。iOSアプリ以外でも好きなようにSwift

    「try! Swift」1日目の復習 #tryswiftconf - その後のその後
  • XcodeのPlaygroundをつかってUIの実装をサクサク試す - Think Big Act Local

    2018/04/10 追記 一部コードが古くなっています。 Xcode 9.3, Swift 4.1 の環境では以下のコードで動作します。 import PlaygroundSupport let vc = UIViewController() vc.view.frame = CGRect(x: 0, y: 0, width: 320, height: 480) vc.view.backgroundColor = .lightGray PlaygroundPage.current.needsIndefiniteExecution = true PlaygroundPage.current.liveView = vc.view Xcode の Playground を久しぶりに使ってみて、UIの実装とかこれでやると便利だな、と思ったのでやり方をまとめてみます。 やりたい完成系はこんな感じ:

    XcodeのPlaygroundをつかってUIの実装をサクサク試す - Think Big Act Local
  • Swiftでコマンドラインツールを作る - Qiita

    やること Swiftでコマンドラインツールを作る プロジェクト構成などがCarthageとだいたい同じものを作る 依存管理にCarthageを使用する やらないこと 自分で作ったコマンドをbrew install出来るようにする Github 大体同じ手順で作業してcommitしたので、多少参考になるかもしれない。 XcodeでProjectを作る 最初に作るのはCocoa Applicationです。 今回は凄いツールを作ります。適宜自分が作るプロジェクトに置き換えて下さい。 Cocoa FrameworkのTargetを追加する Frameworkの名前はプロジェクト名にKitを付けたやつにします。適宜変更したりいろいろして下さい。 作ったTargetのschemeを共有設定にする 方法は適宜ぐぐって下さい。 全てをまとめるWorkspaceを作る さっき作ったxcodeprojを一旦

    Swiftでコマンドラインツールを作る - Qiita
  • 物理サーバを選定する際のポイント – Eureka Engineering – Medium

    Eureka EngineeringLearn about Eureka’s engineering efforts, product developments and more.

    物理サーバを選定する際のポイント – Eureka Engineering – Medium
  • [Swift] TailorでSwiftのコードを静的解析! | DevelopersIO

    はじめに 加藤 潤です。 今回はSwiftの静的コード解析ツールであるTailorをご紹介します。 Tailorとは Swift用の静的コード解析ツールで下記のような特徴を持っています。 クロスプラットフォーム(Mac OS X、LinuxWindows) CLIで解析を実行し、解析結果のレベルに応じてカラーリング表示 Xcodeのビルド時に解析を実行し、Issue Navigatorに結果を表示 MITライセンスで公開されている また、コーディングスタイルガイドラインとしては下記が採用されています。 The Swift Programming Language GitHub Ray Wenderlich Coursera インストール Java 8をインストール Tailorを使うにはJava 8以上が必要です。 インストールされていない場合はこちらからインストールしてください。 筆者

    [Swift] TailorでSwiftのコードを静的解析! | DevelopersIO
  • 継続的にSwiftLintを実行する - Qiita

    目的 Swiftも2.0になり、使う機会が増えてきました。 複数人で書くことも増えてくると、コードフォーマットの統一を図りたくなってきます。 realm/SwiftLintを利用したら、github/swift-style-guideベースのチェックが出来そうです。 ローカルでやる場合は、Xcodeに設定しておけば保存などのタイミングでチェックしてくれるのですが、担当者によっては無視してしまう可能性があります。 また、SwiftLintも日々チェック項目が追加されているので、開発者のローカルのSwiftLintが古く、チェックしきれてない可能性もあります。 Androidのコードを自動で解析し、GitHubのpull requestにコメントするみたいにしておけば、CircleCIGitHubのコメントをしてくれ、Slackと連携しておけば違反が可視化しやすそうです。 実現すること Ci

    継続的にSwiftLintを実行する - Qiita