こんにちは、インフラ部の id:sue445 です。 今回はRendertronをGKEとCloud Runの両方で構築した話をしたいと思います。 tl;dr; 前置き 今までのRendertronの問題点 GKE版Rendertronについて GKEの採用理由について GKE版Rendertronの構成 全体 GKE内部 pod内部 Kubernetesの設定と解説 rendertron-deployment.yaml rendertron-hpa.yaml rendertron-ingress.yaml rendertron-service.yaml Tips nodeのストレージサイズをケチり過ぎたらpodが起動できなくなった N1マシンタイプのnodeとN2マシンタイプのnodeを比較した結果、N2マシンタイプが安くなった Cloud Run版Rendertronについて Clou
自動受け入れテストは、継続的デリバリのスタイルを持つテスト戦略に欠くことのできないコンポーネントであり、システムの振る舞いに対して、異なった重要な洞察を与えるものだ。Dave Farley氏の主張によると、開発者は、受け入れテストが動作して通ることに責任を持たなければならない。開発チームとは別にQAチームを持つのは望ましいことではないだろう。 独立したソフトウェア開発者であり、コンサルタントのDave Farley氏が、Craft 2017において、継続的デリバリのための受け入れテストについて話した。InfoQは、このカンファレンスをQ&A、要約、記事で扱う。 よい受け入れテストは、システムの振る舞いの実行可能な仕様だとFarley氏は言う。Farley氏は、テストを書く時に、ドメインの言語を使うように提案した。そうすれば、テストは読みやすくなり、プロダクトオーナーや顧客等に説明しやすくな
AndroidX App Startup is a new addition to the Jetpack suite of libraries. This article takes an initial look at it, and focuses on 3 things: Why it was created, what it is, and how you can get started using it. Why AndroidX App Startup?It isn’t uncommon for libraries to run some initialization logic on app startup. Libraries such as WorkManager and Lifecycle run this initialization code on app sta
In part 2 of the Cancellation and Exceptions in Coroutines series, we learnt the importance of cancelling work when it’s no longer needed. On Android, you can use the CoroutineScopes provided by Jetpack: viewModelScope or lifecycleScope that cancel any running work when their scope completes — that is when the Activity/Fragment/Lifecycle completes. If you’re creating your own CoroutineScope, make
本書は、設計スキルを成長させたいプログラマーに向けたアーキテクティングの入門書です。ソフトウェアアーキテクチャの基礎とデザイン思考の考え方から始まり、ソフトウェアアーキテクトとして、チームと共に優れたソフトウェアを作り上げていく方法を包括的に解説します。本書を読むことで、適切なステークホルダーを特定してニーズを理解する方法、アーキテクチャ上重要な要求に基づいて技術やアーキテクチャを適切に選択する方法、アーキテクチャを軽量かつ効果的に評価する方法、チームのアーキテクト力を高める方法などを学べます。モダンなアーキテクチャ設計のための実践的な手法が詰まった本書は、より良いプログラマー、技術リーダー、そしてソフトウェアアーキテクトになるために必携の一冊です。平鍋健児氏による「日本語版序文」を収録。 目次 本書への推薦の言葉 日本語版序文 序文 はじめに 第Ⅰ部 ソフトウェアアーキテクチャ入門 1章
ポケモンSVモクロー単騎縛り攻略①カエデLv.1攻略編 こんにちは。 皆さんもouterwildsというゲームをご存知ですよね。あれのDLCをやっており、それと並走する形で何かやろうということでやることになりました。 それがポケモンSVモクロー単騎縛りです。グルッポー ◎背景前作ポケットモンスター剣の縛りプレイに続いて、SVでもバチンウニ単騎の縛りプレイを全ルートで攻略済みです。 バチンウニで攻略したのだから、次またやるとなればモクローになるのは自明の理でしょう。わかりませんか?まだまだですね。 ◎縛り内容について以下
According to our introduction to Dependency Injection (DI), we believe you should always use DI principles in your applications. If you’re developing a professional Android app, use Dagger to better manage your dependencies. We recommended using Dagger for medium and large apps; for small apps or pet projects, it doesn’t matter the tool you use, but the sooner you add Dagger to your project, the b
システム開発に関するお仕事をしていれば、よく耳にするであろう「技術的負債」という言葉。 色々と認識が揃いにくいことや、可燃性があることで有名です。 そこで、認識の揃いにくさの理由、話題が可燃性であることの理由を踏まえた上で、よりよい名前はないだろうかという話につなげたいと思います。 なぜ「技術的負債」の認識はずれやすいか? 技術的負債は Ward Cunningham が作ったメタファです。 何らかの業務上の利益を得るために一時的に好ましくない設計を 意図的に 選び、それを負債として考えます。 負債には利子があり、それはどんどん膨らんでいくのでいつか返済する必要があります。 こういった内容を開発者ではない経営者などのステークホルダーに伝えるための表現として存在する言葉です。 その上で、さらに議論は進み 意図的ではない 設計上の不備かそうではないかの区別には意味がないのではないか、という説が
こんにちは、今回がはじめてのnote投稿になります! タイトルにもある通り、今日はTwitterにて8月に行なっていたUIトレースについて感じたことをまとめていきます。 デザインの勉強を始めたばかりで、どうやって勉強しよう?と悩んでいる人や、最近だとCocoda!に登録してUIデザインの勉強をしてみようかな...と思っている人の参考のひとつにでもなれば嬉しいです。 あくまでも自分なりの見解であり初心者目線で書きますので、どうぞ暖かい目でご覧になってください...。(アドバイス随時受け付けてます!) そしてかなり迷ったのですが、この記事ではトレースしたものだけでなく、アウトプットしたものも全部載せます。プロのデザイナーさんが見たらツッコミどころ満載の作品ばかりだと思いますが、同じような境遇の方の励みになればと思って、、、、では目次です。 目次 1. UIトレースを始めたきっかけ 2. 最
これ の通り、Rx には本来の目的のみを遂行してもらいたいので考えみました。 まずはこれを読もう 下記に書いてある以上の説明はないです(圧倒的感謝っ) 実例によるkotlinx.coroutinesの手引き(日本語訳) - Qiita [Kotlin]コルーチンのChannelのハマり所 | Developers.IO Kotlinコルーチンによるリアクティブストリームのガイド (日本語訳) - Qiita Kotlin の Channel と BroadcastChannel Channel は「キューのようなもの」と例えられます、BroadcastChannel も同じく。 Channel<T> は、送信者と受信者が 1:1 で、 BroadcastChannel<T> は、送信者と受信者が 1:n です。 Broadcast と言われるように。 両方使ってみます。 // Channe
FlowのflowViaChannelを使ってRxBindingを置き換える - visible trueでKotlin Coroutines 1.2.xでFlowというコールドストリームをサポートするクラスや関数群が登場しました。ってことでflowViaChannel関数について書いたら、Kotlin Coroutines 1.3.0-M1でflowViaChannel関数がdeprecatedになりました。previewなのでそういうこともあるでしょう。 ということで、FlowのflowViaChannelを使ってRxBindingを置き換える 改め、FlowのchannelFlowを使ってRxBindingを置き換える 話をします。 1.3.0-M1でなにが変わったか Release 1.3.0-M1 · Kotlin/kotlinx.coroutines · GitHubによるとF
# Bitrise とはBitrise は GUI で簡単にワークフローを設定できるモバイルプラットフォーム向けの CI サービスです。 # bitrise.yml とはGUI で簡単にワークフローを設定できる Bitrise ですが、 bitrise.yml という設定ファイルにワークフローなどの設定を記述することもできます。 ## bitrise.yml による設定は一般的ではないBitrise 公式やユーザコミュニティによるステップがあり、 そのステップを GUI で選択してワークフローを構築することが一般的です。 ステップの名称や入力項目は一度 GUI で設定してみないとわからないため、 いきなり bitrise.yml を直接記述することはなく、 あっても他のワークフローにステップをコピペするくらいです。 ## bitrise.yml は Bitrise にあるBitrise の
Extensible mobile app debuggerFlipper is a platform for debugging iOS, Android and React Native apps. Visualize, inspect, and control your apps from a simple desktop interface. Use Flipper as is or extend it using the plugin API. ToolsMobile developmentFlipper aims to be your number one companion for mobile app development on iOS and Android. Therefore, we provide a bunch of useful tools including
こんにちは。SWETグループの外山(@sumio_tym)です。 先日、社内のAndroidエンジニア向けにUIテストのハンズオンを開催しました。 本記事では、ハンズオンを開催するに至った経緯と、その内容を紹介します。 UIテストハンズオン開催の経緯 SWETでは、社内のエンジニアに自動テストのナレッジを普及させるための取り組みを継続しています。 2019年4月に開催したAndroidユニットテストのハンズオンもその一環でした。 当時のAndroidユニットテストのハンズオン参加者を対象としたアンケートで「次に開催してほしいハンズオン」について尋ねていました。 その結果、90%以上の参加者がUIテストハンズオンの開催を希望していたため、Android UIテスト1のハンズオンを開催することにしました。 ところで、Androidの公式ドキュメントで紹介されているテストピラミッドによると、UI
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く