Skip to content

cpprefjp完成のお知らせと、これからの相談 #1755

Description

@faithandbrave

C++29までの作業が一通り完了し、C互換ライブラリ・iostream・locale周りも必要なものは一通りおわりました。
これで、cpprefjpが当初から目指していた範囲としては、一旦完成となります。

まずはここまでご尽力いただいた方々、ありがとうございます。
cpprefjpはC++での開発をするにあたって必要不可欠なインフラへと成長してこれたのは、みなさんがさまざまな視点で貢献くださったからだと思います。

cpprefjpの今後に向けてご相談

さて、今後に向けてですが、AIの力も借りることで執筆スピードが向上し、検証もしやすくなったので、cpprefjpが扱う範囲をさらに拡大していけると考えています。
とくにcpprefjpは言語側が弱いというのはさまざまなところで言われているので、そのあたりをカバーしていければと思っています。

またほかにもやりたいことはいろいろでてくるかと思いますので、やりたいことがあれば実現させるかはわからないですが、書いていってほしいです。
また、優先的に対応する順序も決めていきたいです。

まず私が考える優先順位を書きます。

1. 言語の入門

  • C++入門もcpprefjpで完結させられるといいなと思っています
  • どこまで平易に書くか、どこまで詳細に書くかとかあると思いますが、平易な説明 + 詳細を知りたい人向けの説明で2種類書くといいのかなと思っています
  • intro階層とするとadvancedなことが書きにくいので、tutorial階層とかどうかなと思ってます
  • Goみたいなインタラクティブな入門サイトである必要はないと思っています
  • 平易な説明としては、Elixirの入門サイトは見晴らしがよく、さっと学べるのでいいかなと思ってます https://elixir-lang.jp/getting-started/case-cond-and-if.html
  • コンパイラのインストール・使い方もスクリーンショット付きで書けるといいなと思ってます
  • コンテナの選択や並行処理の基本みたいな、ライブラリ部分もある程度カバーできるといいかなと思います。イテレータとはなにか、みたいなのも。
  • まずはたたき台のページを書いて、説明の粒度とか書き方をレビューし、雛形ページを作ってから量産する想定です
  • 言語バージョンによって最適な書き方が変わるので、言語バージョンごとにページを用意するのがいいかなと思っています。多重管理にはなってしまいますが、そこはAIで一部バージョンのみの更新になっていないかを都度チェックできるかなと思います。一度作ったらそんなに変えないですしね
  • ツールの新機能はあまり必要はない気はしていますが、言語バージョンを切り替えるドロップダウンリストみたいなのはあるといい気がしています

2. 言語機能のリファレンス

  • どこまで詳細に書くかはありますが、いまバージョンごとの差分を書いているものを、ある機能がどのバージョンでどのように変わったのかを確認しながら機能を1ページで見れるといいかなと思っています
  • cpprefjpらしく、この仕様はなんのためのものでどういう状況で必要なのかに答えるための例と補足は充実させたいです
  • lang/reference階層を作る想定です

3. ライブラリリファレンスの使いやすさ向上

  • 「パラメータ」欄は、一部ページにはありますが、改めて追加してもいい気がしています。これから追加するのは大変ですが、各パラメータがどういう意味・役割なのかはわかるといいかなと思っています
  • さらなる例の追加。特徴的な仕様を説明する例はもっとあっていいかなと思っています
    • たとえばshared_ptrのaliasing constructorとかは、説明はありますがさらっとしているので、独自した例とともに説明できるといいかなと
    • ほかにも、1ページに1例で済ませている多くのページに、基本的な使い方以外にも、ユースケースの例や、よくある間違いの例 (accumulateへの初期値0LLみたいな) とかも載せられるといいかなと思っています
  • ライブラリ一般の要件、コンテナの要件、アロケータ要件なども現状書く場所がないので、余裕があれば書いていきたいです (現状なくてもあまり困ってなさそうな気はしますが)

4. C言語対応

  • C言語の解説は最新に追従できているサイトはなかなかないので、cpprefjpの対応が求められる領域な気はしています
  • C++とは足並みが合ってない進化もいろいろ進んでいるようですので (10進浮動小数点数とか)、私たちもついていけなくなる前に、C言語のバージョンアップも管理していけるといいのかなと思ってます

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions