スクリプト言語と開発効率について
最近PHPをはじめました。
スクリプト言語は基本的に、変数の型を指定できないものが多いわけです。
で、これは本来、これら開発効率を売りにした言語の特徴だったはず。
でもちょっと待って下さい。
この仕様が間違いなく開発効率を下げている。
意図しない挙動をフォローするための機能実装がとても非効率的です。
皆さん、特にC系統の言語に精通されている方にお聞きします。
スクリプト言語での開発効率に関して、
普段意識的に実装されているロジックとかありますでしょうか。 そりゃあるだろうけど、このスレと何の関係があるんだ?
具体的に指摘できないなら、自分の日記帳にでも書いたほうがいいよ。 >>94
> どこにも適さない物もあるでしょう
つまり存在意義のかけらもない言語?これは言い切る自信はないなぁ。
(強いて言うならMSのJ#みたいな?) 動的な型と静的な型の長所短所はあるけど、(もっともRubyの松本なんかは動的な型で決まりって言ってるけど)、
動的な型付けでかつ変数の宣言ミスをコンパイラーがチェックしてくれるPerlはかなり理想的だな。
PHPの場合、型が動的なのに加えて、ブロックによるスコープのコントロールが利かないこと、
変数が1種類しかないこと(Perlでいうところの@arrや%hashがなく、$arr/$hash)、
名前空間がないこと(まあ、パッケージ変数の代わりにクラス変数を使うんだけど、パッケージがないので今度はクラスの管理が難しくなる)
これらが組み合わさって、汚いコードを書くことを強制されるというか。ゆえにバグを誘発する。 >>95
具体的に指摘できていないのは適材適所適材適所言ってる奴も同じだろ >>97は>>48と同一人物
Perlのオナニーは自分のブログでやれ
じゃないと>>48とおなじようにやり返されて恥かくだけ PHPの有利なとこは、mod_phpが簡単にインストールできてそこそこ速いこと。
すぐに覚えられるので、人員の確保がしやすいこと。
これ以外の、言語仕様で優れてるところがあるなら教えて欲しいんだけど。
ちなみにRubyの松本はいろんな記事で型チェックの有用性は認めている。動的な型つけと型チェックは別問題だからね。
型は指定しなくてもいいが、指定すればチェックが働くようなのがいいんじゃない。
ActionScriptがそんな感じで、うまくやってるような気がするが。 >>98
例えば >>61 のようにいくつか書かれてた思うけど、理解できてないと言うことですか?
>>101-101
そうだね。
・変数の型が 静的 / 動的
・型のチェックが コンパイル (もしくは実行開始) 時 / 実行時
・変数宣言の 要 / 不要
・変数のチェックが コンパイル時 / 実行時
は別物。(もちろん、動的な型を持つ言語はコンパイル時に完全に型チェックができない
と言うような制限はある。)
VB なんかは、指定しないと型なし (Variant) になるし、指定すればそれなりにコンパ
イル時チェックができるので、結構うまくできてたと思う。 動的型付け言語のプログラムを読んでて肩が凝るのは、
関数の動きを理解するのにコンテクストの理解を要求するんだよなぁ。
出入口がしっかり定義されていないから、関数が独立せず外部の知識前提で書かれてることが多い。
で、言語やフレームワークごとの流儀とか、書いた人間のクセなどを読む勘みたいなものが
必要になってくる。
これは難しいものではまったく無いけど、C育ちなどではリハビリがいることもある。
Rubyで自前型チェックを"精神安定のために"って言いつつ全公開メソッドに追加してる奴を見たことがあるよ。
> 出入口がしっかり定義されていないから
動的型付けと何の関係もないと思うが...。 ああそういうことか。
でも、だからと言って
> 関数が独立せず外部の知識前提で書かれてることが多い。
と言うのは、単なる偏見かと。 スプリプト言語自体も、スクリプト言語で大規模サイト作ってる香具師も馬鹿だとよくわかるスレ。
パールでサイトつくちゃったミクシとかゴミだよな。
本当に正しい動きするかより、エラー出ずに動けばおkレベルだろ? まあスクリプト言語じゃ大規模サイトは無理なのは事実。 >>111
Amazonやlivedoorは大規模とはいわんのかな。
校正するなら、
誤)まあスクリプト言語じゃ大規模サイトは無理なのは事実。
正)まあスクリプト言語「だけ」じゃ大規模サイトは無理なのは事実。
くらいか。だから適材適所と何回言えば(ry >Amazonやlivedoorは大規模とはいわんのかな。
DocomoのCiRCUS位でないと大規模とは言わないな…。 ユニットテストだけでバグが無くなると思ったら大間違い。
とコードコンプリートに書いてあったのの受け売り。 糞PGが一人でもまぎれこんでいればバグがある。
早く国家資格持ってない香具師はプログラム組めないようにしてしまえと思う。
トラフグ調理免許とかジャンボジェット運転許可証とかみたいに。 >>114
ものすごい亀だが、それってインフラじゃないのか? スクリプト言語に文句いってるレベルのやつはスクリプト言語でできないプロジェクトにはめぐりあえないだろうな、レベル低すぎて。 そらそうだ。単なる利用者だし。
低レベル層の開発関わってる人も上澄み扱うプロジェクトには関わりにくい訳で。 >>120
同感
動的型付けの「お気楽さ」が心地よいよ〜 すいません。。質問させてください。
webアプリ作成において、スクリプト言語が使われる理由って何ですか?
詳しく教えてください。。機械誤変換がなく、比較的簡単に作成出来るって
ことまでしかしらないので。。よろしくお願いします。 ・Web だと、通常あまり厳しい性能を求められない
・文字列処理が多い
・仕様変更が多い
ぐらいかな。 nobodyさん>
Web だと、通常あまり厳しい性能を求められない っていうのは、たいしたアプリは
作れないってことですか??大規模な、システムはやはりJavaですか。
・文字列処理が多い
・仕様変更が多い
っていうのはつまり??初心者ですいません。。 ソフトウェア開発には、しばしば交わっているがたいていは分かれている、
5つの世界がある。
その5つとは:
1.パッケージ
2.インターナル
3.組み込み
4.ゲーム
5.使い捨て
スクリプト言語の得意分野は、5. しょっちゅうバグまみれでシステム落ちても文句言えない用途でしか使えないしなあ。
セキュリティ上もスクリプト言語は改変し易いので不利。 すげぇな。まだ動的言語にあれこれ文句言ってる奴居るのかwww
_
r-、' ´ `ヽr-、
ィ7 /l: ハヽハ トヾ 駄スレを隠すことは、この俺が許さん!
'|l |'´_` ´_ `| || 信念に基づいて行動する。
| |´ヒ} ヒ}`! l| それを人は正義と言う。
__ノ゙). 从 l, _'_. |从 今俺が行ってることは、上げ荒らしではない。
,_'(_ ノ_ヽ ヾl.> - ,イ;リ 正義という名の粛清だぁ!
{ f:テ} {'f:テ}',/\ヽ--//ヽ
ヽ,r─‐ 、ィ .、、 i l>Y<! i '、 バーニング!
/ iゝ_ノ iヽ /l |l l ',
lンヽ/ムノじ 転職時の注意事項。
下記の条件が全て当てはまる会社にご注意下さい。
・IT系 in Tokyo
・転職会議で2.5点
・転職会議の「その他>2ch情報」の欄で過去の労基2chスレが表示される 誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
0ZCR1RPKZW