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

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

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

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

1335閲覧

コードを導くためのコツはどのようにしてらっしゃいますか?

trafalbad

総合スコア303

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2017/02/18 11:04

編集2017/02/19 02:07

皆さんはある条件下でデータを出力しなければならないとき、どのようにコードを導きますか?

例えば以下のようにすれば少しは自分でコードが書けるようになるでしょうか?
手順1.必要な条件を書き出す
手順2.その条件に必要なオブジェクトを探す
手順3.条件に必要な変数や値を設定
手順4.それらを組み立てる

自分が想定してるのはあるデータ群から特定の条件のデータを出力するために必要なコードを導き出すことです。
例、地球温暖化の進行を調べるため気象庁の40年分の積雪データから雪解け日数の平均を求めるたいなど(雪解け日数の定義が条件)

なるべく質を高くして確実に必要なコードを導き出したいのですが、エンジニアの皆さんがとられているコードの導き方の手順を教えて下さい

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

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

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

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

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

Zuishin

2017/02/18 23:38

お書きになった手順はエキスパート向けではないように感じます。エキスパートの書き方が知りたいのか、初心者向けに書き方の初歩を教えて欲しいのか、それによって回答が異なると思われます。
Zuishin

2017/02/18 23:40

また、エキスパートの皆さんと呼びかけられると、名乗り出にくくなります。「皆さん」の方がいいと思います。
Zuishin

2017/02/18 23:43

あと、書き方は書くプログラムの規模によって違います。大きくて改良が重ねられるプログラムの場合はテスト駆動開発のテストを書いた方が効率が良くなるでしょうし、小さな物ならテストを書くまでもないかもしれません。どんなプログラムを想定しているのか、例えば素数を求めようくらいのもの、あるいはワープロを作ろうくらいのものなど、具体例を挙げれば回答しやすくなります。
guest

回答2

0

ベストアンサー

抽象的な答えになってしまいますが、どんな複雑な用件であっても、一つ一つを分解していけば、それ単独ではやっていることは一つになります。どんな場合でも、シンプルに理解できるもの(関数)を組み合わせになります。

複雑と言っていますが、具体的に問題を解く手順は頭の中にありますか?
そうであれば、何も難しいことはないでしょう。
頭の中にないのであれば、まずは手で書いて擬似アルゴリズム等で整理しては如何でしょうか。書くことで頭の中は整理されやすくなります。

頭の中に解く手順が入っているときはいきなりソースコードを書いても良いですが、そうでなければ、まずはその手順を自分が理解することが最優先です。

まずは、自分が理解できるまで物事を分割することが大切かと思います。

投稿した後に「条件がわかっている」ということを見たので追記します。
もしそうならば、汚くても良いから書きましょう。悪いコードでも良いから書きましょう。書いて、動いてからリファクタしましょう。
汚いコードでも動くもの(InputとOutputがわかっているもの)があれば、他の人から助言がもらえます。

投稿2017/02/19 02:12

編集2017/02/19 02:15
satuchiko

総合スコア15

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

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

trafalbad

2017/02/19 02:54

まず解く手順を導くことなんですね。まずは分解してシンプルにしてから上記の通りやってみようと思います。
guest

0

はじめまして。
すごく難しい質問ですね。
きっといろいろ悩まれているのかな、と察します。

↑でもアドバイスされていますが、もう少し具体性があると回答しやすいですね。

①「ある条件下でデータを出力しなければならないとき」という条件を具体化する
→データ例やシステム例で具体性を持たせる。
テーブルA,B,Cがあってそのレイアウトがこうで。。
という内容になりますかね。

②「なるべく質を高くして確実に必要なコードを導き出したい」をアウトプットする。
→コード
①の条件で実際に書かれたコードを貼り付けるといいと思います。

この二つが具体的なら、②に対して評価が出来ますね。
評価に対して「なぜそのほうがいいの?」という疑問とそれに対して回答がくれば
ご質問の答えの一端になると思います。

最後に
「複雑なコードを書くための手順はどのようにしてらっしゃいますか?」
→まず、複雑にならないようにします。

投稿2017/02/19 01:24

kometaroimo

総合スコア76

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

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

trafalbad

2017/02/19 02:04

回答ありがとうございます。 条件は分かっているのですが、その条件に合ったデータを出力するためのコードをどう導けばいいか迷ってます。 条件に必要な数式を書くとか、条件に必要なオブジェクトを探すなど条件を満たすコードを導くためのコツを教えていただけないでしょうか?
kometaroimo

2017/02/19 02:24

ふむ。 ではまず質問ですがデータ、、という言葉が出てくるのでデータベースがある、、と想像しますがあってますか?
trafalbad

2017/02/19 02:51

はい、あります。 データベースがあってそこから条件を満たすコードを導きたいんです。
kometaroimo

2017/02/19 03:32

解決したようでよかったです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問