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

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

新規登録して質問してみよう
ただいま回答率
85.35%
Java

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

3回答

1206閲覧

最近からJavaを勉強してます!

mako777

総合スコア1

Java

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

1クリップ

投稿2021/11/01 11:06

編集2021/11/01 12:04

Javaを効率よく上達していける方法があればアドバイス願います。

まだ勉強を始めて1週間目です。
右も左もわからず、
勉強はprogateでしかしてません。
目標はフリーランスで稼ぐことですが、
初めに、アプリ開発やWEBサービスなどをやってみたいです。
経験者様の声を聞かせていただけると
助かります。
お願い致します。

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

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

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

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

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

m.ts10806

2021/11/01 12:50

Javaですか? JavaScriptですか? 全然違うので明確に。(違いが分からない状態では稼ぐとか言ってる場合じゃないです)
guest

回答3

0

ベストアンサー

プロとしてはやっていませんが、それでもいいなら。(つまり趣味&独学)


Javaを効率よく上達していける方法があればアドバイス願います。

まず、甘えは捨てましょう。数カ月かそこらで使い物になるわけありません。

そもそも、最低限の最低限できるようになるだけでも数年は確実にかかります。
ただしこのレベルはあくまで最低限の最低限です。
数学でいえば「二次関数の式がなんとなくわかる」程度です。

プログラミングっていうのは、「こう書けばいい」っていうものではありません。
問題が出されて穴埋めをするだけ…とかではありません。
仕事だと考えればわかるでしょ。課題代行とかなら別として、それ以外の仕事で穴埋めをするだけの仕事ってありますか?

ではどのように金を得ているか。それは「クライアントが要求するシステムを構築する事」です。

ご自分がいかに甘えた考えかは、『実際に何か作ってみる』とわかるはずです。

プログラミングはある意味、DIYに似ています。

まず何を作るべきかを設計し設計図を書く。次にその設計図をもとに実際に作る。そのサイズや高さが合わないとかがあればそれを修正する。できれば使い物になる程度にはしたい。

もし椅子を作るとして、「椅子を作ったけど高さが合わないから誰か修繕してくれ」とか「椅子を作りたいがやり方がわからん。誰か設計図を書いてくれ」とか言いますか?
自分で設計し、自分で作り、自分で修繕しますよね。

プログラミングも同じです。

何を作るべきなのか、そのシステムが要求するものは何かとかを考えて、設計図に相当する仕様書等を作成する。そしてそれをもとにコーディングする。だけどこの時点ではバグが潜んでいる可能性がある。なので、デバッグという修繕をする。なぜエラーになるのか、なぜ結果が合わないのかとかを調査し、修正するのです。

そして、テストと呼ばれる工程も行います。これは潜在的なバグがないこととかを保証したりする感じです。車を作る場合の実車耐久試験のように。

ここまでできるのが当たり前です。趣味の私でもやろうと思えばできます。(綺麗な仕様書かと言われると…だけど)

で、仕事レベルだと、「データ構造とアルゴリズム」や「デザインパターン」などの先人たちの知恵を学び、基本情報技術者試験に出るような内容の理解はすべきです。

確かに実務では直接使わないかもしれませんが、知識は役に立ちます。
たとえばDB周りやネットワーク知識があれば、『なぜ今回バグっているのか』が推測しやすいです。
常にコード上の問題だけではなく、一括処理程度ですら「ファイルがない」とか「OSの問題」とかが普通にあります。ましてや実務ならね…

データ構造とアルゴリズムは直接ゴリゴリ書くことは無いかもしれませんが、知識として知らないと軽い気持ちでLinkedListを使ったら休出する羽目になった話のように面倒な状況に陥る可能性もあります。知っていれば回避できる可能性が高いです。

デザインパターンもそう。知っていれば対処しやすい事が多いです。

計算量という概念自体を知らないと、上記の軽い気持ちで~のような面倒な状況に陥る可能性がありますね。

ここまでは趣味&独学でもできます。(現に私も全てではないが知っていることが多い)

そして、仕事レベル。ただし、企業に属する場合。
その場合は、上記に加えて、チーム開発の基本的なものやGit/GitHub、コミュニケーション能力も必須になります。会社によってはGit/GitHubは使わずに内製のものを使うようですが。

そして、今回の質問にあるフリーランス。

……いや、無理だから。あまりにも無謀としか言いようがありません。(私も夢見ていた時期があったが)

そもそもプログラミングというのはコード書いて終わり……ではありません。
質問者さんがクライアントの立場になってみてください。

金を出して依頼しても、某アプリ(コロナ関連の)みたいにこけたらどうしますか。しかも『嫌なら使わなければいい』という暴言付き。私ならマジで切れる。

しかも1万とかじゃないですよ? 100万は当たり前の世界です。それなのに。です。

それと、プログラムを納品するだけではありません。

クライアントは下手するとPCすらまともに使えません。なので我々が設置してあげる必要があります。

会社がなぜ複数人で開発したりしているかを考えればわかるはずです。

まず営業がクライアントとの約束とかを取り付け、営業とともにSEがクライアントと接客して仕様を固める。SEは社内とかでちゃんとした仕様書(RFIやらRFP, 内部仕様書や外部仕様書等) を作成し、工程を管理する。プログラマはその仕様書等を読み、意図を理解し、プログラムを作成する。

そしてデバッグ担当がデバッグをし、テスト担当がテストを行い、納品する際にはインフラエンジニアが設置したりして、後は保守を行う。
さらに、給料等の管理をするために経理が管理する。
また、何らかの問題が発生したら社長やその他上層部が矢面に立つ。

こういう風に役割分担をしています。でもフリーランスだとそういう役割分担が出来ません。(出来なくはないが、それをやったら会社と大差ない…)

つまり、『すべて自分でやる必要がある』。
よって、「金銭管理」「税金対策」「売り込み」「保守」「コーディング」「設計」「設置」「自己責任」「法対策」は当たり前のように自分でやる必要があります。

なので、プロを名乗っている人でも多分フリーランスで食っていける人って限られているはずです。(設計とかまでは出来ても税金対策や法対策とかが出来ないとか)
ましてや軽くやり始めた程度の人が出来るとは到底思いません。

オリンピック選手が簡単に走ったり飛んだりしているのを見て、『あれなら俺でもできるだろ』と勘違いしている状態です。

投稿2021/11/01 13:52

BeatStar

総合スコア4962

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

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

mako777

2021/11/02 01:21

回答ありがとうございます! 自分がいかに甘えた考えなのか、 今一度モチベーションを奮い立たせることができました! まだ、自分はここで質問できる状態ではないことが理解できます。 もう少し勉強してプログラミングとは何かを理解していきます。 浅はかな考えをした、質問者で申し訳ありませんでした!
BeatStar

2021/11/02 02:02

やる気があり、会社で叩き上げでもやってやると覚悟を決めているのでしたらいくらか可能性はありますよ。ただし、茨の道だと覚悟したほうがいいと思います。頑張ってください。
guest

0

Javaを効率よく上達していける方法があればアドバイス願います。

既に指摘されてるけど、ドキュメントが不自由なく読めるようになれば理解は早いです。(Javaに限らずどの言語でも)

まだ勉強を始めて1週間目です。

右も左もわからず、
勉強はprogateでしかしてません。

1週間やそこら勉強しただけの人がそんな先の事考えてどうしますか?夢を見るのは結構ですが夢を見れるだけの実力をもってからにしましょう。

初めに、アプリ開発やWEBサービスなどをやってみたいです。

どういうアプリ開発?どういうWebサービス?ただフリーランスで稼げるって広告を見てふわっと考えてるだけじゃないですか?
はっきり言っておきますがフリーランスが稼げるというのはあくまで非常に高いスキルを持っている一部の人間のみです。仮に質問者さん自身がまぁ人並み以上にJavaを使えたとしても何の経験も人脈もなければ
仕事は貰えません。

投稿2021/11/02 00:04

K_3578

総合スコア1282

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

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

0

せめてJavaを勉強している目的や目標をできるだけ明確に書いたほうがいいです。
目的地がわからないとそこに至るための道筋を示すことはできません。

追記

目標はフリーランスで稼ぐこと

であるならばまずlancersとかでどのようなスキルや案件が求められているか市場調査したほうがいいかもしれません。そもそもJavaを勉強しようとしていること自体が遠回りであることに気がつくかもしれません。

初めに、アプリ開発やWEBサービスなど

スマホアプリ開発がしたいのであれば、まずiOSアプリとAndroidアプリがそれぞれどのように作られるのか、両方同時に作る方法はどのようなものがあるのかを調べるといいかと思います。

WEBサービスを作りたいのであれば、普段利用しているサービスがどのような言語で開発されているのかを調べてみるといいと思います。

追記

要点はこちらと

最初の言語として Java の基礎を学ぶのはそれなりに悪い選択肢ではないように思います。

こちら

フリーランスで活躍しようと思えば、IT 技術に加えて営業や経営やコミュニケーション能力などの複数のスキルが必須となり、就職よりも難易度は高くなります。
調査するなら、むしろそういう実態の方ではないかと思います。

かと思います。

Javaの基礎とは何かというのは結構難しい問題かと思います。
progateで1週間学ぶ以上のことが必要なのか、他にすべきことがあるのか書いていただけるとイメージが湧きやすいのかなと思います。

また、悪い選択肢とは何か、良い選択肢とは何か、についてもう少し書いていただければ、
先だって提示された目標に対して「それなりに悪い選択肢ではない」ということの意味がわかりやすくなるかなと思います。

フリーランスで稼ぐためにIT 技術に加えて営業や経営やコミュニケーション能力などの複数のスキルが必須となるかどうか私にはわかりかねます。さらにそのような実態を調査する方法が実際のフリーランサーへの聞き取りくらいしか思いつかないので、なにか方法論をご存知でしたらご教示いただけると助けになるかと思います。

投稿2021/11/01 11:52

編集2021/11/01 13:28
KAOsaka

総合スコア531

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

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

mako777

2021/11/01 12:00

ありがとうございます!追記いたします。
KAOsaka

2021/11/01 12:29

回答追記しました。
Zuishin

2021/11/01 12:49

> lancersとかでどのようなスキルや案件が求められているか市場調査したほうがいいかもしれません。 すぐに習得できるならともかく、何も知らないところから急に始めた人は、学習に数年単位で時間がかかると思われるので、今の市場はあまり参考にならないかもしれません。 最初の言語として Java の基礎を学ぶのはそれなりに悪い選択肢ではないように思います。 また、何も知らない人には実際の案件の概要を見てもただチンプンカンプンなだけで、調査できないのではないでしょうか。 そもそもこの質問者のような人は大量に余っていて、その中で食っていけるようになるのはほんのひとつまみであり、「エンジニア不足でフリーランスは金持ちになれる!」というのは、初心者エンジニアを食い物にする悪質な業者のばらまいた都市伝説でしかありません。 不足しているのは「腕のいいエンジニア」(つまり、「売れっ子小説家」「有名な画家」「単体でテレビに出られるアイドル」などの類義語)で、学校を出る年になってから数か月勉強しただけの一般人のことではありません。 フリーランスで活躍しようと思えば、IT 技術に加えて営業や経営やコミュニケーション能力などの複数のスキルが必須となり、就職よりも難易度は高くなります。 調査するなら、むしろそういう実態の方ではないかと思います。
KAOsaka

2021/11/01 13:28

回答追記しました。
mako777

2021/11/02 01:08

ありがとうございます!もう少し自分のやりたい事をまとめられるまで勉強してみようと思います。 右も左もわからないまま、的外れなことを質問しないように気をつけます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問