Advertisement
Guest User

Untitled

a guest
Sep 15th, 2019
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.08 KB | None | 0 0
  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. * 趣味的に。
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement