ゼロからプログラミングを学ぶ: 自宅で学習を始める方法。 初心者向けの家庭用コンピュータープログラミングでゼロからプログラミングを学ぶ方法

今日、多くの人がゼロからプログラミングを学ぶことができるかどうかに関心を持っています。

このビジネスに従事している人々は莫大な収入を持ち、毎週末バリに行き、仕事の最初の数ヶ月で親戚全員のためにアパートを購入することができたという話を聞いたことがあります.

原則として、これは真実からかけ離れたものではありませんが、 そのような結果には、経験と評判が必要です。そして、最も単純なものから始める必要があります。 プログラムの作成について何も知らない人が、将来バリに旅行して不動産を購入するために必要な手順を見ていきます。

コンテンツ:

第一歩。 準備

多くの場合、初心者のプログラマーは、最初に正しく優先順位を付けることができなかったという単純な理由で成功しません。

彼らはこの工芸品をロマンチックでダイナミックなものとして提示します-ある種の絶え間ない行動です。

映画では、このプロセスが実際のものとはまったく異なることが示されています。

さらに、一般的には コーディングが表示されない、それを中心に展開するイベントのみが表示されます。

また映画では、知識や経験がなくても、脳の灰白質がなくてもプログラマーになれることを示しています。 この場合、映画「人事」を思い出すことができます。

ですから、あらゆる種類の映画の精神にのめり込み、自分で「コーディング」を開始したい場合は、 プログラミングは明らかにあなたのためではありません.

問題の機体についての真実は次のとおりです。 プログラミングは:

  • 何時間も、時には何日もの単調な仕事リラックスできない間は、常に集中する必要があります。
  • 最新トレンドを追い求めた無限の学びこのエリアの中では;
  • 顧客との同様のプロジェクト自分が何を望んでいて、それがどのように見えるべきかを知らない人。

後者については、 異なる色の7本の赤い線についてのビデオを見る価値があります、そのうちの 1 つは子猫の形をしています。 原則として、顧客はしばしば不可能を要求するため、これは真実に近いものです。 彼らが何かを注文することもありますが、結果は常に彼らに合っていません。

https://youtu.be/nU0Fy5JXOtY

これらすべてを理解し、素晴らしいプログラミングの世界に飛び込む準備ができているなら、 その後、次のステップに進みます。

ステップ2。 第一言語の選択

膨大な数のプログラミング言語があります。いくつかの見積もりによると、その数はすでに数千に達しています。

一般に、C は最も単純な言語の 1 つであり、他のすべての基礎を提供します。 さらに、その要素は他の多くのシステムやプログラムで使用されています。

しかし、興味深いのは、優れた教育機関だけでなく、 コースでは、学生は次の順序で言語を学びます。

1 パスカル.

2 C++.

3 PHP Webプログラミングに関連するすべて SQL(これは、クエリを通じてデータベースを操作するように設計されたシステムです)。

  1. ウェブ(ウェブサイト、オンラインシステム、およびそれに関連するすべての開発) – html(本格的なプログラミング言語とは言えませんが)、 PHP、Perl、Python、Ruby、Java、Groovy、および ASP.NET テクノロジ。
  2. ユーザーソフトウェア(ディレクトリ、ブラウザ、インスタント メッセンジャーなどのあらゆる種類のプログラム) - Delphi、C、C++、C#。
  3. モバイル機器用ユーザーソフトウェア– Java、Objective-C。
  4. 機械開発(マイクロプロセッサやその他のデバイスの操作、ロボット工学の設計) - アセンブラ、改造 C.

誰かが、いわゆる 1C プログラミングをこのリストに追加することもできます。 素人や無知な人を信用しないでください! これはプログラミングではありません。

問題の仕事の基本を知ると、なぜこれが言えるのかがわかります。

一番好きなものを選んでください。

アドバイス:今すぐ選択してください! 自分がどの方向に発展し、将来何を学ぶべきかを正確に知る必要があります。

ほとんどの専門家も パスカルで勉強を始めることをお勧めします。このオプションにより、

最も単純なプログラムを作成し、問題のクラフト全体の一般的なアイデアを得ることができます。

パスカルは一種の架け橋と言えます。 数学をよく知っている人は、プログラミングの世界に入ることができます。

注意!研修を経てどこの会社に就職しても、 あなたは自分自身のために再訓練されます。したがって、プログラムを作成する際の原理そのものを理解する必要があります。 そしてこのために より良いものはありません パスカル。

ステップ 3。 コンパイラの学習

参考のために: コンパイラ- これは、入力コマンドを大まかに言えば、0 と 1 に変換する、つまり、マシンが何をすべきかを理解するような解釈に変換するように設計された技術ソリューションです。

実際には、すべてのプログラムを作成し、コンパイラで実行します。

私たちのアドバイスに従い、Pascal から始めることにした場合は、Free Pascal をダウンロードする必要があります。 このコンパイラは完全に無料で、公式 Web サイトで配布されています。

ご覧のとおり、かなり「古風」に見えますが、プログラミングはここから始まります。 ところで、 C++ コンパイラはほとんど同じように見えます。

これは Turbo C++ と呼ばれます (ダウンロードできます)。

Pascal には、GNU Pascal、Turbo/Borland Pascal、TMT Pascal、Virtual Pascal もあります。 C++ の場合は、Borland C++、+、Dev C++、GCC、および Eclipse を使用できます。

しかし、上で述べたように、これはほんの始まりにすぎません。 あなたはそこで止まることができません。 方向性を選択したら、より複雑なコンパイラに進むことができます。

現在最も人気のあるコンパイラのリストは次のとおりです。 活動分野に応じて:

    についてデルファイ、次にコンパイラがそこで呼び出されます。また、Embarcadero Delphi とその他のいくつかの変更があります。 Delphi 7 は、たとえば、多くのサイトからダウンロードできます。 C、C++、または C# を選択した場合は、Microsoft Visual Studio が必要です。 メーカーの公式サイトから直接ダウンロードできます。

    私たちが話すならロボット工学で実践されているアセンブラーおよびその他の言語 Windows で作業している場合は、ここですぐに MASM をダウンロードする必要があります。 一般に、選択した活動分野と就職先の会社によって、コンパイラは大きく異なります。 一部の企業は、独自のコード処理ソリューションを作成しています。 したがって、ロボット工学を選択した場合は、関連する本を研究し、彼らが言うようにすべてを行うことをお勧めします. これについては後で説明します。

また、多くのオンライン コンパイラもあります。 それらは、多くのプログラミング言語を提供し、インストールを必要としないという点で便利です-非常に便利です!

最も人気のあるものは次のとおりです。

これは、複数の仮想コンピューターを作成し、暗号のコンパイルなど、それらで必要なことを実行できる独自のサービスです。

仮想マシンが実行されます。 それらでは、少なくともシステムフォルダーを削除したり、絶対に任意のプログラムをインストールしたりできます。

それでは、最初の暗号 (コード) を書き始めましょう。 本や長い説明書がなくても、これを行うことができます。

ステップ 4。 最初のコード

最初のコードでは、上記で選択するようにアドバイスした最初の言語と最初のコンパイラを使用します。 それがパスカルとフリーパスカルです。

最も簡単なプログラムの 1 つ 次のように書かれています。

1 フリーパスカルをダウンロード上記のリンクから、コンピューターで実行します。

2 次のように入力します: "program [name];". つまり、プログラムの名前を「hello」にしたい場合は、「program hello;」と入力する必要があります。

3 指示「begin」を入力します. これは、後で実行する必要があるコードが開始されたことを意味します。

4 Pascal で最も一般的な構文の 1 つを使用します。 "writeln('[テキスト]');". 画面にテキストを表示するだけです。 これは括弧と引用符に含まれています。 組み合わせをご紹介します "こんにちは世界!". 通常、彼らはこれでソフト​​ウェア開発の大きな世界に足を踏み入れます。 したがって、次の行は次のようになります "writeln('Hello, world!');".

5 実行可能な暗号を完成させるには、 「終了」と入力します。(末尾にドットが必要です)。

6 ボタンを押します F9あなたが書いたものを実行します。 画面に単語が表示されます "こんにちは世界!". 求められたのはこれ!

他の言語を始めるために、本には通常、「Hello, world!」の書き方の説明も記載されています。 、つまり、そのような単純なテキストを画面に表示するだけの命令です。

これで、最初の暗号をマスターしました。 スタート。 では、集中トレーニングに移りましょう。

ステップ 5。 オンライントレーニングを受ける

オンラインレッスンの利点は、最初から最後まですべてがはっきりと見えることです。

したがって、初心者はオンライン トレーニングから始めることをお勧めします。 ここ ロシア語で最高のコース:

Python を選択した場合は、McGrath の Python Programming for Beginners を確認してください。

ステップ 7。 最新に保つ

選択した方向の資料を十分に研究し、すでにある程度の経験を積んでいる場合は、ソフトウェア市場の開発動向を常に監視する必要があります。

内容は次のとおりです。

これはすべて、時間どおりに再構築できるようにするために必要です。

ある種類のプログラミングを行うことに決め、テクノロジーを学び、履歴書を提出するために仕事に行く準備ができたとしましょう。

あなたのデータは考慮されますが、彼らは会社が別のプロファイルの専門家を必要としていると言います.

そのような状況をできるだけ少なくするために、現在最も人気のある開発分野を常に把握しておく必要があります。

重要!世界的な傾向と、あなたが働く都市の状況の両方を研究してください。 フリーランサーになりたい場合は、さまざまな取引所やフォーラムで注文を検討してください。

これらすべてにより、貴重な時間を無駄にすることなく、正しい方向に開発して作業することができます.

プログラミングのトレンドは数か月だけでなく数日で変化するため、これは私たちの時代には非常に重要です。

2、3 年前にプログラミングのテクニックを学んだ場合、 今、これはすべて間違いなく無関係です。

ステップ 8。 先生を探す

特定のケースで何をどのように行うのが最善かを教えてくれる個人的なメンターを見つけるのが最善です.

このオプションには多くの肯定的な側面がありますが、その主なものは、あなたへの個人的なアプローチの存在です。

さらに、問題が発生した場合は、教師が解決を支援します。 あ メンターは次の方法で見つけることができます。

1 大学に入る. はい、ソビエト後の国のトレーニングプログラムはかなり時代遅れになる可能性がありますが、基本、プログラミングの原理、すべての基礎を確実に理解できます

2 各種コース。あるオフィスに人が集まり、大学と同じように教師があれこれのコンセプトを説明するコースがたくさんあります。 通常、そのようなコースは非常に集中的であり、学生は必要な情報をすぐに学びます。

もちろん、教師のサービスにはお金がかかりますが、研究は非常に生産的であり、必要な情報をたくさん学ぶことができます.

ステップ 9。 他の人の作品を分析する

これは非常に興味深い方法であり、非常に迅速に開発できます。 事実、他人のコードを理解することは非常に困難であり、プロのプログラマーでさえこれができるのはごくわずかです。

活動の最初にこれを行うと、将来的に優れた結果を得ることができます.

さらに、他の人の仕事を修正する能力があるため、将来的にプロジェクトマネージャーになることができます。

すなわち、 次のことを行う必要があります。

  • 暗号を最適化する方法、つまりリストを減らす方法を考えてください。
  • コンパイラを使用せずにエラーと欠点を探します。
  • 働いて、それに応じて収入をポケットに入れましょう! そうでない場合は、練習を続けてください。 少なくとも、雇用されるためにどのようなタスクを実行する必要があるかはわかっています。

    いずれにせよ、十分な時間をかけてください。そうすれば成功します。

C++ プログラミング言語の基本と詳細を学習します。 実践的なタスクとテストを含む教科書。 プログラミングの方法を学びたいですか? それならあなたは正しい場所にいます - ここに無料のプログラミングトレーニングがあります. 経験の有無にかかわらず、これらのプログラミング レッスンは、さまざまな開発環境 (Visual Studio、Code::Blocks、Xcode、または Eclipse) で C++ プログラムの作成、コンパイル、およびデバッグを開始するのに役立ちます。

豊富な事例と詳しい解説。 初心者 (ダミー) と上級者の両方に最適です。 細かいところまで丁寧に説明してくれます。 これらのレッスン (200 以上) は、C ++ だけでなく、他のプログラミング言語のプログラミングを理解するための優れた基礎/基礎を提供します。 そして、それは完全に無料です!

また、C ++ でのゲームの段階的な作成、SFML グラフィックス ライブラリ、および C ++ でのスキルと知識をテストするための 70 以上のタスクについても説明します。 追加のボーナスは .

章番号 0。 序章。 仕事の始まり

章番号 1。 C++ の基礎

章番号 2。 C++ の変数と基本データ型

章番号 3。 C++ の演算子

章番号 4。 C++ の変数のスコープとその他の型

章番号 5。 プログラム内でコードが実行される順序。 C++ のループ、分岐

効果的な独学に関するコラムの新刊では、専門家とともに、なぜプログラミングが近年の主な傾向の 1 つであるか、どこから Web 開発に慣れ親しむべきか、そしてこの知識が日常生活でどのように役立つかを理解しています。 .

ザカール・デー

プロフィール「デザインとプログラミング」のキュレーター
国立研究大学デザイン学部高等経済学部

プログラミングは非常に有益です。一度プログラムを書くのにある程度の時間を費やすことができ、二度とこの問題を手動で解決することはできません。 近い将来、多くの馴染みのある職業が姿を消し、新しい職業が出現します。 プログラミングは関連性があるので、プログラミングを学ぶ必要があるとあらゆる面から言われています。 ここではまさに話題性という言葉がぴったりです。

プログラミングは、プログラムを書くスキルだけではありません。 これは主に思考の発達です。 コーディングは、批判的思考、分解、構成など、いくつかの重要なことを教えてくれます。 これは一般的に人を人として発達させます。

日常のレベルに関しては、日常の仕事では、ある種の画像を引き出したり、サイトで何かをするのを妨げる曲がったコードをバイパスしたりする必要がある場合があります. 人生からの歴史。 私たちは定期的にレストラン チェーンのウェブサイトで家に食べ物を注文します。 Facebook経由でログインすると、サイトの電話番号を入力するフィールドがブロックされ、電話がないと食べ物を注文できなくなります. 空腹のままにならないように、サイト コードで無効という単語を削除するだけで十分です。

Web 開発では、モバイル開発よりも参入の敷居がはるかに低くなります。 ブラウザー用に開発するには、HTML ハイパーテキスト マークアップ言語、CSS カスケード スタイル シート、およびブラウザー用の唯一のプログラミング言語である JavaScript (Java と混同しないでください) を学ぶ必要があります。

JavaScript は、過去数年間、活発に開発されてきました。 それがあれば、ほとんどすべてのことを書くことができます。何かを書くことができない場合は、近い将来、可能になるでしょう。 いずれにせよ、JavaScript がなければ、ブラウザーで意味のあることは何もできません。これは、ブラウザーが理解できる唯一のプログラミング言語だからです。 しかし現時点では、JavaScript エコシステムは初心者にとって非常に難しく、言語自体もあまり表現力がありません。 しかし、Ruby 言語のエコシステムは非常に発達しており、初心者の開発者にとっては便利ですが、徐々に人気を失いつつあります。 さらに、言語だけでなく、この言語のフレームワーク (膨大な数のライブラリで構成される大きなツール) である Ruby on Rails も重要です。 これを使えば、数時間でマルチユーザー Web サービスを作成できます。 これは、始めるための私の個人的な推奨事項です。

言語の学習について話す場合、最も一般的な間違いは、構文を守らないことに関連しています。 引用符、括弧、コンマが 1 つ欠けていると、コードが機能しなくなります。 さらに、以前のタスクを完了せずに、または優先順位を変更せずに、新しいタスクを引き受けるのは危険です。 使用している言語とツールがすべての問題を解決できるとは思わないでください。 もう 1 つのよくある間違い: コードをインデントで装飾して、構造を作成するのが通例です。 最初からコードを正しく構造化する方法を学ぶことをお勧めします。

時間をかけてドキュメントを読む価値があります。 すべての言語、ライブラリ、およびツールには、技術文書と、場合によっては仕様があります。 多くの場合、このツールには、独自のチャットやその他の通信サービスを備えたコミュニティもあります。

あなたは間違いなくグーグルの方法を知る必要があります. ほとんどすべての質問に対する答えを見つけることができます。 勤勉である必要があります。いくつかのことには多くの時間がかかり、深刻な脳活動と集中力が必要です。

覚えておくべき主なことは、開始は常に難しいということです。 一部の概念と技術は、3 番目のプロジェクトでのみ自由に使用できるように同化されています。 さらに、技術文書は常に理解しやすいとは限りません。 うまくいかないときは忘れずに立ち返ってください。

エゴール・ヤコヴィシェン

Look At Media のシニア フロントエンド デベロッパー

プログラミングを始める理由はいくつかあります。これは急速に成長している労働市場です。 100万人という数字を繰り返し見てきましたが、2020年までにこの地域では人口が不足するでしょう。 「プログラムするか、プログラムするか」というマニフェストのような本があります。 その本質は、あなた自身がテクノロジーを理解し始めるか、テクノロジーがあなたの人生を形作り始めるという事実に要約されます。 私たちが使用する製品には、誰もが理解できるわけではないアルゴリズムがたくさんあります。 したがって、何が何であるかを何とか理解したい場合は、基本を理解しておくとよいでしょう。

間違いなく自宅からコーディングを学ぶことができます。 オンライン学習用のウェブサイトはたくさんあります。 私自身、時々いくつかのコースを受講していますが、とても気に入っています。 それらはインタラクティブで理解しやすく、すぐに何かを書き始めます。 さらに、いくつかのレッスンで基本を習得できる短いインテンシブがますます登場し始めています。 原則として、教師は彼ら自身が対処することを教え、実際には何が機能し、何が機能しないかを知っています。 本は良いものですが、多くの場合、Web テクノロジは急速に発展しているため、本の情報はすぐに古くなってしまいます。 2年以上前に出たものを読んでも意味がありません。

多くの人は、プログラマーにとって数学を知ることは非常に重要だと考えていますが、基本的なプログラミングには数学自体はほとんどありません。 それよりも重要なのは、抽象的に考える能力です。 プログラミングは基本的にシステムのアルゴリズムを作成することであるため、ロジックも重要です。 このアルゴリズムを作成する前に、まず頭の中で確認する必要があります。 そしてもちろん英語。 英語がなければ、常に後れを取る可能性が高いです。 技術文書は原文で読む必要があります。翻訳は常に遅れています。

10 年前は、多くのことをゼロから作成する必要がありました。 現在、初心者向けに設計されたツールが多数あります。 これらは、数行のコードでブロック全体を取得して接続できるさまざまなライブラリです。 現在、Web は主にコンポーネントで構成されています。必要なものを選択してから、それらの間のロジックを構成する必要があります。

理論にとらわれないでください。もっと練習が必要です。 本や一連の記事を 1 か月間読まないでください。 すぐに適用して何かを学ぶことは理にかなっています。 これらは最も単純な例ですが、何かを理解したらすぐにそれを書く必要があります.

ミートアップに行くことを強くお勧めします - プログラマーが集まり、交代でいくつかのレポートを提供するとき. それはやる気を起こさせ、常に快適な雰囲気があり、誰にでも近づき、トピックについて質問することができます. 最も有名なのは、JavaScript 開発者の定期的なミーティングである MoscowJS Meetup、「Ya.Subbotnik」、Moscow Tech Meetup です。

モスクワで学ぶ場所

モスクワコーディングスクール

MCS のほとんどのコースは、伝聞によるコードに精通している人を主な対象としています。 トレーニングは集中的で、通常は週末に 4 ~ 6 日間続きます。 この期間中、学生は基本を学び、最後には多かれ少なかれ実用的なプロジェクトを作成できます。 チューターは、スタートアップとメディアの主要な開発者です: Hello Computer、Hyperboloid、SoundCloud、Look At Media、Meduza。 HTML/CSSやWeb開発ツールに加え、モバイルアプリ制作の基礎を学ぶことができます。 クラスはトヴェルスカヤの DI テレグラフの美しい空間で開催され、チームは主にクリエイティブ業界の代表者から集まります。

コンピュータトレーニングセンター「スペシャリスト」

「スペシャリスト」は、バウマン モスクワ州立工科大学で活動しています。 サイトが複雑すぎて、外出先で適切なコースを見つけることができない場合があります。 しかし、彼らはここで多くのことを教えており、コースはさまざまなレベルのトレーニングに分かれています。 「プログラミングとデータベースの基礎」コースでゼロからコーディングの世界に飛び込むことをお勧めします。 卒業生には修了証が交付され、その後、転職を希望する場合は、センター独自の人材サービスで卒業生の就職をサポートしています。 主なプラスは、モスクワでの多くの学習ポイントであり、それぞれの必要なコースは異なる日に開始されます。

オンラインで勉強する場所

コードアカデミー

ゼロからプログラミングを学習する分野で最も人気があり、絶対に無料のサービスです。 トレーニングは、簡単なタスクと指示を含む短い演習の形式で行われます。 ここで、JavaScript、HTML、および CSS を操作するための基本原則を学ぶ価値があります。さらに深く知りたい場合は、他のサイトにアクセスしてください。

初心者のためのプログラミングと Web

実績のあるCourseraは有名な教育機関と協力しているため、特別な自信を呼び起こします. コースはより詳細であり、Codeacademy とは異なり、学校と同じように勉強する必要があります。教師はいますが、離れていますが、リラックスできない特定のペースです。 ハーバード大学の興味深い入門コースも edX で利用できます。

HTMLアカデミー

HTML ドキュメントの構造に関するレッスンから、HTML5 および CSS3 の新機能に関するコースまで、レイアウトを扱うさまざまな側面に特化した 37 のセクションを備えた便利なロシア語のリソース。 プロになりたい人のために、2つのオンラインインテンシブ(ベーシックとアドバンスト)があります。

人生の障害を克服するのに苦労するたびに、私はこの世界を自分のために取り、作り直したいと思っています. 残念ながら、私たちはこの宇宙の生まれながらの創造者ではありません。 クリエイターの野心を満たしたい人には、仮想世界だけが残ります。

ここでの作成には、プログラミングの基本の知識ほど魔法やルーンの知識は必要ありません。 したがって、すべての初心者のバーチャル リアリティ クリエイターのために、プログラミングの学習方法を説明します。

知っておきたい「ティーポット」

認めたいのですが、現実には、プログラミングはそれほど魔法のようなものではありません。 コードを作成することは、鋭い石の破片が散らばる海底を裸足で歩くことに例えられることがあります。

プログラマーになるには、賢いだけでなく、忍耐強く、粘り強くある必要があります。 プログラミングを学ぶと、常に頭痛、睡眠不足による赤目、孤立した表情が伴います。 プログラマーを簡単に認識できるのは彼のおかげです。

多くの初心者は、コードを書くことを最もロマンチックな職業だと考えています。 特に映画「マトリックス」を観てプログラミングを学びたいという人が増えています。 多くの人をソフトウェア科学の理解へと駆り立てたのは、この絵の主人公であるネオでした。

しかし、研究を始めた人のほとんどは、数週間後にやめてしまいます。 そして、これの主な理由は、研究、方法論、またはプログラミングの教科書の間違った方向性です.

ソ連の崩壊後、国内のすべての大学は長い間、現代市場のニーズに合わせて教育システムを再構築しようとさえしませんでした。 工科大学もこのルールの例外ではありませんでした。

独立した産業および専門分野としてのプログラミングは、そのようなものとして存在しませんでした。 その基礎は、他の工学分野へのリンクとしてのみ教えられました。 そして、この分野の学生に与えられた知識の断片でさえ、現代の基準を満たしておらず、20〜30年前に関連性を失いました.

旧ソ連の国々では、BASIC が工科大学で教えられる主要なプログラミング言語でした。

この10年間、状況は大きく変わっていません。 2000 年代の初めに、新しい時代の傾向を感じ取った教育機関は、世界基準に合わせて教育を再構築し始めました。 そしてその瞬間から、プログラミングは別の職業および教育の専門分野として認識され始めました。

同時に、さまざまな専門的な商業コースや教育機関が登場し始めました。 しかし、教育の質とそこで与えられる知識は非常に低いレベルでした。 理論的な知識だけでなく、実践的なプログラミングスキルも初心者に教えることができる有能な専門家が不足していました。

そして、これはプログラマーの職業において最も重要な側面です。 したがって、今日のロシアの IT 業界の第一人者のほとんどは、自分たちでゼロからプログラミング トレーニングを開始しました。

ある程度、この傾向は今日まで続いています。 私たちの時代には、教育に携わる専門家の数は著しく増加しました。

プログラミングの学習を開始する言語

ソフトウェア科学の理解は、ハードな学習だけでなく、その始まりによっても特徴付けられます。 初心者にとって、独立した学習を開始するだけでなく、プロセスの開始点の座標を決定することも困難な場合があります。 したがって、これらすべての問題を回避できるようにお手伝いします。

科学の花崗岩に慣れる前に、プログラミングの学習をどこから始めるかを決める必要があります。 初期の段階では、専門分野を決定することは非常に困難です。 したがって、最初の言語の選択から始めましょう。

ほとんどの場合、選択はプログラミング言語 C (si) に当てはまります。 世界中のほとんどの初心者がトレーニングを始めるのは彼です。 ほとんどのプログラミング言語は C に基づいて作成されており、多くの点でその構造と構文を継承しています。

C を学習することで、1 つのプログラミング言語だけでなく、複数のプログラミング言語の基礎を一度に学ぶことができます。


学習に最適なこの言語の機能を検討してください。

  • 理解しやすい基本 - 簡単にするために、組み込みの言語機能の一部は、個別に接続されたライブラリに移動されます。 これらの要素には、ファイル システムを操作するためのほとんどの数学関数とメソッドが含まれています。
  • 最適な型システム - データ型の単純なセットと強力な型付けのおかげで、プログラム コードを書く過程で間違いを犯すリスクが軽減されます。
  • すべてのコード要素の明確な階層が観察される、手続き型のプログラミングに対する C の焦点。
  • ポインタを使用したマシン メモリへのアクセス。
  • サポートされるキーワードの最小数。
  • 名前スコープのサポート。
  • カスタム データ型のサポート ( 協会と構造).

簡単に言えば、C は、初心者が他の言語でプログラミングする方法を学ぶ前に始めるべき場所です。

プログラミング用プログラム(コンパイラ)

プログラミングを学ぶには、欲求とインターネットにアクセスできるコンピューターを持っているだけでは十分ではありません。 C言語でプログラムを書くには、コンパイラと呼ばれる専用のソフトウェアが必要です。

コンパイラは、プログラム コードをコンピュータが理解できる形式に変換する特別なプログラムです。

C 言語をサポートする特殊なコンパイラを次に示します。

  • Microsoft Visual Studio は、複数のサーバー言語を含む多くの言語をサポートするプロフェッショナル ツールです。 「成長のために」服用する場合、初心者に適しています。
  • Borland C++ は無料のコンパイラで、初心者に最適です。 以前のツールとは異なり、明確でわかりやすいインターフェースを備えています。 したがって、プログラミングの基本を独自に習得したとしても、その開発に特に問題はありません。
  • Code::Blocks は、多言語でのコーディングをサポートする無料の開発環境です。 開発オプションの複雑さの点で中程度:

専門的な文献に関しては、特定の著者の本はお勧めしません。 ここでは、彼らが言うように、好きなものを選んでください。 ほとんどの場合、プログラミング チュートリアルの選択は個別のプロセスであるためです。 最適なソースを使用してください。

このコースは、すべてのプログラミング言語で機能する原則とメカニズムという基本をまとめたものです。 学習する言語が何であれ、名前と実装が異なるだけで、どこでも同じことを学ぶことができます。 このコースを完全に理解すれば、特定の言語の学習がはるかに簡単になると確信しています。 自分で確認します。

レッスン1
やる気を起こさせる良いビデオで、短くて説明的です。 くそー、私は本当にプログラミングの方法を学びたかったのです! しかし、私の仕事は違います。特定の言語を学ぶことではなく、「力学」と用語を理解することです。

レッスン 2. ロジックとアルゴリズム
実際、私たちは皆、ある程度はプログラマーです。 私たちは、自分自身のためにコンパイルしたか、他の人から受け取ったアルゴリズムに従って生活し、行動しています。 私たちだけがそれに慣れているので、個々のコマンドに気付かず、すべてを単一のアクションフローとして認識します。
このビデオでは、非常にわかりやすく語られており、最も重要なことは、プログラミングの本質がすべて示されていることです。 アルゴリズムの基本的な概念、それらのタイプが与えられ、各タイプのアルゴリズムがどのように機能するかが示されています。 また、プログラマーがクリエイティブな職業であることも発見でした。 はい、行動の論理的根拠にもかかわらず。 コードには完全な自由があり、DRY ルール (自分を繰り返さない、「自分を繰り返さないでください!」)、そしてソリューションのミニマリズムと改善のシンプルさの間のバランス... 私は期待していませんでした。それ。 と思いました。
DZ は、リンクのコメントで表示できます。
議論は大歓迎です。

レッスン 3
数値、文字列、ブールの 3 つの基本データ型が明確になりました。 コースの作成者である Nikolai Chernobaev は、データ型について説明しただけでなく、データ型を示して「再生」させました。つまり、コンソールへの出力、ある型から別の型への転送です。 私は彼の後にすべての変換を行い、成功しました。 そして、次のトピック「変数」をもう少し調べました。 これは、強い型付けと弱い型付け、動的型付けと静的型付けについて理解するために必要です。 すでに興味がありますか? ビデオを見る!

レッスン 5
ここでの主なことは、関数、その宣言と呼び出し、関数の引数についてです。 もう一度言いませんが、ビデオを見る方が良いです。
素晴らしい例え: プログラムは曲を演奏する方法であり、関数はその曲のアクションの 1 つです。たとえば、「ドラムを演奏する」などです。 指揮棒を一振りすると、「ドラム演奏」機能が呼び出されます。 ドラムパートが終わると、アクションは他の楽器に移り……
「関数値を返す」とは何か、return コマンドが正確に何をするのかを理解することはより困難でした。 それを理解するために、値を返す場合と返さない場合の 2 つの形式で同じタスクを実装しました: はい、開発コースのメンターである Sasha Nesvit に Telegram に連絡したところ、彼は何が起こっているのかをわずか 2 分で説明しました。

レッスン 6
ここは本当にシンプルで、すべてが5年生のようです。 私は楽しんで、女の子が結婚できるかどうかをチェックする論理的な比較をまとめました。 このレッスンでは、どのような比較を収集しますか?

レッスン 7. プログラミングの条件。
条件のロジックとルールは単純です。if .. の場合はこれを行い、if .. の場合は別のことを行います。 基本的にはそれだけです。 構文を追跡するのはより困難でした。中かっこの後に余分なセミコロンを追加しました。コードが機能しません。 プログラマーは非常に気配りのある人だと警告されましたが、今ではその理由がわかりました。 例は非常に明確で、このレッスンを習得するのに何の問題もありません。

レッスン 8
ループは興味深いものです。カウンターを初期化し、状態を確認し、本文を書き、カウンターを更新し、繰り返します...あなたが求めるように、それはカウントされます。 条件付きループの 5 つのバリアントを分析しましたが、配列要素を文字通り 4 行で合計するエレガントな例が特に気に入りました。 DZ として、2 つの変数を乗算するための最も単純なサイクルを作成しました。

レッスン 9
このチュートリアルでは、コード エディター (例として Sublime Text 3 を使用) と統合開発環境 (IDE、例として PHPStorm を使用) という 2 つの重要な開発者ツールを比較します。 主な機能、主な機能が示され、作業方法が示されています。 私は主に HTML に関連する開発ツールに精通しています。コード エディターとして Notepad ++ を積極的に使用しました。Adobe Dreamviewver は一種の IDE アナログと見なすことができるため、違いは明らかです。 また、他の言語でのタスクについては、無料の IDE (Google は NetBeans を示唆しています) の 1 つを選ぶか、Sublime Text 3 と友達になると思います。どのツールを使用しますか?

レッスン 10
コースの著者である Nikolai Chernobaev は、私の驚いた目の前で、オンライン計算機を 1.5 時間以内に作成し、さらにグラフィック表示とヒントを付けました。 当然、以前のレッスンの多くがここで使用され、何かがゼロから語られました。 コード自体の書き方だけでなく、アイデアや紙の上での企画から始まり、プロジェクトとしての開発全体が示されているのは非常に興味深いことです。

レッスン 11
前のレッスンで作成したオンライン電卓のプログラムに追加。 ユーザーの操作など、プログラムで何かが発生すると、プログラムはあらかじめ決められた方法で反応します。 生物学には刺激と反応があり、プログラミングにはイベントとそのハンドラがあります。 このようにして、私にとってはより明確になります。

レッスン 12
このコースの例と DZ を行っている間に、おそらくすべてのタイプのエラー (構文エラー、論理エラー、実行時エラー) を作成して「キャッチ」することができました。 エラーを探すのは興味深いですが、起動検索の 20 回目の繰り返しの後、非常によく揺れ始めます。 マインドフルネスを訓練することは誰にとっても有害ではありません。

さて、プログラムの主な要素に慣れてきたので、もう少しうまくナビゲートできるようになりました。 Habré に関する記事はすでに読みやすくなっています。 まさにあなたが得る必要があるもの。 能力と意欲さえあれば、きっと私より先に行けると思います。 今すぐ参加しましょう!

トピックの続き:
りんご

ほぼ 2 か月の不在の後、誇大宣伝された AirPods がついに発売されました。 12 月末に、最初の購入者は切望された白い箱を予約注文で受け取りました....