すべおを支配する XNUMX ぀の蚀語

コヌドの局の䞋に隠された蚀語は、孊習されるこずを切望しながら衰退しおいたす。

すべおを支配する XNUMX ぀の蚀語

この蚘事の執筆時点では、「最初に孊ぶ蚀語のプログラミング」ずいうク゚リでは 517 億 90 䞇件の怜玢結果が返されたす。 これらのサむトはそれぞれ XNUMX ぀の特定の蚀語を賞賛しおおり、そのうちの XNUMX% が Python たたは JavaScript を掚奚するこずになりたす。

早速ですが、これら 517 億 XNUMX 䞇の Web サむトはすべお間違っおおり、最初に孊ぶべき蚀語は 基本的なロゞック.

コヌディング方法を知っおいるだけでは十分ではありたせん。 垂堎は研究所やコヌスの卒業生で飜和状態になっおいるため、若手のポゞションは事実䞊存圚しなくなっおいたす*。 今日の䞖界で成功するには、コヌディングず高床な基本的な論理的思考の䞡方が必芁です。

*以䞋、これは翻蚳であり、著者の劎働垂堎の状況ずあなたの囜の劎働垂堎の状況は他のニュアンスも同様に異なる可胜性がありたすが、それ自䜓が元の蚘事を悪化させるものではないこずを芚えおおいおください。玄。 翻蚳

私の最初のコンピュヌタヌサむ゚ンスの授業

私がコンピュヌタヌ サむ゚ンスに初めお觊れたのは、10 幎生で受講した遞択科目でした。 初日、教宀に入るず、目の前にたくさんのバケツに入ったアむスクリヌムずさたざたなトッピングがあり、ずおもうれしかったです。 党員が着垭した埌、先生は次のように発衚したした。

「今日は自分で䜜ったアむスクリヌムを詊食したす。 ただし、条件が XNUMX ぀ありたす。デザヌトの䜜り方に関する具䜓的な指瀺のリストを䜜成しなければなりたせん。私はそれに埓うずいうこずです。」

「倧䞈倫、このレッスンは長くないだろう」ず私は思いたした。 XNUMX分ほどで、私は倢のアむスクリヌムの完璧なレシピを曞き留めたした。

  1. ラズベリヌアむスクリヌムをXNUMX杯すくっおボりルに入れたす
  2. チョコレヌト゜ヌスを開け、同じボりルに倧さじXNUMX杯を加えたす。
  3. ボりルに生クリヌムを加える
  4. スティックシュガヌを党䜓にふりかけ、その䞊にチェリヌをのせたす

私の先生、぀たりこのかわいい比喩では「コンピュヌタヌ」は、私がこれたで芋たこずのないほど皮肉で文字通りのパフォヌマンスを披露したした。 圌女は蓋にも觊れずに、アむスクリヌムバケツをスクヌプで熱心に぀぀き始めたした。

「わかった、わかった、でもたず開けなきゃ」 - できるだけ早くおや぀を手に入れようずしお、私は叫びたした。

「説明曞に曞いおなかったので、アむスクリヌムを䜜るこずができたせんでした。 次"

早送りしお詊行 #2 に進みたしょう

  1. ラズベリヌアむスクリヌムの蓋を倖しお開けたす
  2. ラズベリヌアむスクリヌムをXNUMX杯すくっおボりルに入れたす
  3. チョコレヌト゜ヌスを開け、同じボりルに倧さじXNUMX杯を加えたす。
  4. ボりルに生クリヌムを加える
  5. スティックシュガヌを党䜓にふりかけ、その䞊にチェリヌを眮きたす

たあ、今のずころ特に問題はないはずです。 念のため、私の傑䜜料理を䜜るための材料がすべお開封されおいるこずを確認したした。

先生は蓋を倖し、アむスクリヌムを杯すくっおボりルに入れたした。 「぀いに、私の矎しいアむスクリヌムが実珟し始めたした」 それから圌女はチョコレヌト゜ヌスを開け、ボりルに倧さじXNUMX杯を加えたした。 圌女は「倧さじXNUMX杯のチョコレヌト゜ヌスを加えた」わけではありたせん - そうは思わないでください - もちろん、圌女はスプヌン自䜓をボりルに入れたした。 ゜ヌスは入っおいたせん。 繰り返しになりたすが、すべおを正確に曞き留める必芁はありたせんでした。 同じ粟神で残りの䜜業を終えた埌、ホむップクリヌムの海の䞋でほずんど目立たない、アむスクリヌムのボりルず倧さじXNUMX杯を受け取りたした。 䞊にはスティックシュガヌがXNUMX察ありたした。

この瞬間、私は぀いに、コンピュヌタヌずは真空の論理だずいうこずに気づいたようです。 圌は呚囲の状況を知らず、掚枬をしたせん。 圌は明確に定められた指瀺だけを実行し、それを䞀字䞀句忠実に守りたす。

私の最終的な結果は、長くおも必芁な䞀連の詊行錯誀の結果でした。

  1. ただ開けおいない堎合は、ラズベリヌアむスクリヌム、チョコレヌト゜ヌス、ホむップクリヌム、スティックシュガヌの各パッケヌゞを開けおください。
  2. ボりルを取り出しお目の前に眮きたす
  3. アむスクリヌムスクヌプを取り、ラズベリヌアむスクリヌムをXNUMXスクヌプず぀ボりルに入れたす。 アむスクリヌムスクヌプを元の䜍眮に戻したす。
  4. チョコレヌト゜ヌスの入った瓶を甚意し、゜ヌスをすくい、倧さじXNUMX杯の䞭身をボりルに泚ぎたす。 すくっお泚ぐずいう䜜業をもう䞀床繰り返したす。 スプヌンず瓶を元の䜍眮に戻したす。
  5. ホむップクリヌムのパッケヌゞを逆さたにしおボりルの䞊に持ち、アむスクリヌムの䞊に3秒ほど泚ぎ、パッケヌゞを元の䜍眮に戻したす。
  6. スティックシュガヌの入った瓶を甚意し、玄XNUMX本のスティックをボりルに泚ぎ、瓶を元に戻したす。
  7. チェリヌの入ったボりルからチェリヌをXNUMX個取り出し、アむスクリヌムの䞊に眮きたす。
  8. 完成したアむスクリヌムの入ったボりルずスプヌンを生埒に枡したす。

最埌の点は特に重芁でした。なぜなら、それがなければ、最埌から XNUMX 番目の時間に先生が私のアむスクリヌムを食べ始めおしたうからです。

しかし、これはプログラミングです。 コンピュヌタヌ甚の䞀連の呜什を慎重に䜜成するストレス。 本質的に、これはどのプログラミング蚀語でも結局のずころ、呜什を曞くこずです。

プログラミングのキャリア

「プログラマヌ」ずいう䞀蚀で職業を説明するこずが難しいのず同様に、プログラミングも単䞀の業界ずしお議論するこずが難しいずころたで来おいたす。 たったく異なる蚀語を知っおいる XNUMX 人の開発者が垂堎から同等に需芁がある堎合がありたす。これは、特定の蚀語の知識よりも開発胜力の方が重芁であるこずを意味したす。 成功したすべおの開発者に共通する普遍的な属性は、 基本的なロゞック.

最高のプログラマヌずは、コヌドを新しい角床から芋るこずができる人です。 そしお、これは基本的に重芁です。なぜなら、ほずんどの゜フトりェア補品は、文曞化されおいない䞍正なコヌドの断片の集合だからです。 それらは垞に統合され、必芁に応じおギャップを埋める必芁がありたす。 バラバラの点を䞀本の線で結ぶこずができない人は、氞遠に傍芳者でいなければなりたせん。

これらすべおを考えるず、今床は倪字で瀺した別の宣蚀が思い浮かびたす。 基本的な知識はプログラマヌにずっおこれたでも、そしおこれからも最も重芁です.

蚀語は行き来したす。 フレヌムワヌクは時代遅れになり぀぀あり、䌁業は䜿甚するテクノロゞヌ スタックを倉曎するこずで需芁に察応しおいたす。 決しお倉わらないこずが䞀぀あるでしょうか はい、基本的な知識です。すべおの基瀎ずなるため、基瀎ず呌ばれたす。

基瀎知識を高める方法

すべおを支配する XNUMX ぀の蚀語写真提䟛者: クリストファヌ ã‚žã‚§ã‚·ãƒ¥ã‚± ÐœÐ° Unsplash

基本的な論理的思考を改善するための出発点を探しおいる堎合は、ここから始めおみおください。

プログラムの耇雑さを知る

ずも呌ばれおいる ビッグオヌ 「アルゎリズムの耇雑さ」ずは、プログラムの実行にかかる時間の入力デヌタのサむズぞの䟝存性を指したす。 n。 䜿甚されおいるアルゎリズムの状況を垞に把握しおおくこずが重芁なステップです。

デヌタ構造を理解する

デヌタ構造は、最新のすべおのプログラムの䞭心です。 どの堎合にどの構造を䜿甚するかを知るこず自䜓が専門分野です。 デヌタ構造は実行時の耇雑さに盎接関係しおおり、間違った構造を遞択するず、根本的なパフォヌマンスの問題が発生する可胜性がありたす。 配列内の芁玠を芋぀けるのは、 ONこれは、入力デヌタずしお配列を䜿甚するコストが高いこずを瀺しおいたす。 ハッシュテヌブルルックアップ- O1これは、この堎合、倀の怜玢にかかる時間は芁玠の数に䟝存しないこずを意味したす。

むンタビュヌのために私のずころに来た人々は、ハッシュ テヌブルで怜玢するよりも配列で怜玢する方が速いず䞻匵したした。 これは、デヌタ構造を理解しお、圌らを雇うべきではないこずを瀺す最も確実な兆候でした。

読む/芋る/聞く

のようなサむト UdemyPluralsight Ðž ã‚³ãƒŒãƒ‰ã‚¢ã‚«ãƒ‡ãƒŸãƒŒ - 新しいプログラミング蚀語を孊習するのに最適です。 ただし、基本に぀いおは、䞀般的なコヌディングの原則、実践、スタむルに関する曞籍を参照しおください。 最もお勧めの本は『デザむンパタヌン』『リファクタリング』です。 既存のコヌドの改善」、「完璧なコヌド」、「クリヌンなコヌド」、および「プラグマティスト プログラマヌ」。 最埌に、すべおの開発者は、「アルゎリズム" 手元に。

緎習する

卵を割らずにスクランブル゚ッグを䜜るこずはできたせん。 のようなサむト ハッカヌランクコヌドりォヌズCoderByte, トップコヌダヌ О ãƒªãƒŒãƒˆã‚³ãƒŒãƒ‰ デヌタ構造ずアルゎリズムの知識をテストするための䜕千もの興味深いパズルを提䟛したす。 奜きな問題を解決できるかどうかを詊しお、その解決策を Github に投皿し、他の人がどのようにその問題に取り組んだかを芋おみたしょう。 ここで最埌のポむントに移りたす。

他の人のコヌドを読む

開発の道を進むずきに犯す可胜性のある最倧の間違いは、それを䞀人で進めるこずです。 ゜フトりェア開発は䞻にチヌムの取り組みです。 私たちは䞀緒に暙準を䜜成し、䞀緒に間違いを犯し、あらゆる倱敗にもかかわらず、䞀緒により良くなっおいきたす。 他の人のコヌドを読むのに費やした時間は、十分に報われたす。 適切なコヌドであるこずを確認しおください。

私ができる最善のアドバむスは、ただ䜕かを知らないこずを決しお恥じないこずです。 すでに述べたように、私たちの業界は巚倧であり、テクノロゞヌの量は無限です。 党䜓像を構築するには倚くの時間ず劎力がかかり、特定の分野でプロフェッショナルになるにはさらに倚くの時間ず劎力がかかり、その分野のスキルを磚くにはさらに桁違いに時間がかかりたす。 私自身がこれを達成したらお知らせしたす。

出所 habr.com

コメントを远加したす