swift– tag –
-
ブログ
ネイティブ言語でクロスプラットフォーム対応
私が業務で開発するアプリはmacOS用のアプリが多くあります。そのため、使用するプログラミング言語はネイティブ開発対応の以下のコードが多くなります。 Objective-C / Objective-C++ Swift C++ C言語 プログラミング言語の選択 どの言語を使用して実装す... -
開発
Swiftでの浮動小数点数のバイナリ表現の扱い方
バイナリファイルやバイナリデータバッファに浮動小数点数を格納するには、IEEE 754で定義されている方法で符号化します。Swiftでは、BinaryFloatingPointプロトコルでIEEE 754に対応したメソッドなどが定義され、Float、Double、Float80がBinaryFloatingP... -
開発
Swiftでビットパターンで整数型を変換する
Swiftでビットパターンを維持した状態で整数型を変換するには、次のイニシャライザを使用します。 init<T>(truncatingIfNeeded source: T) where T : BinaryInteger これを使って、符号無し整数と符号有り整数との間で変換できます。例えば、UInt8で... -
開発
SwiftのUnsafeMutableBufferは[]演算子よりも速い
UnsafeMutableBufferを使った記事を書いていて、ふと疑問に思った事があります。 UnsafeMutableBufferを使ったコードと、[]演算子を使ったコードはパフォーマンスがどの程度変わるのか?です。 この記事ではUnsafeMutableBufferと[]演算子のパフォーマンス... -
開発
SwiftでCのポインタのインクリメント・デクリメントのコードを書き換える
C/C++でポインタを使ったバッファアクセスを行うときに、頻繁に使用するのがポインタのインクリメントとデクリメントです。ポインタの加算・減算なので、参照位置を変更することができ、連続したバッファで使用して順次アクセスができます。 この記事では... -
開発
Cのバイナリデータを確保する処理をSwiftで書く
昔作ったプログラムをSwiftで書き直す過程で、ポインタを使った処理の書き換えが必要になりました。このときに、どのように書いたかをまとめてみました。今回はその中からバイナリデータを確保する処理についてです。 なお、作って見て思ったのはSwiftで書... -
開発
Objective-CのコードをSwiftに対応してブラッシュアップさせる
macOSアプリは歴史的な経緯がある処理や既存のコードを活かすべきケースが多くあり、Swiftだけでは完結できないことが多くあります。そのため、Objective-CのコードやC/C++のコードを共存させています。 そのような、複数の言語が共存している中でコードを... -
お知らせ
「基礎から学ぶ SwiftUI」を執筆しました
「基礎から学ぶ SwiftUI」という本を執筆しました。SwiftUIの解説本です。詳しくはこちらです。 基礎から学ぶ SwiftUI -
開発
Swift 5 + Xcode 10.2 の変更点で気になったところ
Swift 5 + Xcode 10.2での変更点をリリースノートを元にまとめると以下の様になります。 (但し、個人的に気になったところだけ書いています。) ABI安定化とSwift 5 ランタイムについて Swiftコマンドラインツールで Swift 5 ランタイムが必須になった。S... -
ブログ
「iPadで学ぶ はじめてのプログラミング」の見本誌が届きました
新刊の「iPadで学ぶ はじめてのプログラミング」の見本誌が届きました。 今回は全ページフルカラーです。「Swift Playgrounds」のスクリーンキャプチャも全てカラーです。 -
開発
iPadで学ぶ はじめてのプログラミング
2018年1月20日 公式ページへのリンクを追加しました。2018年6月8日 SwiftPlaygrounds v2.1への対応方法へのリンクを追加しました。 「iPadで学ぶ はじめてのプログラミング」というタイトルの本を執筆しました。iPadで「Swift Playgrounds」を使ってプ... -
お知らせ
Swift / iOS アプリ開発ハンズオンセミナーとMOSA Tech Meeting 第22回のお知らせ
このブログでのお知らせがすっかり遅くなってしまいましたが、8月3日にハンズオンセミナーをMOSAで開催します。私は前半のSwiftのハンズオンセミナーを担当します。 後半のアプリ開発ハンズオンセミナーをより効果的に学べるように、Swiftの基本的なところ... -
お知らせ
AKIBA.swiftさんとの合同勉強会で発表しました 「Macアプリのインストーラ作成ツール Swift版」
昨日(2017/05/15)にAKIBA.swiftさんとの合同勉強会がありました。そこで、私は「Macアプリのインストーラ作成ツールSwift版」というタイトルで発表しました。 Macのインストーラ作成は、いくつかの手順が有り、毎回、編集が必要なところがあったり、煩雑... -
ブログ
GW中もいつもと同じ
GWも残すところ今日1日です。GW中は出かけたりしましたが、開発業務、新刊の原稿、原稿執筆用ソフトの開発、勉強会の準備をやっていました。いつもと同じということです。 新刊のこと 新刊は、プログラミングの入門書です。昨年、執筆した「小学生でもわか... -
開発
Swiftでコマンドラインツールを作る(コマンドライン引数と標準入出力)
Swiftでコマンドラインツールを作るときに必要になることを調べました。 プロジェクトの作成方法 Xcodeでコマンドライン用の引数を作るには、プロジェクトのテンプレートで、「macOS」の「Command Line Tool」を選択します。プロジェクトのオプションで言... -
開発
Ubuntu上でSwiftを使うためにCLionを試してみる
Ubuntu Linux上でSwiftを使った開発を行うために、CLionを使用する方法についてです。 Swiftのセットアップ clangのインストール Swiftはclangを使用しているので、まず、clangをインストールする必要があります。インストールするには、次のコマンドを実... -
開発
Try CLion on the Ubuntu Linux to develop with Swift
The page was moved. New URL is here. https://www.rk-k.com/en/archives/2838 -
ブログ
Swift 3のセミナー資料作成
12/8に行う「Swift 3で何が変わり既存のコードをどう変えるのか」の資料作成中です。 MTCCoreで行ったSwift 3対応作業と解説のまとめ、Swift API Design Guidelinesで何が書かれているのかのまとめを書きました。 まだ、DTP前のテキストの段階だけど、それ... -
お知らせ
「Swift 3の変更点、TensorFlowの可能性を実感しよう」というセミナーを担当します
MOSA主催で、「Swift 3の変更点、TensorFlowの可能性を実感しよう」というセミナーを行います。私はSwift 3の変更点についてのセッションを担当します。 GitHubにMTCCoreというライブラリを置いています。このライブラリはMultiTextConverterのテキストエ... -
開発
SwiftでのバッファアクセスはwithUnsafeBytesを使う
Swiftで「Data」構造体を使ってメモリを確保し、その確保したメモリに値を書き込むときにパフォーマンスが良い方法はどれになるかを比較してみました。 比較した方法 比較したのは次の3つの方法です。 「Data」の「[]」演算子を使って直接アクセスする方法...
12