2019-08-01から1ヶ月間の記事一覧

Learning "5G"

5G(第5世代移動通信システム)について調べたことなど 資料 5Gのリアルと未来 http://www.soumu.go.jp/main_content/000633133.pdf https://bizzine.jp/article/detail/3529 「5Gの周波数の割当て」で何ができるようになる? | 5G | au 5G周波数が4社に割当…

WKWebView の読み込み進捗を表示する

はじめに iOS の WebView の読み込み進捗を示すプログレスバーを表示させたい iOS 5 以降 / Objective-C の時代には プログレス表示に NJKWebViewProgressView を使用していたが WebKit の WKWebView(not UIWebView) と Swift のあたらしい KVO の仕組み(…

パフォーマンスを高める Swift の記述

はじめに Swift の実行速度を向上させたくドキュメントを探すと以下が見つかった。 swift/OptimizationTips.rst at master · apple/swift · GitHub この中から気になったトピックをメモする。 Dynamic Dispatch(動的な呼び出し)を削減する Swift は Object…

MKMapView の地図タイルをオーバーレイする

目的 iOS の MKMapView で表示する地図タイルを標準以外に差し替えたい(ベースタイルの変更) またベースの地図タイルの上に、透明度のあるレイヤーをオーバーレイすることも試したい(範囲を示す、情報を含むタイルをベースに重ねる) 使用するタイル 今回…

本『回転木馬のデッド・ヒート』(村上春樹)の感想

回転木馬のデッド・ヒート (講談社文庫)作者: 村上春樹出版社/メーカー: 講談社発売日: 2004/10/15メディア: 文庫購入: 1人 クリック: 48回この商品を含むブログ (137件) を見る 村上春樹の短編集 / 1985年10月09日発行 収録 レーダーホーゼン タクシーに乗…

Git で Emoji Prefix に関してのメモ

はじめに Git リポジトリに Emoji Prefix のコミットテンプレートを設定してみる。 Emoji Prefix を導入するメリットは 絵文字とコミットが対になるので、コミットの役割が明確になる バグ修正+リファクタリング+機能追加。。。など本来分割すべきコミット…

Android Q is Android 10.

Android は今まで菓子の名前を使っていたが、それをやめるようだ。 First, we’re changing the way we name our releases. Our engineering team has always used internal code names for each version, based off of tasty treats, or desserts, in alphab…

LicensePlist を導入し、アプリで使用している OSS のライセンスを表示する

LicensePlist を使うと iOS アプリに依存している OSS のライセンス表記をまとめることができる CocoaPods も Carthage どちらも対応している これを試してみる。 セットアップ Homebrew 経由で LicensePlist をインストールする。 $ brew install mono0926/…

xxHash v0.7.1 リリース

https://github.com/Cyan4973/xxHash/releases/tag/v0.7.1 2019/8/15 にリリースされた xxHash v0.7.1 についてメモする リリースノートを見る このリリースは XXH3 に対しての多くのユーザフィードバックに基づいた大きな更新が入っている。 アルゴリズム計…

HEIC を JPEG に一括変換する

macOS であれば 下のように sips コマンドを使って HEIC -> JPEG 変換ができる $ sips --setProperty format jpeg PIC.HEIC --out PIC.jpg ただし、ファイル数が多いと一括で変換したくなるので Python スクリプトを作った。(内部で sipsを使用しているので…

iOS アプリで「Zip ファイルをダウンロード→Zip 展開→展開されたファイルをアプリ内で使用」までを試す

はじめに https://daisuke-t-jp.hatenablog.com/entry/2019/08/19/162337 で Zip アーカイブの展開(UnZip)の方法を書いたので、これを発展させて Zip をサーバからダウンロード アプリ内で Zip を展開 展開したデータをアプリで使用 というユースケースを…

iOS で Zip を展開する

はじめに ZipArchive ライブラリを使用すると iOS で Zip を展開(圧縮も)できる。 これは macOS も tvOS にも対応している。 ここでは Carthage での導入について書く。 Carthage でのライブラリ導入について基本的なことは https://daisuke-t-jp.hatenabl…

macOS コマンドでインターネット上のファイルをダウンロードする

curl コマンドに O オプションを指定すれば、ファイルダウンロードできる。 curl -O https://tetsugaku.info/images/melon-and-lemon.png curl コマンドは macOS にデフォルトインストールされているはずなので、気軽に使用できる。 もし、Linux ライクに wg…

読む「伽藍とバザール」

基本情報 基本情報 1999年の出版物。(1997年の公園を書籍化) Linux の開発の成功から OSS についての考察。 従来の「伽藍」方式から見ると、カオスな「バザール」方式の客観的観察。 伽藍(がらん) 大聖堂 「中央集権的」「閉鎖的」で「荘厳」かつ「慎重…

GitHub の Issue / Pull Request に使われるラベル

スクリーンショットは Issues · google/science-journal-ios · GitHub から GitHub で Issue を見ていて good first issue というのがあり、意味が分からなかった。 調べると GitHub ではIssue / PR に使用できるラベルがデフォルトでいくつか用意されていて…

SNS に対するネガティヴな意見をまとめる

この記事について SNS に対してのネガティヴな意見を ソースの URL と引用と共に まとめる 著名人 Linus Torvalds(リナス・トーバルズ) Linux 開発者 gigazine.net トーバルズ氏はさらに匿名性が過大評価されているとして、「匿名というのは非常に不快だ。…

Carthage で外部ライブラリを導入する

Carthage とは? 日本語の読みは「カルタゴ」でいいかしら。 名前の由来は、現在のチュニジアにかつてあった古代の国家の名前らしい。 GoogleMap でみるとこんな場所。 CocoaPods のように Xcode プロジェクトに手軽に外部ライブラリを取り込めるパッケージ…

SwiftLint を導入する

このページは SwiftLint について、導入する方法と使い方を簡単に記す。 もっと詳しく知りたい場合は SwiftLint のプロジェクトを見るべき。 また SwiftLint を試したサンプルプロジェクトは GitHub にある。 SwiftLint とは? Swift コードのスタイルをチェ…

プロジェクトルートにある .swift-version ファイルは何か?

はじめに ルートに .swift-version ファイルがあるプロジェクトを発見することがある。 たとえば、下記のリポジトリ。 https://github.com/IBM-Swift/BlueSocketblob/master/.swift-version https://github.com/yahoojapan/UICollectionViewSplitLayout/blob…

特定ドメインを特定/除外して Google 検索する

ドメインを特定して検索 site:ドメイン を検索ワードに追加する。 例) ねとらぼ(nlab.itmedia.co.jp) 内で "ヤドン" を検索する。 ヤドン site:nlab.itmedia.co.jp ヤドン site:nlab.itmedia.co.jp ドメインを除外して検索 -site:ドメイン を検索ワードに追…

Huawei が発表した「HarmonyOS」

gizmodo.com 記事から抜粋 発表について 2019/8/9 HUAWEI DEVELOPER CONFERENCE2019 にて Huawei が発表 背景と HarmonyOS Huawei はアメリカ合衆国の圧力により、 Android OS が使用できなくなることも考慮しなくてはならなくなった そのかわりとなる独自の…

Google の OSS プロジェクトはテストデータ(テキスト)に何を使用している?

github.com github.com brotil と snappy は Google でリポジトリ管理されている圧縮ライブラリ。 それぞれテストデータは以下の場所にある。 brotli/tests/testdata at master · google/brotli · GitHub snappy/testdata at master · google/snappy · GitHu…

2000年からの10年は仮想化の時代、2010年からの10年はクラウド化の時代

Coursera の Google が提供している講座の中で、タイトルの様なことが書かれていたと思う。(どの講座かは忘れた) ふと思い出したので、事実を年代でリストしたい。 リスト 1995 Java 発表(Java VM) 2006 AWS 開始(Amazon EC2) 2008 Hyper-V 発表 VMWare 創…

GDPR の触りをメモ

名称 General Data Protection Regulation 日本語では「一般データ保護規則」と訳す。 概要 EEA での個人データの保護規則。2018年5月25日 から実施。 EEAとは. 欧州経済領域(European Economic Area)の略。 EU 加盟国+アイスランド、リヒテンシュタイン、…

AVSpeechSynthesizer でテキスト読み上げ

AVFoundation の AVSpeechSynthesizer クラスを使うと、テキスト(文字列)を音声で読み上げることができるのでメモ。 サンプル 最低限以下で読み上げができる。 import AVFoundation // シンセサイザーを準備する let synthesizer = AVSpeechSynthesizer() …