あなたは開発者になることに決めました。なぜjavaではなくjavascriptを学ぶのですか?

こんにちは編集スタッフ!こんにちは同僚。



数か月以内に、フロントエンド開発者として、私は4歳になります。そして、パスポートの最大50は、2年弱のままになります。この4年間で人生は急速に変化し、しばらくすると、どの決定が成功し、どれがあまり良くなかったかを分析することが可能になりました。



それらを選択することから始めましょう。スタック、そして結果として-専門化。私の選択(フロントエンド、javascript)は成功したと思うので、その理由を分析したいと思います。



私の背景。私は1994年にミシュスティン(システムエンジニア)の学位を取得してドネツク工科大学を卒業しました。ドネツクに戻ってさまざまな役職でエニキーとして数年間働いた後、私は小さな家族経営(印刷)に参加し、その後15〜20年間滞在しました。彼の会社で15年間、さらに5年間は、雇用のために働くことで業界の経験から利益を得ようとしています。この5年間は、大きな成功も刺激的な見通しも見ていません。別の方法を探して、私はWeb上でいくつかのことをしようとし始めました。これらは、知人や彼ら自身のニーズのためのシンプルなサイトでした。



いくつかの実験の後、私は何かをうまくやる方法を学ぶために、専門分野を選ばなければならないことに気づきました。私はフロントエンドを選び、それを約1年間教えてから、最初のフルタイムの仕事に就き、3、4年で6月からSignorに行きました。次のステップに進むために、私はJavaを学習しています。



今日、このシーケンス(最初にjs、次にjava)が正しいことがわかったと思います。以下の理由があります。



どこから始めればよいかを決めるとき、なぜJavaがFrontedの次に2番目のオプションであり、Python、C#、Golangではないのですか? Javaはエンタープライズコードだからです。これは大きな成功したアップロードです。これは健康保険です。これらはあなたが学ぶことができる多数の同僚です。そして、そのような欠員はたくさんあります。そして、10年後にはたくさんあるでしょう。



Pythonは必要ありません。Webでは、これらはプロトタイプ、statap、およびスクリプトです。脚本は開発者であり、私たちは家族であり、仕事で夜を過ごすのではなく、良い給料が必要です。 Pythonはアナリストにとっても優れたツールですが、キャリアは異なります。長い、保証されていない、ここであなたはほとんどすぐに正しい場所に着く必要があります。



C#は素晴らしい言語であり、おそらく最高です。しかし、彼はJavaに勝てなかったし、勝てなかった。また、どちらの言語が優れているかは、開発者が決定するのではなく、テクノロジースタックを選択する際のビジネスによって決定されることを忘れないでください。開発者は時々この選択に影響を与えることができますが、一般的に、彼にとって、この選択は与えられたものです。



Golangは成長する可能性があります。大規模で安定したオフィスで古いコードをJavaからGoに書き直すことができるように、Javaの後でそれを学びましょう。今起こっているように、例えば、Yandexで。



そして最後に、なぜそれはJavaではなくフロントエンドなのですか?



低いエントリしきい値が前面に表示されます。 javascriptで探索する4つの「大きな」トピックがあります:クロージャー、これ、非同期、継承。もちろん、レイアウトもありますが、これについては後で個別に説明します。それまでの間、これらの4つのトピックについて。



クロージャは、モジュール、デコレータパターン、およびjsがコールバックでどのように機能するかです。あなたは本当にこれを知る必要があります。あなたは分解し、学ぶ必要があります、さもなければそれは傷つきます。しかし、これは現実以上のものであり、たとえばJavaでクロージャーが機能する「しかし」と比較すると、これは何もありません。



jsでのこの作業は、他の言語での作業とは大きく異なります。ここでは、その使用のためにいくつかのオプションを分析する必要があります-コンストラクター、インスタンス、メソッド、矢印関数、そしてそうです、これには多くの面があり、何もできません...つまり、神に感謝します。しかし、最初に、これらの10のケースのうちのいくつかは、あなたが働き始めるのに十分であり、最初に良いお金を手に入れ、次に非常に良いお金を手に入れます。



非同期。約束、setTimeout。また、このトピックは初心者にはわかりませんが、重要なトピックの最後です。あなたが閉鎖とこれを引っ張ったならば、あなたはまた、非同期性をマスターするでしょう、そして1ヶ月。



すべて。あなたは尋ねます、継承はどうですか?概念として、プロトタイプの継承は非常に単純です。 JSには多くの実装のニュアンスがあり、多くの実装自体があります。そうだった。 ES6の到着前。これからは、継承に関する質問は、実際の作業を開始する必要があるというよりも、初心者にまだすべてを知っているわけではないことを示す方法です。



さて、質問です。これらの3つの「大きな」トピックを同じJavaジェネリックと比較できますか?はい簡単です。機能プログラミングがjavaでどのように実装されているかを思い出してみましょう。これらはすべて2つのコロンで区切られたリンクです...これはjsのとらえどころのないこれに匹敵する以上のものです...



一般に、言語として、jsははるかに初心者に優しいです。



はい、はい、はい、もちろんcssがあります。カスケードスタイルシート。 divを垂直方向に中央揃えする8つの方法、人間なし。臆病者はカプセル化を思いついた。これをすべてのブラウザで機能させます。そして、あなたの上司は一般的にブラックベリーを持っています、そしてそれはそこでも美しいはずです。だが。



Flex-boxはすぐに習得でき、すでに何かを表示できます。残りは仕事で学ぶことができ、クロスブラウザーレイアウトはレイアウトデザイナーによってドロップすることができます。レイアウトデザイナーは彼らにとって良い仕事以上のものです。



これが最初の写真です。その結果、jsでの開始とjavaでの開始を比較すると、3〜6か月の学習期間が短くなり、モスクワで最初の約8万人の仕事に就くことができます。そして、隣人のジャビストが最初の仕事を10万で取得すると、2番目の仕事を120で取得する準備が整います。最初にジャビストを作成します。そして、あなたがすでにそれらを楽しみにしているならば、これらの回復の最初の数ヶ月は非常に、非常に重要です。



架空のジャビストとの競争を続けましょう。さらに数年が経過します。あなたが投資し、ジャビストが投資すれば、あなたは自信を持って真ん中になります。 Javistは150〜108千の範囲に近づいています。フロントエンドは約140〜160です。彼が特別な努力をしなかった場合(私はそうしたので、例として自分自身を引用しません)。そして次に何が起こるかは非常に興味深いです。



シニア開発カテゴリーに移動します。フロントエンドはフルスタックに向かってドリフトしやすいことがわかりました。jsはマルチパラダイム言語だからです。はい、OOPはおもちゃのようなものですが、そうです。そして機能主義はいっぱいで、それは流行しています。反応、rxjs。Fronendは、目に見えない形ですばやく学ぶことを教えています。そして、あなたはジャビストを追い越して、広大なキャリアスペースに突入します...



したがって、-フロントエンド!



PS私はフロントエンドを無料でマスターしたい人を助けます。個人またはコメントに書いてください。



All Articles