質の高いWeb開発には何が必要ですか?

最新の、そして最も重要なこととして、要求されたWeb開発者にはどのような知識が必要ですか?



括弧の外は、コードを記述する基本的な機能であり、チームで働く能力やその他の明白なことに関するすべてのものです。 8月5日から始まるコース「Web-Developer」のプログラムでは、専門分野の基本を考慮して、次の範囲の知識とスキルを概説しました。







まず、コードレビュー:再利用可能、理解可能、シンプルなコードを書く価値があります。これには、DRY、KISS、循環的複雑性、可読性、時期尚早な最適化、クリーン関数、静的分析、スタイルガイドの遵守、すべてを追跡するツールが含まれますこれ。 これはデザインや心理学のようなものです。誰もが自分を専門家と見なしますが、誰もが実際にそうであるわけではありません。明確な原則がここで重要です。



第二に、開発者がPython、構文糖、エンジンコンパートメントの詳細に精通していると便利です。 ジェネレーター、イテレーター、デコレーター、コンテキストマネージャーを適切に使用する方法、MROを実際に適用してメモリリークに対処する方法-これらはすべて、コードをより簡潔で理解しやすく、「保守しやすい」ものにし、製品の安定性と適応性を高める実用的な実用的なスキルです。



優れた開発者はAPIを実行できます。彼はDjangoですばやくRESTを実行でき、APIを実装する際の良い点と悪い点を知っています。また、GraphQLの有用性とその落とし穴を理解しています。 Beckenderは、ますますAPIを作成する必要があり、重要なこととして、APIを正しく実行できる必要があります。



ちなみに、バックエンドはフロントエンドの基本的な知識がなくて苦労します。ひざの上でクールなバックエンドの最小フロントエンドを収集し、BootstrapまたはMaterialでラップし、古き良きjQueryの助けを借りて復活させることができると非常に役立ちます。 フルスタックの開発者の話ではありませんが、くしゃみをするために、フロントエンドを待つことは開発を行う最も生産的な方法ではありません。



第三に、一般的なDevOpsツールの知識なしでは困難です。FabricとDockerを使用する方法とタイミング、コンテナ化の落とし穴は何か、シンプルで有能なデプロイのセットアップ方法です。



開発がバグの恒久的な修正にならないように、このような開発者は自動テストを整理するのに非常に役立ちます:いつ書くべきか、そうでない場合、テストの欠如と各コミットの100%のカバー率との間の境界線、「悪臭」テストの処理方法、テストの数彼らにとって時間の浪費であると主張することができるように-これはすべて明白に思えますが、実際には常にうまくいくとは限りません。



通常、大量のデータがあり、それらを迅速に処理する必要があるため、リレーショナルデータウェアハウスを理解し、それらと通信する必要があります:後で害を及ぼさないように設計する方法、ORM内の不要な大騒ぎに数秒を費やさない方法、PostgreSQLを最適化する方法。



そのような開発者が非同期性を理解していれば、それがいかに機能するのか、必要なときに、どのように使用するのかを理解するのはクールです。 非同期は新しいセクシーなので、このトピックは重要です。このアプローチにより、多くのことを迅速かつ便利に行うことができます。



このリストに何が致命的に欠けていると思いますか? たぶん余分なものでしょうか? あなたの意見を共有して、業界を改善しましょう!



All Articles