約6か月間、オープンソースのiPhoneまたはiPadプロジェクトに参加してObjective-Cのスキルを磨くべきだと考えていましたが、それをするたびに巨大なプロジェクトで数千行のコードが表示されます最終的に私は理解できないだろうと自分自身を納得させます。私のコミットはプロジェクト管理者や上級コントリビューターにとっては面倒なものになるといつも思うので、私はいつも最後の瞬間に撤回します。
私の質問は本質的に、中級経験のあるプログラマーがオープンソースプロジェクトに参加するのは面倒ですか?
約6か月間、オープンソースのiPhoneまたはiPadプロジェクトに参加してObjective-Cのスキルを磨くべきだと考えていましたが、それをするたびに巨大なプロジェクトで数千行のコードが表示されます最終的に私は理解できないだろうと自分自身を納得させます。私のコミットはプロジェクト管理者や上級コントリビューターにとっては面倒なものになるといつも思うので、私はいつも最後の瞬間に撤回します。
私の質問は本質的に、中級経験のあるプログラマーがオープンソースプロジェクトに参加するのは面倒ですか?
回答:
いいえ、ちがいます。
あなたが見ているプロジェクトのコードベースが非常に困難な場合は、以下を考慮してください
コミットが受け入れられないという「恐怖」を克服するには、最初に安全なポイントに進みます。これにより、あなたと開発チームの両方があなたの関係に自信を持ち、お互いの考え方を学ぶことができます。スキル(経験、コード品質、OSプロジェクトチームとそのダイナミクスの両方の理解)が向上するにつれて、手間をかけずに大きなタスクに取り組むことができるようになります。
また、適切な出発点を求め、チームがあなたに適していると思うものを確認するのに役立ちます。
例として、私は長年にわたって少しずつBuildbotに貢献してきました。いくつかの小さな問題の修正を始めただけで、目立ったバグを修正することでMercurialソースステップの品質を向上させました。最後に、ほとんどのWebページを書き直し、コード内のHTML貼り付けをテンプレートベースのHTML生成ソリューションに切り替えました。後者は、数か月のハードワークで数百件のコミットでした。
Mercurialの作業もいくつか行いましたが、それらの人たちはよりうるさく、技術はより複雑なので、コアの修正はまだ行われていません。いくつかのバグレポートを作成し、いくつかの小さな拡張機能を作成しましたが、現時点ではそれ以上大きなものはありません。
それが役に立てば幸い。
飛び込んでください。しばらくの間開発リストを監視し、快適に感じたら自己紹介してください。多くのプロジェクトには、バグ修正やドキュメント作成の簡単なジョブがいくつかあり、常連が喜んで指摘します。ほとんどのプロジェクトは、新しい手にとって非常に友好的であり、プロジェクトの真の資産になるために十分な速さでスクラッチできるようになります。
しばらくすると、コードベースの構造と最も重要な部分に精通することになります。このようなコードを理解することはプログラミングの非常に重要な部分であり、オープンソースはそれを学ぶ素晴らしい方法です。
頑張れ。たくさんの初心者が同じことをしています。プロジェクトリーダーは、リーグから外れていないものを見つけるのに役立ちます。あなたは徐々に残りに成長します。
ああ、そしてあなたがコードを理解していないからといって、それが良いことを意味するわけではありません。ひどく恐ろしいコードが見られます。それのいくつかは、不完全に書かれており、本来よりもはるかに複雑になっているため、理解するのが困難です。