Qiita 4 - キータぞ、来たぞ、キータだぞー

■ このスレッドは過去ログ倉庫に格納されています
2024/01/17(水) 19:20:36.09ID:VohMlHbO
Hello hackers !
Qiitaは、エンジニアリングに関する知識を記録・共有するためのサービスです。
コードを書いていて気づいたことや、自分がハマったあの仕様について、
他のエンジニアと知見を共有しましょう ;)

https://qiita.com/

Qiita(キータ)は、Incrementsが運営するプログラミング情報のナレッジコミュニティ。
2016年現在で日本最大のプログラマーコミュニティとされている[1]。

https://internet.watch.impress.co.jp/docs/news/1025972.html

前スレ Qiita
https://mevius.5ch.net/test/read.cgi/tech/1542357242/
Qiita 2 - キータぞ、来たぞ、キータだぞー
https://mevius.5ch.net/test/read.cgi/tech/1658762410/
Qiita 3 - キータぞ、来たぞ、キータだぞー
https://mevius.5ch.net/test/read.cgi/tech/1685235361/
2024/04/05(金) 14:29:35.27ID:2MlUL2HB
>>614
香ばしい人物なので他の記事も見てみた。

【終了コード9】ABC079 B - Lucas Number のTLE問題(C++, 配列と再帰関数の処理速度の違い)
https://qiita.com/yaburen/items/c8e7b0c1c581db441e34

> 色々調べた結果、再帰関数はループよりは早いものの、配列に1つずつ要素をメモしておく処理よりは数倍遅いことがわかりました。

> 再帰が深くなればなるほどスタックに多数のフレームが重なり、スタックオーバーヘッドが起こるリスクも高くなります。

「再帰関数はループよりは早い」
「スタックオーバーヘッド」

CSのごく初歩的なところすっとばして42tokyo逝って糞コーダ目指してるとしか思えんのだけど、東大出てこれってひたすら残念な気持ちになるわあ。
2024/04/05(金) 16:40:21.55ID:HTgg0oMm
>>645
> 東大出てこれって

阪大→東大院 だそうなので
https://twitter.com/yaburen_AI
東大出てはなさげ
https://twitter.com/thejimwatkins
2024/04/05(金) 18:42:48.00ID:GyR7nHTb
>>644
他人に読んでもらう用に公開してる文章で「年収2000万安定ルートを捨てて」とか「堅く数千万円の給与を目指すルートもあった。」とか書いちゃうの異常な人間性だと思う。
つかコイツまだ就職もしてないんだろw
2024/04/05(金) 21:37:32.84ID:+zodJt5u
https://qiita.com/yaburen/items/511fc11028efbac38648#comment-f20b71ed9b5a7645ed9d
> コンパイル確認等はされてますか?

記事の中で int strlen(char*) という関数定義してるのに
同じ記事の to_deci() という関数の中で
str_len = strlen(str, base);
とかやってて引数の数違うよとか、
記事の中で char *strdup(char*)という関数定義してるのに
同じ記事の split() という関数の中で
tmp[i] = strdup(origin, str_len);
とかやってて引数の数違うよとか、

コンパイル確認してる感じではないな。
2024/04/05(金) 23:27:13.75ID:FbnDNwPx
基幹関数実装してみた〜とか言ってるけど、昔読んだ独習Cに載ってたコードと全く同じものが多いのが気になるな
実装してみたと言って良いものか
2024/04/06(土) 01:07:41.01ID:F5oL8bit
C言語のクソ記事率の高さは異常
2024/04/06(土) 02:26:41.43ID:3rTic3uQ
>>622
マルウェア界隈と最適化方面はアセンブラ知識あると良さそうだが

>>645
過去に見た例から再帰使う辺り、記憶力はいいが考えてねえよなあ

>>648
そもそもstrlenはsize_tでconst char*だしなあ
2024/04/06(土) 07:55:23.29ID:9zdw5iDS
>>649
最近は何かのコードを丸写しすることを「参考にして自分で実装した」というらしいぞ
そういう使い方をしてるやつばっか
2024/04/06(土) 12:23:39.86ID:eE1RJXdE
キータにアウトプット(笑)して勉強するって奴がいる一方で

ネットの二次情報じゃなくて正確なソースから情報を得て
自分で手元で実際にコンパイルしながら学習してるやつもいる

勉強の仕方の時点で差がつくのも可哀想だけど仕方がない
頭のいいやつと悪いやつは歩むコースも異なる
2024/04/06(土) 12:58:32.00ID:ofKqxsgm
アウトプットすること自体は効率の良い勉強方法だ
655デフォルトの名無しさん
垢版 |
2024/04/06(土) 13:40:30.85ID:igk81eVf
>>645
TLEになったという再帰版のコード、関数ft_lucasの型がintになってて引数Nの型がint64_tになってるけど

int ft_lucas(int64_t N)

問題の制約で引数Nの上限は86なのでint64_tにする必要ないし、答えは10**18より小さいということだからintじゃ足りないんだよなあ。
TLE以前にバグってるんだわ。よくこんなコード晒せるなあ。

つかこいつメモ化も知らんのな。

int64_t ft_lucas(int N)
{
  static int64_t memo[86 + 1] = {2, 1};
  if (memo[N] == 0) {
    memo[N] = ft_lucas(N - 1) + ft_lucas(N - 2);
  }
  return memo[N];
}
https://wandbox.org/permlink/gVDItXL2jf2PNsNd
2024/04/06(土) 13:51:57.78ID:BzNAvQ8M
アウトプットして親切で知識ある人に添削してもらえれば正しいコードの書き方を効率よく勉強できる可能性はあると思う。

コメントくれる人が正しい知識の持ち主である保証はないし、指摘内容が理解できないバカならせっかくのコメントも無駄だけど。
2024/04/06(土) 14:04:48.19ID:xIw1h5A4
問題: 以下のコードは適切な引数を与えても未定義動作となる箇所があります。修正しなさい。(10点)

int atoi(char *str)
{
  int i;
  int sign;
  long ans;

  i = 0;
  ans = 0;
  sign = 1;
  while ((str[i] >= 9 && str[i] <= 13) || str[i] == ' ')
    i++;
  if (str[i] == '-')
  {
    sign *= -1;
    i++;
  }
  while (str[i] >= '0' && str[i] <= '9')
  {
    ans *= 10;
    ans += str[i] - '0';
    i++;
  }
  return ((int)ans * sign);
}
2024/04/06(土) 14:10:49.09ID:xIw1h5A4
つか空白その他をスキップする処理の書き方酷いなw

  while ((str[i] >= 9 && str[i] <= 13) || str[i] == ' ')
    i++;

42Tokyoってこういう書き方身に付くのかw
大学院休学してこの人何やってんのwww
2024/04/06(土) 14:39:50.37ID:xe/vJ90Q
Cの学習は安全な書き方を修得するのが重要だけど42Tokyoは全然ダメだね
2024/04/06(土) 17:30:52.97ID:x5bdx74z
42tokyoって知らんけど、ただのプログラミングスクールじゃないの
2024/04/06(土) 18:07:25.41ID:sHmEuNwG
>>660
先生がいなくて生徒同士で教え合う仕組みのスクールらしいよ
2024/04/06(土) 18:13:27.17ID:7ZTU8Pf3
>>650
素人「なんか動きました」
玄人「その書き方ダメだろ」

Cはこういうパタンが他の言語に比べて多い希ガスるのでそう見えるの鴨。
2024/04/06(土) 18:29:13.66ID:RJWTfITU
>>660
本人が説明してるよ。

https://note.com/yabukin_coffee/n/nb7e36e3ea310
> 42tokyoって?
> そもそも42tokyoは一般的な就職支援プログラミングスクールとは異なり、相当前衛的な組織であり学校である。期限までに課題をクリアできなければドロップアウト、生徒同士で教え合い評価し合うピアラーニング、実用よりも基礎を大事にして、コンピュータが動く仕組みから学ぶ。さらに言うと、受講者に嬉しい授業料無料と、学び進めると無料で留学が可能な制度もある。海外の校舎では未経験からGAFAM就職者が出るなど前代未聞の成果も出している。

まあコイツが書いてるコード見る限りでは基礎なんて学べてる感じではないけども。
2024/04/06(土) 18:46:33.24ID:pr9L3oLU
大学卒業するまで野球に縁なかったのに「俺大谷みたいになるわ」つってキャッチボール始めた人よなあ。
世の中に沢山いる子供の頃からやってる人達に勝つつもりなのすごいな。
2024/04/06(土) 20:16:34.56ID:pfxs2czO
>生徒同士で教え合い評価し合う
まともなやつほど逃げるよなあこれ
良書や有名どころのソースコード読む会なんかならマシになりそうだが
2024/04/06(土) 21:06:52.57ID:6qxJobfs
件の人は自己肯定感高い人だと思うので

> 生徒同士で教え合い評価し合うピアラーニング

うまくいかないと思うわ。
にこるんのコメントも右から左に流してる感じだし他の生徒になんか言われたところであーはいはいみたいなもんだろう。
2024/04/06(土) 21:08:30.92ID:JRAQW2r9
ド素人がド素人に教えるんよ
曲解に曲解を重ねて
不正確さを高めていくんよ
素晴らしいじゃあないか
2024/04/06(土) 21:12:04.66ID:nTtfp8QJ
42Tokyoっ何か知らないのでその記事の関連記事リンクたどったら他の人だが

https://note.com/to_yeah/n/n4ba6f889e45e
2020年の10月に42Tokyoに入学し、2022年1月に基礎カリキュラムを終えました。
カリキュラムについて
印象的だったものをピックアップしました。
・libcの再実装(C)
・X WindowSystemをつかったゲーム(C)
・bashの再実装(C, 2人チーム)
・docker, docker-compose
・nginxライクなwebサーバーの実装(C++, 3人チーム)
・通信対戦可能なwebゲーム開発(TypeScript, 4人チーム)


カリキュラムそんな感じなのか
ミーハー軽薄プログラムとは逆方向で
基礎的な知識が必要なことをやるようだから
意外にまともそうなとこだな
2024/04/06(土) 21:14:14.00ID:wcEb2n90
生徒同士で教え合って正しいCの書き方にたどり着ける想定は楽天的すぎるよなあ。
昔のハッカー用語で言うところのWizardやGuruの存在は未経験者揃いのスクールに期待できるわけもないし。
2024/04/06(土) 21:18:33.43ID:JRAQW2r9
上の方でも指摘してる人いたけど

> 「再帰関数はループよりは早い」
> 「スタックオーバーヘッド」

これなw
失笑あるいは解散を意味する
これ以上話題にする価値が無い
2024/04/06(土) 21:23:04.66ID:nTtfp8QJ
>>667
>>669
入学試験に合格しないとtokyo42に入学できないらしく
>>668の課題ができなかったら退学とあるので
高いレベルの人しかいないと思われる
2024/04/06(土) 21:25:52.15ID:JRAQW2r9
ゆたぼん君も自称革命家やし
色々自称するのはまあ自由だけど
周りの大人は失笑あるいは真顔やろね
2024/04/06(土) 21:27:34.74ID:3MlnxL6D
>>668
42Tokyoってできないやつはどんどんクビになって最後にツワモノだけが残る蠱毒みたいなシステムらしいぞ。

> ・libcの再実装(C)
> ・X WindowSystemをつかったゲーム(C)
> ・bashの再実装(C, 2人チーム)
> ・docker, docker-compose
> ・nginxライクなwebサーバーの実装(C++, 3人チーム)
> ・通信対戦可能なwebゲーム開発(TypeScript, 4人チーム)

1年ちょっとでこれだけこなせる奴いたらそら前からやってた奴だろとしか思わんわ。
2024/04/06(土) 21:29:42.91ID:nCGKNeIO
メンター用意できないから生徒に丸投げしてる印象しか受けない
仮にも学校的な組織にしたいのなら教え導く人が必要だろう
OBOGが教えるとかはないのかな
2024/04/06(土) 21:33:54.45ID:p/2qM6NH
>>671
高いレベルの人が資格が取れるでもないスクールに通う想定がおかしいだろw
2024/04/06(土) 21:38:41.40ID:oRnyTTcP
エロ動画配信のイメージを払拭したいDMMが運営してる42Tokyoに期待するのがアホ
2024/04/06(土) 22:06:34.27ID:nTtfp8QJ
>>675
そこは逆だろ
有料スクールはバカが行くところ
できるやつは自分で学習できる

無料スクールtokyo42とやらは
おそらく人脈目的だろう
人脈以外はスクールを必要としない
2024/04/06(土) 23:10:46.98ID:W14BN4+1
>>677
優秀な人なら普通に仕事するでもOSS開発に参加するでもSNSでも価値ある人脈作れるだろうに未経験者との人脈作りを期待してスクールに通う意味がさっぱりわからんw
2024/04/06(土) 23:25:26.94ID:JRAQW2r9
アホに教えるアホ
アホに教わるアホ
悲しい風景です
アホの増幅装置
2024/04/06(土) 23:27:07.03ID:x5bdx74z
>>678
英語ができないんでしょ
2024/04/07(日) 03:54:01.73ID:ko5I7yvo
欧米じゃ英語なんて乞食でもできるんだしそれができない人は優秀な人ではないよね。
2024/04/07(日) 11:36:42.90ID:ZCOaGJuB
ID:nTtfp8QJの投稿みてて

>>668
> 42Tokyoっ何か知らないのでその記事の関連記事リンクたどったら他の人だが

>>671
> 入学試験に合格しないとtokyo42に入学できないらしく

>>677
> 無料スクールtokyo42とやらは

最初の投稿では「42Tokyo」だったのに、次の投稿では「tokyo42」になって、最後は「tokyo42とやら」に変わんのねw
わざとらしすぎんだよなあ。よく知ってる関係者か何かが知らないフリしつつ宣伝してると思われても仕方ない。
2024/04/07(日) 11:50:18.50ID:ZCOaGJuB
>>668
> 2020年の10月に42Tokyoに入学し、2022年1月に基礎カリキュラムを終えました。
> カリキュラムについて
> 印象的だったものをピックアップしました。
> ・libcの再実装(C)

なるほど、42TokyoのカリキュラムのひとつにlibcをCで再実装するというのがあって、

>>614
> 【自作関数あり】C言語の基幹関数実装してみた
> https://qiita.com/ya...511fc11028efbac38648

↑の記事に繋がるわけか。なるほどな。

>>668の引用みるとなんだかしっかりしたとこに見えるのに、>>614の記事みると実態の酷さが分かるのは面白いなw
2024/04/07(日) 11:55:57.35ID:wHIfQtvF
どの業界にもハッタリ野郎はいて
自分を大きく見せたりするけど
この業界はソースを見たら一目瞭然だからまだ幸せよねw
どんなことを言ってようとどんな肩書だろうと丸裸

自称数学得意なのに九九すら怪しいとか
自称料理自慢なのに塩と砂糖の区別がないとかレベル
685683
垢版 |
2024/04/07(日) 12:01:29.26ID:ZCOaGJuB
> >>614
> > 【自作関数あり】C言語の基幹関数実装してみた
> > https://qiita.com/ya...511fc11028efbac38648

リンク失敗してたので訂正↓

>>614
> 【自作関数あり】C言語の基幹関数実装してみた
> https://qiita.com/yaburen/items/511fc11028efbac38648
2024/04/07(日) 16:09:49.61ID:zAwCVfk+
同じ人の別の記事

【C】基数変換プログロムを自作してみた
https://qiita.com/yaburen/items/d4d464c17005ab4cc900

mainないんだけど??
2024/04/07(日) 17:05:19.64ID:XEEJtGdB
>>686
mainが無いと何が困るんだ?
アプリじゃなくてプログラムと書いてるぞ
2024/04/07(日) 17:23:21.49ID:vb9MfHId
>>686の記事のft_to_decimalという関数の後ろのほう

>   str = (char *)malloc(sizeof(char) * (ft_strlen_base(nbr, base_from) + 1));
>   j = -1;
>   while (++j < ft_strlen_base(nbr, base_from))
>     str[j] = nbr[j];
>   return (sign * ft_atoi_base(str, base_from));
> }

mallocしてNULLチェックしてないのもアレなんだけど、strに確保したメモリの解放してないのもダメな感じね。

生徒同士で教え合う仕組みってやっぱ無理ある気がするわ。ある程度経験があれば注意して見るところが見れてない。まともにプログラム書ける人材が育つ気がしない。
2024/04/07(日) 17:24:41.78ID:vb9MfHId
>>687はスゴい馬鹿
2024/04/07(日) 17:38:45.79ID:ngED+Z2u
>>686
> 例えば、"0123456789abcdef"の16進数で表された「a0」を2進数である"01"で表すと、「1111011」となる。

冒頭から間違えてて草w
2024/04/07(日) 17:43:20.59ID:ngED+Z2u
TYPOは仕方ないけど

> 【C】基数変換プログロムを自作してみた

表題に「プログロム」って書いてて平気な神経は解らんな
2024/04/07(日) 17:49:35.93ID:FOjhJ4gr
初学者にマウントとって楽しいか?
晒すのはアタオカ系にしとけ
2024/04/07(日) 18:16:17.88ID:fY/5VpeR
42tokyoの生徒がこの程度っていうのがよくわかるわ
結局ハリボテじゃん
2024/04/07(日) 18:23:28.83ID:hMFtqWOV
> str_len
> 上のstrlen_base関数と全く同じ。作成した後に気づいた。笑

もそうなんだけどft_len_numとft_strcmpもどこからも呼ばれてねんだよな。
記事を公開するということは他人の時間をいくらかでも頂戴することだと思ってるけどゴミ入ってるの承知で直しもしないって公開する相手に大して失礼杉だろう。
2024/04/07(日) 18:28:40.55ID:TcwG+0Il
>>692
> 晒すのはアタオカ系にしとけ

東大の大学院を休学してクソコーダー養成所に通うことを選択した彼の人は晒しておkてことねw
2024/04/07(日) 18:36:12.68ID:ftFquNss
> 今回は基数変換プログラムをmalloc関数とwrite関数のみで実装してみた。

write関数使ってなくて草w
2024/04/07(日) 18:43:07.91ID:6Tkgo/3i
>>693
彼は42tokyoの入学試験に合格したら、
と書いているので生徒ではない
今後のプランとして入学したいと主張しているだけ
698デフォルトの名無しさん
垢版 |
2024/04/07(日) 18:48:10.92ID:MookyuiH
https://qiita.com/yaburen
↑見ると

> フォロー中のタグ(4)
> Git Rails Ruby HTML

なのに対し

> 投稿した記事:
> C: 60%
> 再帰関数: 40%
> C++: 20%
> Git: 20%
> GitHub: 20%

なのは違和感あるなあ。

こいつ実在の人物じゃなくて42tokyoの評価を下げるためにゴミ記事を投稿するBOTな気もしてきた。
2024/04/07(日) 18:54:43.27ID:iTCAFSvR
>>697
> 彼は42tokyoの入学試験に合格したら、
と書いているので生徒ではない

いつから始まってるのか知らんけど生徒でしょ

https://twitter.com/yaburen_AI/status/1776545346161918284
> おそばせながら42合格してました。
> インターンしながらでも毎日通うつもりなので、楽しみながら頑張りましょう!
https://twitter.com/thejimwatkins
2024/04/07(日) 18:58:06.34ID:6Tkgo/3i
42tokyoを目指してるだけであり受験すらまだなんだから影響ないだろう
東大を目指してる人の一人がバカでも東大の評価は下がらない
2024/04/07(日) 19:05:11.13ID:G6vPdyD9
>>671
> 入学試験に合格しないとtokyo42に入学できないらしく
> >>668の課題ができなかったら退学とあるので
> 高いレベルの人しかいないと思われる

クソコード書いてて合格するみたいだし大したもんじゃないだろw
2024/04/07(日) 19:11:31.38ID:l7R/GEo/
自分は知らないと念押ししつつ42Tokyo爆推しなID:nTtfp8QJはスゴい奴だ。
2024/04/07(日) 19:19:18.27ID:CdS2+J6r
>>700
> 42tokyoを目指してるだけであり受験すらまだなんだから影響ないだろう

えっ? 何言ってんの??

https://note.com/yabukin_coffee/n/ncb5a96e21072
> 3月は42tokyoというエンジニア養成期間の入学試験を受けていました。
704デフォルトの名無しさん
垢版 |
2024/04/07(日) 19:28:14.39ID:zPKxVjkO
このスレに42 Tokyo推しらしいのがいるの訳分からんなあ
フツー関係者でもなければそんなスクール興味ないし悪い話聞いたところで「そんなん引っかかる奴馬鹿だなあゲラゲラ」位のもんだろうによう
2024/04/07(日) 21:24:22.34ID:WlzP4yWg
【C】基数変換プログロムを自作してみた
https://qiita.com/yaburen/items/d4d464c17005ab4cc900

折角なので動かしてみた。

https://wandbox.org/permlink/ea9bXAdu3j3uKGsM
#include <stdio.h>
int main(void)
{
char* s = ft_convert_base("a0", "0123456789abcdef", "01");
if (s) {
puts(s);
free(s);
}
}
実行結果:
10100000

おっ動くじゃん。メモリリークとか問題あるけど。

https://wandbox.org/permlink/XbNDQ4p1VRqXyXVo
char* s = ft_convert_base("-2147483648", "0123456789", "01");
実行結果:
prog.c:251:15: runtime error: signed integer overflow: -1 * -2147483648 cannot be represented in type 'int'
-10000000000000000000000000000000

あーやっぱ未定義動作踏むよねえ。
こういうコード書いてておkにしちゃうんだな42tokyoって(笑
2024/04/07(日) 21:58:24.88ID:gJtH8Z+n
> 42Tokyo【プログラミング学校】
https://itest.5ch.net/mevius/test/read.cgi/tech/1574083744/393
> 謳い文句に釣られる人がいないように書いとくけど入学試験突破率が4%弱でその中で卒業出来る人(第一段階みたいなやつが修了した人)が8パーセント(その8%には東大生や帰国子女を含む)
> 社会人は仕事や出産や子育てがあっても期限過ぎたら問答無用で退学(実際優秀なのに在学中に出産してコミットする時間がなくて退学になった人がいる)
> 卒業しても各種学校ではないし、証書の類は出ないので卒業証明はできない
> 完全無料とはいえメンター教師はおらずレビュワーは素人で就職支援もなし
> メルカリやソフトバンクやサイボウズに就職した人もいるけどSESに就職した人も普通にいる
> カリキュラムがC言語中心なので最近人気のjs、php等の経験は積めない
> そのC言語でのコーディングも独自のコーディングスタイル押し付けでここで指摘されている様にレベルの低い実装が多いが、ここの生徒は難しい(=精神論的に過酷な)入学試験は突破しているのでプライドだけは高い
>
> 受けようかなと思っている人はこれを見てまだ魅力的だと感じるなら受ければいい
2024/04/07(日) 22:24:29.51ID:Hc7nLmEH
Cは時代遅れとアメリカ政府も発表している

「ソフトウェアはメモリ安全でなければならない」との声明を発表、米ホワイトハウス:「C」「C++」よりも「Rust」などの言語を推奨
https://atmarkit.itmedia.co.jp/ait/articles/2403/18/news045.html
2024/04/07(日) 22:56:26.83ID:7m6KAZsJ
> Cは時代遅れとアメリカ政府も発表している

世の中まだまだCは使われてるし仕事もあるのでここでそういう批判持ってきたところで大して意味ないのよね。
2024/04/07(日) 23:04:16.32ID:9oiJFCrG
>>708
どんどんRustへ置き換わっていってるから
基礎教養としてCは当然必須とはいえ
Cでの開発に今から参入するのは愚か
2024/04/07(日) 23:39:00.46ID:XEEJtGdB
mainが無いとコンパイルできないと思ってる初心者おるな
711デフォルトの名無しさん
垢版 |
2024/04/07(日) 23:42:58.03ID:i7vbPLk1
メモリ安全という着想は良くても、Rustみたいな煩雑で汚いソースコードの言語は流行らないだろう。
着想をC++がもっと洗練された形で取り込むか、C++でもRustでもない言語が新たに誕生するかだな。
2024/04/08(月) 00:06:53.34ID:vhvHLTuT
>>711
Rustは関数型言語の美しいコードを採り入れている
C++が汚いソースコードというなら理解できる
2024/04/08(月) 00:07:10.67ID:PlPXxTl0
>>709
組み込みやOS 開発の現状知らない人は
能天気で良いなw
2024/04/08(月) 00:11:49.05ID:yEYXjGlJ
mainが無くてCでプログラムができると思ってるアフォがおるw
2024/04/08(月) 00:29:09.62ID:774i7t8l
動作保証という概念が理解できないバカがいるけどインテル、AMD、arm、NXP、Microchip、ルネサス、IAR辺りが標準の開発ツールとしてRustを提供するときが来ない限り組み込み用途でRustが採用される可能性はほぼない。
2024/04/08(月) 00:33:01.67ID:V2NqoZw2
おまえら組み込みの仕事がピンキリで幅広いのを知らんのか?
Pythonすら使われてるんだぞ
無知なやつほどCだけにこだわる
2024/04/08(月) 00:47:18.05ID:VmFOxA+R
「CからRustへ置き換わっている」「いやそうじゃない」という話をしてるところでPythonがどうのと言い出す奴は本格的に頭が悪い人なんだろうなあ。親を恨むしかないね。
2024/04/08(月) 01:00:33.85ID:/eJN33cS
ネットインフラは次々とRust製へと置き換わっていってる
完全に流れが変わった

ソース1
>【クラウド世界トップシェアAWS】
https://japan.zdnet.com/article/35183866/
>Rustで構築されたAWSサービスの例としては、
>コンテナーアプリ用のサーバーレスプラットフォーム「Lamba」を支える「Firecracker」、
>「Amazоn Simple Storage Service(S3)」、
>「Аmazоn Elastic Compute Cloud(EC2)」、
>コンテンツ配信ネットワーク「Аmazоn CloudFront」、
>LinuxベースのコンテナーOS「Bottlerocket」などがある。

ソース2
>【CDN世界トップシェアClоudflare】
https://www.publickey1.jp/blog/22/cloudflarenginxrusthttppingoracdncpu31.html
>CDNプロバイダのCloudflareは、同社のグローバルなCDNの基盤として長らく利用してきたNGINXに代えて、
>同社自身がRust製のHTTPプロキシである「Pingora」を開発し利用していることを明らかにしました。
2024/04/08(月) 01:14:11.91ID:+6il4V17
現状のLinuxのようなサーバに使用されるOSとか、HTTPサーバとかDBとかでRustで書かれたのがシェア取るようになったらなんか言えば良いかもね。
2024/04/08(月) 01:21:38.08ID:ezjiiP9g
>>718にあるNGINXがHTTPサーバの代表例
しかし今となっては機能も弱く
Cで書かれていて安全な拡張にも不利なため
クラウドフレアはNGINXに代わるものを
Rustでゼロから開発して用いている
と記事にあるね
2024/04/08(月) 01:38:13.10ID:NmQn9L4X
Rustの宣伝もういいてw
しょうもない
2024/04/08(月) 01:44:27.35ID:jv3uTTII
Rustはライブラリがウンコで無理
2024/04/08(月) 02:04:53.85ID:CdjOjlIN
>>720
HTTPプロキシのことしか書かれてないが?
2024/04/08(月) 05:51:58.60ID:UX67bdYB
HTTPサーバはHTTPプロキシをその一つの機能として含む
具体的にツートップのnginxとApacheはどちらも静的ファイルも扱うしCGIも扱うしプロキシも扱いそれそれ機能の一部
2024/04/08(月) 07:29:36.11ID:5RPHd+NA
「機能の一部を実装すれば全体を実装したのに等しい」なーんて主張する馬鹿は流石におらんよねえ
2024/04/08(月) 07:46:02.27ID:0lDHFt2n
そういう時はRustを使えば簡単
なぜAWSやCDNなどがRust製になっていってるか理由の一つはRustでは基本ライブラリ環境が整っているため

https://github.com/hyperium/hyper/blob/master/examples/README.md
このexamplesを見ればHTTPプロキシでもファイル提供HTTPサーバーでも簡単なものなら誰でも今すぐ作って動かせる
2024/04/08(月) 08:03:35.92ID:lZvSEIDN
Rust信者うぜーな
お前ら新技術に付いていってる最先端エンジニアのつもりかもしれんが実際はレイトマジョリティーだからな
イキんなよ
2024/04/08(月) 10:11:59.10ID:jlX8G4zp
色々とRust化が進んでいるからRustに落ちこぼれた人はどんどん辛くなっていってるよな
729デフォルトの名無しさん
垢版 |
2024/04/08(月) 12:30:50.21ID:SaVfuPSQ
>>707
> 全銀ネットとNTTデータ
> システムが32ビット環境から64ビット環境に変わったことで、C言語のデータ型のサイズの違いから、テーブル生成プログラムが生成する金融機関名テーブルのサイズが増えた。
> しかし、テーブル生成プログラムがテーブルの生成のために確保するメモリー領域のサイズについては変更していなかった(図1)。
> この結果、金融機関名テーブル自体は確保領域に収まるが、金融機関名テーブルと共に作成する3つのインデックステーブルの一部が確保済みのメモリー領域に収まりきらない状態になった。
> このため、確保していないメモリー領域に書きこんだインデックステーブルの一部が、他のアプリケーションによって上書きされた。
> インデックスの参照先として、本来アクセスしてはいけないメモリー領域を示すことになったことからアプリケーションが異常終了した。
> テーブル生成プログラムは、C言語で開発したプログラムである。
> it.impress.co.jp/articles/-/25677
2024/04/08(月) 12:35:59.20ID:lZvSEIDN
言語の問題っつーよりメモリカツカツの貧弱なハードで動かしてるから
たからC言語で書かざるを得ない
2024/04/08(月) 12:38:11.80ID:SaVfuPSQ
>>707
> NSAのプレスリリースの中では、メモリ安全な言語の例としてC#、Go、Java、Python、Rust、Swiftが挙げられています。
> www.publickey1.jp/blog/24/post_294.html
2024/04/08(月) 12:45:42.44ID:u4LWeArj
>>731
それら安全な言語の中で
ガベージコレクション無しで動く言語がRustしかないのよね
2024/04/08(月) 12:53:23.21ID:DhXswees
>>714
mainがないライブラリはプログラムじゃないと思うような頭で日常生活だいじょぶそ?
2024/04/08(月) 13:22:59.71ID:1oeHrM0D
>>732
ガチガチにメモリ管理しているからガベージコレクション任せでも正しく動作するのでは?
735デフォルトの名無しさん
垢版 |
2024/04/08(月) 13:50:17.41ID:dr1z/q5l
>>733
どれ、元記事確認してみっか。

【C】基数変換プログロムを自作してみた
https://qiita.com/yaburen/items/d4d464c17005ab4cc900
> 基数変換プログラムとは
> n進数で表された文字列を、別の指定されたn進数に変換して文字列として出力するプログラム。

表題は「基数変換プログロム」となってるけど(誰か指摘してやれよ)、「基数変換プログラム」と同じ意味と解釈するぞ。

「基数変換プログラム」とは「〜変換して文字列として出力するプログラム」ということなので、mainがなくて実行ができずprintf等もなくて出力も行わないこの記事のコードは「基数変換プログラム」の条件を満たしていない。
2024/04/08(月) 13:54:17.08ID:5Lf4ehW2
このスレは初心者の集まりか?
レベルの低さに唖然とする
mainの有無で言い争うとかアホだろ
737デフォルトの名無しさん
垢版 |
2024/04/08(月) 14:00:59.44ID:dr1z/q5l
同じ人の別の記事

【Ten Queensなど】再帰関数・バックトラック法の練習
https://qiita.com/yaburen/items/9b3bdd87213ef4aa590b

にこるんの編集リクエストシカトしてるのクスッと来たw

https://qiita.com/yaburen/items/9b3bdd87213ef4aa590b/patches
> フィボナッチ数列→フィボナッチ数

にこるんこの人の記事にコメント付けなくなったし察してしまうわw
2024/04/08(月) 14:30:31.55ID:KB8+vHO5
>>737
その記事の

> 累乗の答えを返す関数
> int  ft_recursive_power(int nb, int power)
> {
>   if (power < 0)
>     return (0);
>   if (nb == 0 || power == 0)
>     return (1);
>   else if (nb == 0)
>     return (0);
>   else
>     return (nb * ft_recursive_power(nb, power - 1));
> }

は仮引数 power の値が 0 以上で nb の値が 0 の場合、

>   if (nb == 0 || power == 0)
>     return (1);

に条件合うから 0 の 1乗とかでも 1 返しちゃうね。
続く

>   else if (nb == 0)
>     return (0);

はその前で nb == 0 の判定やってるから意味ないな。

いまどきのコンパイラだと「こっちのパスは通りませんよ」くらいの警告は出してくれそうな気がするがコンパイル確認してるのか?
739738
垢版 |
2024/04/08(月) 14:47:49.56ID:KB8+vHO5
> いまどきのコンパイラだと「こっちのパスは通りませんよ」くらいの警告は出してくれそうな気がするが

折角なので確認した。

https://wandbox.org/permlink/mSIB1wP7B36wyRy8
https://wandbox.org/permlink/wySj2H4BlXzQoZcU

gccとclangの両方で常識的な警告オプション-Wall -Wextra付けた条件では警告出んかったわ。

普段自分では試そうともしない条件についてQiitaのアホな記事のお陰で知見が深まるのは有り難いことだなあ。
2024/04/08(月) 15:04:54.68ID:lZvSEIDN
なぜgccのマニュアルを確認しない
741738
垢版 |
2024/04/08(月) 15:24:18.91ID:0t2C3I5V
> 累乗の答えを返す関数
> int  ft_recursive_power(int nb, int power)
> {
>   if (power < 0)
>     return (0);

仮引数 power の値が負だった場合 0以上 1未満になるから 0 返してるのかあ、と見過ごしてしまったが nb の値が 1 だと power の値が負でも 1 になる筈だからこの実装もおかしいな。

つか

冪(power) = 底(base)**冪指数(exponent)

なので仮引数名から間違ってる。
2024/04/08(月) 15:26:10.13ID:0t2C3I5V
>>740
そう思った理由を教えれ
2024/04/08(月) 15:46:13.60ID:0t2C3I5V
俺は「gcc 条件 重複 警告」でぐぐって gcc に
if 〜 else if 〜 の重複を警告してくれる -Wduplicated-cond にたどり着き、それを指定した上で

https://wandbox.org/permlink/yFunNKbQkeO0SNVv

先のコードでは警告が出ないことを確認したけどな。gcc のマニュアル見るのはこの次だわ。

>>740が「なぜgccのマニュアルを確認しない」と思った理由が知りたい。
2024/04/08(月) 16:15:50.51ID:DhXswees
>>736
あらら、そういう自分の慰め方は感心しないな
黒歴史が増えるだけでしょ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況