C言語でやれる方法を組み立てる方法?

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
クボタとシノブ

C言語でやれる方法を組み立てる方法?

#1

投稿記事 by クボタとシノブ » 14年前

お悩みのお題 
<どうしたら、C言語でやりたいことを、やり遂げる方法をみつけられる?> 

私が伝えようとしていることが、上手に伝えられるか心配です。
悩みましたが質問させていただきます。


Cの構文全部覚えようとすると、とてつもなくキリがないけど、
「C言語の基本?っぽいものは、なんとなく覚えたっぽい?けど、
 これをどう使いこなせば、やりたいことができるようになるの?」
という壁にぶち当たっています。
実際は、まだ経験値がたりない。基本を覚えきったとはまだ思えない。

「これ」をやるには、どうすれば実現できるの?
という、実現させるための、トークン?の組み合わせを、
どのようにして、思いついて、考え付いて、組み立てているのでしょうか。

今のところ、私にとってのこれは、
・・・エロゲーと、それを作るためのツール。

私にとっての「これ」の作り方を具体的に聞きたいというよりは、
常に不確定な、周り(自分も含める)の意見や需要や環境に常に振り回される「これ」を、
そのつどやっつけるための考え方にたどりつけるノウハウを聞きたいのですが。


短くまとめようとしても、まとめられませんでした。 画像

Dixq (管理人)

Re:C言語でやれる方法を組み立てる方法?

#2

投稿記事 by Dixq (管理人) » 14年前

まず質問の内容を明確にしたいのですが、つまり
「C言語の基礎は学んだが設計の力が身に付いていない。設計についてはどのように学べば良いか?」
「不確定要素を含むユーザーの要求などに対する問題解決手段のノウハウが知りたい」
という事でしょうか。
要求分析から設計までの話だとして少しお答えしますね。

まずは要求分析・要件定義について。
このような事を言うと大げさかもしれませんが要するにユーザーが求めている事を把握してそれをソフトの仕様に着実に反映する方法ですね。

ソフトウェアの仕様を決める時、あらゆる手法で仕様を導くことが出来ると思いますが、試行錯誤で決定する以外には、主にアンケート調査からと既存のソフトの問題点から考えるのが一般的でしょうか。

今回「ノウハウ」ということなので、少し堅い話をすると、ものづくりの現場ではよく品質を高める為に「QFD」なんてものが使われています。
http://www.google.co.jp/search?hl=ja&q=QFD&lr=lang_ja

アンケート調査結果などから仕様を導きその重要度や仕様として採用する優先順位が導けます。
また、「新QC七つ道具http://fk-plaza.jp/Solution/solu_nqc7.htm」なんて物も良く使われます。

また、問題から要因を洗い出すのには特性要因図が良く使われます。
http://www.google.co.jp/search?hl=ja&q= ... lr=lang_ja

(この辺は2年位前にソフトウェア技術研究会で言った事と同じなのですが、未だに資料がアップできていませんね・・すみませんorz)

これらからユーザーの要求から着実に仕様に結び付けることが出来ます。
ただこれは個人で小さなアプリを開発したりするには少し大げさすぎるかもしれません。

> 常に不確定な、周り(自分も含める)の意見や需要や環境に常に振り回される「これ」を、
> そのつどやっつけるための考え方にたどりつけるノウハウを聞きたいのですが。

という事だったので、明確な手法についてお答えしましたが、趣味程度のアプリ開発なら試行錯誤でも十分だと思います。

また、設計についても、ユースケースを明らかにし、シーケンスやアクティビティを明確にするところから設計してもよいかもしれませんが、
初めのうちは試行錯誤で色んなソフトを作ってみたり、プログラムの解説本についてくるオープンソースを読んでみたりして学ぶ方が良いと思います。
とにかくプログラムは数をこなすことが重要です。

> 「C言語の基本?っぽいものは、なんとなく覚えたっぽい?けど、
> これをどう使いこなせば、やりたいことができるようになるの?」

この疑問も沢山ソフトを作っているうちに解消していくと思います。
まずは小さなソフト作りから始めてみてはいかがでしょう。
さしあたり作りたいソフトなどは無いのでしょうか?

Poco

Re:C言語でやれる方法を組み立てる方法?

#3

投稿記事 by Poco » 14年前

> まず質問の内容を明確にしたいのですが、つまり
> 「C言語の基礎は学んだが設計の力が身に付いていない。設計についてはどのように学べば良いか?」
> 「不確定要素を含むユーザーの要求などに対する問題解決手段のノウハウが知りたい」
> という事でしょうか。

単純に
「やりたいこと(やらなければならないこと)をプログラムソースに落とせない。どうすればプログラムソースに落とせるのか?(ソースが思いつくようになるのか?)」
ではないでしょうか。

私の回答としては、「インターネットから問題を探して解きまくる」です。
#もっと具体的にすると、「この掲示板や初心者向けの掲示板(コミュニティ)で回答者として、武者修行する」です。
変な回答や間違った回答をしても、他の回答者が修正してくれますし、おすすめです。

Dixq (管理人)

Re:C言語でやれる方法を組み立てる方法?

#4

投稿記事 by Dixq (管理人) » 14年前

> ぽこさん

なるほど、そうでしたか。国語力が乏しいもので; 補足ありがとうございます。



それであればやはり演習あるのみって感じですね。
小さなツール作りを何度もやって段々大きなソフトを作っていくうちに解っていくかと。
ぽこさんの仰る通り、掲示板に赴いたり、作ったコードを添削してもらうようお願いしても良いと思います。
掲示板で回答していると「間違った事は書けない」と思うので、自分でも不確かだった部分とか調べながら回答することもあり、勉強になりますよ^^

クボタとシノブ

Re:C言語でやれる方法を組み立てる方法?

#5

投稿記事 by クボタとシノブ » 14年前

私の言葉の力のなさを補足してくれるかのように、
なんとか解釈しようとして答えてくれることに感謝します。

現状は、ぽこさんの言うとおり。
でも、ぽこさんの言うことができるようになるには、
DinXさんの調べてくれた知識が具体的に必要かと考えていました。
むしろ大げさに考えていました。
ちょっと読むのがしんどい。

何ができて、何ができなくて、
何ができるようになるには、何をしたらいいか。
それを調べる力が必要みたいですね。
でも、頭の筋肉を鍛えなければ、
難しいことをできるようにならないということでしょうか。
ソースに落とし込むことが、どうしても特殊技術のような気がしてならないのですが。

問題集の数をこなすと、試験の点数がよくなる法則のようにも思えてきましたが、
いろんな調べ物をみつける技術とともに、C言語の修行をしてみます。

Dixq (管理人)

Re:C言語でやれる方法を組み立てる方法?

#6

投稿記事 by Dixq (管理人) » 14年前

> むしろ大げさに考えていました。
> ちょっと読むのがしんどい。

期待する回答じゃなかったですかね、ごめんなさい;
まぁ上で話した内容は個人でソフト制作を楽しむ範囲なら必要ない話なので、読み飛ばしてもらって全然結構だと思います。

> でも、頭の筋肉を鍛えなければ、難しいことをできるようにならないということでしょうか。
> ソースに落とし込むことが、どうしても特殊技術のような気がしてならないのですが。

専門的な技術と言えばそうかもしれませんが、
でもそれは沢山プログラムを書いているうちに書き方は解るようになってくるものですよ。
それが最も効率的かどうかは置いておくとして、自分がやりたい事をソースに落とし込む為のイメージは
次第にふと浮かぶようになってくると思います。
とりあえず数をこなすことですね。沢山プログラムを書いて慣れていってみてください。

クボタとシノブ

Re:C言語でやれる方法を組み立てる方法?

#7

投稿記事 by クボタとシノブ » 14年前

チーム組んで何か作る場合でも、
個人で何か作る場合でも、
組み立てを考える技術は必要?いや絶対的に必要だろう!
そういう固定観念があったもので。
ただ、C言語を使った頭の筋トレは絶対条件のようですね。
いろんな資料をあさって(悪い言い方だとパクって?)、
いろんなことに使えるように、がんばってみます。

とりあえず、今回は解決にマークしておきます。


たとえ話
100kgのバーベルを、筋力のない貧弱なおじさんが、
バーベルを持ち上げなければいけなくなった。
筋力を鍛えるにも、筋力を鍛えるほどの体力がない。
持ち上がりさえすればいいのならば、
バーベルのある会場に、パワーショベル持ち込みたいんだけど?

こういう考えが常によぎる私は、明らかに怠け者です。


昨日の書き込みで、管理人さんの名前を間違えて表記してました。
誠にすみません。

ISLe

Re:C言語でやれる方法を組み立てる方法?

#8

投稿記事 by ISLe » 14年前

> こういう考えが常によぎる私は、明らかに怠け者です。

別に良いのでは?

「車輪の再発明はしない」
「かもしれないならしない(YAGNI:You Aren't Gonna to Need It.)」
プログラマは怠け者で良いと思います。

Dixq (管理人)

Re:C言語でやれる方法を組み立てる方法?

#9

投稿記事 by Dixq (管理人) » 14年前

そうですね~プログラマーっていかに今後楽が出来るかってことを悉く追求しますから~。
悪く言えば怠け者ですが、効率化するという意味では、皆が目指している事だと思います。
パワーショベルを持ち込んで楽をするには、パワーショベルを購入するだけの財力を持っていなければなりません。
パワーショベルが購入できるようになるまでには沢山の苦労や努力・経験があった事でしょう。
そのパワーショベルが人から貰ったものであったとしても人が作った物を使いこなすスキルがあるならそれも大事な事です。
これだけ幅広い専門分野がある中、全てのAPIを一人で自作する事なんて不可能です。
人が作った物を使いこなしていかに効率よくソフトウェアを仕上げるか、それもプログラマーにとって大事だと思いますよ。

iPhoneを真似して各社がこぞってスマートフォンを発売しましたが、全部中身はアンドロイドである事が良い例だと思います。自作ばかりじゃなく、使える既存のリソースは使わないと。

クボタとシノブ

Re:C言語でやれる方法を組み立てる方法?

#10

投稿記事 by クボタとシノブ » 14年前

なんだかとてつもなく壮大な相談になってしまったような。
どうにもこうにも、プログラムを覚えて組みあげる方法のほかに、
別の技術が必要なかんじがしてきます。
調べ能力とか。あまり自信ありませんけど。

ある意味、アプリはいろんな人が作った部品の寄せ集めなんですね。
その部品をどう使うのかの、使い方も大事でしょうけど。

電子機器の組み立てと、そんなに変わらないかもしれない。
設計の段階でえらい目にあいそうですけど、
慣れてくると、自分で仕様つくったりしながらも、
うまく組めるようになるのかしら?
思い返すとWin32APIやDxlibも、部品といえば部品ですね。

貴重な部品を、惜しげもなく使わせてくださることに感謝しながら、
どうにかして使いこなして、エロゲー組み立てるつもりです。

相談にのってくれた皆さんに感謝です。

閉鎖

“C言語何でも質問掲示板” へ戻る