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

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

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

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

2845閲覧

高級言語でやってよいこと、ダメなこと

aaaaaaaa

総合スコア501

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

1グッド

1クリップ

投稿2016/09/05 10:08

プログラミングを学ぶ上で、上達するためのコツや、やっておくべきこと、学ぶ上ですべきでない、上達できなくなってしまうことを教えてください。
言語を問わない汎用的なやり方、プログラミング別でのコツ、気を付けるべき点、特にphp、javascript、C#関連でお願いします。

LLman👍を押しています

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

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

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

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

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

guest

回答1

0

ベストアンサー

プログラミングを学ぶ上で、上達するためのコツ

分割統治」と「共通規格(化)」でしょうか。

「小さな作業に分けてしまえば、難しい仕事なんてとくにない」
(ヘンリー・フォード)

自動車王の名言です。プログラミングやアルゴリズムの本質だと思います。


上達できなくなってしまうこと

上の逆で分割統治と共通規格化をしないこと。
「木を見て森を見ず」で、行き当たりばったりにやること。
「バッドノウハウよりグッドラッパー」の逆をやること。

あえて具体例は示しませんので、何がそうか探してみてください。


特にphp、javascript、C#関連

それら現代のメジャーな言語は、オブジェクト指向をサポートしてますね。

オブジェクト指向は責務の分散協調システムですが、
それもけっきょく、分割統治と共通規格化の一種だと思います。

たとえば、複雑なif文をポリモーフィズムに分解するのがそうです。

広く普及したオブジェクト指向言語も、最近流行の関数型言語も、
「手続き型」から「宣言型」へと向かう方向は共通してます。
これは機械語から高級言語へ向かう流れに沿っています。

分割統治と共通規格化を突き詰めると、宣言的な書き方に行き着きくのです。

投稿2016/09/05 12:11

編集2016/09/05 12:19
LLman

総合スコア5592

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

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

aaaaaaaa

2016/09/06 07:27

ご回答有難うございました。 分割統治というと植民地支配でよく用いられた手段の一つですね。ただどうも今現在学んでいるjavascriptやphpと結びつかないです。全く見当もついていない人間でも分かるように解説してくれる書籍などはないのでしょうか。 多態性を利用する、というのは、メソッド名を統一することでいちいち別の名前を考える必要が無いし、メソッドたちに共通性が生まれるくらいの長所しか知りませんでしたが、 多態性を利用することで冗長になり易いif文を削除することができるのですね。因みにこの共通性を与えることは、回答文にあります「共通規格化」に当たりますか。
LLman

2016/09/06 11:33

>今現在学んでいるjavascriptやphpと結びつかない 関数やメソッドやクラスの単位に分けるのがそうです。 そもそも、クライアントサイドはJavaScript、サーバサイドはPHP(など)、 さらにWebページはHTMLとCSSで定義したり、SQLなどのDBでデータを管理したり、 ひとつのWebサイトを別言語で担当するのも、一種の分割統治だと私は考えます。 >「共通規格化」に当たりますか ポリモーフィズムも、私の言葉だと共通規格化です。 メソッドの名前が共通しているわけですよね。 さらに、インターフェイスを含めた継承も共通規格化です。 サブクラスたちはスーパークラスを共有しているわけで、 デザインパターンのテンプレートメソッドもそれを利用してます。
aaaaaaaa

2016/09/07 03:02

ご返答有難うございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問