Translate

BTemplates.com

Powered by Blogger.

2019年9月4日水曜日

2019-09-04 到達点メモ


今回は、珍しく何を作るかを決めてちゃんと実装してみた。
大まかな手順としては以下のとおりである。

1.何を作るか、もしくは、何を修正するかを決める
2.ブランチ名を決める
3.テスト内容を決める
4.作成する
5-P1.作業に戻りたい場合は、stashで一時保存をして、ブランチを切り替える
6.動作テストを行う
7.コミットする
8.マージする

テスト内容を決める際に、ブランチ名を名前としたファイルを作成して
以下のことを記述した。

*ブランチ名
*概要
*開発目的
*機能概要
*テスト方法
*実施した際に変更した内容

本当はもっとファイルを別けたほうがいいのかもしれないが
利便性を考えてこのような形にした。

この後にコードの方で実際に何を作業するのかをある程度細かく書いた。
上記の内容はすべて決まっていたわけでなく、ある程度変えたり
また、作業していて実際に要らないと気が付いた作業を辞めたりした。(テストをほとんど終えた状態で気が付いたので作業量は減っていない)

全部含めて2時間過ぎくらいかかったのだが、普段のやり方だったらもう少し早く終わったと思う。ただし、普段のやり方ならテストは不十分だし、考えながら作っているのでそれと比べると今回は迷いなくできたと思う。

この方法が本当にうまく行くのかはまだちょっとわからないが
もう少し続けていきたいと思う。

今日はここまで

2019年9月3日火曜日

2019-09-03 到達点メモ


◆jQuery話

今回、URLから取得したデータに以下のように単語検索をかけていた。
data.match('検索したい文字')
しかし、何故かnullで結果が返ってきていた。

dataの中身を改めてconsole.logで調べたところ、
dataはhtmlデータで、特に問題が無いと思っていたのだが実際は違った。

検索したい文字はブラウザ上だと以下のように表示されていた。

検索したい文字

しかし、HTMLだと以下のようになっている

<b><span style="color: red;">検索</span></b>したい文字

で、今回はHTMLデータを取得していたので、data.match('検索したい文字')
のやり方で出てくるわけがなかった・・・。
なので、もしやるなら、$ (data).text ()のようにしてタグを消す必要がある。


◆Gitもしくは開発方法の話

最近、Chrome拡張を開発しているのだが、ちょっとうーんと思う出来事が起きた。
現状Chrome拡張を開発しながら、作業をする際にそれを使っている。
作成中もしくは修正中にバグると作業が止まってしまう上に
修正中のデータ時に消したくない時があったりする。

developを作るとかstashを使うとか解決できるかと思ったが、
考え直したところ適切な解決策ではないように思える。
というかそもそも作業の進め方を間違っているような気がする。
何を作るかを決めてから作業をするべきで、
場当たり的に進めているのが問題の様な気がする
つまり、
問題が起こる。もしくは作りたいところができる。
→ branchを作る。
→ 作業を進める。
(→ もし、何らかの理由で一時保存したい場合にstashを使って元のブランチに戻す)
→ 統合する

こんな感じが理想なのではないだろうか?

参考サイト
Git - ブランチとマージの基本
Gitのブランチモデルについて - Qiita
Gitのdevelopでの作業について - Qiita
変更を一時的に退避!キメろgit stash - Qiita

ブランチ名を変更したり、そもそもブランチを作ったりするのに
以下のサイトを参考にさせてもらった。
git コマンド branchの作り方 - Qiita
gitのローカルのブランチ名を変更したい - Qiita


もう今日はこれでよい気がするので、ここまで。



2019年9月2日月曜日

2019-09-02 到達点メモ


以前、Windowsを立ち上げた際にbatファイルを自動起動を行う設定を行ったのだが
最近はそのbatファイルを全く使っていない。
なので、自動起動の設定を解除しようと思ったのだが、方法を忘れてしまったので
再調査した。

調べた結果、今回はタスクスケジューラの設定を使っていたことが判明しました。
やり方は以下の通りで出来ました

参考サイト:Windows > スタートアップ時に.batファイルを実行する - Qiita

ただ、最初見た時に何処にbatファイルがあるか分からなかったので探したところ
下の画像の様な左のフォルダ名をクリックしたら見覚えのあるファイル名が見つかりました。











見つからなかった時は、試してみると見つかるかもしれません。


Chrome拡張の開発の話

ポータルサイトに載ってある外部URLを開く際に、
既に開いているブラウザのタブがあれば
開かないという重複判定の処理を作っていました。

ところが、ポータルサイト内のURLはちゃんと重複があるのを判定しているのに、
外部URLだと普通に開いてしまう出来事がありました。

何でかなと思って調査したところ、ポータルサイトに載ってあるURLは、http://~に対してそのページに遷移してみると、https://~となってました。
同じメソッドを使っているのだから、早くその点は気が付けばよかったですね・・・。
このケースはたまたま対応できたが、全く違うアドレスに自動遷移するタイプはどうやって対応すればいいんだろうか・・・。


Chrome拡張のCross-Origin Requests問題が解決できねぇ・・・
一番簡単な立ち上げる際に
--force-empty-corb-allowlist --enable-features=NetworkService
は出来たんだけど、流石にとりあえず動かすならそれでよいが
長期的にはちゃんと解決したいなぁと思ってました。

なので、二番目以降のbackgroundで通信をするとかの方法をやっているのだけど
上手く行かない・・・。
まぁ、今開発しているChrome拡張にそのまま組み込もうとしているから
失敗しているのだろうけど・・・。

というか、やっぱ、ちゃんと公式ドキュメントを読み解いて理解する力を
身に付けないとダメだわ。
少なくともChrome拡張はちゃんと説明してあるし・・・。

参考サイト:Changes to Cross-Origin Requests in Chrome Extension Content Scripts - The Chromium Projects

今日はここまで