ホームページ  >  記事  >  ソフトウェア開発について何を学ぶ必要がありますか?

ソフトウェア開発について何を学ぶ必要がありますか?

若昕
若昕オリジナル
2019-04-24 16:05:5617132ブラウズ

timg (2).jpg

ソフトウェア開発を行うために何を学ぶ必要がありますか? 今日、編集者はあなたのために以下をまとめました

ソフトウェア開発を行うために学ぶ必要がある:

1. マスター データとその変換、データのマシン上での表現、算術演算と論理演算、および関連する応用数学の基礎知識;

2. コンピューターの構成とパフォーマンスを理解する各主要コンポーネントの指標;

#3. オペレーティング システムとプログラミング言語の基礎知識を習得する;

#4. 一般的に使用されるコンピュータ オフィス ソフトウェアの基本的な操作方法に習熟する;

5. 基本的なデータ構造と一般的に使用されるアルゴリズムに習熟している;

6. C プログラミング言語に加え、C、Java、および Visual Basic プログラミング言語のいずれかに習熟している;

7 . データベース、ネットワーク、マルチメディアの基礎知識に精通している;

8. ソフトウェアエンジニアリングの基礎知識を習得し、ソフトウェアプロセスの基礎知識とソフトウェア開発プロジェクト管理の常識を理解している;

9. 一般的な情報技術規格、セキュリティ、関連法規制の基礎知識を理解する;

10. 情報化とコンピュータ応用に関する基礎知識を理解する;

##11. 正しく読んで理解するコンピュータ分野の簡単な英語教材。

プログラマーに必要なスキル:

1. 開発ツールに習熟している

プログラマーとして、少なくとも 2 ~ 3 つの開発ツールの使用に習熟している必要があります。その中でも、C/C と JAVA が最も推奨される開発ツールです。C/C は、その効率性と柔軟性の高さから、開発ツールの中でも強力なツールとなっています。多くのシステムレベルのソフトウェアは、今でも C/C で書かれています。 。

JAVA のクロスプラットフォームと WEB との良好な統合は JAVA の利点であり、JAVA とその関連技術セット JAVAOne は将来的に主流の開発ツールの 1 つになるでしょう。

第二に、VB、PowerBuilder、Delphi、CBuilder などの簡単なビジュアル開発ツールを習得することをお勧めします。これらの開発ツールを使用すると、開発の難易度が軽減され、プログラマのオブジェクト モデルの概念が強化されます。

さらに、シェルや Perl などの基本的なスクリプト言語を習得し、少なくともこれらのスクリプト コードを読めるようにする必要があります。

2. データベースに精通している

プログラマには当然のことながら、独自の理由があります: 多くのアプリケーションはデータベース データを中心にしており、多くのデータベース製品があり、その中でリレーショナル データベースが依然として主流です。そのため、プログラマーは少なくとも 1 つまたは 2 つのデータベースに精通しており、リレーショナル データベースの主要な要素について明確に理解しており、SQL の基本構文に精通している必要があります。

多くのデータベース製品は視覚的なデータベース管理ツールを提供していますが、SQL は基礎であり、普遍的なデータベース操作方法です。商用データベース システムにアクセスできない場合は、mySQL、Postgres などの無料のデータベース製品を使用することをお勧めします。

3. オペレーティング システムを理解する

現在主流のオペレーティング システムは Windows と Linux/Unix であり、これらのオペレーティング システムを使いこなす必要がありますが、それだけでは十分ではありません。

真のプログラミング マスターになるには、オペレーティング システム、そのメモリ管理メカニズム、プロセス/スレッド スケジューリング、シグナル、カーネル オブジェクト、システム コール、プロトコル スタック実装などを深く理解する必要があります。 。

Linux は、ソース コード開発用のオペレーティング システムとして優れた学習プラットフォームであり、最新のオペレーティング システムのほぼすべての特性を備えています。 Windows システムのカーネル実装メカニズムに関する情報は少なくなっていますが、依然としてインターネットを通じて多くの情報を入手できます。ネットワーク プロトコル TCP/IP を理解します。

インターネットが非常に普及している今日、インターネットをサポートするプロトコルである TCP/IP プロトコル スタックをまだマスターしていない場合は、このレッスンをすぐに理解する必要があります。ネットワーク テクノロジは、ネットワークの世界を変えました。ソフトウェアの動作方法、モデル。

初期のクライアント/サーバー構造から今日の WEB サービス、将来のグリッド コンピューティングに至るまで、これらすべては TCP/IP プロトコル スタックに基づくネットワーク プロトコル サポートと切り離すことができません。TCP/IP IP の深い理解プロトコルは非常に必要です。

少なくとも、ISO 7 層プロトコル モデル、IP/UDP/TCP/HTTP などの一般的なプロトコルの原理、および 3 ウェイ ハンドシェイク メカニズムを理解する必要があります。

4. DCOM/CORBA/XML/WEBServices の存在の重要性を理解する

テクノロジーの発展に伴い、ソフトウェアとネットワークのシームレスな統合は避けられない傾向であり、場所の独立性も高まっています。コンピューティング モデルの重要な特徴の 1 つは、DCOM/CORBA が現在主流の 2 つの分散コンピューティングの中間プラットフォームであることです。DCOM は Microsoft COM (コンポーネント オブジェクト モデル) の拡張であり、CORBA は仕様です。 OMGによってサポートされています。

XML/WebServices の重要性は自明のことです。XML は、その構造化表現方法と超表現力により、インターネット上では「エスペラント語」として知られており、分散コンピューティングの基礎の 1 つです。

5. ソフトウェア エンジニアリングを CMM から分離しないでください

大規模なソフトウェア システムの開発では、エンジニアリング開発の管理が個人の英雄的な行為に取って代わり、ソフトウェア システムの成功を保証するものになります。プログラミングマスターは優秀なプログラマーである必要はありません。

優秀なプログラマは、優れたプログラミング能力と開発スキルを厳密なソフトウェア エンジニアリングの考え方と組み合わせています。プログラミングはソフトウェア ライフ サイクルの一部にすぎません。優秀なプログラマは、ソフトウェア開発のすべての段階を習得する必要があります。基本的なスキル。

市場分析、実現可能性分析、需要分析、構造設計、詳細設計、ソフトウェアテストなど。

6.要件理解能力

プログラマは、タスクの順序に記載されている要件を正しく理解できなければなりません。ここで、プログラマはソフトウェアの機能要件だけでなく、ソフトウェアのパフォーマンス要件にも注意を払う必要があることは明らかです。

プロジェクト全体に対する独自のモジュールの影響と潜在的な脅威を正しく評価できなければなりません。プロジェクト経験 2 ~ 3 年の熟練したプログラマがこれを理解していない場合、それは単にプログラマが理解していないことを意味するだけです。私は働いたが、一生懸命働いたわけではない。

7. モジュール思考能力

優秀なプログラマーとして、彼の思考は現在の業務タスクに限定されるものではなく、自分が作成したモジュールが現在のシステムから分離できるかどうかを考える必要があります。これは存在しており、単純なカプセル化を通じて他のシステムまたは他のモジュールで直接使用できます。

これにより、コードが再利用可能になり、作業の重複が減り、システム構造がより合理的になります。モジュール的思考能力の向上は、プログラマーの技術レベルの向上を示す重要な指標です。


以上がソフトウェア開発について何を学ぶ必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。