タグ付けされた質問 「ios」

AppleのiOSオペレーティングシステムに直接関連する問題に関する質問(直接または間接にかかわらず)。

15
開発者は不可能な要件をどのように拒否すべきですか?[閉まっている]
私が直面している問題は次のとおりです。 プロジェクトマネージャーからの引用: こんにちはSparkさん、多くの異なるiOSアプリケーションに使用できるフレームワークを開発するタスクを割り当てています。要件は次のとおりです。 UIの操作に使用されている親指または指の太さを検出できる必要があります。 この情報を使用して、UIのすべての要素を自動的に配置およびサイズ調整する必要があります。 親指を大きくするには、要素を画面の中央近くに配置する必要があります。 親指を小さくするには、要素を画面の角に近づけて配置する必要があります。 親指を大きくするには、すべてのフォントを小さくする必要があります。(この場合、大人を想定しています。) 親指を小さくするには、すべてのフォントを大きくする必要があります。(この場合、若い人を想定しています。) 概要: このフレームワークは、ユーザーフレンドリーなユーザーインターフェイスをプログラムで作成するために必要です。フレームワークは、必要な数のプロジェクトで使用できるように開発される必要があるため、開発者にとっても使いやすいものでなければなりません。 私はこのタスクを与えられた開発者なので、私の質問は次のとおりです。 これらの要件が少しばかげていることをどのように説明できますか? 実際のプロジェクトの開発に専念する方が良いと説明するにはどうすればよいですか? これが可能であったとしても、そのようなものを開発することはお勧めしません。 このプロジェクトに礼儀正しく、優しく、敬意を持ってノーと言うにはどうすればいいですか? 3年の経験を持つ開発者であっても、これは不可能かもしれないことをどのように説明できますか?

6
iOSで大きくて不器用なUITableViewControllerを避ける方法は?
iOSでMVCパターンを実装するときに問題があります。インターネットを検索しましたが、この問題の良い解決策を見つけられないようです。 多くのUITableViewController実装はかなり大きいようです。私が見てきた例のほとんどは、することができますUITableViewController実装<UITableViewDelegate>と<UITableViewDataSource>。これらの実装は、大きくなっている大きな理由UITableViewControllerです。一つの解決策は、その実装別々のクラスを作成することです<UITableViewDelegate>と<UITableViewDataSource>。もちろん、これらのクラスにはを参照する必要がありUITableViewControllerます。このソリューションを使用する上で欠点はありますか?一般に、デリゲートパターンを使用して、他の「ヘルパー」クラスなどに機能を委任する必要があると思います。この問題を解決する確立された方法はありますか? モデルに含まれる機能やビューが多すぎないようにします。これはMVCパターンの基礎の1つであるため、ロジックは実際にはコントローラークラスにあるべきだと思います。しかし、大きな問題は次のとおりです。 MVC実装のコントローラーを、どのように小さな管理可能な部分に分割する必要がありますか?(この場合、iOSのMVCに適用) これを解決するための一般的なパターンがあるかもしれませんが、iOSのソリューションを具体的に探しています。この問題を解決するための良いパターンの例を教えてください。ソリューションが優れている理由を説明してください。

2
MVCS-モデルビューコントローラーストア
私は最近、iOS開発の学習を開始することを決めました。そのために、iOSプログラミング:The Big Nerd Ranch Guideを読みました。本の中で著者はMVCS-Model-View-Controller-Storeのデザインパターンについて説明しています。基本的な考え方は、多くのアプリケーションがデータの複数の外部ソースを利用するため、コントローラーのリクエストロジックを維持するのが非常に面倒になる可能性があるということです。すべての要求ロジックをコントローラーから別のオブジェクトに移動することを提案します。 要するに本を引用する Model-View-Controller-Storeは要求ロジックを別のオブジェクトに入れ、このオブジェクトをストアと呼びます(図28.4)。ストアオブジェクトを使用すると、冗長なコードが最小限に抑えられ、データをフェッチして保存するコードが簡素化されます。最も重要なことは、外部ソースを処理するためのロジックを、明確で焦点の合った目標を持つ整然としたクラスに移動することです。これにより、コードが理解しやすくなり、保守とデバッグが容易になり、チームの他のプログラマーと共有できます。 そして 非同期ストアの優れた点は、多くのオブジェクトが要求を処理するために多くの作業を行っているにもかかわらず、要求とその応答のフローがコントローラーの1か所にあることです。これにより、読みやすく変更しやすいコードの利点が得られます。 私はこのパターンについてもっと知り、他の人がそれについて何を言わなければならないかを見たいと思っていましたが、オンラインで検索している間、私が見つけることができる唯一の参照はその同じ本に関するものでした(パターンはおそらく他の名前で知られていますか?)。 私にとって著者の論理は理にかなっているようで、通常のMVCパターンの論理的な拡張のように思えますが、おそらく実際にはMVCパターンの経験があまりないためです(iOS開発への進出を除いて)ソートで使用MVVのBACKBONE.JS(、であるあなたがそれMVC検討している場合))。 おそらく、より多くの経験を積んだ人が、MVCSパターンに明らかな欠陥や問題がないかどうかを明らかにすることを望んでいました。

1
REST API-モバイル固有の課題
モバイル側で、新しいiOSアプリプロジェクトに取り組んでいます。いくつかのアーキテクチャの変更が行われているため、構築中のアプリやWebサイトなどの他のクライアントが使用するカスタムビルドのプライベートAPIに依存する必要があります。 設計されているAPIは、HTTP動詞にマップされるリソース中心のURIおよびCRUD操作のRestスタイルに従います。次のようなもの: GET www.example.com/books DELETE www.example.com/books/482094 POST www.example.com/users/6793 問題は、このスタイルでは、多くの場合、モバイルクライアントが単一のアプリ画面の読み込みや単一のユーザーUIアクションの管理を行う必要が生じることです。これにより、必要なものがすべて揃うまで、アプリは8秒間ロードモードになります。低速で応答しないアプリ。 接続に関しては、モバイルクライアントには重大な制限があるため、理想的には次のようなルールに従う必要があります。 1画面== 1 API呼び出し 1保存== 1 API呼び出し。 これにより、REST設計の原則との衝突コースに入る多くの状況があります。例: アプリが1日間オフラインで、バックエンドデータベースの4つのテーブルと同期する必要があり、次のような呼び出しが必要だとします www.example.com/sync_everything?since=2015-07-24 ユーザーが自分のオブジェクトの多くを編集できる画面があるとしましょう。たとえば、todoリストでタスクをチェックします。編集ごとに1つのAPI呼び出しを行うのではなく、1つのバッチAPI呼び出しですべてのタスクレコードを編集する方法が必要です。 ORDER、SALESMEN、およびPRODUCT dbテーブルからの情報を混合する画面があるとしましょう。3つではなく1つの呼び出しでそのデータを取得する必要があります。 リスクは、最も安らかなAPIが存在し、また、最も役に立たない無反応のモバイルアプリが存在する可能性があることです。 問題は、私はただの新しい請負業者であり、私が必要なのは、私がそれらのポイントを作るのに役立つもの、尊敬される情報源からの記事、またはそのようなものです。モバイルクライアントのRESTスタイルで妥協している主要なプレーヤー(例:複合集計APIエンドポイントの使用による)。 または、この一般的な問題の解決策。ありがとう!
25 rest  api  ios  mobile 

4
完璧なクロスフェード
この問題を言葉で説明するのは難しいと思うので、それを説明するためにビデオ(45秒)を作成しました。ここに質問のプレビューがあります、Vimeoでそれを見てください:http : //vimeo.com/epologee/perfect-crossfade 過去10年間、多くの分野で2つの画像または形状の完璧なクロスフェードまたはディゾルブを作成する問題が繰り返し発生しました。最初はビデオ編集で、次にFlashアニメーションで、そして今はiOSプログラミングで。Googleでグーグル検索を開始すると、多くの回避策が見つかりますが、今回はハックせずにこれを解決したいです。 要約: 結果の透明度をどちらか一方のオリジナルと一致させる場合、2つの半透明の同色のビットマップをクロスフェードする際に適用する手法または曲線の名前は何ですか? フェード中に必要な部分的な透明度/アルファ値を計算する(数学的な)関数はありますか? これらの関数をに似たプリセットとして持っているプログラミング言語ease in、ease outまたはease in outActionScriptやCocoaにある関数はありますか? 更新:ビデオに加えて、サンプルプロジェクト(XcodeとiOS SDKが必要)を作成し、githubに投稿しました。ビデオと同じアニメーションを示していますが、今回は正方形を使用しています:https : //github.com/epologee/StackOverflow-Example-Code

11
実際のiPhoneデバイスでiPhoneアプリをテストする必要がある理由
iPhone用に1つのアプリケーションを開発しましたが、今ではApp Storeでそれを求めています。私のiOSオタクの友人の多くは、実際のデバイス、つまりiPhoneでテストするように言った。 だから私は実際のiPhoneデバイスで私のiPhoneアプリをテストする必要があるのだろうか?彼らは(Apple)が私のデバイスとほぼ同じ「シミュレータ」を与えているのですか?
23 testing  iphone  ios 

7
LinuxコンピューターでiOSアプリを開発できない技術的な理由はありますか?
LinuxコンピューターでOS Xアプリを開発できない理由は理解していますが、LinuxでiPhoneおよびiPadアプリを開発できない技術的な理由はありますか?iOSソースコードをiOS実行可能ファイルにコンパイルし、LinuxのiOSシミュレーターで実行したり、開発iOSデバイスにインストールしたりできないのはなぜですか? XCode IDEがCocoaアプリケーションであるというだけの理由ですか? どんな種類のプラットフォームでもAndroidアプリを開発できるようです。同じことがiOSにも当てはまらない理由はわかりません。
23 ios  linux  xcode 

10
iPhoneの64ビットA7の利点は何ですか
64ビットプロセッサへの移行がiPhoneでこれほど重要な理由を理解しようとしています。2倍のレジスタがあるため、プロセッサは2倍のデータを処理できるため、パフォーマンスが向上することを理解しています。 しかし、すぐに多くの電話が4GBを超えるメモリにアクセスすることはありません。それはやり過ぎのように見え、バッテリー寿命に悪影響を及ぼします。 もう1つの問題は、ほとんどの変数が2倍のメモリを必要とすることです。これにより、メモリが少ないモバイル環境で問題が発生します。 私は、Appleの人々は知的であり、おそらくこれを行う大きな理由があると信じています。私は彼らを理解しようとしています。 編集 GPUについてはあまり知りませんが、64ビットのレジスタを使用すると、2つのピクセルを各レジスタにロードでき、操作を個別に実行できると言われました。64ビットに関してグラフィカルな利点はありますか?
21 ios  iphone  64-bit 

3
Massive View Controller-IOS-ソリューション
私はすべての新しいiOS開発者に次の問題があると確信しています。 これは、2つの基本的な一般的な画面の表示方法です。 1)フォーム画面: 2)テーブルビューコントローラー画面 これまでに、2つの異なるソリューションについて読みました。 最初のソリューション:https://bendyworks.com/single-responsibility-principle-ios/。これは通知に基づいており、View Controllerを(意図)View Modelから完全に分離するため、View Controllerのコードが削減されます。Go-To構造と同様に、コードを壊すという欠点があると思います。次のようになります。 2番目のソリューションは、混雑した同じView Controllerを保持します(ボタンアクションはVC内で実行されるなど)。ただし、TPKeyboardAvoiding、BlocksKitなどのライブラリ、またはそれらのほとんどはカテゴリに基づいたソリューションを使用します。この2番目のソリューションでは、コードは大幅に削減されますが、View Controllerには依然として多くの責任があります。 これらのソリューションについてどう思いますか?どちらが良いですか?より良いものはありますか?
16 mvc  ios  objective-c 

2
iOSからAndroidにアプリを移植しています。何を知る必要がありますか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は、事実、参考文献、または専門知識によってサポートされると予想されますが、この質問は、議論、議論、世論調査、または詳細な議論を求める可能性があります。この質問を改善し、おそらく再開できると思われる場合は、ヘルプセンターをご覧ください。 6年前に閉鎖されました。 どのような落とし穴を避けるべきですか? Objective-Cの開発者が一貫して誤解しているJava言語のパラダイムは何ですか?Javaでプログラミングすることを学びましたが、Objective-Cでしか何年も働いていません。 AndroidとiOSでデザインパターンはどのように異なりますか? 自分で移行した場合、Androidのどの部分が混乱したり、学習に必要以上に時間がかかったりしましたか? EclipseはAndroidに最適なOS X IDEですか? 記録のために、私のアプリはUIKitとFoundationに非常に強く結びついているため、「移植」という言葉は誤った呼び名である可能性があります。実際にAndroid向けに完全に書き直します。コードの再利用はありません。また、これはAndroidを習得するために行っているので、ポートで失敗し、ショートカットを取得するよりもAndroidを習得したいです。 ちょっとした背景として、この質問はStackoverflowで私が見る質問の種類によって促されました。多くの場合、Obj-Cを作成しようとするときに、彼らが犯す愚かな誤りによって、誰かのバックグラウンド(C#またはJava)を知ることができます。Java開発者に目を転がさせ、「愚かなObjective-C開発者は学ぶことはないだろう」と言うような間違いを避けたいと思います。
15 android  ios 

3
安全なiPhoneアプリ↔サーバー通信
iOSアプリとそのサーバーコンポーネント間のプライベート通信を達成するための最良のアプローチは何でしょうか?単一の不変の「秘密鍵」がアプリのソースに十分に焼き付けられていますか、またはそのような「ハンドシェイク」鍵の世代を何らかの形で動的に設定する必要がありますか? サーバー自体には機密データへのアクセス権がないため、ユーザーがプライベートエンドポイントにヒットしても、どこにもアクセスできませんが、それらはパブリックから非表示にしたいだけです。基本的に、iOSアプリからの要求でない限り、特定のルートにヒットするすべてのリクエストを無視します。 サーバーコンポーネントは、重要な場合はRoRで実行されます。

1
iOS / OSXオープンソースプロジェクトの命名規則
常にではありませんが、ほとんどの場合、作成者の姓と名の頭文字で始まる名前のiOSまたはMac OS Xオープンソースプロジェクトがあります。プロジェクトがNick Leblancによって作成される場合、プロジェクトはとして読み取られNLMyProjectます。 例: Rune MadsenによるRMSwipeTableViewCell、 Ezequiel BecerraによるEBCardCollectionViewLayout、 SDiPhoneVersionセバスチャンDobrincuすることにより、 Leo NatanによるLNNotificationsUI。 それはどこから来たのですか?ある人が最初にこのように書いて、それから他のみんながそれに続きましたか? Appleガイドラインでさえ、それについて何も見つけることができませんでした。そのイディオムはどこにでも書かれていますか?

1
iOSアプリ開発用のコードの整理
私はiOSプラットフォーム用のアプリを開発してきましたが、これまでずっと、ファイル(.h、.m、.mm)を整理するというひどい仕事をしてきたことに気づきました。iOSプロジェクトのファイルの整理に関して、業界標準やベストプラクティスはありますか? 私のファイルには、カスタムクラス(View Controllerの横)、カスタマイズされたView Controller、サードパーティのコンテンツ、iOS 5.0以降でのみ動作するコード、以前のバージョンで動作するコードが含まれています。私が探しているのは、他の人(または今後数年のうちに私)がこれを見て、そこにある複数のファイルで迷子にならないように、物事を整理するソリューションです。

2
AppleがiOSで静的フレームワークのみを許可するのはなぜですか?
Appleは、iOS用に動的にロードされるライブラリ(フレームワークと呼ばれる)を作成する機能を持っていることは明らかです。アプリ開発者は静的ライブラリを作成する機能しか持っていないか、せいぜい、実際に静的ライブラリをロードしているときにフレームワークをロードしているとXcodeをだまします。これは、偽のフレームワークの作成として知られています。しかし、動的ローディングの利点はありません。 アプリ開発者からの動的なフレームワークを保持するためのAppleの理由は何ですか?開発者は繊細なリンカーフラグやオープンソースライブラリの依存関係チェーンに依存する必要がないため、外部ライブラリの使用がかなり容易になるようです。 一般的な理由はセキュリティだと思います。なぜAppleはiOSではなくOSXでそれを許可するのですか?セキュリティも要件ではありませんか? 編集:これはiOS 8からは関係なくなりました。Appleは動的フレームワークのサポートを追加しました。

2
委任とは何ですか?iOSプログラミングでなぜそれが重要なのですか?
現在、私は自分でiOSプログラミングを教えていますが、頭を包み込むのが本当に難しいと思う概念の1つは委任です。それは何ですか?なぜ、どのように使用されていますか?利点は何ですか?私が読んでいる本のテクニカルライティングは、理解するのを難しくしています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.