タグ

2020年9月23日のブックマーク (8件)

  • 「読みやすい」とはどういうことか? コード品質の一指標

    「良いコード」とは何でしょうか? コードの品質には色々な指標がありますが、「読みやすいコードは良いコードである」というのは一つの指標として多くの方が認めるところではないでしょうか。しかし、では読みやすいコードとはどのようなコードかというのもなかなか難しい問題です。 この記事では、品質の良いコードとしての「読みやすいコード」に対する筆者の考え方を共有します。もちろんこれが唯一解だと主張するつもりはありませんが、参考になった・共感したという方はぜひこの記事を周りに教えてあげてください。 なお、サンプルコードはTypeScriptを使って示しますが、必要に応じて説明するのでTypeScriptの経験が無い方でも読むことができます。 短いまとめ 読みやすいコードとは、書き手の意図が伝わりやすいコードです。 書き手の意図を読み手に伝えるには、読み手に意図を推論してもらうためのヒントを残します。 複数

    「読みやすい」とはどういうことか? コード品質の一指標
  • EvernoteからNotionに乗り換えたら、離れられなくなった話|のぐちひろき

    こんにちは、PM業やってます。のぐちです。 私は結構なオンラインメモ好きでして、仕事での気づきや読書メモ、気になった記事のブックマークから始まり、プライベートの旅行の計画まで何から何までオンラインでメモしています。 ホワイトボードや手書きメモもありますが、書いて一段落したらオンラインに保存します。 長年愛用していたのはEvernote。記録を見ると2010年に使い始めて、2012年には有料会員になっていました。もう10年近いですね。書き溜めたメモは5,000件くらい。 そんなのぐちがEvernoteからNotionに乗り換えたら、離れられなくなったけどちょっぴり損した話をさせてください。後半では、Notionというスタートアップのビジョンについても考察しています。 ちなみにこの記事の下書きもNotionで書きました。 Evernoteに抱いていた課題・Googleドキュメントからのペースト

    EvernoteからNotionに乗り換えたら、離れられなくなった話|のぐちひろき
  • 快適なUXの裏には泥臭さがあった? 新サービス開発に「React×Next.js×AMP」採用のワケ

    2020年2月27日、「ホットペッパービューティーコスメ」のWeb版が公開された。リクルートテクノロジーズが同サービスを開発するにあたり採用したのは、ReactNext.jsと最新版のAMP(Accelerated Mobile Pages)である。この結果、ページの内容が表示されるまで0.2秒、画像が出るまで0.8秒、解析用のJavaScript等を含めた全てのリソースがダウンロードされるまでの時間は1.2秒以内を達成した。リクルートテクノロジーズが、これらの組み合わせを採用した背景、および開発における苦労や工夫した点などについて、同サービス開発に従事したエンジニアリング室 アプリケーションソリューショングループ グループマネジャーの古川陽介氏、メンバーの可児潤也氏、渡邉礁太郎氏に話を聞いた。 React×Next.js×AMP――この組み合わせを採用した背景 「ホットペッパービューテ

    快適なUXの裏には泥臭さがあった? 新サービス開発に「React×Next.js×AMP」採用のワケ
  • Introducing the New JSX Transform – React Blog

    This blog site has been archived. Go to react.dev/blog to see the recent posts. Although React 17 doesn’t contain new features, it will provide support for a new version of the JSX transform. In this post, we will describe what it is and how to try it. What’s a JSX Transform? Browsers don’t understand JSX out of the box, so most React users rely on a compiler like Babel or TypeScript to transform

    Introducing the New JSX Transform – React Blog
  • ブログを書いている私がブログを書かなくて良いと皆に伝えたい理由

    ブログでは知識は育たない ブログだけでなく Twitter をはじめとしたソーシャルメディアは、情報発進の意識が先に働いてしまって、誰かのためにはなるけど自分のためにならないい場合があります。もちろん、情報発信とは受け取る側との関係があって成り立つわけですが、自身の知識を広げたり深める手段には適していないと思います。 また、「多くの方に見てもらいたい」といった承認欲求が働きやすいので、意識的もしくは無意識で以下のようなコンテンツを作ってしまいがちです。 自分の興味ではなくトレンドを優先してしまう 必要以上に大袈裟な表現を使ってしまう 簡潔明快な『答え』を作ろうとしてしまう リンク集や Tips など情報主体になりがち バズる、注目されることが目的になってしまう 誰かに役に立たなければいけないという思考が先立って、何も書けなくなる方もいると思います。ただ、情報発信をしなくなるだけであれば良い

    ブログを書いている私がブログを書かなくて良いと皆に伝えたい理由
  • Next.js + Electron がとても簡単になっていた

    Next.js + Electron を使えばめちゃくちゃ簡単にデスクトップアプリを作れるという記事です。 デスクトップアプリケーションをWeb技術で作成するElectronを、むちゃくちゃ久々にやってみたら、とても簡単になっていた React のフレームワークである Next.js もバージョン9.xになってから劇的に良くなり続けていて、どんどん触りやすくなっています ちなみに Next.js は非公式な日語翻訳が進んでいるようです。 9割くらい翻訳が完了しているようですが、気になる方は、このサイトの「翻訳プロジェクトについて」をご覧ください。 セットアップする # npmの場合 $ npx create-next-app --example with-electron-typescript hoge $ cd hoge $ npm run build $ npm run start

    Next.js + Electron がとても簡単になっていた
  • ソフトウェアエンジニアのためのUIデザイン概論

    近年デザインエンジニアと呼ばれる職種が新しくできるなど「デザインとエンジニアリングをどうやってつなげていくか」ということが熱心に議論されており、エンジニアでも「UIデザイン」について議論することが多くなってきました。 しかし、全く知らない分野についていきなり勉強してくださいと言われてもちょっと困っちゃいますよね。 このではソフトウェアエンジニアの方々ために「UIデザインとは何か」「なぜUIデザインを学ぶのか」について、UI歴史や心理学の観点から解説しています。

    ソフトウェアエンジニアのためのUIデザイン概論
  • React17におけるJSXの新しい変換を理解する

    今日発表された公式ブログの記事によれば、React17では新しいJSXの変換がサポートされます。これはどういうことなのか、我々にどういう影響があるのかをまとめました。 JSXの変換とは ほとんどの人は、Reactを使う際に以下のようなJSX記法を使っているはずです。具体的には次のようなもので、<div>のようなHTMLに近い記法がJSXです。 const Foo = () => { return <div> <p id="a">I am foo</p> <p key="b">I am foo2</p>> </div>; } これらは純粋なJavaScriptではないため、そのままでは実行できません。そのため、何らかの方法でただのJavaScriptに変換する必要があります。現代では、それを担うのはBabelやTypeScriptです。これらによって、上記のJSXを含むコードは次のように変換

    React17におけるJSXの新しい変換を理解する