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

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

ただいまの
回答率

90.62%

  • HTML

    8706questions

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

ソースコードに付いて

解決済

回答 4

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 508
退会済みユーザー

退会済みユーザー

ソースコードの把握について質問させて頂きたいと思います。

学校でHTMLやC++など ソースコードを書く際 HTMLなら『CSSに
この文章を足してみて下さい』と問題が出され 指示通り書き始めるのですが
どんどん進んで 命令文を書き足していくうちに 途中まで来ると 
必ず 古い文章でつまずき プログラムが動かなくなってしまいます。
(例えば CSSの コンテンツエリアに float-topを書き足したら
途端に動かない IEの画像には勿論反映されない でもよくよく
CSSを見ると 原因は #contentsにclear: both;と指示が残っていた など)

トライアンドエラーが上手く出来ません。

どう動かすために何が必要で その必要なものを書き足すことによって
今度は 何が不必要となるのかがわからず 古い命令文と書き足した新しい命令文
とが混在し プログラム動かなくなってしまうのです。

このような原因は プログラムの書き方にあるのでしょうか?
自分自身 プログラムをする上でどんな部分が把握できていないのか
具体的に見つけられません。

基礎的 内容の質問で申し訳ございません。
ご教授頂けましたら 幸いです。

宜しくお願い致します。
  • 気になる質問をクリップする

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 4

checkベストアンサー

0

本題とは少し異なりますがHTMLやCSSはプログラム言語ではなくマークアップ言語です。
これらでの指定方法(構文)とその意味を理解したうえで作りたいものになるよう記述するのが基本的な考え方でしょう。

これはプログラムにも言えます。作りたいものを明確にし、自分が書いたコードにどのような意味があるのかを理解します。
どうもその授業では行き当たりばったりで実装しており、きちんとした理解をさせることを目的にしていないように思えます。(とりあえずできればいいという考え)
本来のトライ&エラーは作成したい完成を決定し、それに対してプロトタイプ(試作品)を作成する。そこから問題点と改良点などを見つけ出し、更に試作品を作成するという過程を経て完成品を作成する一連の流れではないでしょうか。(挑戦して失敗し、失敗を修正して更に挑戦するということ)

もしあなたが技術を習得したいと考えるならば、あなたが記述したコードにどのような意味があるのかを調べ、知識を身に着けることが重要です。そうでなければなんとなく動くから良いか、という妥協と怠惰によって構成される意志(やこだわり)のないコードしか書けなくなるでしょう。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/02/23 22:00

    ご回答 有難うございます,,^^,,
    Cf_cwdさんのおっしゃるとおり 授業は行き当たりばったりの実装です。
    ですので 同じことを何度も聞いたり 1日2日前の事を忘れて何度となく
    質問している人もいます。^^;

    自分は技術をきちんと習得したいので こちらを見つけて 活用させて
    頂いておりますが 当方の質問意図をご理解頂きズバリと厳しくも温かい
    ご意見を賜ることが出来 サイトを利用して本当に良かったと思っております。

    有難うございます,,^^,,

    キャンセル

  • 2015/02/23 22:28

    私はHTMLやCSS、JavaScriptを学習しているデザイナー志望の学生でありJavaScriptは授業で1年だけ触りました。しかしながらその授業で私以外の学生は言語についての知識が身についたとは言えない状況です。(絵を描くのは非常に得意で真面目な学生でもそうです)
    これは授業の進行速度や適度な解説が不足していたのも原因の一つだと考えています。(何より皆興味がないのが理由ですが)
    私はその後さらに一年JavaScriptを自習しているのですがその中で様々な知識に触れることができました。その中にはデザインに生かせるものもあり有意義であったと考えています。
    JavaScriptにはjQueryというライブラリがあり、Web業界では現在デファクトスタンダードと言えます。Webデザイナーの中にはコピペでも動けばいいという考え方がそこそこあるようなのです。私はできれば少しでも動く理屈を知ってから使いたいと思い、今まで勉強してきました。
    プログラマ志望の方であればDRY原則やKISS原則など思想(や理論など)についても覚えておくと今後のために何か役に立つかもしれません。

    お互い広い視点を持って深く学習していきましょう。

    キャンセル

  • 2015/02/23 22:41

    貴重なご意見 有難うございます,,^^,,

    そうですね 授業は学生一人一人のIQに頼りきっているところがあり
    教える側の技量の善し悪しまでは 学校側も頭が回っていないのが現実です。
    (テキストをどの時期までに終えるという 制約に縛られている事もあるようです)
    専門学校ではC C++と学びましたが やはり 生徒一人一人がしっかり理解している
    とは言えないものでした。(高校のカリキュラムにプログラミングが入っているか工業校
    で既に学んできた生徒は理解しているようでしたが)
    自分も理解できなかった一人ですが… いずれは JavaScriptにも挑戦したいと
    思っておりますので しっかりこちらのサイトで ご意見を賜りながら精進して行きたいと思っております。
    ,,^^,, 有難うございます 頑張ります。  

    キャンセル

0

まず、プログラムは整理して書きましょう。
同じ目的のコードは一カ所にまとめて書く。丸ごとのコピペはなるべくしない。
CSSなら一つの{}の指定に何もかも書かないで、用途ごとに分ける。
C++ならまとまった処理ごとにクラスやメソッドに分割する。
そして、それらに適切なコメントを書く。
先にやるべきことをコメントで書き出して行って、後からコードを書くのも有益です。
このコメントを詳しく書いたものが、ようするに詳細設計書と言われるものになります。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/02/22 00:29

    迅速なご回答有難うございます^^
    コードにはきちんと目的を表すコメントを書くように
    癖をつけたいと思います,,^^,,

    キャンセル

0

本来 正しい トライアンドエラーとは どんな行いなのでしょうか?
  • 何を実装すべきか&どこがおかしいか考える
  • 実装する
  • テストする
これですね。

その前提として、やるべきことごとに処理を細分化し、メソッドなどにまとめていく必要があります。
そうしたら、メソッドごとにテストをするシンプルなコードを書きます。課題で提出するモノとは別にです。
そして、コードを直したら、必ずすべてのテストコードを実行し、おかしいところがないか確認します。
これが単体テストと呼ばれるもので、そのためのツールやライブラリが沢山あります。
処理を細分化して一つ一つテストすることで、どこがおかしいかがすぐにわかります。また、きちんと分割することで余計な影響を減らすこともできます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/02/22 01:10

    迅速なご回答 有難うございます^^

    自分が書いた間違いコードと正解を見比べることができないので 授業の中に行うのは難しいですが(授業特有のじっくり考える時間を与えてもらえず 講師がコードを代わりに書き換えて なぜエラーが起きたかわからずじまい)きちんと 違いを把握出来る様に
    正解不正解は関係なく どのようにそのコードが反映されるのか 一つ一つ書いては動かして確かめる癖をつけたいと思います,,^^,,  

    キャンセル

0

とりあえず動いたコードをしっかり保存して別のファイルあたりにとっておいて、また書き進めていきます。
調子に乗って書いていると、必ずどこかで動かなくなることがあります。

その時に、動いたコードと見比べて、書き足した部分を少しずつ削りながら動かないコードを動くようにします。そうすると、何がいけなかったのかが分かると思います。

大抵自分の勘違いが元だったりするので、そこでしっかり反省すれば、次また同じ問題が起こってもすぐに対処できると思います。

そうしてたくさん失敗→反省を繰り返しているうちに、いつの間にかサクサク書けるようになると思いますよ。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/02/23 22:29

    ご回答 有難うございます,,^^,,

    確かに 調子に乗って書いているうちに動かなくなった事がありました^^;
    しかも 授業で原本を使っていたため しっちゃかめっちゃかになり 結局
    元ファイルをダウンロードしなおすハメになりました。

    ですので コピーを作りそちらをいじるようにしましたが 見比べるものがないと
    不安ですね^^;

    コピーを作る事 コメントを付けることなど しっかり ファイル管理して
    財産を少しづつでも増やして行こうと思います。,,^^,, 

    キャンセル

  • 2015/02/23 22:46

    ファイルの差分を比較するツールが色々あります。
    WindowsならWinMergeが定番ですね。
    http://www.geocities.co.jp/SiliconValley-SanJose/8165/winmerge.html

    キャンセル

  • 2015/02/24 01:58 編集

    ご回答 有難うございます,,^^,,
    そんな 便利なものがあるのですね  もう少しツールも上手に使えるよう
    色々 検索し 自分の狭い知識を広げ 深めていきたいと思います。
    さっそく 拝見させて頂きます^^

    追記 有難うございます,,^^,,

    キャンセル

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

  • ただいまの回答率 90.62%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • HTML

    8706questions

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