Android開発はテクノロジーを知っている必要があります!RecyclerViewを明確に使用させてください。完全に理解していない場合は申し訳ありません。

序文

この記事は主に今年上半期の面接経験を共有することを目的としています。私は大規模な工場で3か月間働いています。最近、多くの企業が秋の採用を開始しました。また、下半期の面接がスムーズに行われることを願っています。 2020年と理想的なオファーを取得します。

就職活動をしていると、いろいろな思いがありましたので、面接の経験や人生の考え方をまとめました。

詳細を学ぶ方法について話しましょう

最初に言うことは、テクノロジーの学習は、量的から質的へと蓄積され、変化するプロセスであるということです。短期間であなたを大きな牛にする方法はありません。いわゆるワンステップアセントは予約されています。それらの伝説的な天才のために、しかし天才結局のところ、それは非常に少数の人々にすぎません。

大きな牛のほとんどは、今でも忍耐力と正しい学習方法に依存しており、継続的な努力と継続的な学習を通じて、現在の成果を達成するために多くのエネルギーを費やしてきました。

したがって、公式文書を読み終えたとき、あなたは実際には小さな一歩を踏み出しているだけです。本当の大きな牛になるためには、その後の研究で一生懸命働き続ける必要があります。

では、どのようにして学習の次のステップに進むのでしょうか。

次に、実際のプロジェクトについて話し合う必要があります

技術を学ぶ究極の目標は、それを実際のプロジェクトに適用することです。どんなに強力な技術であっても、実際のプロジェクトに適用する方法がなければ、その意味と価値は非常に限られたものになります。

また、人間の脳はコンピューターに匹敵するものではなく、忘れられてしまいます。実際のプロジェクトをたくさん通過しないと、すぐにたくさんの知識ポイントを忘れてしまいます。少なくとも私はこんな感じです(誰にでも言えますか?私に悪い記憶を保存する方法!!)。

ですから、公式文書を読んだ後は、実際のプロジェクトで知識ポイントを統合していく必要がありますが、現時点では、知識ポイントの多くを十分に理解することはできません。プロジェクトの経験とピットでの分析だけで成長するだけです。問題解決において、私たちはいくつかの技術的概念を基本的に理解することができます。

経験豊富な開発者は多かれ少なかれそのような経験を持っているはずです。つまり、最初はあまり理解できない概念もありますが、プロジェクトの過程で、無意識のうちに原理を理解していることに気付くでしょう。そうです、これが気持ちです!

実際のプロジェクトの戦闘では、私は実際にはあまりスキルがありません。私は一文でそれを行いますが、このプロセスでは、なぜそれを書くのか、なぜそれを行うのか、原理を理解することを学び、注意を払う必要があります本質的に。

技術記事を読むことについて話しましょう

このような情報爆発の時代では、インターネット、さまざまなテクノロジープラットフォーム(csdn、cnblogs、oschina、Androidバス、segmentfaultなど)から特定のテクノロジーの乾物記事を見つけるのは非常に簡単です。各Wechatプラットフォームの公式アカウントは次のようになります。これは、乾物情報を取得するための良い方法です。

公式ドキュメントは素晴らしいですが、より深いAPIドキュメントに隠されていることが多く、APIの数が多いため、すべてのAPIドキュメントを読むことが難しいため、発見できない知識ポイントがまだたくさんあります。ルックアップツール。

私の意見では、技術情報を取得するためにさまざまなテクノロジープラットフォームに積極的に注意を払っていないプログラマーは資格のあるプログラマーではない
ため、私は毎朝少なくとも1時間、フォローしているさまざまなテクノロジープラットフォームに関する有用な情報を取得しています。

  • 一方で、関連する乾物の技術記事を見つけ、これらの記事を読むことで自分の知識ポイントを統合して確認することができます。結局のところ、技術学習は、ドキュメントの最も原始的な技術ポイントであるだけでなく、さまざまなデザインでもあります。アーキテクチャ。、ツールの使用、機能の実現、ソリューションの適用など、これらのプラットフォームに関するさまざまな記事を通じて、知識システムをより完璧にすることができます。
  • 一方、開発者としては、これらのプラットフォームを通じて最新の技術動向を理解し、技術の開発動向に注意を払う必要があります。結局のところ、技術は非常に速く更新され、技術エコシステムの変革はいつでも特定のテクノロジーを排除する(素人として、私はお金を稼ぐためにここにいるので、テクノロジーのトレンドに基づいて技術的な準備をすることが不可欠です)。
    言い換えれば、プログラマーは本当に友達のグループです。共有するのが大好きなので、現在の技術記事は本当にたくさんあります。まばゆいばかりです。

学習効率を上げるためには、自分の状況に応じて適切にスクリーニングして読む必要があります。

私の場合、私の理解に基づいて、技術記事を4つのカテゴリに分類しました。

  • 知識ポイント説明クラス:一般的に、特定の技術の特定の知識ポイントを紹介します。
  • 機能実現\ソリューションカテゴリ:よりターゲットを絞ったもので、通常は特定のシナリオまたはバグソリューションなどを含むプログラムアプリケーションでの特定の機能または機能実現です。この記事には通常、特定の思考分析と特定のコードが含まれています。
  • ソースコード\フレームワーク主成分分析クラス:各テクニカルポイントまたはフレームワークのソースコードを逆アセンブル、分析、および説明します。
  • 学習方法/経験要約クラス:主にいくつかの学習方法を紹介し、プロジェクト開発で遭遇した問題を要約して分析します。

知識解説記事は、公式文書の読み方を学べば、ドキュメントポーターだけなのか判断しやすいので、ドキュメントポーターならすぐに飛ばして、作者が自分で分析や視点。作者のオリジナルの場合は、よく読んで、ある知識のポイントの理解にずれがないか、抜けがないかを確認します。

関数の実現/ソリューションなどの記事には多くのシナリオがあります。同様のシナリオについて推論するために、その実現と分析のアイデアに焦点を当てます。いくつかの一般的な関数またはソリューションについては、それらのコードを注意深く読んで研究します。残りは主にマークを付けて収集し、脳に印象を残し、インデックスを作成し、必要に応じてチェックします。私のようなスカムの場合、シーンがあまり使用されない期間が経過した後にのみタイトルを覚えています。

ソースコード\フレームワークの主成分分析に関する記事を繰り返し読み、検証用のソースコードと組み合わせて、定期的に記事を確認または要約し、原則を理解することで遭遇したときに私をより良くすることができるので、私の脳の印象を深め続けますプロジェクトの問題。より速く、より良い最良の解決策を見つけてください。

学習方法・体験概要の記事数は他の記事に比べて少なめですが、一般的にはよく読んでいきます。諺にもあるように、前任者や子孫は日陰を楽しむことができます。経験を積むと旅行が減ります。回り道がたくさんあります。もちろん、この種の記事は主観的な意識が強いので、本当に役立つものを特定する必要があります。

誰かが尋ねたいと思うかもしれません、あなたが毎日技術記事を読むのに1時間を費やすならば、記事は乱雑になるでしょう。

これは確かに問題です。結局のところ、私たちの脳の容量は限られています。LRUCacheキャッシュ戦略と同様に、最も一般的に使用される情報は常に脳に保持されますが、あまり長く関係のないコンテンツはすぐに捨てられ忘れられた(伝説によれば、世界中に忘れられない「高血症」患者のグループがいるということです。私は個人的に経験したことすべてを思い出すことができ、細部にまで特定することができます。私はそれをうらやましく思います。 !)。

忘却の問題については、うまく収集することですが、技術的なプラットフォームが多すぎて、記事を検索するときに、どのプラットフォームを収集しているのか思い出せないことがあります。その場合、1つのプラットフォームが1つのプラットフォームになります。検索効率は間違いなく低くなります。

そのため、クラウドノートまたはgithubを使用して、優れていると思われる記事を1か所にまとめる必要があります。記事の分類に従って、さまざまなリンクインデックスを作成し、各インデックスのタイトルを付けます。重要。キーワードでは、新しい記事を追加するたびにお気に入りのインデックスを確認できるため、記事を見つけたいときに最も早く見つけることができます。

ドキュメントの読み方や技術ブログの読み方を知っていますが、他の方法で学ぶ必要はありませんか?

答えは間違いなくノーです!

ブログには乾いた記事がたくさんありますが、ほとんどの場合、知識システムは比較的断片化されています。本と比較すると、それほど体系的ではなく、ビデオチュートリアルと比較すると、それほど直感的ではないので、ドキュメントとブログ用は別として学習するには、私たち自身の状況に応じて、追加の本やビデオチュートリアルも学ぶ必要があります。

いつも本を読みたくないと感じる人もいますが、私の方法は、毎日20ページ以上の本を読むなど、特定の本を読むときに自分自身に小さな目標を設定して、あなたも学ばないようにすることです。毎日たくさん。不安になりやすいです。もちろん、自分の状況に合わせて1日あたりの読書量を設定することもできます。1日あたりの読書量を20ページで計算すると、500ページの本は1日未満で完成します。月。

ビデオチュートリアルを見るのに時間がかかりすぎると考える人もいますが、実際はそうです。ブログによっては、コンテンツを10分以上で読むことができ、ビデオに入れるのに1時間かかることがよくあります。しかし、ビデオチュートリアルの利点リアルタイムで見ることができるということですいくつかの概念はより直感的で理解しやすいです。

もちろん、ローカルビデオを再生している場合は、ビデオサウンドを変更せずにビデオの高速再生をサポートするpotPlayerなどのプレーヤーを使用して、ビデオの表示を高速化できます。

福祉を学ぶ

【Android詳細知識ポイントマインドマップ(スキルツリー)】

実際、Androidの開発には非常に多くの知識があり、インタビューで尋ねるべきことがまだいくつかあります。したがって、これらの知識ポイントにどれだけ準備しているかを確認するためだけに、面接のための他のトリックはありません。したがって、面接に出かけるときは、レビューでどの段階に到達したかを確認することをお勧めします。

Androidはこれまでほど熱くはありませんが、4つの主要なコンポーネントで高給の仕事を見つける時代は過ぎ去りました。これは、Androidの中間レベルより下のポジションが飽和状態にあることを示しているだけです。現在、シニアエンジニアはまだ比較的不足しています。多くのシニアポジションには非常に高い給与が支払われます(より多くのお金がある場合、適切なポジションを見つけることができない場合があります)。ですから、シニアエンジニアになろうとすることが最も重要です。

ここに添付されているのは、上記のインタビューの質問、JD.com、Xiaomi、Tencent、Toutiao、Ali、Meituan、およびその他の企業からの19年間のインタビューの質問に関連する数十のByteDanceのセットです。技術的なポイントは、知識と多くの詳細を含めて、ビデオとPDFにまとめられています(実際には、予想よりも多くの労力を要しました)。

スペースに限りがございますので、ごく一部を写真でお見せいたします。

詳細な配置はGitHubで見ることができます。

Androidアーキテクチャビデオ+ BATインタビュートピックPDF +研究ノート

インターネット上にはAndroidを学ぶための資料がたくさんありますが、学んだ知識が構造化されておらず、問題が発生した場合は、味わって徹底的に勉強するのをやめるだけでは、真の技​​術向上を実現することは困難です。この体系的な技術システムが方向性の参考になることを願っています。

1.md)**

インターネット上にはAndroidを学ぶための資料がたくさんありますが、学んだ知識が構造化されておらず、問題が発生した場合は、味わって徹底的に勉強するのをやめるだけでは、真の技​​術向上を実現することは困難です。この体系的な技術システムが方向性の参考になることを願っています。

おすすめ

転載: blog.csdn.net/fanzhang_vip0723/article/details/112898327