こんばんは。
今回は、Javaで電卓のような計算機を作ろうと考えていました。
それは、自分なりに「ボタンが必要だろう。」ということで、ボタンを組み合わせたもので作りました。
検索は最小限にし、自分が考えたものについてだけググりました。そこで、たどり着いたのがJButtonなどです。
しかし、どうしてもうまくいかず「Java 電卓」と調べてみると、グリッドレイアウトを使うとよいということやtextFieldを使うとよいということがでてきます。
これらは、どのようにしてわかるようになるのでしょうか?
今は、電卓というわかりやすいものなのでググれば出てきます。しかし、新しいものを考える際には検索しても出てこないことが多いと思います。
そんなことから、今回投稿した理由である
そのような時は、どのように方法を見つけて進めるのでしょうか?
という疑問が湧きました。
初心者的な考えかもしれません。
ただ、僕は本当にモノづくりをしたいと考えているので、そのために必要なことだと考えています。
みなさんの頭の中をちょっと見させてください。
ご教授、宜しくお願いいたします。
これが、その結果作ったコードとそのものです。↓(まだ完成ではありません)
追記:
皆さんの回答がどれもすばらしく自分にとって貴重なコメントばかりなので、ベストアンサーを選ぶという行為はすごく申し訳ない気持ちにもなります。
ただ、それで誰にも付けないという方が申し訳ないので1つ選ばせていただきます。
本当にありがとうございました。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答5件
0
新しいものを考える際には検索しても出てこないことが多いと思います。
たぶんまだ経験不足なんだと思います
よく「車輪の再発明はダメだ」みたいなことを言われますが、経験の浅いうちはどんどん再発明すべきです
そして先人が洗練させてきたものを見つけた時に自分で書いたものと比較すると理解がすごく進む気がします
いろいろ試行錯誤を経験していくと、
「あの機能はあれとこれをこう組み合わせればできそうだ」
みたいな閃きが..
機能を漠然と考えず、やろうとしていることを「細かく分解」して、どう分解すれば今自分ができる(わかる)パターンに当てはめることができるかの試行錯誤すればなんとなくできるようになると思います
あと一番大事なこと
「できないからといって投げ出さない」
形はどうあれ完成させないと「できるパターン」が増えません
投稿2015/11/01 21:23
総合スコア3939
0
ベストアンサー
ひとことで言ってしまうと、** 基礎と応用 **です。
「Java 電卓」についてググって、それを参考にアプリを作ってみるのは基礎練習です。
電卓以外にもたくさんの練習をこなしていきます。
そこから、Javaの基本部分とAPIについての知識を学んで、ある程度自由に使いこなせるようになった上で、それらを組み合わせて本格的なアプリを作っていることになります。これが応用です。
全部を細かく覚えなくても、忘れたかまだ調べていないことがあってもかまいません。その時は、この機能の仕様はここに書いてある、というのを知っていれば良いのです。
もちろん知っていればそれに越したことはありません。
Java+Swingで作るものなら、Java自体をある程度自由に使いこなせることと、JButton
を含むSwing全般について特徴やクセを知っておくことですね。
コンポーネントを並べるにはレイアウトマネージャーが必要で、レイアウトマネージャーにはどういう種類があって、こういう風に並べたいときはどのレイアウトマネージャーを使うか、イベントハンドリングはどうする、時間のかかる処理は非同期処理が必要だからSwingの場合は~を使う...などなど。
そして、実際に自分で使って実験してみることです。
これらの知識を総動員して、ググっても(細かいレベルの)方法が見つからないようなアプリを作っていきます。
Swingについては、下記サイトが各クラスについてのサンプルが整理されていて便利です。
Java Swing Tips - てんぷらメモ
http://ateraimemo.com/Swing.html
投稿2015/11/02 01:26
総合スコア9390
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/03 04:04
2015/11/03 13:08
2015/11/03 13:22
0
こんばんは。
しかし、新しいものを考える際には検索しても出てこないことが多いと思います。
私の場合はそうでもないです。ググって出てくることがほとんどですね。
自分にとって新しいものでも、多くの場合は既に世の中にありますし、それを解説してくれている親切な人も多いので、キーワードさえうまいこと選べれば出てくることが非常に多いです。
また、googleは本当に優秀な検索エンジンです。googleが無かったころは検索結果を10ページ以上みることも多かったですが、googleでは最初の1~2ページで用が足りることがかなり多くて驚きですよ。
キーワードを適当に入れて出てきたサイトの内からそれっぽいものを2~3軽くみている内に更によさ気なキーワードを思いついて検索すること2~3回程度でドンピシャなサイトにたどり着くことがほとんどです。
ネットの世界には本当に親切な方がたくさんいらっしゃいますよ。ありがたいことです。
投稿2015/11/01 18:42
総合スコア23272
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/02 17:03
2015/11/03 01:50
2015/11/03 13:13
0
そのような時は、どのように方法を見つけて進めるのでしょうか?
要するに、どのように実現するか?
を探すという点では、Googleを漁る事で、いろいろな案が見えてくるかと思います。
まずはそれでいいのではないでしょうかね。
そして、(特に学習中で)大切なのは、どのような方法で実現したとしても、最後まであきらめずに、きちんと動くようになるのであれば、それでOKです。
(職業となると実現方法ははじめにしっかりと定義しないといけませんが・・・)
もちろん、実現に及ばない案もあるかもしれません。
まあ、その時は、一端あきらめて、別の方法を試してみるとか。それを知るのも、勉強です。
ちなみに、私は職業プログラマーとして20年間プログラミングに関わっていますが、
たとえば、これまでに一緒に仕事したプログラマーに同じ「電卓」課題を出したとすると、
おそらく、10人いたら、10通りのプログラムを書くでしょう。プロでもそんな感じです。
そのくらい、プログラムには回答が無い物ですので、
Googleで検索すると、さまざまな解決方法もでてくるわけです。
なので、正解は1つではありませんので、
これで、できる!カモ?!
と思ったやり方や、検索で見つけた方法で、まずは、とことん突っ込むのがよいかと!
そして、そのような学習を継続的におこなっていけば、自然に、どのように実現したら良いか、自己解決できる日がきっと訪れます。
はじめから、最適な「方法」を見つけられる人は、おそらく、いないかと。
投稿2015/11/02 19:18
総合スコア1283
0
知識のない状態で見つけるのは無理です。
なので、基本を勉強します。
Javaを知らないのであれば、Javaの入門書や入門サイトを一通り読んだり、
UIが必要であれば、「Java UI」の検索で引っかかるサイトをいくつか読んだ上で、
必要な知識を洗い出し、Javaを学習した時と同じように、基本を学習します。
それがたとえ、ファイアープロジェクトであっても同様の対応です。
言葉の配慮が足りてなかったです。すみません。
UIの部分は、質問でいうところの「JButton」に置き換えても同じです。
「Java JButton」で検索すると、こういったページが見つかると思います。
で、これの基本を学習しようとしたら、「どういうグループなのか?何が基本か?」って考える。
で、トップページを見てみる。これが「基本かな?」と思ったら、これ全部学習する。
ちょっと基本の枠を超えていると感じたら更にもっと探す。
このあたり、自身で十分と感じるまで、手当たり次第に学習をします。
投稿2015/11/01 23:07
編集2015/11/02 22:59総合スコア1124
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/02 16:57
2015/11/03 13:10
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/11/02 17:00
2015/11/02 19:31
2015/11/03 13:10