この記事はレコチョク Advent Calendar 2022の24日目の記事となります。 はじめに 初めまして、永田です。 株式会社レコチョクでiOSアプリエンジニアとして働いています。 本日はクリスマスイブということでいよいよ年の瀬ですね。 今年の個人的ベストライブは「NUMBER GIRL 無常の日」、ベストアルバムは柴田聡子「ぼちぼち銀河」でした(柴田聡子さんかなりオススメです)。 さて、現在私が開発を担当しているPlayPASS Musicアプリではリアーキテクチャを推進しています。 その中でSwift 5.7の新機能を用いた設計を導入したので、そのご紹介をしようと思います。 開発環境 本記事で扱うコードは以下の環境で動くことを想定しています。 Xcode 14.1 Swift 5.7.1 iOS 16.1 題材となるアプリの概要 PlayPASS Musicアプリでは、1つのア
はじめに SWETグループiOSチームのkariad(@kariad_uu)です。 本記事はiOSDC 2020 Japanにて発表した「継続的にアプリのパフォーマンスを計測する」の内容を元にブログという形で改めて紹介する記事となります。 発表時のスライドは以下を参照ください。 iOSチームではiOSアプリのパフォーマンス計測に取り組んできました。 iOSアプリのパフォーマンス計測方法はたくさんありますが、中でもInstrumentsを利用したパフォーマンス計測とその自動化について紹介します。 なぜパフォーマンス計測が必要なのか? 取り組んだ計測方法についてご紹介する前にアプリにとってパフォーマンスとその計測がなぜ重要なのかという点を説明します。 起動に時間がかかる、読み込みに時間がかかるアプリは動作が遅くユーザにストレスを与えてしまいます。 短時間で熱くなってしまうアプリでは端末が熱くて
良かったものを年末にまとめる回、2022年版。 ストレスレストーキョー PC作業用のデスクチェアとして使い始めたら大成功。元々はリビング用だった。 前に書いた記事: ストレスレストーキョーで作業 前に書いた記事: ストレスレストーキョーのリクライニングチェア Amazon|EKORNES [正規品]ストレスレス®トーキョー スター ブラック/マットブラック チェアのみ mサイズ|リクライニングチェア オンライン通販 エルゴトロンLX デュアル 長身ポール ディスプレイを支える技術。横長ディスプレイ上下2枚×リクライニングチェアの組み合わせが絶妙に噛み合っている。たまに縦長の絵を大きく表示したいときがあり、上側のディスプレイを引っ張って回すだけですぐ縦長にできるのも便利。 前に書いた記事: エルゴトロン LX デュアル Amazon.co.jp: エルゴトロン LX デスク デュアル モニタ
はじめに こんにちは、Hideです。 javaに関する記事を投稿しています。 今回はNestJSを勉強しなくてはならなくなったので、メモとして記述しています。 MVCとは MVC は、Webフレームワークで一般的に取り入れられているアプリケーション設定の機能を整理するための概念の一つです。 モデル(Model)頭文字「M」、ビュー(View)頭文字「V」、コントローラー(Controller)頭文字「C」で「MVC」 と言います。 役割:Model ・・・ 処理内容(Javaプログラム、Bean) View ・・・ 出力結果(jsp、html、hbs) Controller ・・・ どこに飛ばすかの処理(Servlet) MVCを使う利点 役割を分けることで、作業効率、管理効率、クオリティ効率が上がる コードの再利用がしやすい MVCアプリの作成 プロジェクトの作成 Nestは、デフォルト
ちょうぜつソフトウェア設計入門――PHPで理解するオブジェクト指向の活用 作者:田中 ひさてる技術評論社Amazon 予約してまで買ったものの、なかなか時間が取れず、読めていなかった『ちょうぜつソフトウェア設計入門――PHPで理解するオブジェクト指向の活用』をようやく読み終わりました。 筆者である田中ひさてるさん自身で描かれた表紙の可愛らしさからは想像もできないハードな内容なので、一気に読もうとすると「分かった気」になるだけで全然理解していなかった、ということになりがちなので、3回くらいぐるぐる読むといいと思います(そうです、この本は本文もイラストも丸っと同じ人が書いているのです!!)。 目次 第1章 クリーンアーキテクチャ 第2章 パッケージ原則 第3章 オブジェクト指向 第4章 UML(統一モデリング言語) 第5章 オブジェクト指向原則 SOLID 第6章 テスト駆動開発 第7章 依存
この記事はソフトウェアテストのカレンダー | Advent Calendar 2022 - Qiitaの23日目です。 毎年のことながら「何を書こう・・・」と悩んでいてTwitterに助けを求めたところ、@teyamaguさんからネタをいただきました(ありがとうございます) 案1:今年読んだ中で最も役に立ったor読んで良かった本 案2:今年で見た中で最もイケていた自動テストシステム とかどうでしょうか? — teyamagu (@teyamagu) December 6, 2022 最も役に立った、だとなかなか決めかねる部分があり、「読んでよかった本」をつらつらと書いていこうかと思います。 私が2022年に読んだというだけで、今年発売された本には限らない点ご注意ください。また、熟読した本ばかりではなく、ポイント読みやざっと流し読みした本も含めます。(意志薄弱 The BDD Books -
いつもSkebをご利用いただき、誠にありがとうございます。 12月23日12時よりskeb.jpにアクセスできない大規模な障害が発生しておりましたが、12月24日07時に復旧いたしました。 12月23日、および12月24日が納品期限のリクエストは納品期限を12月25日23時59分までに延長させていただきます。 みなさまには多大なご迷惑をお掛けしましたことをお詫び申し上げます。 本障害につきまして詳細をご報告させていただきます。 概要日時: 12月23日12時22分〜12月24日7時00分 (JST) ダウンタイム: 18時間38分 内容: skeb.jpにアクセスできない不具合 原因: SkebはすべてのサーバとシステムをHerokuに設置していたが、障害発生時刻より同サービスのアカウントが理由の通知なく利用できなくなった。 解決: Herokuの一切の利用を中止し、すべてのサーバとシステ
おはようございます。9月の後半くらいから教習所に通い始めたnoteのwaturaです。この記事をかいているときは、仮免に合格してはじめての路上を目前に控えている状態です。 MagicPod の記事では、次は Xcode Cloud を Slack Slash コマンドから呼び出すよ!というのを書くと書いていたんですが、秋なので note の iOS アプリから CocoaPods 依存をなくしてみました。 最終的な目標CocoaPods を取り除くことは、最終的な目標ではなくその通過点です。なので、ちょっと、CocoaPods 使うのと変わらないんじゃないの? もしかしたら、CocoaPods 使っていたほうがシンプルだったんじゃない?というところがありますが、Swift Package Manager をフルにつかった Multi Module 構成にするという目標のために一時的になって
基本 以下の形式で、指定したサイズの画像を作成することができます。 https://placehold.jp/{幅}x{高さ}.png 例) <img src="https://placehold.jp/150x50.png"> 背景・文字の色サイズを変更する https://placehold.jp/{文字色}/150x100.png https://placehold.jp/{背景色}/{文字色}/150x100.png https://placehold.jp/{文字サイズ}/{背景色}/{文字色}/150x100.png ※背景色・文字色はRGBの16進数表記 例) <img src="https://placehold.jp/24/cc9999/993333/150x100.png"> ファイルフォーマットを変更する URL末尾の拡張子で、pngとjpgの2種類が指定可能です。
Swift5.1から導入された機能の一つにOrdered Collection Diffingというものがあります。 WWDC2019ではAdvances in Foundationというセッションで紹介されています。 Ordered Collection Diffingについて Ordered Collection Diffingを使用すると2つのコレクションの差分を計算して何がどう変わっているのかを知ることができます。 この機能の主役になるのはCollectionDifference<ChangeElement>です。 実装はSwiftで行なわれているのでSwiftを書いたことがあればアルゴリズムの実装の部分を知らなくてもそれほど複雑に感じないAPIです。 CollectionDifferenceは差分を保持していて、差分はコレクションのどの要素が削除されてどの要素が追加されているのか
この記事は NestJS Advent Calendar 2019 3 日目の記事です。前日は @euxn23 による Module と DI の話でした。 これまで NestJS のはじめかたと Module と DI の話をしていきました。3 日目となる本日は、もう少し実際の開発に身近な機能である、DTO と Validation について紹介いたします。 tl;dr NestJS にはコアに Request Payload の型定義とバリデーションの機能が備わっている クラスベースの型オブジェクト DTO の定義によって、 Request オブジェクトに触らずに受け付ける型定義ができる DTO にバリデーションを敷くことによって、 Controller のメインロジックより前の段階で不正なアクセスを弾ける リクエストデータの検証について Web API を構築する場合、リクエストのデ
Node.js/TypeScript ORMのPrisma。 高機能なので理解することがたくさんあるので、はじめ方をまとめてみた。 既存のDBがすでにあって、あとからPrismaを導入するときのイメージ。 全体の流れ Prismaを使った開発の流れはこんな感じ。 事前準備 初期設定 ... npx prisma init 既存DBのスキーマ取得 ... npx prisma db pull 初期マイグレーションSQL生成 ... npx prisma migrate dev 開発時 DBスキーマの同期 ... npx prisma db push マイグレーションSQL生成 ... npx prisma migrate dev Prisma Clientの生成 ... npx prisma generate 本番 マイグレーション履歴の設定 ... npx prisma migrate r
こんばんちは、スーパー太っちょWebディレクターです。 スーパーは太っちょにかかります。 "発注者"とありますけれども、依頼者でもいいです。つまり「クライアントと受注者」だけの話ではなく、上司部下でもいいし同僚への依頼でもいい。基本は変わらんのでありまして。 「仕事を発注する力」なのだけど、それが低すぎてうまくいかないパターンが多いなぁと。「伝えるべきことを伝えてない」という"あるある"なのだけど、根本はそうではなくて。ざっくり言うと「依頼フォーマットに記入する」だけになってるからそうなるのではないかと。 僕はこれを「発注力」と呼んでいるだけど、軽視されているなぁと。なんちゅーか「運転ができればタクシードライバーができる(という誤解)」ぐらいには、スキルとして意識されてないのでは?と。 というわけで、Webディレクターじゃなくても万人に重要な「人に仕事を依頼するときに意識すべきこと」の話。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く