ベーシック禅

私の知る限り、統計によると、多くの人が「どうにかして生き方を知っている」という原則に関する最初の記事と、「すごい、ここで掘ったものを見て」という立場からより経験のある人を書いています。 一般的には、統計をあまり損なわないようにします。



少しマージンを残したいだけです。あなたは大丈夫です。 しかし、多くの場合、誰もこれに気づきません。 ただし、1行の投稿は小さすぎるため、少し拡張する必要があります。



新しい言語が登場するたびに(または、人気が出てくるたびに)、ホリバーはすぐに「全員が脳回を正しくする義務」と「古い言語で十分な場合に何かを変える理由」を開始します。 しかし、言語を区別し、「アーキテクチャ」、「パラダイム」、「コマンドセット」という言葉よりも多少区別される本質を説明することは可能ですか? このエンティティの名前はZenです。



禅は、言語が意識の一部になり、言語の論理と同じように思考が流れる瞬間に到達します。 ただし、これが「42」であると言うのは不合理ですが、私の経験は時系列でQ-basic、S-basic、C#(スニッフィング)、PHP、SQLであるため、鐘楼。



あなたがそれをよりよく説明できるなら、私はそれを読んでうれしいです。



SQLは簡単なシステムです。 最低限のサイクル、思考の直接的な表現、敷物のすぐ下のすくい。

C#-まるで海のように見えるシステムとの相互作用。そこからクジラが飛び、海は環境であり、ダイビングクジラは使用されるリソースです。

PHPは、ソケットを備えた鉄のコンストラクターで満たされたサンドボックスです。

基本(true)-「すべてが配列であり、配列ではないものがメモリの(配列)でアドレス指定されている」。

基本(行番号の書き込みを必要としないものすべて)は、PCPと同じです。



そして、一般的に、通常のホリバーは、解が一般に適切であるために正確に考えられますが、解Zenは否定的なコメントの著者に合ったものと一致しません。



それで、「一体何だ」と言う前に、私はまず「なぜ?」 そして時々-私は悪いことを言うことができません。言語や特定のプログラムの手段が異なる禅を示唆している場合、私の認識はもはや正しくないからです。



相互に排他的な段落



ただし、プロジェクトではさまざまな人が作業するため、同じスタイルに従わない要素がプロジェクトに表示される可能性があります。 例としては、HTMLバージョンがあります。これは、単純なマークアップ言語から、CSSとさまざまなコンテンツを持つ内部要素の興味深い混合物に変更(進化/劣化)されています。 一般的に、私は代わりに個人的に応援しています



<br>
      
      





書く



 <br />
      
      





IDEでの自動置換の場合を除いて、決定的なものは何も与えず、私の個人的な理解では、元のHTMLのZenは壊れています。



私が判断できるように、通常、この瞬間はホリバーのトリガーです。違いは重要でない部分にありますが、要素の認識を変更します。 そして、誰かが禅の鑑定人の仮面に入らない判決を出すとすぐに、マイナスはカルマに飛び込みます。 または、炎を正しく繁殖できた場合。



しかし、私は繰り返します、私からの裁判官はありません、これはより多くの観察です。 そして、おそらく、少なくともいくつかの点で私は間違っています。

ベーシック禅



そして、私が上で言ったように、統計によると、ほとんどの初心者の著者は「よく知っている」という精神で書いており、統計をあまり損なわないことを約束しました。 さて...



多くのプログラミングの本は次のように書いています。「行に番号を付けるときは、1ではなく10単位で番号を指定してください。リストを編集しやすくなります。



しかし、なぜ正確に?



なぞなぞ:「最初のシムシティと文明の地図のサイズはどれくらいで、最新のExcelのVBスクリプトの制限は何ですか?」



答えは:
100x100、50x200、10000。



の意味は何ですか:
ZX-Spectrumの最大行番号も10000ですが、0行を詰め込むこともできます。 10001アイテム。 つまり、制限は手動で設定されます。



つまり、真のBASICの行番号は配列要素の位置です。 文明の地図のように。


それは何を与えますか? 一般に、態度以外は何もありません。すべてが厳密にその場所にあります。 プログラムの動作を変更する必要がある場合は、配列の一部の要素を置き換え(インクルードなど)、プログラム全体を再読み込みすることはできません。 一方、プログラムを単一の構造として認識することを教えてくれます。各モジュールは実際には特定のしっかりした場所を持ち、機能によっても意味によって決定されます。



プログラムを制御するこの感覚は、作業を理解するという意味ではなく、プログラムの各ニューロンが完全に制御されているときの脳神経外科の意味です。



推奨事項に戻って、「10の後」に行番号を書きます。



経験上、私はわずかに異なる番号付けが好きでした。x000はプログラムの先頭、x00はパート、x0は命令ブロック、xは要素です。 この場合:0-REM(ブロックの説明); 1、5または1,3,5,7,9-IF; 1、2、4..8-線形要素。



ランダムな行番号を取得しましょう:





このような条件でのコードのアーキテクチャは次のとおりです。初期化ブロック->メインループ->適切なブロックを選択->必要なアクションを要求->ループへのポインターを返します。 したがって、「20xx」の部分は、詳細に応じて「2x00」または「2xxx」にポインターをリダイレクトする「サブサイクル」であることがよくありました。 2xxx行目-戻ります。



しかし、これは小さな問題です。



このシステム(ZX-Spectrum 48k)は改行を受け入れず、行内にコードのブロックを書くことはできませんでした。 データベースがプログラムエンジンに組み込まれ、プログラム自体が最初は一種の小さなOSを表し、コードブロックがアプリケーションである場合、プログラミング環境のこのようなハイブリッドスキームに終止符が打たれます。 モヒカンの最後の人としての私にとっては、やや悲しくてand辱的なものです。



そして、はい-これは、少なくとも配列へのアドレス指定操作のために、プログラムの実行を遅くします。 しかし、何かにお金を払わなければならず、コントロールは常に官僚主義を生み出します。



ヘビとハリネズミを渡る



同じPHPでこれをどのように使用できますか?



まず、配列が大好きです。 どこに価値があるのか​​を知りたい。 そして、ホスティング事業者のフローティンググリッチとバトルサーバーへのアクセスの不足を考慮に入れます-これは、テストの容易さのためにプログラム要素を配布する唯一の(理解しているように)方法であり、ロックを解除(デバッグ)する利便性を確保しますが、メモリを大幅に犠牲にします。



第二に、コードをナビゲーションに便利にする最も簡単な方法が見つかりました。「ゼロ」行にコメントがある中括弧。 丸みを帯びて、目を楽しませてくれる構造、長い間私に馴染みのある構成を作成します。最初の行はブロックに関するコメントで、それから指示です。 alt + 0を押すと、コードはほとんどウィキのページに変わり、目的のコメントにスクロールして、目的のコードを読むことができます。



繰り返しますが、これはプログラムの実行を遅くします。 しかし、何かにお金を払わなければならず、コントロールは常に官僚主義を生み出します。



はい、私は逆行しており、それらが私を助ける限り習慣を放棄するつもりはありません。 そして、私はそれが正しいと言っているのではなく、ただそれが機能していると言っているだけです。 そして、私見では、人々は真のBASICが彼らに与えた可能性を過小評価し、より原始的な言語の腐敗した影響に屈し、最も痛いマイナス(配列サイズ)を残し、主な機能(「すべては配列です!」)を削除しました。



独自の禅のない言語は、中国の風船のようなものです。



All Articles