PUROGU LADESU

ポエムがメインのブログです。

2020-01-01から1年間の記事一覧

【GCP】CloudDNSのゾーンの作成でエラーになる

GCP

フォーム入力して作成を押すとエラーレポート画面が出てきて「もう一度やり直してください」と言われる。APIとサービスの画面から、Cloud DNS API を有効化で解決。エラーレポートはおかしくないか??バグかと思った。

【Git】7.タグ、スタッシュ

Git

タグ git tag タグの列挙 git tag -l "v" タグの検索軽量タグ git tag v1 コミット名 注釈付きタグ git tag -a "v1" -m "ver1" git tag -d v1 削除タグをリモートへ git push origin xxxxx git push origin --tags リモートにないタグを送り込む スタッシュ …

【Git】6.インタラクティブモード(リベース)

Git

リベースを使って過去のコミットを連続的に修正します。 表示は古いものが上に来ます。修正、並び替え、分離、結合。複数のやり直し(指定の手前まで) git rebase -i id-xxx git rebase -i HEAD~3 変更はedit そのままはpickを指定 git commit --amend で修…

【Git】5.リベース

Git

ブランチの起点となるコミットを別のコミットに移動し、履歴を一直線に出来る。 親のコミットがリベース先の先頭のコミットに変わる。 コマンド (対象ブランチに移動して)git rebase master 対象ブランチがmasterの先頭にくっついて、一直線になるその状態…

【Git】4.ブランチ

Git

ブランチは特定のコミットを指し示したポインタに過ぎない。コミットすると移動して新しい方を指し示す。 スナップショットかつブランチ切り替えはポインタを変えるだけなので高速。 切り替えるとHEADが移動する。HEADは作業中のブランチを指す。 HEADやブラ…

【Git】3.Github

Git

Githubなどのリモートからローカルリポジトリに取得 git fetch origin (ワークツリーには反映しない) 上記をワークツリーに反映 git mearge origin/main (remotesはつけなくて良い) ブランチ切り替え git switch main git checkout main (旧) ただし、…

【Git】2.変更を元に戻す

Git

ワークツリーの変更を取り消す(ワークツリーをステージの状態と同じにする) git restore git checkout -- . (旧) ステージからワークツリーに戻す(リポジトリから最新のコミットをとって上書き、ワークツリーは変更されない) git restore --staged git…

【Git】1.基本

Git

インストール Git - Downloads brew install git MacはXcodeがあれば入ってるかも。 基本 Gitは差分ではなくスナップショットを記録。変更がある分についてはまるごと記録。操作での再計算が少なく速い。git add ステージングエリアはショッピングカートみた…

【Golang】 9 HTTP、JSON

http endpointの作成 base, _ := url.Parse("http://example.com/ssss") reference, _ := url.Parse("/home?a=1&b=2") endpoint := base.ResolveReference(reference).String() fmt.Println(endpoint) リクエストの作成 req, _ := http.NewRequest("GET", en…

【Golang】 8 パッケージ

package トップレベルにはmain.goとフォルダを配置 そのフォルダをパッケージとして、なかにgoファイルを置く 別のパッケージのコードを使うときは、importにプロジェクトフォルダからのパスでパッケージ名を指定する さらに階層を作っても良い アクセス制限…

【Golang】 7 Goroutine

gorutine goルーチン 前に go をつけると並列処理できる gorutineが終了しなくても、メインが終わればプログラムは終了してしまう。 それを避けるために sync.WaitGroupを使う。並列処理の数だけAdd()を行う。(Doneが呼ばれる回数) wg.Wait()でwg.Done()が…

【Golang】 6 構造体

メソッド 定義済みstructに関連付けてドットで呼び出せる関数(値レシーバ) //v.Area() func (v Ver) Area() int { structを参照渡しして、メソッド内で中身を書き換えるもの(ポインタレシーバ) //v.Scale(5) func (v *Ver) Scale(i int) { コンストラク…

【Golang】5 ポインタ

ポインタ var p *int = &n //intのポインタ型、アドレスを格納 p //アドレス *p //ポインタが指す値 new make 指定の型のメモリ確保する var p *int = new(int) //*p は0になる スライスやマップはmakeでメモリ確保(ポインタを返さない) struct 構造体 先頭…

【Golang】 4 制御構文、エラー処理

if if / else if / else ()はなくて良い if result == "ok" { } ;で一文でかける if result := by2(4); result == "ok" { for continue break for sum for {} だけだと無限ループできる for i := 0; i < 10; i++ { for sum < 10 { range リストやマップをか…

【Golang】 3 関数

関数 引数の型が同じ場合はまとめられる 返り値が複数の場合は()でくくる func add2(x, y int) (int, int) { return x + y, x - y } 名前付きの戻り値 Named Return Values func calc(price, item int) (result int) { result = price * item } 返り値として…

【Golang】2 基本とデータ型

Go言語仕様 The Go Programming Language Specification - The Go Programming Language 基本 main.goから始まる fmt.Println()で出力 init() 関数は強制的に最初に実行される。 packageとはコードの集まり。ライブラリもほぼ同じ意味。クラスはない。 ディ…

【Golang】 1 インストール

goのインストール golang.org goの最小コード // try.go package main import "fmt" func main() { fmt.Println("Hello, 世界") } go run try.go で実行 go build でバイナリファイルが残る IDE Goland 有料 VSCode パッケージGoをインストール delveデバッ…

Dockerの復習

説明 Linuxのいろいろなすごい機能を使って仮想的に環境を作ってくれます。 OS自体を仮想化しないので軽いです。バーチャルボックスみたいにOSイメージを丸ごと持ってこなくて済みます。 使うにはDocker Desktopをインストールします。 イメージ dockerはイ…

【ReactNative】algoliaを使ってみる

algoliaとは 全文検索ができるクラウドサービスです。Firebaseでできない検索ができるようになります。 How Algolia Works | Getting Started | Guide | Algolia Documentation 下記のデモを見るとイメージしやすいです。 Widgets Showcase | React InstantS…

【ReactNative】Notificationの手順

最新版はエラーで使えなかったので、レガシー版を使います。ただこのレガシー版はv40で消えるみたいですが。 docs.expo.io docs.expo.io Notificationの手順 起動時にPermissionを許可させる 起動時にdeviceTokenを取得してサーバーに保存 CloudFunctionに通…

【ReactNative】ボックスに三角のラベルをつける

画像の上に三角形のラベルを表示 borderWidthで三角形の大きさを調整します。 <Image> ... </Image> <View style={{ position: 'absolute', left: 2, top: 2, }} > <View style={{ borderLeftColor: 'red', borderLeftWidth: 50, borderBottomColor: 'transparent', borderBottomWidth: 50, }} ></View> </view>

【ReactNative】TextInputで数字のみに制限する

数値 isNaNで文字の場合は元の値に戻します。 // 変数を文字列で定義した場合 const [amount, setAmount] = React.useState(''); <TextInput keyboardType="number-pad" placeholder="数字を入力してください" onChangeText={(text) => { console.log(text); setAmount(isNaN(text) ? amount : text); }} value={amount} returnKeyType={'done'} ></TextInput> // 変数を数…

指定サイズの画像を用意してくれるサービス

指定サイズのサンプル画像をランダムで表示してくれるサイト placeimg.com picsum.photos 指定したサイズ、色、文字の画像を生成してくれるサイト dummyimage.com ユーザー顔写真 randomuser.me

【ReactNative】タブでビュー切り替え

やり方はとりあえず2通りあります。 他にもButtonGropuとか使って、自前でScrollViewをスライドさせたらできそうです。 react-native-tab-viewを使う github.com Viewを用意して、切り替えます。 routesにはタブを定義します。 renderSceneに表示させるView…

【ReactNative】ReactNavigationでparamsが渡せなくてハマった

名前はちゃんとつけよう navigation.navigateで画面遷移時にパラメータを渡そうと思ったが、画面遷移はするもものparamsが渡らなくて数時間ハマった件。 結論から言うと、同じ名前のルーティングがあったせいで別のところに遷移していたのが原因でした。 基…

【ReactNative】ヘッダーボタン

ヘッダーボタンの付け方は2通りあります。 reactnavigation.org Screen内でつける スクリーン内の情報を使った処理ができます。 こちらのほうが使いやすいパターンが多いのではないでしょうか。 const TakePhotoScreen = ({ navigation }) => { React.useLa…

【ReactNative】モーダル画面(3)

react-navigationを使ってモーダルを作ります。 reactnavigation.org 使い方 createStackNavigatorを使って画面を作り、modeプロパティをmodalにするだけです。 ただし、bottomTabNavigatorを使っている場合はタブより上の階層にStackNavigatorを用意しない…

【ReactNative】モーダル画面(2)

rn-swipeable-panel 今度はSwipeablePanelを使って下からせり出してくるモーダル画面にします。 ただ正確にはというか全然モーダル画面になりません。ただの選択画面です。下のタブも隠れません。 react-native-navigationでちゃんと設定して、多分タブナビ…

【ReactNative】モーダル画面(1)

Overlay ReactNativeの標準コンポーネントにもModalがありますが、ReactNativeElementsのOverlayを使います。 こちらを使う利点は、標準で背景をグレーにしてくれてPaddingをいい感じに整えてくれます。 react-native-elements.github.io reactnative.dev 使…

【ReactNative】リストをスワイプさせる(2)

今度はライブラリを使ってみます。 react-native-swiper github.com こちらも使い方は簡単。表示対象のリストを作ってSwiperタグで囲むだけです。いい感じですね。 このパッケージを使う利点は、 ドットで何枚目を表示しているかがわかる。 左右の移動ボタン…