JavaRush /Java Blog /Random-JA /私たちの経験を共有しましょう。Windows から Ubuntu への移行

私たちの経験を共有しましょう。Windows から Ubuntu への移行

Random-JA グループに公開済み
初心者のプログラマーは、Microsoft Windows ではなく Linux で作業することを推奨されることがよくあります。これには多くの理由があり、Linux の構造とロジック、セキュリティ、アプリケーション ライセンスに関連しています。DataGen Technologiesの共同創設者兼 CTO である Ofir Chakonによる記事の翻訳を紹介します。Ofil Chakon は、Windows から Linux Ubuntu への切り替えの経験を共有しています。この記事は、Linux の世界についてほとんど知らない初心者を対象としています。
私たちの経験を共有しましょう。 Windows から Ubuntu への移行 - 1
ほとんどの時間をコンピューターで過ごす人は、コンピューターの基本的な習慣について自問する必要があることがあります。私たち一人ひとりが毎日使用しているオペレーティング システムについてお話しすることは、もうおわかりだと思います。Windows は現在、デスクトップ コンピューターの 90% 以上にインストールされています。 ユーザーはさまざまな理由で Wi​​ndows を選択します。
  1. Windows は、ほぼすべての PC にデフォルトで付属しています。

  2. バージョンを変更するだけで Windows を長年使用している場合は、おそらく Windows に慣れており、この伝統を破るのは困難です。

  3. おそらく、あなたの環境では Windows ユーザーと、場合によっては MacOS ユーザーしか表示されないため、代替手段に気付かないでしょう。ほとんどの人は、自分の PC には Windows が唯一の選択肢であると考えています。
Windows はうまく設計されており、ユーザーフレンドリーで、ほとんどのユーザーのタスクに最適で、定期的に更新されていると 認めざるを得ません。
私たちの経験を共有しましょう。 Windows から Ubuntu への移行 - 2
これから説明する Windows の代替案はLinuxです。これは、「Linux カーネル」と呼ばれるカーネルベースのオペレーティング システム ファミリです。Linux は Unix に似ています。つまり、このオペレーティング システムはUnixベースのシステム(MacOS など) と同じ原理に基づいています。Linux のほとんどのビルドは完全に無料で、コミュニティによって開発され、オープンソースであり、ディストリビューションの形式で配布されます。その中には、UbuntuCentOSDebianなどが含まれます。ディストリビューションは、デバイス上ですぐに動作する便利な (ほとんどの場合) インストーラーを備えたプログラムのセットです。それぞれに長所と短所があり、多くの用途があります。Linux はリソース消費の点でかなり「軽い OS」であるため、組み込みシステム、スマート ホーム デバイス、IoT (「モノのインターネット」) などで使用されています。Android OSもLinuxをベースにしています。私はソフトウェア開発とデータ サイエンスで 7 年以上の経験を持つテクノロジー起業家であり、Windows から Ubuntu への切り替えが私のキャリアの中で最も生産性の向上の 1 つになったことを認めざるを得ません。

どうやってこれをやろうと決めたのでしょうか?

ある時点から、Windows コンピューター上のAndroid Studio IDEや Android シミュレーターなどの主な作業ツールでは、レイテンシーの点でほとんど作業が進められないことに気づき始めました。これはハードウェアの問題だと考えたので、16GB RAM と 512GB SSD ハードドライブを搭載した Lenovo Y50-70 にアップグレードすることにしました。
私たちの経験を共有しましょう。 Windows から Ubuntu への移行 - 3
プロジェクトの開発を続行するために必要なソフトウェアをインストールした後、まったく新しいコンピューター上で同様の問題が再び発生していることに気付きました。私の仕事には RAM を大量に消費するアプリケーションがあまりなかったので、当然、新しい PC がロケット船のように動作することを期待していました。しかしそれは起こらず、戦略を変更する必要があることに気づきました。私は、問題はハードウェア コンポーネントではないと自然に推測し、プログラムへのアプローチを探し始めました。私は大学時代にしばらく Linux を使用していましたが、このオプションをさらに詳しく調査することにしました。Ubuntu は、PC 用のこのオペレーティング システムの最も人気のあるディストリビューションです。これは、サーバー バージョンだけでなく、クライアント「ユーザー」バージョンとしても利用できます。クライアントとサーバーの両方の OS が必要だったので、この二重性が Ubuntu に有利な方向に傾いたのです。私は、「Linux か Windows」、「Windows か、Windows か」といった議論が行われているインターネット上の多くのリソースを調べました。ウブントゥ」。かなり理解できましたが、それでも何かを待っていました... ある種の「上からのサイン」か何か。この兆候はウイルス攻撃であることが判明したため、すべてのファイルのバックアップ コピーを作成し、ハード ドライブをフォーマットしてから作業を開始する必要がありました。今回のみ、Ubuntuオペレーティング システムを使用します。スムーズに移行するには、Windows と Ubuntu を同時にインストールする価値があるのではないかと考えました。今はそうしなくてよかったと思っています。私が Windows を完全に放棄した理由は、Windows に戻る可能性はなく、Ubuntu に完全に没頭したいという願望からでした。ここでは、 Windows から Linux への移行中に私が学んだ教訓をいくつか紹介します。これらはどのユーザーにとっても興味深いものですが、主に開発者、プログラマー、コードを書いたり製品を作成したりする人を対象としています。

パフォーマンス

Linux は軽量アーキテクチャのおかげで、Windows 8.1 や Windows 10 よりも高速に動作します。Linux に切り替えた後、Windows で使用していたものと同じツールを使用すると、速度とパフォーマンスが劇的に向上したことに気づきました。Linux は多くの強力な開発者ツールをサポートしており、それらを簡単に管理できます。

安全性

Linux はオープンソース ソフトウェアです。理論的には、誰もが独自のコードを貢献して、何かを改善したり、機能を追加したり、バグを修正したり、リスクを軽減したりすることができます。当然のことながら、すべての大規模なオープンソース プロジェクトには、そのあらゆる側面を研究するオブザーバーがいます。したがって、セキュリティの観点から見ると、Linux は Windows よりも当然安全です。さらに、ハッカーの主な攻撃は、特に Microsoft 製のオペレーティング システムを対象としています。ウイルス対策ツールやサードパーティのマルウェア駆除ツールをインストールする代わりに、推奨されたリポジトリを使用するだけで問題ありません。

ソフトウェア開発

Linux のターミナルは、このオペレーティング システムの切り札です。プログラムのインストール、アプリケーションとサーバーの構成、ファイル システムの管理など、ターミナルを使用してほとんどすべてのことを行うことができます。まあ、開発者にとって端末はトーテムアイドルのようなものです。同じターミナル ウィンドウからサーバーの実行、機械学習モデルのトレーニング、リモート マシンへのアクセス、スクリプトのコンパイルと実行ができることほど便利なものはありません。これにより生産性が大幅に向上します。
私たちの経験を共有しましょう。 Windows から Ubuntu への移行 - 4

モジュール性

Linux を使用すると、開発者はモジュール化の大きな機会を得ることができます。あらゆるものを簡単に構成し、コンピューターのどこにでもアクセスし、プロセスを制御し、さまざまなプロジェクトの仮想環境を管理できます。サーバーは Linux をベースにしている可能性が高いため、動作をエミュレートしたり、同様のソフトウェアやパッケージを使用したり、展開プロセスのワークフローを自動化したりすることが容易になります。

リモート Linux サーバーの操作

インターネット全体に電力を供給するサーバーのほとんどは Linux ベースになっていますが、その理由はここでは列挙しません。Linux は、スケーラブルで安全なサーバーを開発するために必要なすべてのツールを提供します。したがって、エンドツーエンドのアプリケーションを管理する IT 起業家にとって、サーバーのセットアップと保守のための Linux をマスターすることは必須です。このような状況では、ローカル コンピューターで Windows を操作しているときに、PuTTY などのサードパーティ ツールを使用して、リモートの Linux ベース サーバーに接続して対話する必要がありますが、これはあまり便利ではありません。たとえば、Windows を使用している場合、ファイルをコピーするには、別のツールをダウンロードする必要があります。ローカルの Linux ベースのマシンを使用することの大きな利点は、ターミナルで実行されている 1 つの回線を使用して任意のリモート サーバーに接続できることです。ホストは SSH キーやユーザー名と同様にファイルに保存できるため、SSH 経由で接続するために必要なのは次のとおりです。 IR サーバーの ssh これで接続完了です! パスワードは必要ありません。これは、ローカルの Linux ベースのマシンを使用して Linux ベースのサーバーを構成およびサポートするために使用できる多くのオプションの 1 つを示す簡単なデモンストレーションです。ほとんどの人気のあるクラウド プロバイダーには、統合を容易にする CLI (コマンド ライン インターフェイス) も用意されています。

低レベル OS の原則の概要

Windows の実装は非常に高レベルです。言い換えれば、オペレーティング システム自体の内部的な問題や実装に直面することはほとんどありません。Linux ではまったく逆です。Linux を使用していると、ファイルの編集、スケジューラー タスクの追加、ソフトウェアの更新、ドライバーのインストールなど、ターミナルから設定を行う必要があることがよくあります。Ubuntu を使用する場合は、AskUbuntu.com があなたの味方です。開発者としてより多くの機会を得るだけでなく、問題の解決方法、潜在的な問題がないかマシンを監視する方法、さまざまなコンポーネントの構成方法などを (時には困難な方法で) 学ぶこともできます。
私たちの経験を共有しましょう。 Windows から Ubuntu への移行 - 5

すべてが完璧ではありませんが、それでも

  1. Ubuntu ユーザーになるには、学習曲線が必要です。Windows で自動的に行われていたいくつかのことは、今後は構成する必要があります。おそらく、AskUbuntu.com を使用して構成する必要があるでしょう。コンピューターに GPU などの特殊なハードウェアが搭載されている場合は、手間がかかることが予想されます。

  2. 私は、すべての IT 起業家はデザイナーのような存在であるべきだと考えています。あるいは、最低限のグラフィック デザイン スキルを備えている必要があります。残念ながら、Adobe は Linux ユーザー向けに製品をリリースしていないため、それらの製品を直接実行することはできません。Ubuntu の代替手段は GIMP と呼ばれます。これは、開発者兼設計者の基本的な要件をすべて満たす (さらにはそれ以上の) フリー ソフトウェアです。
欠点はあるものの、私は Linux に切り替えたことを後悔していません。今ではいつも Ubuntu を使って仕事をしていますが、数年前に Ubuntu に切り替えなかったのを後悔しています。

結論

Linux は万人向けではありません。上で述べたように、それがあなたの日常のニーズに合っているかどうかを確認する必要があります。しかし、自分を IT 起業家、開発者、コンピューター科学者、または単なるプログラマー (コードの作成に関連する技術資料を何らかの方法で調整したり操作したりする人) だと考えている場合は、Ubuntu を試してみるべきです。
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION