ゆるふわ技術日誌

エンジニア見習いの悪戦苦闘日記

ReactNativeやったりIEと戦ったりした #94

今日やったこと

ReactNativeのリストを扱った

1時間早くお家を出て、快適なWi-Fiのもとにやる作業は気分がいいです。

コードが手元にないのでアレなんですが、propに配列渡してあげるだけなのでネイティブで扱うListViewの5万倍くらい簡単で涙が出そう。

インターンまであと1週を切って真面目にやばいので帰ったら続きをやります。

IEと戦った。

バイトでIEと戦いました。

一言だけ、IEはクソ。

雑談

バイト終わりにインスタ映えカフェに行きました。

ラテアート初めて本物見た気がする #gr2

Rubyを書いた #93

今日やったこと

Rubyを書いた

インターンが迫っていて、課題も終わってなくてRuby書いてる場合ではなかったのですが、研究室絡みでこちらも期限がアレだったので書きました。

書いたのはコレ。

github.com

とある事情によりNginxの設定を動的に書き換えたいみたいな事情がありまして。

erbを使ってNginxの設定ファイルを吐き出す謎のRubyスクリプトが出来上がりました。erbってこんな使い方していいのか…

YAMLから設定ファイル読んだりとかもカンタンにできていいですね、Ruby

RailsRubyしかやってこなかったので、ちょっと新鮮でした。

雑談

時間がないのにやる気が出ない…。

メアドのバリデーションに今日も悩まされた件 #92

今日やったこと

続メールのバリデーション

先日もメールのバリデーションの話書きましたが、今日も悩まされました。

こんなサイトがありまして…

Email Address test cases – Testing Testing 1,2,3

これを通る正規表現を求めて頑張りましたが、普通にこれを全部カバーする正規表現は無理があると思いました。

諦めましたw

雑談

今日は他にも色々やったんですが(というか現在進行形)書いてる時間もないのでまた今度………。

ReactNativeのViewについて色々調べた #91

今日やったこと

諸般の事情でコード書けなかったので代わりに色々調べモノしてました。

ReactNativeのUIキット

すご〜く勘違いしてたのですがReactNativeは普通のReactとは違ってHTMLのタグではなくReactNativeのコンポーネントを組み合わせてUIを作っていくんですね…

というわけでおそらく普通のReactで世話になりまくってるMaterial-uiとかは使えないんだと思います。

CSSゴリゴリ書くしかないのかと絶望してたのですがちゃんとUIキット的なのが存在しました。

Nachos UI Kit for React Native - by Avocode

こんなのとか

NativeBase | Essential cross-platform UI components for React Native

こんなの。

Doc読んだだけなので、あくまで感覚ではありますが、クセもなく割と使いやすそうな気がします。

雑談

お盆スゴー

ReactNative躓いたポイントメモ #90

今日やったこと

ReactNativeやっています

ちょこちょこやってます。

ほんとはガチでやらねばならんのだけど。

f:id:uutarou:20170812230435p:plain

Alert出した。

これだけだとマジで数行。

export default class App extends React.Component {
  render () {
    return (
      <View style={styles.container}>
        <Text>Hello, ReactNative</Text>
        <Button
          title='What time is it?'
          onPress={() => {
            Alert.alert('Current time', `${new Date()}`)
          }}
        />
      </View>
    )
  }
}

画面遷移とかはどうするのかとかなんもわかってないですが、ドキュメントとか結構わかりやすいのでバリバリやっていきたいと思います。

ちょっと躓いたところ

iOSシミュレーターで実行するのを選択すると、Xcode入ってる?みたいな表示が出てきて困っていたのですが、ちゃんと解決方法が公式に書いていました。

github.com

Xcodeの設定のLocationからComand Line Toolの場所を選んだら普通にシミュレーターが上がりました。

雑談

いろんなことに板挟みになっていてつらい。

WebStormデビューしたのでやったことまとめ #89

今日やったこと

WebStormデビューした

正確には昨晩ですが、WebStromデビューしました。

学生はJetBrainsのIDE無料で使えます。ありがたや。

登録は以下から。

Free for Students: Professional Developer Tools from JetBrains

acドメインのメールを持っていれば「UNIVERSITY EMAIL ADDRESS」を選択して、メアドと名前を入れるくらいで登録終了します。GitHubのように承認待ちとかもなくすぐ使えるようになります。

あとは目的のIDEを落としてきてライセンスの設定をすればOKです。ライセンスはメールに届いているはずです。

私はとりあえずWebStormを。JetBrains系のこのインストール画面とってもかわいくて好きです。

f:id:uutarou:20170811230229p:plain

設定いろいろ

やっと本題。WebStromに施した設定等まとめです。

まとめというかメモです。

IdeaVim

必須でしょ。

IDEのカーソル移動や編集のコマンドを覚えるよりもVim一個覚えてしまえばいろいろなIDEやエディタでVimキーバインド使えるので最高だよね、という考えに最近は落ち着いています。

GitHubのアカウントを設定

いまGitは基本的にはSourceTreeとコマンドライン二刀流で使っているのですが、SourceTreeの部分を置き換えられるかもしれないと思ったのでとりあえず設定した。

フォントを変えた

Ricty Diminishedを普段から使っているのでとりあえずそれにした。

Consoleのフォントも同様に。

Code Styleを設定してみた

Lintなんかは入れなくても勝手にやってくれる(多分)みたいです。

普段はJavaScript Standard Styleで書いているのでコレを。

f:id:uutarou:20170811231321p:plain


なんかいろいろやろうとおもったのですが、使い始めてみないとなんとも言えないのでコレくらいにしておきます。

とりあえずこれから何か書いてみます。

雑談

今日は私の学校で開催されていたプロジェクションマッピングに行ってきました。

学校のイベントと言うよりは八王子市のイベントだったみたいなので、金がかかっていそうな感じでした。

未現像ですが写真とりあえず置いておきます。

手持ちで夜の写真撮るのつらいですね。(GRⅡは手ぶれ補正もついてません)

f:id:uutarou:20170811232153j:plain

f:id:uutarou:20170811232151j:plain

Emailのバリデーションは難しい…という話。 #88

今日やったこと

バイトでした。

Emailのバリデーションは難しい。

正しいメールアドレスの形式はRFCにて定められているのですが、意外といろんな記号やらなんやらが使えたり、@より後ろにIPアドレスが使えたりします。

知らなかった。

自称99.99%のメアドに対応できる…という正規表現なんかも存在しますがこれは…

emailregex.com

カイシャのSlackに貼ったら「怖いからやめて」と言われました。それな。

というようなこともあり、現実的なところで諦めるのがEmailのバリデーションのあるあるらしいです。

そして、もう一つ厄介なのが、かつてのキャリアメール。

2個以上連続のドットやアットマーク直前のドットはRFC的には禁止なのですが、かつてのキャリアメールでは設定可能だったそう…。

そしてその頃に設定されたメールアドレスは変えていない限りは現在も利用可能らしい…。

そんなこともあって、そういった人をターゲットにしているWebサービスとかだとそちらも考慮しないといけないらしい。

そんなこんなで良さげだなと思ったやつが以下。

rubytips86.hatenablog.com

前述のRFC違反のメアドも通す、比較的緩めの正規表現です。

雑談

今日はひたすらJSを書いてました。少しばかりのCSSも。

進捗イマイチで悲しい。


我が家にAirMac Extremeが導入されました。

光じゃないので速度は変わりませんでたが、自室でプチプチ回線が切れる問題が解決することを祈っています。