プログラミングでは、問題を説明するのは良い考えではありません。常にそれを解決することを意味します。しかし、問題を説明すると、常に解決策に近づきます。最近、アルゴリズム化とプログラミングは一気に同義語と見なされています。
プログラマーはますます開発者と呼ばれるようになっています。プログラミングの結果は、常に問題の解決策の説明(変数+アルゴリズム)です。
どの言語で何がどのように行われるかは問題ではありません。
アルゴリズム化とプログラミングは最初に行きました手をつないで、しかしそれから彼らは道を分けました。この時点で、覚えておく価値のあるものは多くありません。これは最初の問題です。あなたは常に変数とアルゴリズムの明確な考えを持っている必要があります-これは2番目に関係します。
現代のプログラミングの繁栄は、主に、情報の理解、データの記述、およびプログラムでの処理のためのアルゴリズムが進んだ厄介な道によるものです。
最初の言語はパンチカードと同じくらい単純でしたが、機能しました。変数、変数タイプ、変数宣言、およびそれらの説明の順序は、非常に厳しく規制されていました。
原則として、変数は動的(変更可能なもの)と静的(定数、変更できない)に分けられました。
最初はポインタ変数でした(これは最高の「永遠の」言語のメリット-「アセンブラー」)。さまざまな時期にすべての言語で保存されているわけではありませんが、最近のプログラミングでは、ポインターの使用がコードの完成度の高さです。
変数は最初の前に宣言する必要があります使用し、ほとんどの場合、プログラムの最初に、さらに多くの場合、プログラムの特定のセクションで使用します。変数は、数字の有無にかかわらず、ラテン語で記述する必要があります。一部の言語では「_」文字が許可されていました。最初は文字でなければなりません。
この変数には特徴的な機能がありました。メモリ内のバイト数と、それをワード境界、さらにはダブルワードに揃える方法を知っている必要がありました。
後者は数学にとって非常に重要でしたプログラム。 RAMの構成の特殊性と数学的コプロセッサーの作業により、プログラマーは変数を正確かつ時間内に記述するだけでなく、RAM内でどのように配置されるかについても考える必要がありました。
約 ランダムアクセスメモリの「腸」は、圧倒的多数の場合、現代のプログラミングにはアクセスできません。以前は、記憶の構成を厳密に考慮する必要がありました。
最初のデータ構造は変数のコレクションです-それらは特定のセマンティクスを持つ変数として機能しましたが、それらにアクセスするには、必要なバイト数を知るだけでなく、コンパイラがいくつかのデータ型を単語の境界に自動的に整列させることも考慮する必要がありました。
これはすべて、重大なエラーにつながりましたプログラム。これらの過酷な時代を記念して、最初の言語は、時間厳守と厳密さをすべて備えており、プログラミングと開発において安全な構文制御を備えた変数、型、データ構造を提供していたことに注意してください。
プログラムが構文制御を通過して正常にリンクされた場合、実行の問題は、致命的なプログラマーエラーまたはハードウェア障害の後にのみ開始されました。
一部のプログラミング言語は、厳密な変数宣言への取り組みを維持しています。ほとんどを説明できますが、プログラマーにとって都合のよいように変数の型を変更できます。
PHP:ここで、プログラミングの変数はその名前と値によって完全に特徴付けられますが、タイプはコード内の場所とそれが必要になった時間によって異なります。 「$」記号で変数に名前を付けるのがあまり好きではない人もいますが、次の名前を付けることができます:$ 1、$ 2、$ 3。
値の範囲が必要な制限を超えており、多くの可能なタイプが提供されています。大多数のタスクでは、文字列、整数、場合によっては実数と論理数で十分です。そのようなポインタはありませんが、変数の場所に指示を渡す可能性があります。
JavaScript:プログラミングの変数は、記述しなければならないという事実によって完全に特徴付けられますが、言語が記述の欠如を許す場合もありますが、有効なコードを取得する可能性はほとんどありません。 JavaScriptは、構文に適合しないものや実行できなかったものでは機能しません。
値の範囲もスケール外ですが、文字列変数が最も一般的です。
インターネットに間接的に関連する言語、つまりC#、C ++、Pascal、Delphiでのプログラミングは厳格です。 C#では、説明するだけでなく、初期化する必要があります。
まず第一に、彼の名前で、それとは異なります言語には厳しい要件があります。 PHPで変数名の前に$記号が必要な場合、Javaではこれは規則の範囲外です。一般に、変数の命名に関しては、言語の構文のアイデアに加えて、開発者からのアイデアがたくさんあります。
特定の言語で書き始めるときは、同僚の意見に耳を傾け、その言語のスタイルに関する最新のイデオロギーマニュアルを確認する必要があります。
変数の2番目の特性は、その値です。それは常にそこにあります。値がなくても値です。特徴的な機能:たとえば、PHPの場合、結果として数値を返す多くの関数はブール結果を返す可能性があります-なぜ結果ではないのですか?
タイプは重要ではなく、存在も重要であり、多くのJavaScript構造は、タイプに関係なく、値の存在に非常に満足しています。
最後に重要なのは、変数の実際の値です。
一般に、記述の世界、変数の世界は、命名の方言やスタイルにもかかわらず、基本的なタイプとの関係ではあまり発展していません。
ほとんどのプログラマーは文字列(string)を使用し、多くの場合整数(int、integer)、必要に応じて実数(double、real)を使用しますが、記号(char)の概念を保持しているプログラマーもいます。
データベースについて話す必要はありません(小さいものから大きいものまで)。あらゆる場面で提供される主なタイプにはさまざまなバリエーションがあり、AdaとBabbageの時代から多くのタイプのデータが継承されています。
現在、で最高の変数プログラミングは、その意味、タイプ、そして一般に、それが必要なときにのみ明確になると仮定して、それ自体を指すことによって完全に特徴付けられます。
プログラミングにおける唯一の変数は、そのような他の人と一緒にいたいという願望によって完全に特徴付けられます。これは歴史的な現象であり、開発者の意志にはほとんど依存しません。
プログラムの作成が技術的なものから始まる場合特に、トピック「アルゴリズムとプログラミング」の最初の単語が2番目の単語よりも重要である専門家によって開発が受け入れられた場合、さまざまな変数が存在します。通常、このオプションは変数を記述する段階で停止します。
プログラムの作成がその主要なタスクの分析から始まり、それが基礎となるタスクの主要なポイントである場合、実用的な結果を得るのに十分なチャンスがあります。
要点を説明し、アルゴリズムを作成します。サービングは、プログラミング、タイプ、名前、値、説明の場所の変数であるだけでなく、プロセスの始まりでもあります。変数を記述するプロセスと、変数で機能するアルゴリズムは重要です。
動きは重要です:
通常、2番目または3番目の説明を作成した後、どこから始めればよいかがわかります。そして、その仕事はうまくいきました。
基本的なプログラムを開始するのにそれほど時間はかかりません変数:名前、タイプ、値ではなく、主要な役割を果たします。単独の変数、データ構造、配列、さらにはオブジェクトでさえ、問題の統計的解決策にすぎません。
タスクを説明するオブジェクトのツリー、つまり、変数、および単一のコード(オブジェクト)にカプセル化されたアルゴリズム、およびすべてのオブジェクトを共通のオブジェクト(オブジェクトのシステム)にカプセル化することが重要です。これは、現実的で現代的な変数の作成です。
そのような変数はそれ自体と相互作用することができます同様に、継承のおかげで、それぞれが独自の血統ブランチに沿って移動できます。つまり、現在使用されているものと場所、およびそれがどのように使用されているかへのポインターは関連していますが、コンテンツ自体は関連していません。この場合、コンテンツが役割を果たします。役割を果たしている場合、ポインターは次のコンテンツに移動します。