中村的雑記

技術に関する記事を書いていきます。iOSエンジニア->Railsエンジニア。

TerraformでAWSのsubnetを作る

はじめに TerraformでのAWSのvpcとsubnet部分の作り方をまとめておく。 間違いなどあれば、指摘していただけると幸いだ。 ちなみにIPやcidr_blockなどは実際に作成したものとは違うものを本記事のサンプルコード内で使っている。 ディレクトリ構成 勉強会で…

react-routerとRailsのroutesを組み合わせる

はじめに Reactでのフロントエンド開発を最近また業務でやっている。 前回やった時は半年ほど前に2,3スプリント分の機能を実装しただけなので、正直忘れてしまった状態からのスタートだ。 今回はreact-routerとRailsのroutesの兼ね合いについてのメモとして…

Terraformのv0.14へのアップデートに関するエラー

はじめに 小ネタ。 勉強会でTerraformを使っていて、 v0.12 => v0.14にアップデートした後terraform applyをすると、 下記エラーに遭遇した。 - Finding hasicorp/aws versions matching “~> 3.0”... Error: Failed to query available provider packages Co…

FormObjectの実装

はじめに 業務でFormObjectを使って実装したので、サンプルコードを使って実装の要点をまとめる。 間違ってる点などあれば、指摘していただけると幸いだ。 状況 Userクラスのnameとemailと、Userクラスがhistoryクラスにdelegateしているorder_historyをUser…

モデルが1対多の時にhas_manyではなくhas_oneを使って実装する方法

はじめに has_oneに条件をつけて1対多を実装できることを知らなかったのでまとめておく。 タイトルでは1対多と書いたが、1個ずつ条件文を書くので、さすがに1対100とかだとこのやり方は現実的でない。 実装 取引を表すDealモデルと 場所を表すPlaceモデルが…

Rails2週目: APIの実装、Decorator、パーシャルetc

はじめに 8/11~8/14で経験した内容についてまとめる。今週は初めてAPIの開発をした。 別のAPIでのレスポンスと結構かぶっているところがあったので、レビューをもらいながらパーシャルを活用した。 ちなみにうちはjson周りはjbを使っている。 例の如く変数名…

Rails1週目: modelの設計、複合ユニークのテストetc

はじめに 8/3 ~ 8/7に経験した内容をまとめる。Railsを触り始めて初週だったのもあって、インプットメインという感じだったが、助けを借りながらモデルを二つ実装した。 そのなかでも、validation、複合ユニークのテスト(RSpec)の書き方など、今後のために覚…

一年間で経験したiOS開発の棚卸し

iOS

はじめに 社内で機会がもらえたので、サーバーサイド(Rails)に転向させていただくことにした。 今回の記事では1年経験を積んだiOSのスキルについて、まとめようと思う。 iOSエンジニアとして経験したこと 大きい枠でいうと、既存のアプリの改修と、新規開発…

遷移元が複数ある時の画面遷移

iOS

はじめに 遷移元が複数あって、その遷移元に戻るという実装に詰まったのでメモをしていく。 HogeViewController -> PiyoViewControllerのとき、戻るボタンを押せばRootViewController(navigationControllerの最初の画面)であるHogeViewControllerに戻る ....…

D - Not Divisible(Python)

はじめに リアルタイムで解いてない。3完。最近ABCでは4完続いてたので悔しい。 公式の解説を参考に分からなかったところや覚えておきたいところをメモしていく。 D Not Divisible 先に約数をカウントする配列divを作っておく。 numが入力されたら、上記配列…

C - HonestOrUnkind2(Python)

はじめに atcoder.jp ABC147のC問題、bit全探索を使うやつです。 今回は自分が競プロでいつも使っているC++でなく、 Pythonでやってみました。 実装 N = int(input()) g = [[-1]*N for i in range(N)] #①i番目の人がj番目の人を正直もの(=1)といっているか、…

Rx再入門

iOS

Rxに再入門しました Rxに再入門します。 教材 https://www.raywenderlich.com/1228891-getting-started-with-rxswift-and-rxcocoa メモ ・BehaviorRelay BehaviorRelayは配列を表す型である。 宣言は下記のように行う。 let a: BehaviorRelay<[A]> = Behavio…

Xcode codesignの罠 errorが起きてbuildができなくなった

iOS

Xcodeでmacのアプリを初めて触ってみようと思っていて、 ビルドしようとしたタイミングでこれが出てきました。 なんとなく拒否を押してしまったのですが、 (常に許可を押さないといけないらしい) そうするとcodesign errorが出続け、全くビルドができなくな…

Task failed with exit 1 signal 0 の対処法

iOS

今日は、Swiftで、実機でビルドしようとしたところ、 今まで全く問題なくビルドできていたのに、 「Task failed with exit 1 signal 0」 こいつがでてきて、 急にビルドできなくなったので、 備忘録もかねて対処法をまとめようと思います。 詳細は続きから。…