Akira Hayashi (林 晃)– Author –
Akira Hayashi (林 晃)
Representative(代表), Software Engineer(ソフトウェアエンジニア)
アールケー開発代表。Appleプラットフォーム向けの開発を専門としているソフトウェアエンジニア。ソフトウェアの受託開発、技術書執筆、技術指導・セミナー講師。note, Medium, LinkedIn
-
Representative of RK Kaihatsu. Software Engineer Specializing in Development for the Apple Platform. Specializing in contract software development, technical writing, and serving as a tech workshop lecturer. note, Medium, LinkedIn
-
開発
SwiftからC言語の関数を使う
SwiftからC言語の関数を直接使うためには、Swiftでメモリバッファを考慮したコードを書く必要があります。Unsafe系のタイプを使う必要があり、分かりづらいコードが多くなります。 この記事ではコード例を紹介します。 【String から Cスタイル文字列を渡... -
開発
Hyper-V を使った Ubuntu Server のインストール
Hyper-Vを使い、仮想マシンに Ubuntu Server をインストールする方法を解説します。この記事では Windows Server 2016 を使用しています。Hyper-V が既にインストールされていることを前提にしています。Hyper-V のインストール方法については、次の記事を... -
開発
Windows Server 2016 への Hyper-V のインストール方法
Windows Server 2016 に Hyper-V をインストールするには以下の様に操作します。 基本的には画面の指示に従っていくだけでインストールできます。 (1) サーバーマネージャーを起動する。 (2) 「管理」ポップアップボタンをクリックし、「役割と機能の追加... -
開発
OpenCVで使われている並列化を見てみる
このブログでも前に扱ったOpenCVという画像処理のライブラリがあります。OpenCVには色々な画像処理のアルゴリズムが実装されていますが、実際に使って見ると、自分で実装したときよりもかなり早いなぁということがあります。 「なぜ、速いのだろうか?」と... -
開発
docker+nginx+phpの環境を作る
phpinfo()の出力結果 -
開発
XcodeでGoogle Test (gtest) を使えるようにセットアップする
Xcodeにはユニットテストを実行する機能があります。Xcodeから実行できるユニットテスト機能はXCTestフレームワークのチェック関数を使って、クラスやメソッドの戻り値が期待値通りになっているかをチェックします。チェック結果はXcodeの中でリスト表示さ... -
開発
macOSでDockerを使うときはプライバシー設定も確認する
ファイルとフォルダのアクセス権を設定する -
開発
【Python】loggingを使ってログを出力する
定期的に実行されるバッチスクリプトなどで問題が起きたときの記録や、問題が起きていなくても、実行したことを記録したいときなどには、ログを出力することが一般的です。 また、デバッグ用に特別なログを入れておき、不具合の原因を探すということもあり... -
「基礎から学ぶSwiftUI」 の iOS 14 及び Xcode 12 対応情報公開のお知らせ
「基礎から学ぶSwiftUI」はiOS 13 及び Xcode 11 に基づいて書かれています。iOS 14 及び Xcode 12 では少し変わっているところがありますので、その対応情報を公開しました。 対応情報はC&R研究所の訂正情報のページからご覧頂けます。 以下のページから... -
開発
【Python】ArgumentParserでコマンドライン引数を取得する方法
Pythonでシェルスクリプトを作ったときに、ArgumentParserクラスを使うと、簡単にコマンドライン引数を解析して取得できます。 ArgumentParserクラスは、次のような機能を持っています。 順番が決まっている必須引数の解析・取得 オプション引数(デフォル... -
開発
APFS非対応のOSでも開けるディスクイメージの作り方
macOS High Sierra 10.13からファイルシステムがAPFSに変わりました。それにより、ディスクユーティリティが作成するディスクイメージファイルのファイルシステムもAPFSになっています。 そのため、macOS 10.13未満のOSで開こうとすると開けなくなってしま... -
開発
Finderと同じ方式のZipファイルをターミナルやシェルスクリプトで作る
macOSのFinderにはファイルやフォルダを圧縮してZipファイルを作る機能が入っています。このZipファイルはWindows上で作成するZipファイルとは少し異なります。 このFinderで作られるZipファイルと同じ方式のZipファイルはターミナルからも作成できます。... -
開発
インストーラのNotarization Service対応
インストーラ形式で配布しているアプリでは、アプリ本体のNotarization対応の他に、インストーラもNotarizationに対応する必要があります。 この記事では、macOSのインストーラのNotarization対応について解説します。 【インストーラの作り方のあらまし】... -
開発
Combine入門 | Combineを使ってネットワーク接続する方法
この記事では、Combineを使ってネットワークアクセスする方法を解説します。 Combineが初めての方やCombineの他の例については、次の記事もご覧ください。 [clink url="https://www.rk-k.com/archives/3937"] DataTaskを実行するPublisherを作る Combineを... -
開発
Combine入門 | 独自のタイプをCombine対応にする
Combineはアップル純正の非同期処理を実装するためのフレームワークです。SwiftUIのバインディングなどでも使われています。少し分かりにくいのですが、重要なフレームワークです。 Combineが初めての方は、次の記事もご覧ください。 [clink url="https://... -
開発
Apple Notarization Service に対応するためのXcodeの設定
Apple Notarization Service に対応させて、アプリの公証を受けるためには、いくつかの方法があります。 この記事では、複雑なケースも含めて、公証を受けるためのXcodeのプロジェクトの設定方法を解説します。 公証が始まる前にリリースしたアプリについ... -
開発
Combine入門 | CombineでTimer処理を行う方法
TimerもCombineに対応しています。Timerで定期的に実行される処理をCombineを使って設定出来るようになっています。 この記事ではTimerの処理をCombineで行う方法についてです。 Combineが初めての方は、次の記事もご覧ください。 [clink url="https://www... -
開発
Combine入門 | CombineでNotificationを受け取る方法
Combineはアップル純正の非同期処理を実装するためのフレームワークです。SwiftUIのバインディングなどでも使われています。重要なフレームワークです。 【動作環境】 Combineは次のような環境で動作します。 サポートしているOS Combineがサポートしてい... -
開発
HTTPのステータスコードへの対応
Webサーバーと通信するクライアントアプリのエラー処理で必ず必要になるのがHTTPのステータスコードです。 色々なコードが定義されていますが、これだけ知っていれば、とりあえずは大丈夫だと思われるものをまとめました。 通信成功 通信が成功したときは2... -
開発
Nginxで帯域制限を行う方法
作っているアプリからHTTPに接続するときに、ネットワークの速度を制限したいことがあります。例えば、とても遅いネットワークや海外のインフラが整備されていない地域から接続されるときに、正しく動くかを確認したいときなどです。 WebサーバーをNginxで...