2021-01-01から1年間の記事一覧
半分ネタで半分本気です。 JS方面 Node.js npm/yarn TypeScript Babel, Metro iOS方面 Xcode CocoaPods Android方面 Android Studio Gradle 達と仲良くなり(詳しくなり)、あとはReact Native Upgrade Helperで差分をチェックすれば大体いけるはず。Let's u…
Android O(Android 8.0)から追加されたNotification Channelsですが、これの日本語訳がぶれていてどっちで会話すればいいのか困っています。 「通知チャンネル」 https://developer.android.com/guide/topics/ui/notifiers/notifications.html?hl=ja#Manag…
iOS(ないしAppleプラットフォーム全般)のFirebaseといえばこれまでインストール方法はCocoaPodsが基本だったが、バージョン8.0.0からSwiftPMでもインストールできるようになっている。 https://firebase.google.com/docs/ios/installation-methods#swift-p…
こんにちは。近頃はSwiftUIでの新機能開発に勤しんでいる id:ikesyo です。 そんなこんなで自分が所属しているはてなのマンガアプリチームでは最近、iOSエンジニア・Androidエンジニアを積極採用しようと動き出しています。その中でまず求人票の内容を検討し…
GitHubのPRのコードレビューではsuggestionという、PRの差分に対して変更を提案する機能がある レビュイーは、レビュワーからのsuggestionを1つずつ適用(コミット)するのと、複数個まとめて適用することができる プルリクエストでのフィードバックを取り込…
本日7月29日で35歳になりました。この1年は Webアプリ開発チャレンジ GoでGraphQL API作ったり Next.jsでフロントエンド作ったり SwiftUIをガッツリ使い始めた という感じでした。 社のDeveloper Blogのアンケートシリーズに取り上げてもらったりもしました…
なんと20年分のバックナンバーが収録された総集編の特別企画「進化するプログラミング言語の魅力」のSwiftの章を担当させていただきました。 WEB+DB PRESS総集編[Vol.1~120] (WEB+DB PRESSプラスシリーズ)作者:泉水 翔吾,櫻庭 祐一,宇佐美 健太,笹田 耕一,牧…
SwiftUIを使い始めて、フレームワークが提供する既存のViewに何があって、どういう表示になるのかがまだピンとこない。そんな状況の手助けになるのがSwiftOnTapというサイトです。 swiftontap.com 各ViewやModifierなどの説明にサンプルコードとその実行結果…
SwiftWasmとは、SwiftをWebAssemblyにコンパイルしてブラウザやその他WebAssemblyランタイムで動作するようにしようという野心的なプロジェクトです。 ちなみにSwiftWasmには id:kateinoigaku さんがco-maintainerとして多大な貢献をされています。 fortee.j…
タイトルがすべてです。意外と忘れがちなので。 developer.apple.com Active Compilation Conditions is a new build setting for passing conditional compilation flags to the Swift compiler. Each element of the value of this setting passes to swif…
uber/mockoloとは Uberが開発するSwift用のモック自動生成ツールで、ここ1〜2年で採用が増えていそうな雰囲気 2019年のSwiftモック事情 - いけだや技術ノート でも紹介しました logmi.jp というものです。 mockoloはv1.1.3からprotocolだけでなくclassのモッ…
App Store Connectのドキュメント(ヘルプページ)にはこうあります: 自動更新登録は、1 か月間の日数ごとではなく、最初の購入の暦日と同じ日に更新します。たとえば、カスタマーが 1 か月の無料トライアルを 1 月 7 日に開始する場合、トライアルが終了す…
let url = URL(string: "https://example.com/foo/bar")! url.path // "/foo/bar" url.path.split(separator: "/") // ["foo", "bar"] url.path.split(separator: "/", omittingEmptySubsequences: false) // ["", "foo", "bar"] url.pathComponents // ["/"…
github.com ⚠️ This is the last planned update for the 2.x version line. After February 28, 2021, 2.x becomes End-of-Life (EoL); no further patches, bugfixes, enhancements, documentation or support will be provided by the project. これまでA…