質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

Q&A

解決済

5回答

1747閲覧

プログラミング言語 c# java

toukyoutaro

総合スコア13

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

0グッド

2クリップ

投稿2020/06/10 07:04

お疲れ様です。

ずっとc#の勉強をしてますが最近javaに切り替えようかと迷っています。
ネットを見ていると将来性があって現在も需要が高いので将来的に残っていくと思うのでjavaに切り替えようか悩んでいます。

みなさんはc#とjavaだとどちらの言語が将来性があると思いますか?

また他に将来性高い言語があれば教えていただけること嬉しいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miyabi_takatsuk

2020/06/10 07:22 編集

どちらも、活躍する分野が違うので、どちらが将来性とかは比べられないとは思いますが・・・。 ショベルカーと自家用車って、その将来性がどちらがあるか、なんて比べませんよね? それと一緒かと思いますが。
cateye

2020/06/10 07:25

>将来性高い・・・・マニュアル読むにも・・・英語ですd^^
miyabi_takatsuk

2020/06/10 07:29

> マニュアル読むにも・・・英語です 間違い無いですね。 最新の技術ほど、日本語訳まだついてない方が断然多いですよね。
hentaiman

2020/06/10 07:39

C#で仕事出来る水準に至ってから考えれば?
m.ts10806

2020/06/10 07:45

タイトルがタグを列挙しただけなので内容が全くありません。
apo

2020/06/10 08:03

どちらが先進的か、と言われればC#ですかね。
guest

回答5

0

ベストアンサー

Javaはそのうち滅びます。

[理由1] Oracleが近いうちにJavaを捨てる

OracleはJava環境を有償のOracle Javaと無償のOpenJDKに分離しました。OracleのOpenJDKは長期間サポート(LTS)が無かったため、商用レベルの長期間動作をサポートするためには有償のOracle Javaにするしかないと目論んだのです。しかし、この戦略は大失敗に終わりました。無償のOpenJDkをLTSで提供する所が現れたのです。そのため、多くのJava開発者達は、メインでサポートするJava環境にOracle以外が提供するLTSである無償のOpenJDkを選択しました。もし、Java環境に有償サポートが欲しい場合は、それらのOpenJDKの有償サポートを利用すれば良いとなりました。

もう、Oracle Javaを選択する理由はありません。この状況から、Oracleは確実にJavaを捨てます。これまで捨てていったSunの資産と同様に、簡単に捨て去るでしょう。Oracleに期待することは無駄の極みです。

[理由2] 古くさい言語設計への継ぎ接ぎ

Javaの言語設計はとても古くさいものです。Java 8以降はラムダ式、Stream、var等を追加してきましたが、過去の互換性のせいか、使い勝手が悪いか、何か制限があるか、本当に欲しいものが不足しているかの何れかです。根本的に言語設計を作り替えないと、今さら何を継ぎ足しても無駄です。

[理由3] 優秀なJava代替言語の登場

JVMで動作するJava以外の言語と謂えば、Scala、Groovy、Clojureと他にもあり、そして、今最も注目されているのがKotlinです。もはや、Javaで書く理由はありません。JVMが提供する安定性や並列性が欲しいのなら、過去のJavaの資産を流用したいのなら、Kotlinでもできます。そして、JavaよりもKotlinの方が言語的に優れており、使わない理由はありません。

[結論] COBOLと同じ道を辿る

もうJavaはCOBOLと同じ道を辿るでしょう。これは必然です。ですが、COBOLの仕事がまだなくなっていないように、Javaの仕事もあなたが定年になるまでは残っている可能性は高いです。しかし、仕事は全体的に少なくなったのに、Javaができるという人だけがたくさん残ります。その中で仕事が取れるのは本当に優秀な一握りの人達です。

かつて多くのCOBOLerは、突然、Javaの本を渡され、明日からJavaをやれと言われました。時代は流れて、Javaerも、突然、別の言語の本を渡され、明日から別の言語をやれと言われることでしょう。


あなたはそれでもJavaを学びますか?

※この回答は個人の感想であり、あなたの住んでいる世界とは異なる世界の出来事かも知れません。

投稿2020/06/10 10:02

raccy

総合スコア21735

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

xebme

2020/06/10 23:12

『言語設計者たちが考えること』2010 オライリージャパンに、今、Javaを設計するとすればScalaの仕様を採用するかと問われて、Gosling が Yes と答えたのが印象に残っています。
xebme

2020/06/11 02:37

Javaは綻びているが、JVMにはまだ可能性があると、考える人がいるかもしれません。
guest

0

この手の「将来性のある言語」的なことを問う質問はたまにありますが、そのたびに「未来のことは誰にも分からない」というアドバイスがつきます。
それはその質問や回答がついてから幾何か月日が流れた今でも変わりません。

それに赤の他人のアドバイスをどれくらい信じますか?大嘘言うかもしれません。
これは人生相談系の質問に限らずです。
結局、自分で決めて、確かめるしかない。

C#からJavaに乗り換えようかというのは別にかまわないと思いますが、「ネットを見てると」というところは非常に引っ掛かります。

私がteratailはじめる2年ほど前にたてられたphpがダメと言われる理由という質問がありますが、それから5年たった今、ダメかどうかは置いといて、廃れたと言いきれるでしょうか?
質問数はteratail内ではトップクラスです。
質問数はあくまで目安ですが、回答者も多く、回答もつきやすいです。フレームワーク利用者も多いです。

PHPはあくまで一例。

C#もJavaもいろんな使われ方がありますよね。

結局は自分がどうしたいか?
もし仕事をしていくのが目的なら、狙っている業界で何を求められているか?

のほうが大事でしょう。

ちなみに私のアドバイスも「ネットで見つけた1私見」にすぎませんので、どれくらい取り入れるかは自分で決めてください。

結局は自分の人生です。
自身で決める力、切り開く力がないと、何やってもうまくいかないと思います。

投稿2020/06/10 07:24

m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

言語自体の将来性と、それを扱う人間の将来性には相関性はないと思います。

投稿2020/06/10 08:48

phper.k

総合スコア3923

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

どっちか一つに決める必要がありますか?
両方やればいいのでは?
現役のプログラマで使える言語が一つだけという人はあまりいないと思います。
C#をある程度身に着けたらJavaに移行すればいいだけです。
両方もしくはもっといろいろな言語が使えた方が、仕事の幅が広がりますよ。
むしろ柔軟に対応できないと生き残れないとも言えるかと。
もっとも今色々学ぶ必要はなく、必要な時に学べばよいと思います。
何かひとつでもマスターしている言語があるなら、他の言語でもそれほど苦労はしないはずです(例外はあります)

投稿2020/06/10 07:28

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ずっとc#の勉強をしてますが最近javaに切り替えようかと迷っています。

(プログラミング言語そのものに情熱を持っているような一部の人を除けば)プログラミング言語は、あくまで目的のものを作るための道具です。

目的のものを作るのにどれだけ向いているのかが、言語選択の第一の評価軸となります。

そういう観点で見れば、C#とJavaはメインとするプラットフォームやバックグラウンドが大きく違ってきますので、この2つで「どちらでも作るのに同じぐらい向いている」となるものはあまり多くありません。

投稿2020/06/10 07:29

maisumakun

総合スコア145184

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

maisumakun

2020/06/10 07:32

それこそ、「すでにあるシステムを強化する」ような仕事の場合、言語の選択肢は既存のシステムの言語でほぼ一択となり、選択の余地もありません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問