• ベストアンサー

どういった流れで・ソフトウェアで始めるのでしょうか?

プログラミングの勉強もしたことありませんし、本なども読んだことも有りません(JAVAは本なら所持)。判るのは「言語」を組み立ててそれがプログラムとして機能することと、言語はC++JAVAぐらいしか知りません。 プログラミングを勉強するに当たって「何を造りたいのか?」という事を聞かれるとすぐ答えられませんが、本当にくだらないソフトなど作ってみたいなと思います。 ・例えば、部屋の模様替えソフトです。部屋の面積を長さと角度など正確に入れ、その中に又正確に測った家具などをおき、どうすれば生活スペースが少しでも広くなるか…のようなソフトです。 取り合えず、今は何が作りたいかは判りませんが、勉強はしてみたいものです。VisualBasicやBorland C++ というソフトウェアを使えばC++でのプログラミング構成ができるのでしょうか?どのようなソフトウェアが初心者にとってとっつきやすいでしょうか? どのような言語が良いのかが判りませんが、プログラミング自体わからない自分でも聞いたことのあるC++は一番の有名だと思い、そちらを始めに勉強したいと思います。 あと、質問のタイトルにもありますように、「プログラミング構成の流れ」や「要点」など有りましたら教えてください。 要点と言われても漠然としますが・・・プログラマーの皆様のコツや初心の頃にやっていたことなど教えていただければ精進できると思います。 長文になりまして失礼します。宜しく御願します。m(_ _)m

質問者が選んだベストアンサー

  • ベストアンサー
  • BILLY-J
  • ベストアンサー率57% (60/105)
回答No.3

(かなり長くなってしまいました。ご注意あれ:苦笑) 視覚的に操作できるプログラムを目指すなら、私も VisualStudio を オススメします。フルパッケージで買うと高額ですが、もし学生さん なら学割が利いてかなり安く買えます。 技術習得については他の方がアドバイスしてくれていますので、 プログラムを作る時の考え方(流れ)の1つを紹介します。 部屋の模様替えソフト、面白いじゃないですか。 私も学生時代にアパートを引っ越す時、部屋の見取り図の上に同縮尺 の家具の紙切れを置いてパズルのように配置を考えた事が有りますよ。 これをサンプルにしましょう。 1.要件整理 「何をやりたいのか」「最終的な出力に何を望むか」等を初めに 決めておきます。この場合、 (1) 部屋見取り図の上に同縮尺の家具の図を配置する (2) 家具図は部屋見取り図内で自由に動かせる (3) 家具が置かれていない床の面積を算出する (4) 部屋が広く使える効率の良い配置例を導き出す こんな所かな。 2.設計 業務上は基本設計とか詳細設計とか更に細分化されますが、実際は 各社によって線引きの認識が微妙に違うので1つに纏めます。 やる事は要件定義からのブレイクダウンです。各要件を実現する為に どんな機能(プログラム)が必要かを考えます。 (1) 部屋見取り図の上に同縮尺の家具の図を配置する   ・部屋や家具の寸法を入力し、図形に変換する。   ・各種家具は立方体に近似させて表現する。   ・入力数値は横幅、高さ、奥行き、家具名の4つ   ・寸法の単位はmm   ・画面表示上は、この立方体を真上から見た長方形で表現する (2) 家具図は部屋見取り図内で自由に動かせる   ・マウスのドラッグにより家具図を動かし、描画する   ・家具図を動かせる範囲は家具の各辺が部屋の壁の内部   ・家具同士を重ねる場合の条件は、      高さの和が天井に届かない事      下側になる長方形の全ての辺が上側の長方形より長い事 (3) 家具が置かれていない床の面積を算出する   ・床面積算出の数式を考える   ・万能式な数式が無い場合は、どのような部分はどの数式で    算出するかのケース分け条件を明確にする (4) 部屋が広く使える効率の良い配置例を導き出す    ・例えば単純にランダムな試行錯誤を千回繰り返し、     床面積が広かったベスト5を表示する    ・家具配置のノウハウ     例えば完全なランダム試行だと、全ての家具を部屋中央に     集めた場合に最も床面積が広い…なんて非実用的な結論を     平気で算出します(笑)     壁際に配置すべき物、テーブルのように部屋の中央配置で     良い物、を区別する等。     (家具の寸法入力に配置属性の項目を加えるとか) ※画面のデザイン等もこの段階で考えておきます。 3.プログラム ここまで来てやっとプログラムを書く作業です。 ですが、前述の1~2までの段階で勝負の8割は決まってます。 この段階で考えるのは、例えば ・数値入力させるにはどうするか ・画面に長方形を描くにはどうするか ・マウスで図形をドラッグするにはどうするか ・図形を重ね合わせて描くにはどうするか ・床面積算出の数式をプログラムに移すには何が必要か ・家具配置のノウハウをプログラム化するにはどうするか  (先ずは数式または条件式で表現する) この辺りの細部について考えながら各パーツのプログラムを書く。 プログラムとしての大まかな流れは2の設計段階で完成している。 4.テスト これも大事ですね。 ・色々な寸法、無茶な寸法等を入れてみて思惑通りの動きか確かめる。 ・1~2で条件や制限を決めた機能の動きを確かめる。 不具合修正~再テストを繰り返して品質を高めていきます。 機能の少ない小さなプログラムなら、これらを同時にやってしまう 場合が多いですが、大きなプログラムは段階的に作らないと途中で 混乱します。 例えば家を建てる場合、先ずは土台を固め、柱の骨組みを組んで、 次に外装、内装、…、これと同じです。 また、ここまで無駄に長い説明を読んで、プログラムを書く作業の 比率が低いように思われたかも知れませんが、実際そうなのです。 また家造りに例えるなら、プログラムは内装工事や電気ガス水道等 の配管工事に相当する部分だと思います。 多少なりとも物作りの雰囲気が伝わったでしょうか? #長文失礼致しました。

pentaxpentax
質問者

お礼

長文有難うございますw プログラムはイチからはじめるのではなく、イチの書き方を教えることからはじめる、ぐらいの面倒くさい作業だと把握しています。 ですのでBILLY-Jさんの説明が長くなるのも、プログラムを書いている人なりの説明のしかた、でしょうね。雰囲気は十分に伝わりますよ^^ ゼロからはじめるということは言葉どおりに難しいことでしょうね。 有難うございました。

その他の回答 (2)

  • uyama33
  • ベストアンサー率30% (137/450)
回答No.2

 私は、10年くらいボーランドのコンパイラを使っていました。  最近、マイクロソフトの VC++ に変えました。 理由は、データベースを扱う必要があり、 d-BASE の様なものを使うか、ACCESS を使うか どちらかに決める事が必要になりました。  他の人が入手しやすいとの観点から、 ACCESSを選び、その結果Active-Xが扱いやすい VC++ に変えたのです。 マニュアルを読み直すのも大変でした。 最初に選ぶのを間違えると後で大変です。  ボーランドのヘルプが使いやすくて気に入っていたのですが、今は、VC++で苦労しています。    アドバイスとしては、 1.質問できる人がいるなら、その人と同じものにする。 2.お金を払いたくない、作品は無料で配布する。   英語が得意、この場合は、LINUX の上で考える。 3.作品を売りたいときは、マイクロソフトにしておく。   これから始めるなら VC++ か、   C#.net を考えてみる。 役に立つかどうか分かりませんが とにかくコンパイラを変更するのは大変です。

pentaxpentax
質問者

お礼

急に言語を変えるのは辛そうですね。。。 1.質問できる人は身近にはいません。教えてGooも人 の内にはいりますかね?w 2.英語は一応出来ますし、作品は需要があれば配布してもよろしいのですが、LINUXについてはなーんも知らないので・・・。自作できるOSですよね、確か。 3.この場合は本腰を入れて作る必要がありますね。 コンパイラ=言語ですよね?そう把握して回答しております。 回答有難うございました。

回答No.1

とりあえず、お手軽にはじめたいのであれば マイクロソフトのVisualStudioを 購入されれば、インストールするだけで環境が 整います。 Borlandだと少しだけ手数がかかりますね。 例示されているソフトを作るには、グラフィック関係の 制御が重要になりますので、VC、VB、Javaの いずれかがお勧めです。 一番わかりやすいのはVBです。 Javaはポインタといわれるものを気にする必要がない ために、C++よりも使いやすいですね。 (ただ、VBと比べるとはるかに難しいです) C++(VC)は使用者が多いのが特徴ですが、 結構面倒な言語でもあります。 まずは、入門書を買って例題プログラムを書いてみてください。 基本文法を覚えないと話になりませんので、 これは初心者には必須です。 慣れてきたら、ちょっとずつ本に書いてあるのを いじって、自分なりに改造してみましょう。 あとは、作りたいもので必要な処理をイメージしていき、 プログラムで作るのにはどうしたらいいか、 情報収集をしたり、部分的に試作してみましょう。 本を読んだり、詳しい人に聞いたりしながら 作っていくしかないのですが、問題点を明確にして 一つ一つ解決していくのがコツですね。

pentaxpentax
質問者

お礼

取り上げてみた模様替えソフトは例題ですので・・・^^;JavaがVBより難しいとは思いませんでした。 勉強するための本は必須でしょうね。あともちろんソフト事態も。

関連するQ&A

  • C言語を勉強する為に

    全くのプログラミングの初心者です。C言語を勉強したいと思っています。 まず、何が必要なのでしょうか?参考書はもちろんですがプログラミングを勉強するにあたって最低限必要なものを教えて頂ければと思います。できればフリーソフトが望ましいのですが…。 それと、C言語とJAVAはどちらが入りやすいのでょうか。

  • C言語やC++が勉強できるwindows用ソフトウェア

    以前、本を買って勉強していたのですがどうも取っつきにくく途中で投げ出してしまいました。 最近、C言語の勉強できるソフトを買ったのですが(初心者用)グラフィック、音声、テストなどが入っており非常にわかりやすかったです。 ですが、初心者用ということもあり、基本中の基本しかなくもっと色々なC言語の勉強できるゲームソフトウェア?のようなものが欲しいです。 オススメのソフトがあれば紹介していただけませんか?

  • システムエンジニアについて

    Javaなどを勉強する入門書の本や雑誌は何がいいですか? c言語はよく本が理解できなかったので、かなり簡単なプログラミングやソフト開発の本を教えてください!

  • ソフトウェアを作りたいのですが…

    ソフトウェアを作りたいのですが… ウィンドウズXPでソフトをC言語で作りたいのですが、 初心者でも分かる説明、またはツール等はありませんか? 一応C言語はある程度分かります。

  • ソフトウェア作成への勉強方法

    文系の大学生なのですが、 大学入学後にパソコンに興味を持ち現在独学でプログラミングを勉強しています。 目標はゲームや色んなフリーウェアを作れるようになりたいです。 言語はC言語を勉強していて柴田望洋さんや林晴比古さんの本を読み 一通り基本的な文法やアルゴリズムは覚えました。 しかし数値のソートやデータ構造なんかを覚えたのは良いのですが、 実際に自分が普段使っているようなソフトウェアを作るのにどう結びつけたら良いのかよく分かりません。 特にGUIプログラム作成に関しては全く作り方が分かりません。 そこで今の状況から実際にソフトウェアを作れるようになるにはどういう勉強をしたら良いのか、 どういう本を読んだら良いのかということを教えて頂きたいです。お願いします。

  • 将来、ソフトウェアとかを作ってビジネスをしたりできるんですか?

    自分はプログラミングに興味があるんですが、将来、本業とは傍らにC言語なんかを勉強して自分でソフトウェアを開発してビジネスとしたり・・・ っていうのはできるんですか?

  • PC用ゲームソフトウェアのプログラミングについて

    PC用同人ゲームとして、サモンナイト4やファイナルファンタジータクティクスのようなシミュレーションロールプレイングゲームを自前で創りたいと思っています。OSはVistaです。 プログラミング、音楽制作、画像処理のいずれも初心者レベルなので、まずプログラミングを一から勉強することにしました。 現在「10日で覚えるC言語入門教室/著:坂下夕里」という本を使って、プログラムを組むことを一から勉強しています。本で「コンパイラはこれを使ってください」と書いてあったのが「Borland C++ Compiler 5.5」だったのでそれをインストールして本の通りにプログラムの練習をしています。 ただ気になるのが、この本は2004年に発行されたものであり、それなりに古いことです。勉強したことが「今や時代遅れで使い物にならない」ということはないでしょうか?それともこれで勉強したものを昇華させていけばそれなりにゲームプログラムの基礎が組めるようになるでしょうか?抽象的な質問で申し訳ありませんが、どなたか詳しい方がいればご回答願います。 あと、例としてゲームの戦闘マップ画面なのですが、先に紹介したゲームでもマップやキャラクターはドット絵で作成したものを使っているのでしょうか?言い換えれば、プログラミングで動かす対象となるキャラクター等は.bmpで作成すれば良いのでしょうか?

  • Turbo C++でのC言語プログラミングの仕方がわからなくて困っています

    プログラミング初心者です。 C言語の勉強用にBorlandのTurbo C++ Explorerをインストールしたのですが、ソースのコンパイルや実行の仕方がわからなくて困っています。 ご存じの方いらっしゃいましたら、教えていただけませんか? よろしくお願いいたします!

  • C言語のコンパイラ

    C言語の勉強がしたいと思っているのですが、コンパイラっていうんですかね、それについて少し調べてみたら 無料なら"Borland C++ Compiler"で、有料ならなんかかなり高いっぽいけど"Visual C++"っていうのがあることが解りました。 よくプログラミング系のサイトの人で"Borland C++"のコンパイラを利用してとてもプログラミングがしやすくなったということが書いてあるのですが、"Visual C++"と比べたらどっちの方がいいんですか?(やっぱり有料の方?) もし人それぞれなら、みなさんは両方あったらどっちを使いますか? 初心者なら無料ので十分すぎるのだとは思いますが、プログラマーみたいな人から見るとどうなのかな~と思ったので教えていただけますか。 お願いします。 ついでに"Visual C++"って言語があるんですかね?何かそんな風に書いてあるところもあったもんで。 かさねがさねお願いします。

  • ソフトウェア開発技術者試験

    ソフトウェア開発技術者試験を受験しようと思っているのですが、どういった参考書がお勧めか教えてください。  ちなみに、僕はプログラム(c・c++・java・javascript)の勉強をしていたので多少はプログラミングの知識とシスアドの知識は持っています。