2019-01-01から1年間の記事一覧
LeetCodeで面白い問題を見つけたので、理解を深めるために復習する。 スタックを使ったアルゴリズム。 leetcode.com 問題 Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid. An inp…
いつものようにLeetCodeをやっていると、解法としてBacktrackingというものが出てきた。アルゴリズムの名前らしい。 leetcode.com Backtrackingとはなんだろうか。 問題 まず解くべき問題を説明する。 2-9の数字からなる文字列が与えられる。それぞれの数字…
継続的インテグレーション(CI, Continuous Integration)が大事というのはよく聞く話だが、幸運にもそれはあって当たり前のものだったのでなぜ重要なのかが納得できていなかった。『レガシーコードからの脱却』で初めてその理由が腹落ちしたので、ここに書…
最近LeetCodeをコツコツやっている。 こちらの問題で、自分では数十行書いていた処理が他の人の解答ではたったの6行で感動した。 後学のために、処理内容を1行ずつ見ていく。 leetcode.com 問題 StringをIntegerに変換する。 数値は正負の符号を含む 文字列…
成形されたJSONデータを作成 hash = { foo: 'foo', bar: 'bar' } json_str = JSON.pretty_generate(hash) クリップボードにコピー IO.popen('pbcopy', 'w') { |f| f << json_str } 参考 uxmilk.jp coderwall.com
find_byしてしまうと… ActiveRecordのscopeでは、クエリの実行結果がnilだとallを返してしまう。 class Order < ActiveRecord::Base scope :bar, -> { find_by(foo: 'bar') } end Order.find_by(foo: 'bar')と同じ動きだと思ってnilを期待すると、allが返る…
Alexaにはプッシュ通知という機能があります。 プッシュ通知機能が表示されない プッシュ通知は、AlexaアプリでスキルごとにONにすることができます。 プッシュ通知許可画面 しかし、自分の開発したスキルで、なぜかこの許可画面が表示されない… Alexa Notif…
SQL文はDDL, DML, DCLの3つに分類される。 DDL Data Definition Language: データ定義言語 スキーマやテーブルなどを作成したり、削除したりする。 CREATE, DROP, ALTERなど。 DML Data Manipulation Language: データ操作言語 テーブルの行を検索したり変更…
werckerおよびローカルでのビルド時にこんなエラーが出る。 org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:ktlint'. ググってみた。 blogs.yahoo.co.jp ・Build -> Clean Poject ・File -> Invalidate Caches / Restart を…
文字列とシンボルの違いがよくわかっていないので整理する。 シンボルとは? Symbolクラスのレファレンスを見てみる。 docs.ruby-lang.org Rubyの内部実装では、メソッド名や変数名、定数名、クラス名など の`名前'を整数で管理しています。これは名前を直接…
putsかpか Railsのrakeタスクでバッチ処理を実行する際にログを標準出力したい。その場合、 puts と p のどちらがよいのか? irb(main):001:0> p 'abc' "abc" => "abc" irb(main):002:0> puts 'abc' abc => nil puts puts は to_s を呼び出す。戻り値は nil…