SHARE
TWEET

Untitled

a guest Sep 15th, 2019 95 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # 自分のプログラミング言語選択基準(2019年9月版)
  2.  
  3. 何かこういうツールを作るぞ、という場合の選択基準メモ。
  4.  
  5. * ウェブアプリ(クライアント)
  6.     * TypeScript
  7.         * Storeが肥大化するため、型がないと厳しいため、最も普及している型付きAltJSを使う。
  8.         * Babelのプラグインの有無を気にしたくないため、その役割もtscで行える範囲でしか使わない。
  9.         * 他の候補
  10.             * JavaScript: import周りが弱いのでbabelが必要で、それならTypeScript使おうとなる。
  11.             * CoffeeScript: 昔使っていたけど、もう使うべきではない。が、まだ趣味では書いているんだよな……。
  12.     * SCSS
  13.         * autoprefixerを使わざるを得ないので、最も普及しているAltCSSを使う。
  14.         * postcssのプラグインを多数選ぶよりは、postcss-node-sassを導入した方が便利。
  15.         * CSS in JSは今のところ利用していない。
  16.         * 他の候補
  17.             * CSS: autoprefixer使うので(ry
  18.             * Stylus: 昔使っていたけど、lintなどがないので使うべきではない。が、Pug入っていると惰性で使っている。
  19.     * HTML
  20.         * AltHTMLの選択肢がPugぐらいしかないが、周辺ツールに困りそうなのでHTMLをそのまま書いている。
  21.         * 他の候補
  22.             * Pug: 昔使っていたけど、lintなどがないので使うべきではない。が、includeやmixinがめちゃくちゃ使える。複数のHTMLを発行しないSPAではそんなに困らない。
  23.     * React
  24.         * VueとAngluarは比較できるほどは知らない。ユーザの入力があるページでこれら無しはもはやあり得ない。
  25. * ウェブアプリ(サーバー)
  26.     * Go
  27.         * ほぼこれ一択。型があるし、デプロイも優しい。けど、最近、重いフロントばかり作っているのであまり書いていない。
  28.         * 他の候補
  29.             * Rails (Ruby): 昔使っていたけど、フロントエンドが厚くなった現代どこまでAPIモードが使えるか調べてない。
  30.             * Sinatra+Sequel (Ruby): 昔使ったけど、結局、ある程度大きくなるとRails使えば良かったようなって反省に至る。
  31.             * Flask (Python): Pythonで吐き出したJSONをパースする必要があるサービスで書いたけど、それなりに辛い。
  32.             * PHP: 最近、また流行っているらしいけど、僕の知識は5で止まっている。
  33.             * Express (deno): どうなんですかね(全然知らないけど、なんかこういう筋がありそうな気がしている)。
  34. * PCアプリ
  35.     * 現代において、ネイティブアプリとウェブアプリの地位は逆転し、PCアプリもブラウザ技術で作るようになったので、ウェブアプリ(クライアント)と同じ。
  36.     * ただし、Electron向けに色々吐き出そうとするとParcelだと苦労するので、頑張ってWebpackの設定書いた方がいい。
  37. * コマンドラインツール
  38.     * ShellScript
  39.         * やりたいこと、大体pipeとxargsで済む。
  40.         * 場合によってはMakefileを書く。
  41.             * よく使われているフォーマットに乗っていく。
  42.         * bashで良いが、Dockerの場合はashを使うAlpine Linuxであることも多いので注意。
  43.     * Python
  44.         * pipで色々入れない範囲で書き残すならオールインワンなので良い。
  45.         * subprocessとかurllib.requestとかzipfileが便利。
  46.     * Ruby
  47.         * 趣味的に。
  48.         * 外部ライブラリを使いたい、DSL書きたい、高度な正規表現(特に文字クラス)な場合、使っている。
  49.         * 型がないので一定規模超えたら、TypeScriptなりGoなりで書くべきだとは思う。
  50. * 設定ファイル
  51.     * JSON
  52.         * パースに困らない。コメントは書けない。
  53.     * YAML・Ruby DSL
  54.         * 趣味的に。
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top