なんでもC言語で開発する奴アンチスレ
リーダーの命令でC#、C++、Python、Java、Javascript、Kotlin等、OOPパラダイムを取り込んだ言語及びフレームワークを使った開発を封印して苦労しながら開発している人達のためのアンチスレです STLはC++の標準といって差し支えないんじゃね?
単に組み込みの世界では、制約が厳しい環境でC++のサブセットしか対応してない環境があるというだけの話だろう。使えないのはSTLだけに限らず環境によって様々だろう。STLだけを取りあげてどうこういうのはくだらない。 STLはC++の標準という認識自体はまだいいけど、
STLの機能を指して「これがC++だ」みたいな言いぐさなもんだから・・・ >>87
誰もSTLだけがC++言語そのものなんて言ってない。いちいちツッコミを入れることに疑問を感じているだけ。 >>85
いまC++勉強中なんだけど規格が分かれてるってだけで、自分で適切なの選べってことだよね?
最初バージョンなのかな?って混乱してたし、いまもよくわからない
自分が書いてるの、たぶん14と17が混ざってるような、、、
話の流れの中で質問すまぬ >>5では、誰もSTLなんて一言も言ってないのにいきなりSTLの話をしだす
>>37でも、まるでSTLはC++言語の機能の一部ではないみたいな反応を唐突にしている
>>51あたりでSTLツッコミに対するツッコミが入り
>>67から本格的に指摘する人が登場
どうせ誰が何を書いたか解りにくいところなんだし、言い訳なんてしないで誤解を改めシレッと名無しとして現れればいいのに。
2ch/5chのメリットじゃないか。 >>90
こういうのをうっかり雇うのを防ぐためだよ。 >>89
> >>85
> いまC++勉強中なんだけど規格が分かれてるってだけで、自分で適切なの選べってことだよね?
まぁ、選べるのならその通りだが、基本的に最新の規格を適用するでいいと思う。
ただ、組み込みだと選べない場合も多い。
マイコンベンダーが提供するコンパイラマニュアルをよく読んで規格を認識するしかない。
しかも、JavaとかRubyと違って割といい加減なところがあるケースもあるから注意。最悪、規格すら書かれていないマニュアルもある。Renesas純正RXマイコンコンパイラマニュアルは読んでもC++のどのバージョンが使えるのかよくわからなかった。C言語だとC89とかC99って明記されているのに不思議。まぁ、色々な機能を除外してどの規格を名乗るのも違和感しかなかったのかもしれないけど。
開発環境がはっきりしない以上、なんとも言えないかな。 なんにしても、Cの世界はこういうジジーがノサばってんだから、
面接でC++を使ってるって時点で、素直に降りておけ。
ジジーだって始めからそのつもりでCって単語を口にしてるんだ。
それで誰も人が来なくなったって、ジジーの責任なんだから、
お前らの知ったこっちゃねーだろうが。 >>93
ありがと、とりあえず開発環境次第ってことね
まぁどの言語やっててもそういうもんだよな
いまの環境深掘りしてみます 理系の大学ってだいたいC学ぶよね
そこを一括りにジジイとか言ってるなら笑うしかない 今は言語仕様が小さい実用言語だってことでCコンパイラ(のサブセット)書くのが一部で流行ってたりするよね
推奨されている環境以外で実用しようとしなければどんな言語でもいい言語よ まぁ、話をスレタイレベルに戻すけど...
「何でもC言語で開発する奴アンチスレ」であって、「C言語を学ぶ奴アンチスレ」じゃないから別に学生を見下したりはしないさ。
ただ、上記の内容とは無関係だと思って聞いてほしいのだが...
大学の教員も正直、ソフトウェア工学のレベルは低いなとは思う。
最初は未発達な分野からスタートする訳だから仕方ないけど...数学や物理は教授として誇れるレベルなのに、肝心なソフトウェア工学(良いソフトウェアを作る方法)を理解している教員は少ないと思う。
まぁ、それでも未経験だった俺にとっては教員は有り難い存在だったけどな。 そもそも、その「何でもC言語で開発する奴」なんているのかねぇ?
組み込みやってる会社とかの話かな? 高学歴は文系だろうとCやってるやつ多いから僻みなんじゃね?
ロジック、フロー、仕組みを叶えられるなら言語なんてなんだっていい
処理速度を速くしたい場合にCやC++が生きるってだけ
処理速度が遅くてもPythonで仕様達成できたなら最適解はPythonだよ いるよ。
C言語でサーバーサイドを実装している人がいた。
node.jsのソースを外注に作らせ、そこからC言語のdllを呼ぶというプログラムを俺は見てしまった。 そうなると、そのDLLでなんの処理してるのかが気になるな。
特殊なハードとのアクセスとかならわかるけど、やってる処理が
iostreamとかだったりしようもんなら・・・ 大学の教授のプログラムに何を求めてるんだろ
UIの美しさ?見やすいコードの書き方?
それでいい論文書けるならみんなやってると思うけど
膨大な計算を速くできることが求められる分野だからCやC++でいいんだよ
適材適所 見やすいコードの書き方は誰が心掛けてもいいもんだろうとは思うけどね
変数名は業界で分かればいいけど、どう言う処理してるのかはコメント書いたり、関数に切り分けたりくらいはするべきかな?
大学行った事ないから実情がわからないけど…… 俺「おお!!node.js触れる人、この会社にいたんですか(感動)」
俺「コードも(この会社の社員とは思えないくらい)まともだ...。しかもテストコードが書いてある(感激)」
俺「その人と一緒に開発したい...!一体、どなたですか!?」
上司「外注だよー」
俺「あっ、そうですか」
俺「ん!?外注ッ!?...てことは...」
俺「ああ...よく見るとなんかdllがある...」
俺「あぁ...そして、これ、C言語で俺の会社の社員が実装してる...また、不具合の電話の嵐が来るのか...」
こんな感じの日常です。
なんでdllだって?C言語しか触れないからだよ(本人談)
こんな会社、辞めてやる...! 大学のプログラムは手段であって、重要なのはその出力、計算結果
電卓でも算出できて、その方が早いなら電卓を使います 普段のプログラムだって手段だろ!
それを後輩やら論文読むやつやらが読んだりするんだから
この前30個くらい引数ある関数がある論文があるって嘆いてたやついたぞ 大学の研究室のコードが見やすく書かれていたら
情報漏洩ガバガバなんだろうなって思う
面倒臭いだけで漏れていいコードなら綺麗に書いてるかも知れないけど
他人に読まれたくないなら自分だけがわかるように作るよね プログラムを作品にするのか、プログラムを道具にするのか
立場の違い、思想の違い 大学教授「コードは綺麗にわかりやすく書け!」
とか言いながら微分積分の式を丸投げしてきたらブラック教授言われるやん 大学でC?
てことは、思っている以上に
上記のような篩が使われてるってことかな? このスレの反応を見ていると「スレタイの存在に疑問を感じる人」と「スレタイが刺さる人」と「スレタイ通り苦しめられていることを自覚している人」がいるって感じだな。
言い換えると「大海の魚」「井の中の蛙」「大海を知った井の中の蛙」ってところか。 なんでもPythonで、なんでもC♯で、なんでもKotlinで、なんでもJavaで、なんでもswiftで
何が違うん? >>116
良い質問だな
117じゃないけど...オブジェクト指向に特化した機能がある・無いが致命的なレベルで違う。
仕事中なので一旦退却。 >>59
主流はアセンブリ言語だぞ
あとCPUなんて言うな、正しくMPUと言え >>116
一言で言えば他言語はライブラリが充実しているけど、C言語はライブラリが充実していないから工数が段違い。
ライブラリが充実しているってことは、自分で実装しないといけない部分が減るから、工数が大幅に減る。 >>116
一緒に旅に出るなら、どこでも徒歩で行く人とどこでも電車で行く人どっちがいいかな?
どこでも電車で行く人ってことは一切車両から出られないってことだ。
そんな人はまずいないから心配しなくていい。
ところがどこでも徒歩で行く人は存在しうる。
困ったことだろ?
そこが決定的な違いなのだよ。
わかったかな? まぁ、その極端な例えが大体合ってるから、こんなスレが出来たのだろうけど...スレタイの刺さる人からすればピンと来ないのだろう。 C言語のライブラリが充実してないってどこの世界の話だ?
少なくともWEBに関しては充実してるぞ
そもそも少し前までWEBはC言語で書いてただろ >>125
他の言語使ったらCに戻りたく無いっての分からないなら黙ってろw >>125
WebでC言語...?
>>105の上司かな? C言語はまともにUTF-8な文字列を扱えない時点でつらい 歴史の長いC言語のライブラリが他言語と比べて充実しないのは、ライブラリを作るための機能が乏しいから。
理由もなく充実しない訳ではないのだよ。
それ以前に文法的に上位互換のC++があるのにCを選択する理由がない。 >>131
ちがうから、
率先してライブラリ作る役割が居ないから
みんなバラバラにライブラリ作って統一出来なくて
それ以上の便利なライブラリが育たないんだよな
既に利害関係絡んで必ず囲い込みがあって横一列に統一出来ないんだよ あんまり高性能なシステム向けにフレームワーク作られて統一されても困る >>132
> >>131
> ちがうから、
ちがいません。
> 率先してライブラリ作る役割が居ないから
役割とは?
> みんなバラバラにライブラリ作って統一出来なくて
それを解決するのが131の言う機能では?JavaやRubyやC#、Python、JS等の他言語にあってC言語に無いあれら機能のことですよ。
> それ以上の便利なライブラリが育たないんだよな
> 既に利害関係絡んで必ず囲い込みがあって横一列に統一出来ないんだよ
利害関係が絡むのはC言語の記述では、一度に複数の問題を扱わざるを得ないからでしょうに。 VisualStudioが独自路線過ぎてMFCとか腐ってるライブラリを我が物顔でねじ込んで、unix界隈と断絶を決定的な物にしたからなぁ ふーん
ならVisualStudioそのものが独自路線過ぎてC言語全体を引っ掻き回したからだろ? 今時MFCを使う人は保守以外でいないだろうけど、Win32APIをC言語で直接触るよりはマシだったぞ。
お前の実力の低さをMFCのせいにするなや。 Microsoftが勝手にMS-DOS向けのC言語を独自拡張したからC言語のライブラリがunix界隈とかけ離れてしまって、ライブラリがバラバラのまま今に至るのさ、それが普通だと思ったマイコンメーカーが次々に自分勝手な仕様の微妙に事なるライブラリを乱発したのも一因だよな >>140
ライブラリの統一性の無さは俺の実力関係ないからw まあ、インターネットが普及する前で世界中のコンピュータコミュニティが閉じた世界で独自発展してしまった時代の言語だから仕方ないって感じ
いまならGitHubにある便利ライブラリが標準ライブラリになる時代だからむしろ勝手に統一されて行くしな まぁ、独自拡張をしないと駄目だったからこそ、他言語が生まれたってのはあると思うよ。 クラスで扱うよりハンドルで何とかする方が楽しいし直観的 個人的にC言語でWebってのが興味あるのだが、C言語でWeb開発ってできるの?
SocketからHTTP通信を自力で実装するところから始める風景しか思い浮かばないのだが...。 >>148
CGI
2ch/5chも例の騒動のときにC言語で書き直したはず よっぽど特殊なアルゴリズムだったり、ハードウェアドライバーだったりしない限り
最近はないだろ。 Cはライブラリがロクに無いということのようだが、
無いのはまとまりなんだよ。
みんな勝手にオレオレライブラリを作りまくってカオスな状態。
そりゃあ素人には無理だよ。 自分で作る方がかゆいとこに手が届く
ライブラリとか縛りプレイだろ そりゃ、まとめるための仕組みが無いのだから纏らんよ。 そうだな、だからまあ素人には無理ってことで、それは仕方がない。
だからこそ、上を目指すためには、そのカオスを克服しないといけない。 >>156
そうだな・・・
やはり自分でライブラリを作ってみるのがいいのだろう。
アルゴリズムの勉強なんてのをやって、こういうライブラリなら
自分ならこう作るだろう、みたいなイメージができれば、
他人様が作ったオレオレライブラリの考え方みたいなのも、
少しは理解できるようになるさ。 そう、まずは++じゃないCで、だな。
前にも言ったようにSTL使わない縛りってのを実践するんだ。 いつまでもC言語に頼ってたら永遠に実力が身につかないゾ Cもできるってだけ
Cしかできないとなぜ思った?
おまえ、モダンな1言語だけを極めようとしてるだろ いいえ?お前がそうしようとしているように聞こえただけだ。 ライブラリ開発の基礎を身につけるのなら、クラスくらいは使いこなしましょうよ...。 そう、だから「まずは」と言っている。
クラスを使いこなすためにこそ、++じゃないCでの作り方を
理解していかないといけない。
引数に構造体のポインタを与える「xxx_init」とかいう関数を。 元々、C言語でライブラリを充実させるのは無理があるって話をしてたら何かC言語から学ばべきだみたいな話題に逸れていったんだが...何が言いたいんだお前 何が言いたいんだって?
まあ最初から言ってるように、Cってのは
能無しをうっかり雇うのを防ぐために必要なんだ。
仕事で使おうが使うまいが、技術力を高めるために必須だからね。 Windowsのドライバ開発してるけどカーネルモード側はC++使えないからストレス貯まるね インタフェースや抽象クラスが使えないと、抽象化度合いの調整が上手くいかないんだよな...。
このレベルでは「USBメモリ」とか、「SDカード」という具体的なストレージではなく、「ストレージ」を扱いたいのに、なんで具体的な記述をしなければならないんだ!!みたいな。
WebAPIの開発をしているとDevelopment Experience(開発体験)という言葉をよく聞くけど... それに通じるような話だな。 ンじゃあ何でも統一的抽象的に扱えるようなライブラリを書けばいいんじゃね >>152
世界初の大規模C言語統一ライブラリがpythonだからすげーはやってんじゃん 世界ではな。
日本ではパイと言う音が憚られるから難しい。 論点がはっきりしないな。
まず乳房を女性器と見做すかどうか明確にしよう。 マクロ使えばなんでもできるって結論に到達したのがlinux お前らカーニハンリッチーと石田先生の命日には、読経しろよ。 >>180
初版2冊持ってる、家宝にしてる。
35年飯食えて、あと10年は行けそう。
全て独学で今まで来たが、石田晴久先生には会った事も無いが感謝してる。 >>177
いやだからそういう話が憚られると言ってるのだが カーネルの話が出てきて思い出したが、Linuxのリーナスがこのスレを見たらどんなリアクションをするのだろう。
LinuxカーネルをRustに置き変える話とか出ているけど、どのような経緯で頑なにC言語に拘っていた(C++は全否定)リーナスがC言語以外の選択肢も検討するようになったのか気になる。