タグ

ブックマーク / blog.yux3.net (5)

  • がんばらないTypeScriptのはじめ方 - 角待ちは対空

    追記 2019/04/16に以下の記事が公開されました。 employment.en-japan.com gfxさんによる記事です。この記事自体2017年の若干古い記事なので、新しく読む方は最新版である上記の記事を読んだほうがいいでしょう。 このエントリは2017/07/12に行われたHatena Engineer Seminar #8 @ Tokyoの発表内容をブログ向けに書き直したものです。 事前の通知では「CoffeeScript脱出にみるTypeScript2.4時代のベストプラクティス」がタイトルだったのですが、主題を変えたためタイトルも「がんばらないTypeScriptの始め方」に変更させていただきました。CoffeeScript脱出の話は一応出てきます。 社内のTypeScript事情 その後のTypeScript 現在の様子 TypeScriptのがんばらないはじめ方

    がんばらないTypeScriptのはじめ方 - 角待ちは対空
  • CHANGELOG の書き方 - 角待ちは対空

    VS Code の拡張作っている際に CHANGELOG.md が自動生成され、書き方はKeep a Changelogに従えと書かれていたので紹介する。 ここに書かれていることは絶対ではなくただ提案しているだけである。意見がある人は話し合おうという温度感っぽいので、納得いかない場合は issue 立てると良いと思う。 僕自身はなんでもよくてある程度型が欲しかっただけなのでこれからはこれに従って書いていこうと思う。ただまぁ Semantic Versioning もそうだけどちゃんと従おうとすると以上にだるくなってくるので雰囲気従うくらいだと思う。 CHANGELOG の原則 機械的に生成するのではなく人間の手で書く 各セクションへのリンクが容易にできる 1つのバージョンごとに1つのサブセクションを作る リリースは新しいものが上に来るようにする 日付のフォーマットは YYYY-MM-DD

    CHANGELOG の書き方 - 角待ちは対空
  • TypeScript2.1.4 で導入された `keyof` キーワードと `in` キーワード、そして Lookup Types と Mapped Types - 角待ちは対空

    keyof キーワード key とオブジェクトを受け取りプロパティの値を取り出す関数を考えます。 function getProp(obj: {}, key: string) { return obj[key]; } この関数使って変数を宣言すると型推論では返り値は any になってしまいます。 const urara = { age: 15, name: "chiya", }; const a = getProp(urara, 'age'); // any const n = getProp(urara, 'name'); // any もうちょい頑張って型付けしたいと思ったら obj の型を絞るしかなさそうです。 interface Urara { age: number; name: string; } では key の型は?となると今までは素朴に String Literal ty

    TypeScript2.1.4 で導入された `keyof` キーワードと `in` キーワード、そして Lookup Types と Mapped Types - 角待ちは対空
  • レガシーソフトウェア改善ガイドを読んだ - 角待ちは対空

    レガシーソフトウェア改善ガイド (Object Oriented Selection) 作者: クリス・バーチャル,吉川邦夫出版社/メーカー: 翔泳社発売日: 2016/11/11メディア: 単行(ソフトカバー)この商品を含むブログを見る 入社以来比較的新し目のプロジェクトしか触ってこなかったけど、最近はチームが移動になり古めの(古めというか社内最古クラス)のサービスを扱うことになったので、社内で読んでいる人が良さそうと言っていたこともあり読んでみた。 blog.sushi.money hakobe932.hatenablog.com 結果としては非常に参考になった。どうアプローチしていけばいいかの型を提供してくれるであるから、これを元に自分たちにあった方法を模索していきたい。 以下は参考になった部分と感想。 恐れ レガシーなプロジェクトへ 少し変更するだけでぶっ壊れてしまう 修正が必

    レガシーソフトウェア改善ガイドを読んだ - 角待ちは対空
  • 私的TypeScriptとの関わり方ガイドライン - 角待ちは対空

    初めて書く時困りそうなトピックごとに TypeScript との関わり方を示していく。導入や書き始めのハードルを下げるのが目的なので意識高いことは言わない。 https://github.com/remojansen/logo.ts 対象読者 ゴール 基姿勢 何故そんなこといい加減な感じなのか 型の書き方 type annotation シグニチャ 型が合わない時 Structural typing any したい キャスト色々 キャストせざるを得ない時 import できない error TS2307:Cannot find module 'hoge'. error TS1192: Module '"hoge"' has no default export. や error TS2305: Module '"hoge"' has no exported member '_'. など 頑

    私的TypeScriptとの関わり方ガイドライン - 角待ちは対空
  • 1