CodeGym /Java Blog /ランダム /現在のコーディングは 10 ~ 15 年前よりも簡単になっていますか? それを実現したツールとテクニック
John Squirrels
レベル 41
San Francisco

現在のコーディングは 10 ~ 15 年前よりも簡単になっていますか? それを実現したツールとテクニック

ランダム グループに公開済み
テクノロジー業界が急速に進歩し、ますます多くの資格のあるソフトウェア開発者が必要になるにつれて、プログラミングを学び、人材に対する高い需要と十分な賃金の恩恵を享受したいと願うすべての人にとって、この職業はよりアクセスしやすくなっています。数十年のプログラミング経験を持つソフトウェア開発のベテランは、この職業がそれほど昔ではなかったという話をよく話します。当時、プログラミング言語と開発プロセスに関する情報は限られており、時には品質が疑わしい印刷された教科書でしか入手できませんでした。わずか 10 ~ 15 年前にプログラミングを始めた高齢者でさえ、今日ではソフトウェア開発者になるのがはるかに簡単であることに同意しています。これは、コーディング スキルの習得とその後の実際の仕事の実行の両方の容易さに関して言えば当てはまります。 現在のコーディングは 10 ~ 15 年前よりも簡単になっていますか?  それを実現したツールとテクニック - 1しかし、2021 年の今日、プログラマーになる (そしてなる) ことが、たとえば 20 年前の 2001 年に比べてはるかに簡単になっているのは一体なぜでしょうか? 私たちは、これはさらに詳しく検討するのに興味深いトピックかもしれないと考えたので、それをこれからやろうとしています。

ソフトウェア開発者の仕事をこれまでより簡単にするツール

もちろん、ソフトウェア開発業界が進化するにつれて、すべてのツール、アプローチ、テクノロジーも進化し、より強力で使いやすくなり、情報はますますアクセスしやすく、より広範囲になります。しかし、少し前に導入され、現在では大多数のプログラマーによって一般的に使用されているいくつかのツールは、実際に違いを生み出します。私たちの意見では、最も注目すべきものを以下に挙げます。

1. Git と GitHub。

Git は、小規模なプロジェクトから非常に大規模なプロジェクトまで、あらゆるプロジェクトを迅速かつ効率的に処理できるように設計された、無料のオープンソースの分散バージョン管理システムです。2005 年に初めてリリースされた Git はすぐに業界標準となり、開発者がコードやソフトウェア プロジェクトのバージョンの変更をより適切に制御できるようになり、複数のプログラマーによる共同作業がより効率的かつ組織的に行われるようになりました。GitHub は、バージョン管理とコラボレーションのための Git コード リポジトリ ホスティング プラットフォームです。2008 年に初めて公開された GitHub は、その後すぐに世界をリードするソフトウェア開発プラットフォームになりました。GitHub を使用すると、開発者がオープン ソース プロジェクトに協力して貢献したり、コードの適切なドキュメントを作成したり、自分の成果を他の人に紹介したりすることがはるかに簡単になります。「以前は Apache Subversion (SVN) を使用していましたが、これは集中化されており、すべての変更が 1 つのサーバーに保存されます。つまり、コミットすると、変更が直接アップロードされます。時々非常にストレスがかかり、「これが機能するかどうかはわからないが、このコードは保存しておいたほうがいい」という瞬間に対処するのが本当に大変だったことを覚えています。一方、Git ではコミットするだけで、後からプッシュすることを気にすることができます (また、迷った場合はいつでもブランチすることができます)」と経験豊富な C++ 開発者である Guillaume Elias 氏は述べています。を思い出します

2. IntelliJ IDEA およびその他の IDE。

IntelliJ IDEA は Java で書かれた統合開発環境であり、SQL、JPQL、PQL、HTML、JavaScript、Kotlin などの他のさまざまな言語を理解し、インテリジェントなコーディング支援を提供できます。また、以下を含む他の複数の言語もサポートしています。 Scala、Rust、PHP、Ruby など、プラグイン経由。最初の IDE (Microsoft の Visual Basic (VB)) は 1991 年に発売されましたが、オリジナルの IDE は開発者にあまり受け入れられませんでした。これは、2001 年の IntelliJ IDEA リリース後の 2000 年代に変化しました。これは、強力な機能と統合の追加とともに 2000 年代初頭に採用が進み始めたためです。その結果、2010 年代までに IDE、特に IntelliJ IDEA は、大多数のソフトウェア開発者にとって事実上の標準になりました。「私が活動を始めたのは1980年代で、コマンドラインとメイクファイルが標準だった頃。統合されたソース レベル デバッガを備えた IDE (私の最初のデバッガは Lightspeed C) は大幅な改善でした。それ以来、あらゆる改善が段階的に行われてきました。より統合された機能を備えた優れた IDE により開発プロセスは改善されましたが、それは単なる漸進主義にすぎません。ソース デバッグ機能を備えた IDE は、アセンブラーを超えたプログラミング言語の開発に匹敵する、飛躍的な進歩でした。」元ソフトウェア開発者でコンピューター サイエンス教育者であるウィリアム ヘンブリー氏は、と言いました

3. スタックオーバーフロー。

コーディング関連の情報を入手することに関しては、2000 年代後半から 2010 年代初頭にかけて、開発者向けの新しい掲示板やコミュニティ プラットフォームの数が増加し、多くのことが変わりました。Stack Overflow は開発者にとって最も人気のあるオンライン コミュニティであり、毎月 5,000 万人以上のプログラマーが訪れます。2008 年に開始された Stack Overflow は、プログラマーの知識の交換と相互のコミュニケーションを容易にし、コーディング初心者の学習プロセスを簡素化しました。「最初に頭に浮かぶのはスタック オーバーフローです。さて、これはツールではないと言うかもしれませんが、ツールです。これは、2008 年以前の人々が持っていなかった貴重な情報源です。私たちにはマニュアル、書籍、メンター (上級開発者) があり、SO が登場する前は、人々はほぼそうやって物事を学び、共有していました」とクロアチアのシニア ソフトウェア エンジニア、アントニオ ネシック氏は述べています。と指摘します

4. マネージドクラウドサービス。

マネージド クラウド サービスの採用の増加も、現代のプログラマーの作業を容易にする上で大きな役割を果たしました。2006 年と 2008 年にそれぞれ開始された Amazon Web Services や Microsoft Azure などのクラウド サービスが利用可能になり、大規模に採用されるようになった後、プログラマーは、システムが動作するためにサーバーとネットワークをセットアップおよび保守するためにそれほど多くの人員を必要としなくなりました。また、クラウド サービスにより、今日では開発チームが小規模になり、個人レベルでの生産性が向上するため、ソフトウェア開発の効率も大幅に向上しました。「私が動的 Web プログラミングを始めたとき、ASP がありました。ここで話しているのは、.NET 用のオープンソース Web フレームワークである ASP.NET のことではなく、MS Access データベースを使用した古き良き古典的な ASP のことです。はい、よく聞いてくれました。MySQL や MSSQL などは使用しませんでした。これに MS Access データベースを接続します。そして、サーバーとクライアントが存在します。それで終わりだ。とてもシンプルです。最近では、DigitalOcean、Linode、Google Cloud、AWS、Azure などが存在します。これらにはすべて、ソフトウェアの拡張を支援し、ダウンタイムを最小限に抑えて動作するための機能が大量に備わっています」と Antonio Nesic 氏は付け加えます。

5. プロジェクト管理およびコミュニケーション ツール: Jira と Slack。

最後に、Jira と Slack のほか、開発者や他の専門家間のプロジェクト管理とコミュニケーションをより適切に組織化して計画できるようにする他の同様のツールについても言及する必要があります。Jira は、2002 年に初めてリリースされた独自の問題追跡ソリューションで、ユーザーがアジャイル開発プロジェクトやソフトウェア開発プロジェクトを計画、追跡、管理できるようにします。他にも複数の機能があり、プログラマはより効率的に共同作業を行ったり、ワークフローをカスタマイズしたり、バグを追跡したり、バックログを管理したりすることができます。Slack は、トピックごとに整理されたチャット ルーム、複数の人と会話するためのプライベート グループ、ビデオ通話など、複数のメッセージングおよびコラボレーション機能を備えたビジネス コミュニケーション プラットフォームです。2009 年に初めてリリースされてから、すぐにソフトウェア開発チームにとって最も人気のあるコミュニケーション ツールになりました。ブレット・ワッターズ 別の経験豊富なプログラマーは、言及する価値のある他のツールを思い出しました。「Skype、Teams、IM、SharePoint、およびその他の同様のツールを使用すると、物理的な会議、ディスカッション、長時間にわたる電子メールの交換などを行わずに、情報の迅速な共有やコラボレーションなどが可能になりました。」と言いました

今日、ソフトウェア開発者になることがかつてないほど簡単になっている理由

もちろん、新しいツールやテクノロジーの開発によってソフトウェア開発者の作業が容易になるにつれて、プロのプログラマーに必要なスキルの学習も以前よりもはるかにアクセスしやすく、初心者にも優しいものになっています。では、ここ 10 ~ 20 年でソフトウェア開発教育は何が変わったのでしょうか? 多くの物。情報の量は増加し、複数のソースから入手できるようになり、学習テクノロジーもさまざまな方法で強化されました。

  • 無料のプログラミングチュートリアル。

優れたコラボレーション ツールやプラットフォームが利用できるようになったこと、また、オンラインとオフラインの両方で開発者コミュニティが急速に成長していることもあり、現在、プログラミング言語を学びたい初心者は、オンラインで学習できる複数の無料チュートリアルを見つけることができます。これは、Java などの非常に人気のあるプログラミング言語の場合に特に当てはまります。オンラインで利用できる無料の Java チュートリアルがたくさんあります。Oracle の公式 Java チュートリアルは、確かにお勧めする価値があります。その他の非常に優れたインタラクティブなオンライン Java チュートリアルとしては、LearnJavaOnline.orgJavaBeginnersTutorial.com 、およびTutorials Pointにあるものがあります。

  • 高度なオンライン学習コース。

学習計画、ゲーミフィケーション要素、ソーシャル機能を備え、無駄な理論ではなく応用可能なスキルを生徒に教えることに重点を置いた高度なプログラミング学習コースの存在は、今日のソフトウェア開発教育に変化をもたらしているもう 1 つのことです。不謹慎ではありませんが、CodeGym はおそらく、まったくの初心者に適し、完全に機能する Java 開発者となる卒業生を輩出できる高度なオンライン学習コースの最良の例です。CodeGym は、可能な限り最も効果的な方法で、多くの練習を通じてコーディングを上達させる方法を学ぶのに最適です。CodeGym の最初のレッスンから始めて、理論的な知識を実践的なスキルでサポートできるように設計されたさまざまなタスク (パズル) を使用して、Java の基礎をゆっくりと学びます。

  • プログラミング準備プラットフォーム。

コーディング初心者が就職面接の練習や準備ができるオンライン準備プラットフォームも、2000 年代から 10 年代までは存在しなかった、かなり目新しいものです。最も人気のある準備プラットフォームには、LeetCodeInterview CakeHackerEarth などがあります。ちなみに、1200 を超えるタスクを備えた CodeGym も準備プラットフォームとして分類できます。ゲーム化された楽しいプラットフォームを追加できます。

  • プログラミングに関する YouTube チャンネル、ブログ、ポッドキャスト。

ユーザー作成のコンテンツが多数含まれる新しいメディアは、学習を強化する優れたソースとなり、初心者がYouTube チャンネル、ブログ、ポッドキャストを通じてその分野の専門家から直接情報を得るのに役立ちます。一例として、今日では、 Derek BanasProgramming with MoshOracle の Java チャンネルAdam Bien、およびvJUGなど、Java 初心者向けの優れた YouTube チャンネルを多数見つけることができます。

  • コーディングゲーム。

ついに、本当に素晴らしいコーディング ゲームがいくつかリリースされました。私たちが知っているように、そして CodGym は生きた証拠です。ゲーミフィケーションは、学習を強化し、その過程を楽しみながらより良い進歩を達成するための非常に優れた方法です。コードの学習に適用すると、初心者が難しいプログラミングの概念やテクニックの本質をより早く、少ない労力で理解できるようになります。今日、プログラミングを学び、ソフトウェア開発者として働くことはかつてないほど簡単になっていることに同意しますか、それとも反対の観点を証明する何かを見逃したのでしょうか? 以下のコメントセクションでお知らせください。
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION