Unix/Linux環境でコマンドラインツールを作る最適な言語はPHPである
反論あるかね?
コマンドラインツールを作る最適な言語はPHP
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2013/09/25(水) 13:19:25.832013/09/25(水) 13:56:04.32
Perl/Python/Rubyに負けてると思うが
2013/09/25(水) 14:02:45.32
そもそも「コマンドラインツールを作る言語」って考え方の時点で
PerlやRubyとはどうあがいても同列になれないと思う
Perlもそれの後釜になろうとしたRubyも、言語自体がコマンドラインツールだもの
AWKとかの考え方が根底にあって「作る」んでなくて「使う」って考え方だからな
PerlやRubyとはどうあがいても同列になれないと思う
Perlもそれの後釜になろうとしたRubyも、言語自体がコマンドラインツールだもの
AWKとかの考え方が根底にあって「作る」んでなくて「使う」って考え方だからな
2013/09/25(水) 14:07:53.67
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
京都大学霊長類研究所
言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
京都大学霊長類研究所
5デフォルトの名無しさん
2013/09/25(水) 16:52:42.41 ・コマンドラインツールでもWebIFにしようと思ったときに対応しやすい、最近は何でもかんでもWebIFで扱うのがトレンドだから必須事項
→時代遅れでトレンド無視した自己満足オナニーコードを書きたい場合はPerlで十分、但し時代遅れはエンジニアとして致命的
・そしてWebIFにしたときPerlと違って爆速
→Perlなんかお話にならない、ベンチはいくらでも出てくるからテメーで調べろ
・正規表現に頼らず用意された関数で書くことが多いから、後で読んだときに分かりやすく可読性、保守生に優れている
→機能拡張やリファクタリングを全くする気がなければPerlでも可、但しリファクタリングする気がないのはエンジニアにとして致命的
・素人集団CPANからのライブラリではなく公式がサポートしているライブラリを利用できるため、ライブラリにバグがあっても一個人の素人より修正される可能性が高い
→バグの顕在化と共に自分のツールが使えなくなってもよい場合はPerlでも可、でも使えなくなってもよいツールをわざわざ作る価値は(ry
・セキュリティホールの発生を抑える変数の厳密な比較===ができる
→Perlは、$文字列==$数値とやれば強制的に数値比較、$文字列eq$数値で強制的に文字列比較されてしまう史上最悪の欠陥言語、もちろんPerlに===なんかない
・インストール時にオプション一つでDBとの連携が可能
→わざわざDBIやDBDをインストールする必要なし、何らかの理由でOSからインストールしてシステムを再構築する場合も楽
・標準でswitchが使える
→地味にでかい
・利用者が多いからドキュメントも豊富
→特に自助努力が必要なIT分野においてはドキュメントがある意味生命線、いかなるツールであってもドキュメントを一切見ずに白紙からコーディングできるなら不要でしょうね
→時代遅れでトレンド無視した自己満足オナニーコードを書きたい場合はPerlで十分、但し時代遅れはエンジニアとして致命的
・そしてWebIFにしたときPerlと違って爆速
→Perlなんかお話にならない、ベンチはいくらでも出てくるからテメーで調べろ
・正規表現に頼らず用意された関数で書くことが多いから、後で読んだときに分かりやすく可読性、保守生に優れている
→機能拡張やリファクタリングを全くする気がなければPerlでも可、但しリファクタリングする気がないのはエンジニアにとして致命的
・素人集団CPANからのライブラリではなく公式がサポートしているライブラリを利用できるため、ライブラリにバグがあっても一個人の素人より修正される可能性が高い
→バグの顕在化と共に自分のツールが使えなくなってもよい場合はPerlでも可、でも使えなくなってもよいツールをわざわざ作る価値は(ry
・セキュリティホールの発生を抑える変数の厳密な比較===ができる
→Perlは、$文字列==$数値とやれば強制的に数値比較、$文字列eq$数値で強制的に文字列比較されてしまう史上最悪の欠陥言語、もちろんPerlに===なんかない
・インストール時にオプション一つでDBとの連携が可能
→わざわざDBIやDBDをインストールする必要なし、何らかの理由でOSからインストールしてシステムを再構築する場合も楽
・標準でswitchが使える
→地味にでかい
・利用者が多いからドキュメントも豊富
→特に自助努力が必要なIT分野においてはドキュメントがある意味生命線、いかなるツールであってもドキュメントを一切見ずに白紙からコーディングできるなら不要でしょうね
2013/09/25(水) 17:03:36.87
>>5
・いろんなものがfalseだったりするせいで、新たな比較演算子「===」が必要
・hashやlistがobjectが区別できない
・オブジェクト指向機能が壊れている
・lambda(無名関数)がない。create_functionはlambdaじゃない
・short_open_tagsやらsafe_modeやらregister_globalsがonになってるかもしれない
・一貫性のない名前(str_replace,strlen,parse_strとか)
・引数の順番がわかりにくい(in_arrayとかstrposとか)
・strpos('abcd','a')は0を返すが、0は偽である
・PHPで書かれたたくさんのアプリがあるがどれもHTMLとロジックが分離されてない(本当?)
・「PHPは初心者に学びやすい」と言われる。確かにそうかもしれないが、 おかげでどれだけのSQLインジェクションやらXSS脆弱性やら、 ひどいコードが放置されていることか
・グローバル。使うんじゃないってば。
・いろんなものがfalseだったりするせいで、新たな比較演算子「===」が必要
・hashやlistがobjectが区別できない
・オブジェクト指向機能が壊れている
・lambda(無名関数)がない。create_functionはlambdaじゃない
・short_open_tagsやらsafe_modeやらregister_globalsがonになってるかもしれない
・一貫性のない名前(str_replace,strlen,parse_strとか)
・引数の順番がわかりにくい(in_arrayとかstrposとか)
・strpos('abcd','a')は0を返すが、0は偽である
・PHPで書かれたたくさんのアプリがあるがどれもHTMLとロジックが分離されてない(本当?)
・「PHPは初心者に学びやすい」と言われる。確かにそうかもしれないが、 おかげでどれだけのSQLインジェクションやらXSS脆弱性やら、 ひどいコードが放置されていることか
・グローバル。使うんじゃないってば。
7デフォルトの名無しさん
2013/09/25(水) 17:17:30.92 PHPはmod_perlより遅いだろ
2013/09/25(水) 17:19:31.26
PEARとかもう死んで
2013/09/25(水) 18:21:32.03
shで書け。原理主義以外は認めない。
2013/09/26(木) 05:10:35.25
2013/09/26(木) 08:59:10.59
出力の最初にContent-Type: text/htmlって付くだろ
2013/09/26(木) 09:10:04.49
2013/09/26(木) 14:46:52.04
PHPはweb専用のスモールスタートから攻めて汎用言語の座に着く
ガベコレ付きc++と考えれば書き味は良いし学習コストも低い
ガベコレ付きc++と考えれば書き味は良いし学習コストも低い
2013/09/26(木) 15:56:11.41
php.ini
2013/09/26(木) 20:50:10.96
2013/10/06(日) 16:21:54.64
linux限定ならphpでもいいと思う
windowsだとphpは圧倒的に力不足
windowsだとphpは圧倒的に力不足
17デフォルトの名無しさん
2013/10/06(日) 21:05:19.41 作れるの?
18デフォルトの名無しさん
2013/10/07(月) 23:35:42.27 >>6
ラムダ作れるし
ラムダ作れるし
19デフォルトの名無しさん
2013/10/08(火) 00:47:32.81 ほんとにコマンドラインでつかえるの?
20デフォルトの名無しさん
2013/10/08(火) 01:44:56.76 linuxの何らかのディストロの
標準で入ってるツールの中に、
phpで書かれたコマンドラインツールは何かありますか?
標準で入ってるツールの中に、
phpで書かれたコマンドラインツールは何かありますか?
2013/10/08(火) 05:22:22.37
>>19
使えなくはないが、PHPを使っていちいち「コマンドラインツールを作る」くらいなら
sh/grep/sed/AWK/Perl/Python/Ruby辺りを「コマンドラインツールとして使う」ほうが早いかと
強いて言えば、その「コマンドラインツール」とやらの入力がtxtではなくて、出力がhtmlとかなら、まあ無くはないのか
使えなくはないが、PHPを使っていちいち「コマンドラインツールを作る」くらいなら
sh/grep/sed/AWK/Perl/Python/Ruby辺りを「コマンドラインツールとして使う」ほうが早いかと
強いて言えば、その「コマンドラインツール」とやらの入力がtxtではなくて、出力がhtmlとかなら、まあ無くはないのか
2013/10/11(金) 00:13:47.41
おもちゃ言語だから、大事なところでは使えないよ
2013/10/28(月) 01:16:07.89
大事なところって個人情報やパスワードをとり扱うようなとこで使われてるわけで
おまえのエロデータ鑑賞には使えないかもな
おまえのエロデータ鑑賞には使えないかもな
2013/10/28(月) 01:18:13.49
コマンドラインツールというと微妙だが
ワンライナーはけっこう引っかかる
perl ruby pythonよりPHPのほうが得意ならありなんじゃね
ワンライナーはけっこう引っかかる
perl ruby pythonよりPHPのほうが得意ならありなんじゃね
25デフォルトの名無しさん
2013/10/28(月) 01:38:59.00 >>24
ワンライナーPHP(爆笑)
ワンライナーPHP(爆笑)
2013/11/01(金) 16:26:18.24
>>6
他は知らんが、無名関数は作れるようになったから、そこ消しといた方がいいよ
他は知らんが、無名関数は作れるようになったから、そこ消しといた方がいいよ
2013/11/01(金) 20:37:34.55
>>6のうち言語の問題で現状での問題なのってこの3個だけ
・いろんなものがfalseだったりするせいで、新たな比較演算子「===」が必要
・一貫性のない名前(str_replace,strlen,parse_strとか)
・引数の順番がわかりにくい(in_arrayとかstrposとか)
・いろんなものがfalseだったりするせいで、新たな比較演算子「===」が必要
・一貫性のない名前(str_replace,strlen,parse_strとか)
・引数の順番がわかりにくい(in_arrayとかstrposとか)
2013/11/01(金) 20:55:20.35
金輪際直りそうにない問題点が沢山
2013/11/01(金) 21:51:21.49
>>28
具体的に詳しく
具体的に詳しく
2013/11/01(金) 23:28:44.79
>>29
馬鹿か
馬鹿か
2013/11/03(日) 18:58:40.87
2013/11/16(土) 21:02:38.13
python > lua > tcl > node.js >>> PHP
2013/11/19(火) 12:08:59.74
node.jsでコマンドライン、async列挙面倒くさい
2013/12/25(水) 17:23:24.19
35デフォルトの名無しさん
2014/01/26(日) 20:33:42.09 >>1の言うとおり
2014/01/26(日) 20:37:36.64
>>32
Python は型チェックが厳しいから面倒だろうに
Python は型チェックが厳しいから面倒だろうに
2014/01/26(日) 20:54:57.86
>>31
なんでこの人晒されてるの?
なんでこの人晒されてるの?
38デフォルトの名無しさん
2014/11/06(木) 20:50:21.11ID:iaZsweTc 最適かどうかは別にして
、趣味でも業務でもPHPで十分
。
、趣味でも業務でもPHPで十分
。
39デフォルトの名無しさん
2015/10/07(水) 08:08:50.74ID:qdqRCjiZ 受ける会社大丈夫?
下記の条件が全て当てはまる会社にご注意下さい。
・IT系 in tokyo
・「社名 労基」でググると過去の2chスレが出てくる
・転職会議で2.5点
下記の条件が全て当てはまる会社にご注意下さい。
・IT系 in tokyo
・「社名 労基」でググると過去の2chスレが出てくる
・転職会議で2.5点
2016/01/22(金) 13:36:08.06ID:2bHUgYLl
PHP求人
http://goo.gl/uXrvAk
http://goo.gl/uXrvAk
41デフォルトの名無しさん
2016/03/17(木) 22:11:35.82ID:oXEdL/X4 node.jsはコマンドライン入力/出力に絶望的に向いてないからphpのがまだマシ
42デフォルトの名無しさん
2016/03/17(木) 22:12:00.68ID:oXEdL/X4 いや出力は別にいいか
43デフォルトの名無しさん
2016/03/25(金) 19:20:55.67ID:xml89apw インタプリタだからな。
インタプリタの利点はサーバーでOSやCPUが違ってもそれをインタプリタが吸収する利点がある。
が、クライアントのコマンドラインツールとなると、ネイティブバイナリに越したことはないだろう。
PHPで、lsコマンドとか、catコマンドを作り直しも、それをPHP版にわざわざ置き換える人は皆無だと思う。
PHPでは速度が遅いとか、メモリを多く食うとか欠点があるからだ。
CGIに特化した機能もコマンドラインツールでは全く役にたたない。
他のコマンドラインツールのようにC言語で作ればいいんじゃないだろうか。
マルチプラットフォームを考えて敢えてPHPと言うのは自由だけど、それならJavaでもいいわけだし。
もちろん、PHPで間に合うことはPHPで作って何も問題ないよ。
だが、PHPでなければならない理由が特にないような感じだね。
逆に聞きたいのは他の言語ではどんな問題が出ると言いたいのだろうか。
取りあえず、lsコマンドとかcatコマンドなどの各種コマンドをPHPに書き直した新しいPHP/Linuxディストリ作れば?
PHPのほうがいいんなら普及するんじゃない?
PHP自体もPHPで作り直せば?
インタプリタの利点はサーバーでOSやCPUが違ってもそれをインタプリタが吸収する利点がある。
が、クライアントのコマンドラインツールとなると、ネイティブバイナリに越したことはないだろう。
PHPで、lsコマンドとか、catコマンドを作り直しも、それをPHP版にわざわざ置き換える人は皆無だと思う。
PHPでは速度が遅いとか、メモリを多く食うとか欠点があるからだ。
CGIに特化した機能もコマンドラインツールでは全く役にたたない。
他のコマンドラインツールのようにC言語で作ればいいんじゃないだろうか。
マルチプラットフォームを考えて敢えてPHPと言うのは自由だけど、それならJavaでもいいわけだし。
もちろん、PHPで間に合うことはPHPで作って何も問題ないよ。
だが、PHPでなければならない理由が特にないような感じだね。
逆に聞きたいのは他の言語ではどんな問題が出ると言いたいのだろうか。
取りあえず、lsコマンドとかcatコマンドなどの各種コマンドをPHPに書き直した新しいPHP/Linuxディストリ作れば?
PHPのほうがいいんなら普及するんじゃない?
PHP自体もPHPで作り直せば?
44デフォルトの名無しさん
2016/11/11(金) 15:07:33.84ID:MKI+B8jM インタプリタっていつの時代?
PHP3の頃ってそうだった気がするけど・・
メモリ管理は、PHP5.4頃から大きく改善されてきてる感じあるな
Java VMの良いところ取ろうと頑張ってる感じ?
PHP3の頃ってそうだった気がするけど・・
メモリ管理は、PHP5.4頃から大きく改善されてきてる感じあるな
Java VMの良いところ取ろうと頑張ってる感じ?
45デフォルトの名無しさん
2016/11/12(土) 05:51:37.47ID:AIIVEMvc >>43
xml
xml
46デフォルトの名無しさん
2018/05/23(水) 23:12:56.11ID:Au5e7VGg 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
LCFSZ
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
LCFSZ
47デフォルトの名無しさん
2018/07/04(水) 22:56:41.57ID:gFgZc5FG BDX
2018/11/10(土) 10:17:31.40ID:8DB77EXV
PHPのいいところ↓
・習得が簡単。Cより断然簡単。短期間で誰でも実務レベルの能力になれる
・日本語オンラインヘルプが充実している
・開発が楽ちん
・コードの可読性が良い
phpで速度が気になるようなケースってほとんどないと思うけど、万一あるなら、それは開発言語を見直すのではなくシステムのアーキテクチャやプログラムの基本設計を見直した方が適切な解決策になることが多そう。
・習得が簡単。Cより断然簡単。短期間で誰でも実務レベルの能力になれる
・日本語オンラインヘルプが充実している
・開発が楽ちん
・コードの可読性が良い
phpで速度が気になるようなケースってほとんどないと思うけど、万一あるなら、それは開発言語を見直すのではなくシステムのアーキテクチャやプログラムの基本設計を見直した方が適切な解決策になることが多そう。
2018/11/15(木) 11:27:04.87ID:xKMfueoR
WindowsだとJScriptが便利
50デフォルトの名無しさん
2019/05/09(木) 01:11:10.99ID:RU31sPhL2019/05/25(土) 20:29:13.00ID:3c9sJ6MS
やっぱRubyだろ
2020/03/11(水) 02:22:19.51ID:Ug5h6KKA
自分はPCにcygwinとcygtermをインストールしてUNIX環境を作り
UNIX-CとCシェルでコマンドラインツールを作成している。
n進法で指定したデータをm進法に変換するツール(C)とか
指定した日付のn日後の日付を出力するツール(Cシェル)等。
UNIX-CとCシェルでコマンドラインツールを作成している。
n進法で指定したデータをm進法に変換するツール(C)とか
指定した日付のn日後の日付を出力するツール(Cシェル)等。
2021/08/10(火) 23:16:13.81ID:fPg8NGNP
もうBashで良いんじゃ...(脳死)
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性に共通点が★4 [Hitzeschleier★]
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 自民・麻生太郎副総裁 石破政権の1年は「どよーん」 高市政権発足で「何となく明るくなった」「世の中のことが決まり動いている」★2 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- ゆたぼん 二重手術を報告「めちゃくちゃ気に入っています」 [muffin★]
- ネトウヨ、「高市さんがカンペを無視して存立危機発言をしたのは、岡田に『カンペ読むな』と執拗に言われたので言っただけ」と歴史を捏造 [314039747]
- コウメ太夫のネタ考えたから評価してくれ
- トランプ、G7に代わるcore 5を発表 [805596214]
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
- 敵「ククク、キミの親友の俺くんの死体を蘇らせて操り、お前らと戦わせるぞ」お前ら「」←どうする?
- 【悲報】日本共産党、ツイッター速報にブチギレ法的措置WWWWWWWWWWWWWWWWWWWWWWWWWWWW [935793931]
