タグ: Xcode

Xcode

  • Mac 用の最高のエミュレーション アプリケーションである OpenEmu とは何ですか

    Mac または iPad に最適なエミュレータは何ですか? Mac でMAMEゲームを追体験したいですか?ここ数年、Apple は正しい方向に進み、iPad やiPhoneにゲームを導入したのと同じ方法でVision Pro にゲームを導入してきました。当然のことながら、彼らは専用のコンソールを持っていました。そして、2023 Mac Mini がPsychonauts 2の画像の隣に宣伝されていたという事実は、 Apple Arcade を超えたこの牧歌について雄弁に物語っていました。

    ただし、今日は別のことに焦点を当てます。私が 10 年間、すべての Mac コンピュータにインストールしてきたアプリケーションです。いいえ、タイムトラベルへの言及はタイムマシンのことではありません。結局のところ、この回復およびバックアップ管理アプリケーションはすべての Mac コンピュータに標準としてインストールされています。私はもっと特別なことについて話しています。

    OpenEmuのダウンロードとインストール方法

    ゲームボーイコントローラーの設定

    他にありえないことなので、RetroArch の許可を得て、今日存在する Mac 用の最高のエミュレータである OpenEmu について言及します。このアプリは 2007 年の夏に誕生しました。その作成者であるJosh Weinberg は、Mac OS 用の Nestopia のポートを作成しました。しかし、それは、これから来るもの、つまり「完全に Apple」のインターフェイスを備えた、直観的でダイレクトなプラグ アンド プレイのエミュレーターのほんの一部を垣間見ただけでした。

    そしてそれはそうなりました。最初のバージョン 1.0 から 9 年余りが経過し、macOS 10.14.4 以降のシステムでのみ利用可能となり、改良されたバージョン 2.3.3 がリリースされました。 Metal をサポートしており、PlayStation 2 より前のマイクロコンピュータ、コンソール、またはアーケードゲームのゲームを実行できます。

    WiiリモコンからPS5コントローラーまで、何百ものコントローラーやデバイスを認識するエミュレーションのバイブル。彼らは、寄付の受け入れに加えて、更新についてコメントするPatreonも持っており、常に同じ羅針盤と哲学を持って取り組んでいます。何かが失敗する場合、それはテストが不十分であるためです。リリースされるアップデートはほとんどありませんが、新しい機能はそれぞれ非常に喜んで受け入れられます。

    試すには、 OpenEmu の公式 Web サイトにアクセスし、正式版または実験版をダウンロードするだけです。どちらの場合も、右クリックしてインストーラーを実行し、開いていることを確認する必要があります。 Apple によって正式に署名されていないアプリのセキュリティ対策です。

    ダウンロードが完了すると、Amstrad、Intellivision、Vectrex のクラシックゲームを忘れずに、SNES、Sega CD、Game Boy、Nintendo 64 などのさまざまなコンソールのバックアップ(ROM) を実行できることがわかります。このプログラムは、スキャン、カバーの挿入、情報の整理、および各システムに最適なエミュレーション エンジンによる各ファイルの実行を担当します

    Mac に MAME カーネルをインストールする方法

    コピー

    すべてのエミュレーション エンジンは、アプリケーション自体に含まれるパックにプリインストールされています。 1 つを除くすべて。 MAMEは、Multiple Arcade Machine Emulator の頭字語で、あらゆる種類のレクリエーション マシンを再現することに特化したオープン ソース プログラムです。はい、これは、キャデラック & ダイナソー、アウトラン、ゴーストン ゴブリン、餓狼伝説、ティーンエイジ ミュータント ニンジャ タートルズ、または人気のコントラとメタル スラッグをプレイするのに必要なゲームです。

    MAME コアをインストールするには、次の手順に従う必要があります。

    コピー
    1. GitHub リポジトリに移動して、最新のUME コアパックをダウンロードします。
    2. ダウンロードして解凍したら、適切なフォルダーにインストールする必要があります。それを見つけるには、まずキーの組み合わせをアクティブにする必要があります。任意の「Finder」ウィンドウで、 Command (⌘) + Shift (⇧) + ピリオド (.)キーを押します。これにより、すべての非表示ファイルと表示ファイルが柔らかい色で表示されるようになります。
    3. この新機能を有効にして、ユーザー フォルダーに移動します。つまり、 「Macintosh HD」>「ユーザー」を選択し、「共有」ではなく、自分のユーザー名を持つものを選択します。
    4. それを「 Library 」という灰色がかったフォルダーに入力します。
    5. Application Support 」フォルダに移動します。
    6. そして最後にOpenEmuフォルダにアクセスします。中には「 Cores 」という別のフォルダーが表示されます。ここに、ダウンロードした MAME ファイルをドラッグする必要があります。このファイルはoecoreplugin拡張子も共有しています。
    7. あとはそれを実行するだけで、自動的にインストールされます。アプリケーションを再起動すると、インストール数セクションに MAMEコアが表示されることがわかります。
    ゲーム

    システムファイルに関しては、OpenEmu がゲームを実行するには依然として BIOS ファイルが必要です。つまり、エミュレートするシステムの頭脳と同じ小さなコンテナです。 Archive.orgやその他のサイトには多くのリポジトリがあります。好みのものを選択するか、ユーザーガイドに従って OpenEmu に必要なものを正確に探してください。

    ここから、保存したゲームのコピーを実行できるようになります。その可能性は、50 年にわたるビデオ ゲームの歴史にほかなりません。

    スクリーンショット

    また、レトロゲームの世界ではよくあることですが、ゲーム中いつでも保存ファイル (状態の保存) を作成でき、改善するために「巻き戻す」ことができます。また、数十のフィルターをリアルタイムで適用して、古いモニターの走査線をエミュレートしたり、PSP や 90 年代のフィリップス LCD などの特定の画面のスタイルを模倣したりする可能性もあります。

    ヒント: 2D ゲームでは、ピクセレーション フィルターを使用すると、美しく、よりクリーンで、よりモダンな効果が得られます。 3D ゲームでは、ニアレスト ネイバーや SABR などのフィルタが非常にうまく機能し、より有機的な画像を表示します。やや液化していますが、視覚的にはより高解像度に似ています。レンダリングとデザインの種類に応じて適切に組み合わせて、時間を遡ったり、子供時代から大人になった頃の経験を取り戻したりできます。

    Mac 用の最高のエミュレーション アプリケーションである OpenEmu とは何ですか・関連動画

  • 世界中のプログラマーよ、聞いてください。Apple にはオープンソース リポジトリがあり、App Store のソース コードも共有しています

    何十年もの間、Apple の秘密主義、その迷路のような廊下、請負業者に対するセキュリティ管理、従業員に対する厳格な NDA、そしてある種の強迫観念に満ちた恐怖文化、むしろ嫉妬の文化などが、皮肉を込めて語られてきました。実際のところ、 2024 年の Apple は、今世紀初頭の文学や映画が私たちに慣れ親しんでいたイメージとはかなりかけ離れています。 Appleはその店舗やサービスの秘密の扉の一部を大公開しているほどだ。どこ? Github 上で。

    Apple がSwift でのプログラミングのための最初のコースを公開してからほぼ 10 年が経ちました。彼はどこでそれをしたのですか?もちろん、地球上最大のオープンソース リソース リポジトリである Github 上です。それ以来、クパチーノの会社は何百もの貢献をプロフィールに提供し続けており、 App Storeソース コードも見つけることができます

    Apple が GitHub で最もオープンな側面を見せる

    もちろん、このプロフィールで見つかるほとんどすべてが Swift に関連しています。数年前のことのようですが、Swift は 2014 年の年次開発者会議中に正式に発表されました。その際、「エラーのない言語」、非常に安全、つまり可能性が低いなどの記述に囲まれていました。執筆中にエラーが発生することがなくなり、作業や開発が容易になります。

    Swiftフレームワークの操作方法を知るためのドキュメント、ストレス テストを実行するためのいくつかのツール、さらにはコンパイラが、136 人が共同作業し、最大 285 のリポジトリを見つけることができるプロファイルに積み上げられています。 macOS Sonomaのコーディングに取り組んでいる場合は、ここでいくつかのユーティリティを見つけることができます。

    Github の Apple プロファイル 1

    これまで見てきた限り、コミュニティは非常に役に立ち、Xcode 10 で作業していて、何年も新しいコンテナを使用してコンパイルしていない場合に、違いに関するガイダンスを提供します。デバッグに関するアドバイスが提供されており、約 21,000 人のフォロワーがおり、誰かがあなたの質問に答えてくれる可能性が非常に高いです。

    表紙 |表意文字で生成

    世界中のプログラマーよ、聞いてください。Apple にはオープンソース リポジトリがあり、App Store のソース コードも共有しています・関連動画

  • Apple の副操縦士: Gurman 氏が iOS 18 AI を開発ツールに導入

    日を追うごとに、 iOS 18macOS 15はますます興味深いものになっています。噂ではすでに新しいデザイン生成人工知能の世界への壮大な入り口について話されていますが、これまでは常にユーザーのための機能についての話がありました。

    しかし、Mark Gurman 氏は最近、AI はアプリケーション開発プラットフォームにも大きな変化をもたらすだろうと述べています。有名なブルームバーグ編集者によると、 Xcode も生成型人工知能を採用する予定です

    コードを書いてくれる Xcode

    これは生成型人工知能の最大の利点の 1 つであり、開発者の作業をはるかに容易にすることができます。これを使用してソース コードのブロックを生成できます。 Gurman 氏は、Apple が Windows でCopilotがすでに実行できることと同じスタイルで、Xcode プログラマ向けのこの可能性に 1 年間取り組んできたと断言します。

    もちろん、すべての作業を自動的に行ってくれる Xcode をすぐに使用するわけではありませんが、このようなものは開発者の作業をさらに容易にし、学習中の人を助けることができます。私自身、 ChatGPTのおかげで Javascript に関して抱いていたいくつかの疑問を、それ以上進むことなく明確にすることができました。

    どうやら、 Apple Park のエンジニアは、このタイプの Xcode 人工知能を使用した内部テストをすでに 1 年間実施しているようです。そして目標は、来年 6 月の WWDC でこれを発表し、プログラマーや愛好家のコミュニティがそれをテストできるようにすることです。

    「AI機能をできるだけ多く」

    Apple のオペレーティング システム開発責任者であるクレイグ フェデリギ氏は、同社のオペレーティング システムの将来のバージョンでは、人工知能を使用して可能な限り多くの機能を作成するよう命令を出していたでしょう。 6 月の WWDC にはこの種のニュースが満載になる予兆です。

    これのもう 1 つの兆候は、Apple によるiWork.ai ドメインの購入です。これは、Javier Lacort が毎日のポッドキャスト Loop Infinito でコメントしたものです。これは、生成関数がPages、Numbers、Keynote に導入される可能性があることを示す良い兆候です。 6月は興味深い月になり、9月までとても待ち遠しい月になるだろう。

    Apple の副操縦士: Gurman 氏が iOS 18 AI を開発ツールに導入・関連動画

  • Xcode: それは何か、何のためにあるのか、そしてこの Apple IDE にはどのような開発者機能が含まれているのか

    iPhone、Mac、または iPad を使用するとき、ネイティブの Apple アプリケーションやApp Storeにあるアプリケーションを使用しないということはもはや考えられません。銀行取引を確認したり、メッセージを送信したり、ソーシャル ネットワークを閲覧したりするには、これらのアプリを使用する必要があります。しかし、これらのアプリケーションがどのように開発されるかについて考えたことはありますか?

    答えは、Xcode と呼ばれる Apple 独自のプログラムにあります。これは、クパチーノ社のエコシステム向けにプログラミングを行い、可能な限り最高の結果を得るプログラマーにとっての基本ツールです。これを任意の Mac に無料でダウンロードして、自由に開発を始めることができます。

    Xcode とは: 開発者にとって最高のソフトウェア

    定義として、Apple が作成した統合開発環境 (IDE) である Xcode は、エコシステムで作業する開発者にとって不可欠なツールであると言えます。開発者が iOS、macOS、watchOS、tvOS、iPadOS、そして現在はvisionOSデバイス用のアプリを構築できるように設計されています。

    迅速

    これは、コード エディター、コンパイラー、デバッガー、およびソフトウェア開発に必要なその他のユーティリティを含む完全なツール スイートです。これにより、プロジェクトの作成、保守、コードのコンパイルとデバッグが可能になるだけでなく、プログラミング内容のリアルタイム表示などの開発を容易にするツールも利用できるため、非常に重要です。

    Xcode で際立った機能

    Xcode をインストールすると、Apple がすべてのオペレーティング システムに対して提供する開発パッケージを選択できるようになります。目新しいこととして、2023 年には、visionOS ソフトウェアと連携して、複合現実グラスで動作するアプリケーションを作成できるツールが追加されました

    このプログラムは開発者向けのガイド付きシステムを提供しており、アプリケーション、ゲーム、さらには Safari 拡張機能を作成するかどうかを最初に選択するオプションがあります。このプログラムの機能の一部を以下に示します。

    • 高度なコード エディター– Xcode は、 Swiftや Objective-C などの複数のプログラミング言語をサポートする強力なコード エディターを提供します。このエディターには、構文の強調表示、オートコンプリート、さらには発生する可能性のあるエラーの修正などのスマートな機能が備わっています。ただし、Apple はアプリの効率を向上させるために、すでに Swift のみで開発するようにしています。
    • シミュレーターとデバッガー: Xcode は、iOS、macOS、watchOS、tvOS デバイス用のシミュレーターを提供しており、これを使用すると、アプリケーションをリリースする前に仮想環境でテストおよびデバッグできます。つまり、インターフェイス、動作、またはバグがあるかどうかをテストしたいソフトウェアのバージョンを使用して、仮想 iPhone 上で作成中のアプリケーションを起動できます。
    プレビュー
    • Instrumentsオプションを使用すると、開発者はボトルネックの可能性を探すときにアプリケーションのパフォーマンスを測定できます。
    • SDK およびフレームワークとの統合: Xcode は、Apple SDK (ソフトウェア開発キット) およびフレームワークとの緊密な統合を提供します。これにより、開発者は、開発中のソフトウェア用に特別に設計された公式 Apple API にアクセスできるようになります。これにより、パフォーマンスが向上し、何よりも使いやすさが向上します。
    • Apple がリリースする新しいソフトウェア バージョンでのプロジェクトの統合をテストすることが許可されています。これにより、アプリケーションが新しいソフトウェア環境で動作しなくなるのを防ぐことができます。

    VisionOS は Xcode の新しい主人公です

    新しいApple Vision Proの発売により、クパチーノの会社も新しいソフトウェア、 visionOS をリリースして以来、Xcode は現在歴史的瞬間を経験していますこれは、開発者が Apple がリリースした新しい開発パッケージを最初から開始する必要があることを意味します。

    これらの新しい Vision Pro に含まれるすべてのアプリケーションは、Xcode で開発およびテストする必要があります。また、前述のプレビュー機能により、発売前から本機の動作を確認することも可能です。

    つまり、私たちは日常生活で使用するすべてのアプリケーションを担当し、進化するアプリケーションに直面しているのです。結局のところ、Xcode は将来のインターフェイスの基礎です。これがなければ、お気に入りのサービスの多くのアップデートや、Apple がソフトウェアで提供している機能との新しい統合は見られないでしょう

    Xcode: それは何か、何のためにあるのか、そしてこの Apple IDE にはどのような開発者機能が含まれているのか・関連動画

  • このアプリは、Apple がそうしてくれたらよかったのにと思うように、ChatGPT をあらゆる macOS アプリに統合します

    サードパーティ企業や開発者のおかげで、ChatGPT は少しずつ Apple デバイス上に定着してきています。 Bing を通じて使用することも、 Apple Watch で使用することもできます…そして今、プログラマーが、この生成 AI を活用するおそらく最良の方法を現実のものにしました。

    インドの開発者 Tanmay Sonawane は、 ChatGPT を Mac 上の任意のアプリケーションに統合できる macOS 用アプリケーションである AnyGPT を作成しました。そして、私が任意のアプリと言ったら、それは任意のアプリです。

    最良の統合は目に見えないものである

    このシステムはシンプルかつ独創的で、上のツイートでそれを見ることができます。 AnyGPT を使用すると、書き込むことができる任意の macOS アプリケーションで ChatGPT にコマンドを要求できます。 「gpt:」と入力し、続いて AI に与えたいコマンドを入力するだけで、すぐに応答が得られます。

    著者が提供する例は適切です。iMessage では次の週末に友人と行う予定を尋ねることができ、Textedit では ChatGPT に修正用の文書のテンプレートを作成するように依頼でき、Mail では、ChatGPT に文書のテンプレートを作成するように依頼できます。正式な手紙のパターン…ただし、最良の例は、 Xcode で、アプリケーションのプログラミングを支援するために、Swift で関数を書くように私に依頼できることです。

    この統合は非常に緊密であり、Apple が将来独自の生成 AI を構築するつもりなら、これがやるべきことだとあえて言えます。シンプルで何も変更する必要はありません。好きな場所で注文するだけです。

    AnyGPT は、$9.99の 1 回払いで公式 Web サイトからダウンロードできます。これを使用するには、無料の使用容量が利用できるか、アクティブな有料サブスクリプションを持つ OpenAI アカウント (およびその API キーが含まれる) が必要であることに注意してください。

    このアプリは、Apple がそうしてくれたらよかったのにと思うように、ChatGPT をあらゆる macOS アプリに統合します・関連動画

  • 彼らは新しいApple製品の痕跡を発見しました:すべてが大きな利益を示しています

    新しい Apple 製品が発売されることを知る最良の方法の 1 つは、同社のオペレーティング システムのコード内でその痕跡を発見することです。そしてそれが、彼らが最近9to5Mac で発見したものであり、 「コンピューティング モジュール」と呼ばれるものの兆候です

    これらの記述は、 iOS 16.4ベータ版の一部として Xcode 16.4 ディスク イメージで見つかりました。さて、情報源ですら、この「コンピューティングモジュール」が何であるかを具体的に指摘する勇気はありません。彼らがやっているのは、いくつかの代替案をテーブルに出すことです。

    Mac Pro、Reality Pro、またはまったく異なるものの一部

    マックプロ

    9to5Mac が最も可能性が高いと考えている代替案の 1 つは、次期 Mac Pro の交換可能なコンポーネントを検討していることです。実際、異なるコンポーネントである可能性のある 2 つのモデル コード、ComputeModule13,1 と ComputeModule13,3 が見つかりました。

    私たちはMac Proのモジュラー部品について話しているのかもしれません。ユーザーの希望に応じて接続したり切断したりできます。追加のストレージを備えたモジュール、追加のグラフィックス能力を備えたモジュール… ストレージの拡張についてのみ言及している噂とは衝突しますが、何が起こる可能性があります。

    その他の可能性としては、さらに疑問があります。Apple Reality Pro の部品の 1 つである可能性があります。この部品には、すべてのデータとグラフィックスの処理を担当するチップが収容されており、特定のモジュール性が必要になる可能性があります。あるいは、オプション部品を処理するための二次チップかもしれません。その製品の焦点がまだわかっていないため、ここでは疑問が大きくなります。

    最後に、最後の賭けがあります。それは、 Apple 製の Raspberry Pi のようなものです。これはクパチーノにとっては奇妙なアプローチでしょうが、独立して操作を処理できるモジュールの説明に当てはまります。

    これらすべての賭けが間違っている可能性があると考えてみましょう。おそらく、 HomePodやホーム オートメーション製品などの製品に組み込まれるデータ処理の一部を検討しているのかもしれません。システムコード内にすでに言及がある場合、それらのモジュールが非常に現実的であり、何らかの形で最終的に提示されることを意味するため、すべては待つことです。

    彼らは新しいApple製品の痕跡を発見しました:すべてが大きな利益を示しています・関連動画

  • 誰もが開発者になれる: The Information によると、Apple のビューアを使用すると、Siri を使用してアプリケーションを作成できるようになります

    興味深い噂なしに週を終えることはできません。そして今回それを提供したのはThe Informationで、 Apple の Mixed Reality ビューアに関する新しいデータを提供しました。どうやら、クパチーノは開発者だけでなく、ユーザーコミュニティ全体にデバイス用のアプリケーションを開発させることを計画しているようです。

    コードの書き方や Xcode の使用方法を知らずに、どうやってこれらのアプリケーションを開発できるでしょうか?まあ、どうやら Siri を使用しているようです。残りの作業は、3 次元キャラクターを使用する視聴者の拡張仮想現実エンジンによって実行されます。

    「シリ、主人公をドラゴンに乗って城を攻撃してください」

    情報源は、この機能の起源は、2017 年の Fabric Software というカナダの企業の買収にあるとコメントしています。彼らの仕事はxrOSに統合されており、ユーザーは実際のキャラクターのインタラクションをデザインすることだけを気にすることができるでしょう。拡張現実のおかげで世界。

    XrOS が動きのデザインと計算を処理してくれるので、私たちは楽しい部分にとどまることになります。目的は、ユーザーに創造性ツールを提供し、適切な設備があれば誰でも自分の世界を創造できることを実証することです。そして、文字通りの Mixed Reality ビューアを使用します

    この機能に加えて、The Information は、座って瞑想できる禅庭のような特定の仮想現実環境が用意されていることも詳しく説明しています。さらに、ヨガの姿勢を正すなど、運動に役立つアプリケーションも用意されています。これらは、少なくとも 2021 年にテストされていた環境とサービスです。

    今のところ、私たちは待ち続ける必要があります。噂によると、ビューアは今年上半期中に正式に発表される可能性があるため、それを裏付けるものを見るのにそれほど時間はかからないはずです。作成する世界について考えてください。予想よりも短い時間で、それらを実現するのは非常に簡単になる可能性があるからです。

    誰もが開発者になれる: The Information によると、Apple のビューアを使用すると、Siri を使用してアプリケーションを作成できるようになります・関連動画

  • iOS デモ: これは Apple ストアに行かずに iPhone をテストする唯一の方法です

    iPhone であっても iPad であっても、iOS デバイスのテストはソフトウェアの範囲をはるかに超えています。したがって、私たちが何について話しているのかを明確に理解するために私たちができる最善のことは、 Apple Storeに行って、色、サイズ、オプションなど、欲しいものをすべて試してみることです。しかし、ストアに行くのが難しい場合は、オプションとして、別の興味深いリソースがあります。

    Xcode のおかげで私たちの Mac が救われました

    Xcode のおかげで、Mac 上でほぼすべてのデバイスを仮想的にテストできます。これは、初めての iPhone や iPad をリリースするときに何が見つかるかを知りたいと考えている、このプラットフォームを初めて使用する人にとっては興味深いオプションです。プロセスは非常に簡単で、最初から次の手順に従います。

    1. Mac でApp Storeアプリを開きます。
    2. 左上の検索エンジンに「Xcode」と書いてEnterを押します。
    3. 結果で「Xcode」の横にある「入手」をタップし、次に「インストール」をタップします。
    スクリーンショット 2022 04 22 9 32 55

    アプリケーションが完全にダウンロードされ、インストールされるまで待ちます。インターネット接続の速度に応じてこのプロセスには多かれ少なかれ時間がかかりますが、ただ待つだけです。これでシミュレータを開く準備が整いました

    1. Mac でXcodeアプリを開きます。
    2. 追加のツールをインストールするために管理者パスワードを要求された場合は、それを提供します。
    3. 「Welcome to Xcode」ウィンドウが表示されたら、 Xcodeメニューに移動し、 Open Developer Toolの上にマウスを置いて、 Simulatorをクリックします。
    4. シミュレータ アプリが開いたら、 [ファイル] メニューをタッチし、 [シミュレータを開く]にマウスを置き、次にテストするオペレーティング システム、最後に問題のデバイスにマウスを置きます。

    オペレーティング システムのほぼ完全なシミュレータ

    画像

    数秒後、デバイスが画面に表示され、電源がオンになります。その後、クリックしてタッチをシミュレートすることで、実際の iPhone または iPad で行うのと同じように、さまざまな部分を移動できます。ただし、このシミュレーターの機能は完全ではないことに注意してください。確かに、カレンダーを使用したり、会議をスケジュールしたり、ファイル アプリにアクセスしたり、写真がどのように機能するかを確認したり、Safari で使用したり、マップを移動したりすることはできますが、[設定] に入ると、特定のオプションが単に存在していないことがわかります。

    たとえば、Face ID や通知などのオプションは、Xcode シミュレータのコンテキスト内ではほとんど意味がありません。これは、開発されたアプリケーションとその動作をテストできるように設計されているためです。いずれにせよ、一部の設定やアプリケーションが存在しない場合でも、Apple Store に行かずにiPhone 13または次世代iPad mini を試すにはこれが唯一の方法であるというのが真実です。

    一昔前はオンラインでシミュレーターを見つけることができましたが、iOS と iPadOS が著作権で保護されていることを考えると、現在ではシミュレーターを見つけるのは非常に困難です。もちろん、いつでも家族や友人にデバイスを見せてもらうことができますが、それができない場合には、Xcode が非常に役立ちます

    iOS デモ: これは Apple ストアに行かずに iPhone をテストする唯一の方法です・関連動画

  • Intel を搭載した新しい Mac のリファレンスが Xcode 13 ベータ版に登場

    新しい Intel Ice Lake SP プロセッサへの言及が新しい Xcode 13 ベータ版に登場しました。Intel から Apple シリコンへの移行の真っ只中に、これらの新しいプロセッサのキャリアは噂の Mac Proであるに違いないと推測されます。 Mark Gurman 氏がすでに、インテル プロセッサーをもう少し長く使用できるという事実など、詳細をいくつか教えてくれたコンピューターです。

    Apple シリコンに移行する前に、Mac Pro を最後にレビューします。

    Intelが昨年4月に発表したIce Lake SPプロセッサは、同社の公式ウェブサイトで「高度なパフォーマンス、セキュリティ、効率性を備え、より強力なAIとIoTのワークロードを処理するために人工知能アクセラレーションを搭載している」と説明されている。このチップは、Apple が開発しているとされる2 台の Mac Pro のうちの 1 台で十分に使用できる可能性があります。

    今年1月、ガーマン氏は、AppleがMac Proの2つの新しいバージョンを開発中で、そのうちの1つは現在知られているものよりも著しく小型であることを明らかにした。その後の噂では、少なくともApple が M1 プロセッサを発表したときに発表した 2 年間の移行が完了するまでは、Apple が大型 Mac Pro に Intel チップをもう少し長く搭載し続ける可能性があることが示唆されました

    これにより、新しく再設計された Mac Pro や小さなお子様でも、すでに Apple プロセッサを楽しんでいただけることを願っています。これらの Mac は、噂の 14 インチおよび 16 インチ MacBook Pro とともに、早ければ今年 10 月に登場する可能性があります。一方、大型の Mac Pro はIntel プロセッサを使用したアップデートを受け取り、2022 年 10 月までに Apple シリコンへの移行を完了する予定です。

    真実は、M1 プロセッサーが提供できるパワーは驚異的であるということです。それだけでなく、消費量や発熱量も非常に少ないので、 驚くほど効率が良いのです。それでも、最も強力な Mac Pro は、非常に特定のユーザーを対象としたコンピューターであり、とりわけ、使用するソフトウェアが ARM アーキテクチャに更新されるまで待つ必要があるユーザーであることを念頭に置く必要があります。したがって、Xcode 13 ベータ版が示唆しているように、Intel プロセッサを搭載した Mac Pro の最終リビジョンは非常に理にかなっています。

    Intel を搭載した新しい Mac のリファレンスが Xcode 13 ベータ版に登場・関連動画

  • Apple Silicon: 独自プロセッサへの驚異的な移行の詳細

    それはリークされており、最も重要な噂の 1 つでした。Appleが自社の Mac で新しいハードウェアの移行を発表するというものでした。 3番目。最初は 1994 年に Motorola の 68000 シリーズ プロセッサから IBM PowerPC に移行しました。わずか 11 年後、Apple は PowerPC から Intel への新たな移行を発表しました。そして 15 年後の今年 2020 年は、Apple が Mac から商業的にApple Siliconと呼ばれるものに移行するという最後のステップを迎えました。

    これをよりよく理解するために、移行とは、企業が別のブランドだけでなく、自社のプロセッサーを変更することを決定することです。プロセッサーは、別の異なる互換性のない命令セットを使用して他のブランドに変更されます。そして、これには明らかに、古い命令セットですでに動作していたすべてのソフトウェアを新しい命令セットに移行および変換する必要があります。

    歴史的背景: 現在の移行を理解するための以前の移行がどのようなものであったか

    1994 年に、Motorola 自体が、Motorola、IBM、Apple が参加する AIM アライアンスによって作成された PowerPC チップに向けた 680×0 アーキテクチャの使用を中止しました。これにより、PowerPC RISC アーキテクチャを使用するようになりました。別の一連の異なる命令は、新しいプロセッサでの古いプロセッサのエミュレーションを通じて解決されました。次の RISC PowerPC から Intel x86 への移行は、より複雑でした。

    PowerPC から Intel への移行は 2005 年に導入されました。

    PowerPC から Intel への移行は、大きな技術的課題でした。各アーキテクチャの低レベルの命令と動作は、データバイトの表現方法に至るまで、まったく異なりました。

    PowerPC では、バイト シーケンスを表す場合、バイト シーケンスは左から右の順にメモリに格納されます。0A0B0C は、最初の位置に 0A、2 番目の位置に 0B、3 番目の位置に 0C として格納されます。いわゆるビッグエンディアン。しかし、Intel はバイトの逆読み取りに基づいて逆の処理を行い、最初の位置に 0C、2 番目の位置に 0B、最後に 0A を格納します。リトルエンディアン方式。これは、Intel 上で実行される PowerPC プログラムによって提供されるデータはすべて、メモリ内のバイトの順序をリアルタイムで逆にする必要があり、これがパフォーマンスの問題を引き起こすことを意味しました。

    PowerPC から Intel への移行は、両方のアーキテクチャ間に大きな違いがあるため非常に複雑でしたが、Apple は両方のアーキテクチャ間で先駆的なリアルタイム コード変換ソフトウェア、Rosetta を使用して良好な結果を達成しました。

    既存のすべての PowerPC プログラムを Intel 上で実行するために、 Apple は Rosetta と呼ばれる当時の先駆的なソフトウェアを作成しました。この目的は、Intel 上で実行する PowerPC ソフトウェアをエミュレートまたは仮想化することではありません (新しいコンピュータではパフォーマンスが大幅に低下する可能性があります)。ロゼッタは、PowerPC によって実行される低レベル コードをインテル上の同等の命令に自動的かつ透過的に変換します。そして、メモリに格納するときのバイトの順序をビッグエンディアンからリトルエンディアンに変更しました。

    ロゼッタ、これを理解することは非常に重要です、それは翻訳者です。名前の由来となった石と同様に、この石にはエジプトの象形文字、デモティック文字、古代ギリシャ語の同じテキストが含まれており、学者が古代エジプトの象形文字を理解して翻訳し、その意味を理解できるようになりました。

    以前の Motorola の PowerPC への移行で使用されていたエミュレーションとは対照的に、Rosetta は PowerPC G3、G4、および AltiVec の低レベル命令 (SIMD 浮動小数点演算) を Intel に変換しました。ただし、macOS 9 以前のアプリや、G5 命令やカーネル拡張機能を使用するアプリはサポートされていませんでした。

    Rosetta、PowerPC を Intel に翻訳したもの

    変換はアプリの実行時に行われるため、当時の Intel プロセッサと PowerPC プロセッサの能力差をほぼ完全に想定できるほどの機器のパフォーマンス コストが発生しました。このように、Rosetta を使用して実行するたびにリアルタイムで翻訳できるアプリは、アプリやその複雑さに応じて、元のパフォーマンスの 70 ~ 90% のパフォーマンスを発揮しました。

    PowerPC から Intel への移行期の Rosetta は、古いアーキテクチャのバイナリのみを含むアプリケーションの実行中に、この処理を命令ごとに実行するリアルタイム トランスレータでした。

    話のこの部分から学ばなければならない重要なことは、Rosetta は PowerPC アプリが実行されているときはいつでも機能し、リアルタイムで翻訳されるシステム サービスだったということです。さらに、システムの下位レベルで動作する最も複雑なアプリでは問題が発生する可能性があり、より複雑なバイナリへの変換が必要になるため、すべてのソフトウェアをサポートしていませんでした。また、カーネル拡張機能の翻訳もサポートしていませんでした。

    Apple Silicon 上のアプリ、実行できるアプリとその実行方法

    この移行がどのようなものになるかについては WWDC の前にすでにお話ししましたが、現在はこれ以上の憶測はなく、現在の移行に完全に移行しています。さらに、すべてを確認することで、あの製品とこの製品の違いや、互換性の向上や開発者にとっての使いやすさに加えて、Apple がどのように非常に重要な教訓を学び、プロセスに大幅な改善を適用したかをよりよく理解できるようになります。

    まず理解しなければならないのは、 Big Sur は Apple Silicon または Intel 上で完全にネイティブに実行されるということです。つまり、Apple には、オペレーティング システム全体とその依存関係のそれぞれについて、翻訳や調整を行わずにネイティブにコンパイルされた 2 つのバージョンがあります。

    サードパーティツールを実行する Apple Silicon

    これらすべてに加えて、Apple 内で非常に注目すべきマイルストーンが達成されました。iOS、iPadOS、tvOS、watchOS、macOS にサービスを提供するすべてのライブラリが Apple Silicon で同じになりました。各システムにバージョンはなく、まったく同じです

    違いは、各システムでの動作が異なる可能性があることですが、命令とその呼び出し方法は同じであるため、あるシステム用に作成されたアプリを別のシステムでも簡単に実行できるということです。 Metal グラフィック ライブラリから始まり、SwiftUI アプリ API、CoreData (データベース)、CoreLocation (ローカリゼーション)、CoreML (機械学習)、および仕様が同じで各システムの特定の動作を作成する他の数百ものライブラリを通過します。 。

    Apple は、Apple Silicon 用のさまざまなシステムのすべての開発ライブラリと依存関係の単一バージョンを作成することに成功しました。これにより、すべてのコンポーネントを均一な方法で独自に進化させることができます。

    たとえば、アプリのボタンを作成する場合、命令、パラメータなどは同じですが、Mac で実行するとデスクトップ システムの外観でボタンが作成され、iOS の場合は強調表示された青いテキストとして表示されます。 tvOS ではその外観を持つ要素として、watchOS ではその特徴的な要素として。同じ命令でも、異なる動作が各システムに適応されます (この変更が存在する可能性がある場合)

    Xcode 12 で選択できるビルド。

    これは、システム ライブラリに対するネイティブ開発の大部分は、このタイプのチップを搭載したコンピュータ上で Xcode 12 を使用してプロジェクトを開き、対応するユニバーサル バイナリを生成することによって Apple Silicon に「移植」されることを意味します。実際、Apple はすでにすべてのアプリをこの新しいシステムにネイティブに移植しています。これには、メモ、写真、メールなどのシステムに含まれるアプリだけでなく、iWork スイート (Pages、Keynote、Numbers) とその 3 つのプロフェッショナルも含まれています。優れたアプリ: Final Cut Pro X、Logic Pro X、Xcode。 Apple 独自のソフトウェア、コンポーネント、ライブラリなどはすべて、変換せずに Apple Silicon 上でネイティブに動作します。

    Mac 上のアプリは再びユニバーサルになります。Intel を搭載した Mac と Apple Silicon を搭載した Mac のバイナリが 1 つのファイルに含まれるようになります。しかし、Mac App Store からダウンロードした場合、彼らは私たちのコンピュータからバイナリを入手するだけになります。

    しかし、残りのアプリはどうなるでしょうか? Intel ベースの Mac ですでに使用しているアプリは、新しい Apple Silicon ベースの Mac でも動作しますか?答えは「はい」ですが、微妙な違いがあります

    依存関係: アプリをより適切に移行するための鍵

    すでに述べた新しい概念: 依存関係。この概念は、アプリが Apple Silicon 上でどのように動作するかを理解するために、さらには新しい Mac 上で何も変更せずに実行できる iPhone および iPad アプリについても理解するのに不可欠です。依存関係は、私たちが作成したものではなく、特定の機能を提供するライブラリであり、意味がない場合や開発作業を容易にする場合に、すべての作業を最初から実行する必要がないようにするために使用されます。

    AppleシリコンSoC

    たとえば、Facebook と統合したい場合は、独自の統合を作成して実行することも、それを実行するためのすべての機能がすでに提供されている会社のライブラリを使用することもできます。複雑な数学的演算を実行したい場合は、ライブラリを作成するか、探している関数を提供するライブラリを探すことができます。他の場合には、Apple API の動作をより簡単な方法で管理するのに役立つ依存関係 (ラッパー) を探したり、Apple が提供しているが別の会社のソリューションを使用したい何かを実行するための代替方法を探したりします。

    アプリの依存関係は、Apple Silicon への移行が簡単かどうかの鍵となります。 Apple 外部の依存関係を使用しない場合は、すべてが非常に簡単になりますが、Apple 以外の依存関係を使用すると、場合によっては事態が複雑になる可能性があります。

    たとえば、データを暗号化したい場合は、Apple のネイティブ API (ライブラリ)、CryptoKit または CommonCrypto を使用できますが、サードパーティによって作成された CryptoSwift を使用することもできます。データベースを使用したい場合は、Apple のネイティブ データベースである Core Data を選択するか、非常に効率的で実用的なソリューションとなる Realm (現在は MongoDB が所有) を使用することができます。私のアプリが Apple ライブラリを使用している場合、私のアプリの依存関係はネイティブであり、これらはすべてすでに翻訳されており、Apple Silicon 上でネイティブに動作します。しかし、Realm を使用するとどうなるでしょうか?

    そうですね、2 つのことが起こります。依存関係がソース コードとして共有されている (オープン ソースである) 場合、Swift、Objective-C、C、C++ およびその他の言語との互換性は変わらないため、ほとんどの場合、正しくコンパイルされます。 Xcode 。したがって、アプリを Xcode 12 でユニバーサル バイナリとしてコンパイルすることができ、問題なく動作します

    ただし、依存関係はバイナリにすることもできます。つまり、知的財産やその他の理由でコードを確認できないように事前にコンパイルされています。この場合、問題があります (または問題がありません)。ライブラリのコンパイル済みバージョンには、x86_64 (Intel) および arm64 (Apple Silicon) アーキテクチャ用の実行可能ファイルがバイナリに含まれている必要があるためです。そうであれば問題ありません。しかし、バイナリが x86_64 のみの場合は状況が変わります。 arm64 用にコンパイルされたバージョンを提供するよう開発者に依頼する必要があります

    すべてのコードとその依存関係が ARM 上でコンパイルできる場合にのみ、Apple Silicon 上のネイティブ バイナリを使用してユニバーサル アプリを作成できます。そうでない場合は、Rosetta 2 の翻訳版を作成する必要があります。

    それが存在しない場合はどうなりますか?アプリ全体がアーキテクチャを完全にサポートする必要があるため、Apple Silicon でネイティブ コーディングを使用してアプリのユニバーサル バージョンを作成することはできません。唯一の解決策は、Rosetta 2 で翻訳版を作成することです。

    ロゼッタ 2 の機能

    ここに、Rosetta 2 と Rosetta の新しく重要な違いが生じます。 PowerPC から Intel への移行における Rosetta は、アプリの実行中にリアルタイムで変換するプロセスでしたが、 Rosetta 2 はアプリのコンパイル時またはインストール時に変換します。したがって、手順が翻訳されると、新しいアプリは「ネイティブであるかのように」動作します。

    コードの低レベルの最適化は、ネイティブに生成された場合と翻訳された場合で同じではないため、同じパフォーマンスが得られないことは明らかですが、重要なことは、Rosetta 2 プロセスが実行されるときに完了するということですそのアプリをコンパイルします。この後、アプリは Apple Silicon のネイティブであるかのように実行されます。 Rosetta 2 は、macOS アプリ、iPadOS から移植された Catalyst アプリ、ゲーム (グラフィック ライブラリとして Metal を使用する)、ブラウザ、コンパイル、インストール、または最初の実行で (場合によっては) JIT コンパイラー (ジャストインタイム) を変換できます。 )JavaScript などのスクリプト言語、GPU に対する低レベルの Metal グラフィックス プログラミング、プロセッサのニューラル エンジンを使用した Core ML による機械学習コードなどを使用します。

    Rosetta 2 は、コンポーネントのいずれかが arm64 アーキテクチャを使用していない場合、アプリを Apple Silicon に変換します。ただし、これはアプリのインストール時または最初の実行時に実行されるプロセスです。一度完了すると、Rosetta 2 は再びアプリに介入しなくなります。

    すでに述べたように、 Rosetta 2 は瞬間に応じて異なるタイミングで翻訳します。開発者は、適応したアプリをアップロードした可能性がありますが、ARM にすべての依存関係があるわけではないため、Rosetta 2 で翻訳されたアプリとしてアップロードしました。その場合、アプリはすでに変換されており、すぐに開始またはインストールされます。ただし、開発者によって移植されておらず、Intel 上にのみ存在するアプリを Mac App Store からダウンロードした場合、アプリのインストール時に関連する変換が Apple Silicon に行われます。 Web サイトからアプリをダウンロードし、それも適応されていない場合、最初に実行するアプリが翻訳され、起動に通常より少し時間がかかります。

    ただし、Rosetta 2 は、Intel の AVX、AVX2、または AVX512 スイートからの低レベル命令を使用するアプリを変換して実行することはできません。そのような場合、Apple Silicon を使用しているときにそれらを使用しないように、それが実行されているシステムについて問い合わせる必要があります。これらの命令は、データの種類に応じて受け取ったデータを管理する方法と、データがチップの動作方法 (プロセスではなく) にどのように影響されるかを CPU に指示するものであり、Apple Silicon には同等のものはありません。 Intel 上で実行される仮想マシンは (仮想化命令のセットも翻訳不可能なため) 動作せず、カーネル拡張機能も動作しません。カーネル拡張機能は非常に特殊な要素であり、これを使用する開発者はコードを適応する必要があります (制限事項)。すでにロゼッタを持っていました)。

    ロゼッタ 2 の特徴

    Rosetta 2 に関する最後の非常に重要な注意事項: トランスレータはシステムによって更新される可能性があります。そのため、Apple は後続のバージョンで翻訳プロセスを最適化および改善することができ、翻訳されたアプリを再度実行すると、コードを改善してより最適化および効率化することで、他に何もすることなく「再翻訳」されます。さらに、アプリはデジタル署名の整合性を保持し、翻訳後にセキュリティ上の問題が発生しないことを保証します。

    信じられないほどの変遷

    これは私の個人的な意見であり、開発者としての長年の経験とシステムの知識に基づいたものです。そしてApple は、場合によっては再コンパイル作業など、開発者の作業をはるかに容易にする素晴らしい仕事をしてくれたと思います。 Rosetta 2 へのすべての翻訳と新しいアーキテクチャでのアプリのテストは、Apple Developer Transition Kit ( A12Z を搭載した Mac mini ) を使用してのみ実行できることに注意することが重要です。

    ネイティブ開発に注力すればするほど、移行は容易になります。 Rosetta 2 には、インテルで既に使用しているアプリの大部分を問題なく引き続き楽しめるようにするという目的があることを忘れないでください。

    私はとても興奮しており、新しいデバイスを試して、Apple が言うように本当に良いものであるかどうかを確認するのが待ちきれません。すぐにわかります。

    Apple Silicon: 独自プロセッサへの驚異的な移行の詳細・関連動画