◎正当な理由による書き込みの削除について: 生島英之 とみられる方へ:C#, C♯, C#相談室 Part95 ->画像>3枚
動画、画像抽出 ||
この掲示板へ
類似スレ
掲示板一覧 人気スレ 動画人気順
このスレへの固定リンク: http://5chb.net/r/tech/1508180530/ ヒント: 5chスレのurlに http ://xxxx.5chb .net/xxxx のようにb を入れるだけでここでスレ保存、閲覧できます。
■Visual Studio 2017 Community(無償の統合開発環境)等はこちら
http://www.visualstudio.com/downloads/ ■コードを貼る場合はこちら
http://ideone.com/ ■前スレ
C#, C♯, C#相談室 Part94
http://mevius.2ch.net/test/read.cgi/tech/1492843013/ ■次スレは
>>970 が建てる事
建てられない場合は他を指定する事。
■過去スレ
C#, C♯, C#相談室 Part90
http://echo.2ch.net/test/read.cgi/tech/1455160063/ C#, C♯, C#相談室 Part91
http://echo.2ch.net/test/read.cgi/tech/1467142749/ C#, C♯, C#相談室 Part91 (実質Part92)
http://echo.2ch.net/test/read.cgi/tech/1467211515/ C#, C♯, C#相談室 Part92 (実質Part93)
http://echo.2ch.net/test/read.cgi/tech/1485589613/ C#, C♯, C#相談室 Part94
http://mevius.2ch.net/test/read.cgi/tech/1492843013/ Dictionary.TryGetValueってどんなシーンで使う?
小さいwebアプリをサクッと作ってライセンス料のいらんlinux鯖に置けるのはいいな>core 大規模プロジェクトで使う人は居ないだろうけど
C#でjQueryみたいにhtmlの中の要素を部分的に取り出すなどするのに お勧めの方法おしえてちょ
PythonのBeautifulSoupとかRubyのNokogiriとか使えば? C#はスクレイピングには向いてない
HTMLアジリティパック?があるけど使いにくい 最近はSelenium2使ってるけどまあこれも本当のやり方じゃないね
HTMLAgilityPack、あとSGMLReaderって昔なかったっけ? 今もあるのかは知らないが そもそもC#を勧めないってのは同意
>>14 あるけどJqueryのようなアクセスしやすさじゃない
Xpath指定しないといけないので困る
個人的にはCSSセレクタよりXPathのほうがむしろ好きなんだけど むりやりXMLとして読む系は終了タグがない要素があるとツリーが無茶苦茶になるのが
Proj1とProj2があります。 1は2を参照して2のメソッドを使います。 1の中でClass Aを定義しています。 2の中でデータをList<A>に入れるメソッドを作り、結果を1に返したいのですが、 その為に2から1を参照してClass Aの定義を使おうとしたら循環参照でエラーしました。 こう言う場合、どうすれば良いですか?
>>17 何のためにプロジェクトを分けたいの?
まずはそこを明確にしないと始まらない。
循環参照してるってことは相互に切り離せないってことだから、現状ではプロジェクトを分ける意味は全く無い。
分けたい理由があるのなら、その理由次第で適切な方法は違ってくる。
>>17 >2の中でデータをList<A>に入れるメソッドを作り、結果を1に返したいのですが
この処理をFunc<T,TResult>で定義するのが常套手段
使い方はググればわかると思うが、わからないならプロジェクトを分けるの諦めるしか無いね
>>17 どうしてもやりたいなら、ClassAを定義したプロジェクトを作ってProj1,2両方から参照すればいいじゃん
発想の切り替えできないとこの先相当辛いよ
>>19 ありがとうございました。
Func<T,TResult>で上手く行きました。
Roslynってどうやって使うの? ソースから仕様書を生成したいんだが可能か?
自分のコード見返してどういう動きなのかはわかるが何を思ってそうしたのか思い出せない時があるなw こういうときに仕様書書いておけばよかったと思い、そして3分経つと面倒で忘れるw イベントの依存関係まで考えたら他人のコードの解析なんかやる気にもならない
後で自分のコード見返して分からないってよく言われる話だけど俺はほとんど無いわ コメントじゃなくてメソッド名や変数名でもいいけど、なるべくコード上に意図を残すように心掛けるのがコツだな 読めないコードを書く奴は大抵コードを製造作業による生成物と考えてる
>>27 俺はやる気にもならないって書いているんだし
>>23 に言ってやれよw
そのリンク先のやつは書く内容がおかしいやつだからどうでもいいが
>>28 だからツール使えよって言う話も理解できないバカ乙 w
>>29 せっかく教えてやったのにってことか
ありがとうございました
>>26 説明的なプログラムは誰にでも書けるものではない
書ける人にとっては当たり前と思うけどそうではないらしい
自社のコードが汚い人になぜ汚いコードを書くのかと聞いて回ったことがある
彼らは動くものを作るので精一杯なんだ
設計書も書かずいきなり書き始めたコードを綺麗も汚いもねぇよ 精々メソッドあたりの行数ぐらいしか評価のポイントがねぇ 書いた設計書に対してのソースがどうよ?って話になって初めて評価が下せる 俺はね
>>31 それは確かに感じるね
彼らに共通して言えるのは、思考の抽象度を上げられないんだよな
話してると「そんな細かいことはどうでもいい」と感じることが多いけど、
その「どうでもいい」という感覚を理解させるのが非常に難しい
>>33 抽象度とソースの綺麗さになんの関連があるのか説明できるの?
>>33 その傾向はあるね
彼らに設計書を書かせると決まって日本語で手続きを書き始める
そうやって風が吹けば桶屋が儲かる的なくだんないことを囀ってる限りモノなんか作れないよお前等w
>>36 設計書が無いとソースは理解できないと考えるのなら、
君はプログラミングにおける抽象的思考(設計)の重要性を認めてるわけだよね
それなのになぜソースコード自体の抽象度が理解のしやすさに寄与するとは考えないの?
>>33 それは言えてる
思考の抽象度
現代的プログラミングのキーワードだよなあ
>>37 いや、設計書通りに組んであればええよ
何もなければ評価できん
設計書に従った上で説明的な(ある意味冗長な)コードを保守性のために書くと思ったが違うのかな
>>40 それだと設計書に書いてない事は書くなって怒られるんだよね
設計書に書いてないことを書かないとビルドすらできないから無視するしかないんだけど
>>37 そもそもなんで設計が抽象的なの?
お前の書いてる設計書漏れてるだけだろ
>>42 君の言ってる設計書ってコーディングシートのことじゃないかな
まず仕様書と設計書とコーディングシートの定義からやらないとだめな予感
最近のC#スレはマ板行くか首吊って死ね系の話題が多いですね 何かあったの?
>>48 用途による
まあEntityFrameworkかDapperだろうけど
>>49 linq to sqlってのは今は使わないんですか?
>>55 その場合、例えばsql server向けに作ったC#プロジェクトで
DBをmysqlに変更しても大きな変更無く動かせるの?
現実的にはSQLやスキーマの互換性の問題で無理 確実にデスマーチです
今もmysql使ってる人は少ないと思うけど知らない人がいるのかな 時代は変わりました
>>57 sqlserverを使うある程度大きなプロジェクトだとefを使うのが一般的ですか?
全く使わないなんてのも有るんでしょうか?
>>60 基本的にはEntityFramework、パフォーマンスを求められる箇所はDapper
>>61 生のSQLを実行するのは一般的ではないのですか?
>>62 普通はストアド作っといて、指示するんじゃね?
>>62 Dapperは生SQLだよ
DataReaderやクエリパラメータとオブジェクトの間のマッピングの単純作業を自動でやってくれるだけ
>>62 EntityFrameworkでも生のSQLは書ける。書かなくてもパフォーマンスに(考慮しなくちゃいけないほどの)遅延がなければ書かない。
WebRequestを続けて二回同じサーバーに別のオブジェクトで通信したら変なエラーが出るんだがわかる奴いる? これじゃ情報不足ならそのうち再質問するが。
「変」って何だよ具体的に言えよ なんで相談室でまでこんな所から始めなければいけないんだ
>>65 最近efを覚えて試しているんだけど、
efでusingしてdbに何か書き込むだけでも、なんかレスポンスが悪い気がするんだけど。
気のせい?
HTTPレンスポンスの生文字列データを取得する方法ある?レンスポンスにSet-Cookieが何箇所行かにあるやつをWebResponseでSet-Cookieヘッダを取得しても1番始めのしか取得出来ない
>>69 何に比べてレスポンスが悪いの?
初回が遅いのはどうしようもない
>>69 EFはサーバーで長時間にわたって大量のメモリ食わせて使うもんだ
>>81 リクエストオブジェクトにCookieContextオブジェクト入れる&リダイレクトをオフで取れた
ASP.NET MVCでControllerの中のソースコードが増えて来て混乱気味なのだが、 どうやって整理すればいいのかな?
>>84 モデルって言うのは本来は何を入れるところなの?
細々とした色んな処理を書いてもいいの?
>>83 インプットを基にして処理を振り分けて、得た結果をViewに返すだけじゃないの?
>>85 モデルにはすべてのロジックを実装するのが正しい
コントローラの役割はリクエストの内容を受け取りモデルに投げて結果をVMに入れて返すだけ
ASPって出番ある?みんな仕事の案件でやってるの?
WebFormsの案件はドカタだとWinFormsより多いだろ うちはMVCでSaaSやってる
クラスのメンバのプロパティを小文字で始めると メッセージ IDE1006 名前指定の規則違反: これらの単語は、大文字で始まらなければなりません: と出るのだが、なんで小文字だとエラーなの? 世の中では、大文字で始める習慣があるの?
VS2017ならデフォルトで提案事項になっているがエラーになるのは自分で設定したせいでは
で、それはエラーなの? メッセージが出たら警告だろうが何だろうが全部エラーって言う人も多いけど
>>97 自分でいじってないなら初期設定決めたMSの人では
class A{ class B{ class C{ } } } みたいに三重くらいになると、自分でもわけ分からなくなって来るんですが、 世間では三重くらいは普通ですか?
>>100 内部クラスって表記しやすいだけでそれ以外のメリットあるのかね?
javaの人は良く使うけど スコープの問題だけだから本来は使わないでもよさそう
内部クラスはたまーーーに使うけど3重なんて一度もしたことないな
>>100 static classだとよくやるけど
static class My{
static class Hoge{
static class Config{
}
}
}
My.Hoge.Configのように使える
でも3重は使わないな
Javaだと1クラス1ファイル 客先の規約で配置できるファイルに制限があると内部クラスを使わざるをえない
enum使いにくいから代わりにstatic class乱用してるわ
>>109 後で要素増えたら参照先全部ビルドし直さなきゃならんあたり
.Net Core 2.0では、だいぶん.NetFrameworkの実装がカバーされたと聞きました。
https://raw.githubusercontent.com/dotnet/standard/master/docs/versions/netstandard2.0_ref.md これを見る限りでは、System.IO.StreamやSystem.IO.FileInfo、ISerializableなど
もあります。これらをUWPやASP.NET Coreでも使えるようになるという理解でいいでしょうか。
>>113 javaとは思想が違うからな
どうしてもメソッド使いたけりゃ拡張メソッド書けばいいだけのこと
enumにメソッドを定義できないとenumスイッチがあちこちに書かれてシステムが汚染される そんなことになるぐらいならenumは言語機能から追放したほうがいい
>>116 メソッドが使えるとスッキリ書けるの?
例を教えて
>>112 逆に聞きたいんだけど、どういう理解があると思ったの?
>>117 Javaのenumのメソッドはポリモーフィック
なのでステートやストラテジーなど様々な応用が利く
enumはどうせ定数に置き換えられるんだから、最初から定数で書いとけばいいな
>>107 javaって、内部クラスも1ファイルとして出力されるんじゃなかったっけ?
class A,B,C,...が有って void func<T>(...){...} みたいな関数を func<A>(...); func<B>(...); func<C>(...); みたいに順番に実行したい場合、 forループ使って書ける?
>>122 >>107 はソースの話やで?
オブジェクトはまとめたらいいだけだし
>>123 var list = new dynamic[] { a, b, c };
foreach (var x in list)
func(x);
引数もインスタンスも無いならreflection
>>125 なるほど。
dnamic使うしか無いんですね?
>>127 reflectionと言うのでやる方法を教えて下さい
>>119 APIはあっても、実際は例外投げるんじゃないかとか。
StreamやISerializableなど今まで散々レガシー扱いされてたのに、
すんなり実装されたのだったら、今までは何だったのかと思ってしまって。
>>124 「配置できるファイルに~」のところもソースファイルの話だったか、失礼した
>>126 リフレクション
そもそも用途がわからんけど
>>130 最初のリンクがそもそも.NETStandardの話なんだけど、.NETStandardとは何か知ってれば(最低限ググれば)前者は迷う余地がない
後者は経緯知らないけどレガシーが実装されたらだめという理由がない
…と考える人が大多数だと思う
C#でちょっとした文字列の連結を行う場合、+がいいのかFormatがいいのかReplaceがいいのかStringBuilderを使うのがいいのか悩んでます どれが一番いいのでしょうか? 1. string value = A + "-" + B; 2. string value = string.Format({0}-{1}, A, B); 3. string value = "{A}-{B}".Replace("{A}", A).Replace("{B}, B); 4. StringBuilder sb = new StringBuilder(); sb.Append(A); sb.Append("-"); sb.Append(B);
こんな細かいことで悩んでいたら禿げるわ それぞれにどれだけの差が出てくるか考えろよ
とりあえず、環境が許すなら141、駄目なら139の1
連結ならいつもは分かりやすさ優先で+ 実際に扱うデータで使ってみて遅いと感じたらStringBuilderに変えてるわ 置き換えは置き換えの時だし、フォーマット形式が必要と感じたらそれ使うし 悩むのかこれ…コーディング終わらんやろ…
最初はくだらない事に悩むからしょうがない。直に、開き直るからそれまでとことん悩め。
>>145 こういうので悩みだすのはスキルが伸びず閉塞感に陥って逃げ道探しているときだw
StringBuilder必要なのはループで回す時くらいやろ 固定回数なら最適化されるんちゃうか しらんけど
改行したい時はsb.AppendLine使う var s = $@"hello {A} world"; 別にこれでもいいけど、インデントが気持ち悪い
数個程度の定数個の結合にStringBuilderは無いね @""で改行入れたときの改行コードってソースコードの改行コードに依存するんかな
StringBuilder使うのは基本、ループ内で文字列結合するときだけだな
と書くと、問題あるな。あるメソッド内でループしてないから普通に文字列結合してても、 そのメソッドを使う方でループしてメソッド呼び出されたら・・ ということでなんでもない。
パフォーマンスは大差ないので可読性で選ぶ となると 定数個なら+ 動的ならlinqとJoin
public override と override public とでは、どっちが普通ですか?
>>156 じゃあstatic使う場合は
どこに入れるべきですか?
EF Core + MariaDBで行ロックをするにはどうしたらいいですか?
>>159 EFに明示的なロックは要らん
保存するときに他の変更があれば保存は失敗する
EFは基本、楽観ロックだからね。 自分が更新するデータは誰も変更しないだろうということで楽観的に考えて行ロックを取得しない。 で、実際の更新時に、保存しておいたタイムスタンプ列や全列を比較して更新するUpdate文を 発行して誰も変更してなきゃ成功する。
対して、悲観的ロックは誰か変更するんじゃないかと悲観的に考え前もって行ロックする。 行ロック取得したければ、トランザクションの分離レベル変更して、間接的に取得すればいいんじゃねぇかな。 例えば、トランザクションをロックを使って実装してるデータベース使ってるなら、 トランザクションの分離レベルをREPEATABLE READにして読めば、読み込んレコードには 行ロックがかかる。
Consoleアプリの関数Aから別のスレッドで関数Bをを実行。 Bが終わるまで数分かかるので、その間はAの処理を引き続きやる。 Bが終わったら何らかの通知をA(あるいはアプリ)で受けとる。 そんな処理をしたいのですが、どんな手法がお勧めですか?
>>166 普通にTaskとasync-await
>>167 情報ありがとうございました。調べてみます。
>>168 それは何ですか?
>>169 関数Aの中で関数Bの終了をawaitするとそこでAの処理が停止しますよね?
それでは困るんです。
通知を受け取って何をするの? Aが実行中に通知を受け取った場合は? Aが終わったあとに通知を受け取った場合は?
>>171 終わったってフラグでも作っておけばいい
何のためにそんなこと聞くの?
>>172 実際にコードに起こすこと考えたら
>>171 の疑問出てこない?
ポーリングの有無とかB終了の通知はA以外で受けたほうがいいのかみたいな
void A() { ... Task.Run(() => B()); ... ... } void B() { ... ... SetSomeFlag(); } こういうこと? 何をしたいのかハッキリしないな
>>170 関数BをTaskで実行しておいて、たまにTask.Wait(0)がtrueを返すか確認する
>>173 何で目の前の問題置いて次の実装考えるの
やり方が一つ決まったらそれでやり通す必要もないし
質問者の要件わからないのにそんなこと聞きだす必要はない
多分処理AはUIスレッドなんだろ 処理B実行中にUIは止めたくない そして処理B完了でUIを更新したい そんな要件だと想像した
>>177 それだとInvokeやDispatcherの話にも広がりそうだね
>>177 consoleアプリって書いてあるやん
元の話が設計で根本的におかしいか思い付きで質問しているかどっちか 後半に100ペリカ
コンソールアプリなら EventWaitHandle使うのが楽そう
WaitHandleは完了を待つ側のスレッドをブロックするから、 それでいいんだったら普通にasync-awaitでいい
Aで何したいかだけどコールバックでいいんじゃないの
だったらTask.ContinueWithでいいだろ
つかそもそも別スレッドで実行する必要があるのか 別プロセスで良いんじゃねえのか
>>187 プロセス間のデータ受渡はsoket通信する感じ?
>>188 勝手に要件作る気なのかw
しかも中身まで要エスパーとか
皆さんレスありがとうございました。 >Aが実行中に通知を受け取った場合は? 関数Cを別スレッドで実行したいです。例えばこんなふうに。 void C(){ Console.WriteLine("Bが終わった"); } >Aが終わったあとに通知を受け取った場合は? Aは終わらないと言う前提でお願いします。
>>190 >>186 に出ているだろ
というかTaskメソッドをMSDNで調べろよ
フラット案件どころかこれだけレスとキーワード出ていて自分で解決できないのならプログラムやめるべき
何でもいいけどすぐ動く完動品が出てくるまでこの調子だと思うぜ どうせソースないんだろ、出てきたものを見ていじって作ろうとしてるんだろ
>>190 BとCについてはよく分かった
Aが現状どういう処理をしているかによって
解決の仕方が違ってくると思うな
コンソールアプリで関連性のない2つの動作を同居させるシチュエーションがわからん
マルチスレッドにしたら効率が良くなるってだけの頭の悪い発想じゃね
>>187 が当てはまらないのならぜひ教えてほしいくらい
>>188 コンソールアプリ同士なんだから、まず標準入出力でダメか考えるべきじゃね
ソケット通信が必要ならまあやればいいけど、それだとそもそもコンソールアプリなのが正しいのか疑問だ
>>199 ASP.NET Coreなんてもろコンソールアプリだけどな
>>199 GUIが必要ないからCUIってプログラムは幾らでもあるが。
>>201 それはGUIが基本なのかCUIが基本なのかの違いであって
コンソールアプリである必要性とは関係ないよね
別にGUIを基本にしろって主張じゃないよ
ただCUI=コンソールアプリってわけでもないだろうと
Task<string>型からstream型に変換するにはどうしたらいいでしょうか? 調べてもよく分からず詰まっています
よく分からんけどstringを取り出してからTextReaderかなんかに渡す
>>205 https://ideone.com/CfSqOZ こんな感じでurlを投げて返ってきたものをstreamに入れたい
// HTTPアクセス var req = WebRequest.Create(url); var res = req.GetResponse(); // レスポンスをオブジェクトに変換 Stream s = res.GetResponseStream(); StreamReader sr = new StreamReader(s); string str = sr.ReadToEnd(); もともとConsoleAppでこう書いて動いてたんだがGUIベースのにしようとしたらGetResponseが使えなかった 代わりにGetResponseAsyncにしたらエラーが出てもっとわからなくなった
ナウなヤングはHttpClient.GetStreamAsync
低水準言語からC#に戻ってくるとlinqが有能すぎて困る困らない ienumなんとかいうヤツにforeachないのはなんでなの?魔女のバァさんの呪いか?
List<T>.ForEach(Action<T> action) みたいなやつのことかな? はい副作用ドーン!はLINQとしてどうなのってことで入らなかった
console では処理を止めても良いから、同期処理でも良い でも、GUI では処理を止めると、アプリが動かなくなるから、 50ms 以上掛かるものは、非同期処理が推奨
Int32へのIntPtrを渡さなければいけないのですが、unsafeコードしか方法はないのでしょうか? 現状、 Int32 int32; IntPtr intPtr; unsafe { intPtr = new IntPtr(&int32) } someObject.someMethod(intPtr); みたいな感じです。
System.Runtime.InteropServices.ComTypesで用意されてるインターフェース使うと、 IntPtrで宣言されてるんですよね・・ まぁ、自前でrefで宣言しなおしてもいいんですけど。 うーん。どうしよう。
まぁ、out,ref使わずにIntPtrで宣言すると、null渡せるっての1つの利点ですかね・・
COMインターフェースでオプショナルな引数もあって、そん時はnull渡してくれみたいのもあるんで。
>>213 みたくunsafeしなければいけなならデメリットの方が大きそうですけど。
Marshal.AllocCoTaskMemするとか new int[1]してGCHandle.AllocでPinnedしてAddrOfPinnedObjectするとか
直接アンマネージにポインタだけ渡すってどうなんだろ Marshal.AllocHGlobalとかしなくていいのか?
いまだにどこまで.Pinnedしなきゃならないのかわからないw 趣味グラマだからわからないままでも問題はないんだけども C#始めたころはいちいち書いていたが最近はずっと省いているな
変数がスタックにあるなら要らん それ以外は必須 GCHandle.Allocは解放漏れでメモリリーク起こす可能性があるしパフォーマンスも悪いからなるべくfixed使った方がいい
>>220 サンクス
だけどアンマネージ側に渡すのにいちいちunsafeにはしたくないな
IntPtrってvoid*相当で型安全もクソもないし AllocHGlobalもmallocを生で使うのと変わらん unsafeよりよっぽどunsafe
C#のスクリプト実行がVSなしでも動かせて、Pythonとかの代わりに使える未来はないかな?
>>224 >C#のスクリプト実行がVSなしでも動かせて
これはもうできるやろ
今のままだとpythonの代わりにはならんわ pythonは標準のモジュールにスクリプト用やOS周りの便利な機能が組み込まれてる
pyhtonだと他のコマンドの出力をワンライナーで処理とかあるけど C#はまあ無理だな そういう所ですみわけされてる 適材適所
python だと標準でできて .net だとできないことって何かあるかな?
getoptやargparseのようなものは欲しいと思ったな。その点ではMFCよりも退化してる。
ウェブサイトのリプレイスでPHPじゃなくてC#で書きたいので 上司を説得するために、PHPよりC#の方が言語的に優れてる点をまとめた 静的型付け 勝手に文字列、数値、真偽値等のプリミティブ型を変換しない ジェネリクス LINQ 名前空間名を指定してusing 非同期メソッド ラムダ式 拡張メソッド null条件演算子 逆にPHPの方が言語的に優れてる所ってなんだろう・・・ trait? 引数にタイプヒント付けるとnull安全になる所?
言語だけじゃなく、開発環境、ライブラリなど総合的に決めるべきやね。 結果は自明だが。
>>232 WebならC#は言語云々というよりプラットフォームの制約で選ばれるものだと思うぞ
サーバーがWindowsならC#はMSが強く推奨する第一の選択肢であり、よほどの理由がなければ他を使うべきではない
Linuxなら今では.NET CoreもあるけどPHP使ってるようなところの手に負えるもんじゃない
PHP製サイトはフレームワーク使ってるけど
考えなしに機能拡張し過ぎたため
自分が入社した頃には既にコントローラーが大変なことになってて
このままじゃヤバイから書き直す事になった
>>234 なんか難しいのか
今時はDockerですぐ動く環境ができる感じじゃないの?
.NET CoreはDockerで作ったことは無いけど
PHPでテスト用の環境は作った事がある
バックエンドだけC#で書いて Angular等をフロントエンドに使う事を推す人も居るけど RazorViewより良いの? AngularやReact、Vueは別にクライアント側でしか使えない訳じゃなくて node.jsでサーバーサイドでも使えるらしい
Linuxでちゃんとした言語使いたいならJavaでいいだろ
言語機能が不満ならKotlin使えば
>>232 は全部満たしてるぞ
リプレースでやるにはDocker&.NET Core&C#全部新規導入なんてリスクが大きすぎるし、
成長という観点を込みにしてもそれだけのコストをかけるほど価値のある選択とは思えん
DockerってことはAWSかなんかだろ?
どうしてもC#に拘るんなら素直にWin鯖立てとけ
SPAはサーバー負荷を抑えられるのが良いね。 せっかくのSPAフレームワークをわざわざSSRするのはメリットがよくわからん。
>>237 なぜDockerからAWSになるんやwww
言語に関してはKotlinに変えるのもC#に変えるのも同様にリスキーな気はする
.NET Core 1.0が出てから1年半しか立ってないからエコシステムの充実度的には劣るかもしれないけど
何も無い訳じゃないよね
Windows固有の物使ってなければ今までの物も移植可能な訳だし
>>238 SEO的にはサーバーサイドレンダリングもした方が良いと聞く
フロントエンドもバックグラウンドもtypescriptが一番まともな仕上がりになる 従事者数が全然違う フレームワークの開発者のレベルも違う asp.net coreが10年もつとは思えん MSがあっさり捨てて5年後はなくなってるかもしれない asp.net coreがこれからだと思うのはセンスない 今も死んでるのになんで選ぶ?
そらマルチプラットフォームに対応せにゃ生き残れんからやろ あれ?Windowsじゃなきゃあんま美味しくねぇな? 詰んだな
>>241 いまどき10年も同じテクノロジーを使えると思う方がおかしい
本当に素晴らしいテクノロジーは登場とともに コアなサポーターがつく 残念ながらasp.net coreは誰の噂にも上らない そもそも知られてない 多分web開発者が100人いるとしても知ってるのは3人ぐらいだろう web開発者の間ではASPというワードは別の意味でしかとらえられない
ASP.NET Advent Calendarが2016年まであったけど2017年は消滅した
>>246 どこのまともな大手企業がasp.net使ってるって?
asp.net coreがこれからだとか web開発者の間で知名度が高いなんて思ってるほうがいかれてるわ 謙虚になって状況見ろよ
言語なんて主要なDBとORMに対応しててCRUDが書ければ 好きなの使えば良い
公式の.NET CoreのデバッガーはVisual Studio Code/Visual Studio/Xamarin Studioでしか動かせない
規約で禁止されてる
https://github.com/dotnet/core/issues/505 JetBrainsのRiderは独自の実装を書いて動かしている
.NET Coreはなんか中途半端なオープンソース化だな
VSやXamarin Studio、Rider以外でデバッグするにはMonoしか無いって事なのか
でもMonoだとライブラリの対応がどうなのか
EF Coreで[ConcurrencyCheck]属性を使って同時実行制御をしたいのですが IQueryableをToList()で複数取得しようとするとTrackingされなくて困っています SingleOrDefault()ならTrackingされて正しく動作します やりたい事はデータをListで複数件取得して、それらの値を変更してUpdateRangeでまとめて更新したいです どなたか解決策を教えてください
>>253 軽く試した範囲ではコンテキスト内ならListでもトラッキングされてるし
コンテキストまたいでもUpdateRangeで変更としてマークされて更新されたけど
勘違いじゃなければミニマムコードどっかに上げて
ASP.NET以外にWebフレームワークってある? Nancyぐらいしか見当たらない 他言語だと色々選択肢があるのに
NancyがASP.NET MVCより良い点は
この辺に書いてあった
http://blog.jonathanchannon.com/2012/12/19/why-use-nancyfx/ https://codeopinion.com/why-use-nancy/ ・ルーティングが少ないコード量で書ける
・設定を出来るだけ少なくしている
・サーバーのレスポンスをテスト出来る
・TinyIOCで自動で依存関係を解決(他のIOCコンテナも一応使える)
・パイプラインフック(リクエストの前後で処理を実行)
・Content Negotiationで、ルートでResponse以外を返した時にResponseに変換
・何処でもカスタマイズ・拡張可能
ORMとかは付いてないから自分で好きなのを選んで使うスタイル
>>254 確かめて頂きありがとうございます
あれから試行錯誤して、OrderBy()の前にTake()を使うとTrackingされないことが判明しました
何故このような動作になるのか、どなたかご教授ください
>>260 そんな動作にはならないから
お前の勘違いかお前が何か変な事してると思われ
とりあえずコード晒せや
1月の月例アップデートのKB4055532がおそろしくバグってるらしい .net frameworkで文字化けしたり意味不明なエラーが連発したり突然アプリが落ちたりするそうだ 急にアプリの挙動がおかしくなったらまずそこに注意
今C#でゲーム作る時unity以外で作れるフレームワークある?
UnrealEngine4が使える。 俺はエアプだけど。
3年前にXNAやってたけどもう意味ないよな?開発終了してるし、基礎勉強なら使えるかもしれないけど
>>266 MonoGameがXNAのオープンソース化移植だからコードほぼそのまま動くで
C#で書かれたライブラリをネイティブコードにコンパイルして他の言語から使うって出来るんですかね?
ターゲットとなるアーキテクチャはIA32/AMD64系に限らずARM系なども含みます
MonoはLLVMを使っているらしいので出来そうな気もしますがそのような記事を見つけられず・・・
他の言語で使いたいライブラリは
https://github.com/vvvv/SVGです(SVGをレンダリングしたい) C#を動かすにはプロセス内でホストするなり別プロセスなりで必ずCLRを起動しなければならないので、 アンマネージコードから普通に呼べてクリーンで自己実行なライブラリを作るのはどうやっても無理
>>269 ありゃ、そうなんですか。.NET NativeやLLILC、SharpLangなどネイティブコードへコンパイルする処理系の
があったらしいのでネイティブコード化できるのかなと思ったのですがそう上手い話はないのですね
>>270 これはMono上で動いているライブラリを他の言語から使うラッパーでしょうか?
Monoが動く環境でないとダメか・・・
ググったら普通にC++のSVGライブラリヒットするんだが・・・
>>271 ああそうか、「他の言語から使う」条件しか満たしてないね。
ネイティブコードにコンパイルしたいって書いてあったね。
しゅまん、これはmonoの上で動くやつ。
後出しだけど情報を小出しにするのも問題が大きいだろうから現状を。長文失礼
テキストなどの平易なベクターデータ(線、箱、円、文字など)をラスターデータに変換する
ラスタライザーが欲しい。ラスタライズ動作をカスタマイズできるとなお良い
ラスタライズ動作をカスタマイズしたい理由は最終的に欲しいラスターデータが2値モノクロなので
アンチエイリアスの有無や線幅等を調整できる必要があるため
動作させるプラットフォームはWindowsやLinux等を考えているけどOS無しでの動作もあり得るかも
呼び出す側の処理系はCかインタプリタなどからC経由で呼ぶ予定
最初はHTMLのレンダリングエンジンを検討したけどChromiumにしろFirefoxにしろカスタマイズして
実装する的な例を見つけられなかったのと無題に大規模になることもあって断念
次点としてSVG単体での利用を検討しはじめてイマココ。ググってみるとSVGのレンダラーとして
見つかったのはlibrsvgと
>>268 くらい。前者はGPL/LGPL故に一緒に使用可能なライブラリが制限されるし
後者はC#なのでネイティブで使えない?
う~む。MonoってOS無しで動作させたり出来るのだろうか・・・
>>272 C++なSVGレンダラーってあったっけ・・・参考までにどれでしょうか?
>>274 OS無しも考慮するとなると、C#板ではキツイのでは?
CまたはC++板での相談を推奨かな。
>>274 librsvg はlgpl2としても使えるように見えるけど、何か問題あるん?
> テキストなどの平易なベクターデータ(線、箱、円、文字など)をラスターデータに変換するラスタライザーが欲しい。 WindowsならネイティブAPIのDirect2Dそのまんまなように思えるが (最近だと部分的にSVGのサポートも入り始めた)
OS無しもとか言ってる奴に > WindowsならネイティブAPIのDirect2Dそのまんまなように思えるが とか人の話を聞く気がないのか壊滅的に理解力がないのかどっちなんだろ...
そこまでのマルチプラットフォームを求めるなら、 俺ならAWS LambdaとかでWeb API 作ることを検討するわ
>>279 > WindowsやLinux等を考えているけどOS無しでの動作もあり得るかも
そもそもそのへんハッキリしねえから選択肢の一つとして紹介しただけだしなあ
SVGの直接的なサポートは別としてレンダリングの細かい要求は満たしてるしね
>>281 > Linux等を考えているけど
って書いてあるのに、バカの上塗り? w
>>282 こういう人に絡むだけで何も建設的なことを言わない(言えない)馬鹿、
生きてて楽しいのかね
> こういう人に絡むだけで何も建設的なことを言わない(言えない)馬鹿 自己紹介乙
OSを動かせるハードウェアを用意して
>>270 で行くかラスタライザーを新規作成するかのどちらかになるのかな
>>277 LGPLの波及範囲は諸説あってはっきりしないのでライセンスがらみのトラブルを回避する上でも避けたいです
MVC5で質問です。 スキャフォールディングのEditアクションでキー項目はテキスト それ以外のみinputにしようとしています ビュー作成直後は全てinputで作成されますが その後、キー項目だけテキストに変えるにはどうしたらよいでしょうか? EditorForをDisplayForに変えるとなにも表示されなくなりDisplayNameForに変えるとモデルのプロパティの属性のDisplayNameで設定した文字列が表示されてしまいます。
解決いたしました バインドされているモデルがnullなのが原因でした しかしnullなのにEditorForだと前の画面の値が引き継がれて表示されてるんですよね 腑に落ちないところもあるのですが、、 ありがとうございました
小さいrestサービスだからHttpListnerでWindowsサービスで作ったけど 素直にWebサーバー立てた方が幸せでしょうか
社内利用の小さいやつならべつにそれでいいんじゃない?
クラウド使えよ AWS & API Gateway & Lambdaとかなら仮想マシンすら必要ないぞ
クラウド使いたいけど私の会社はまだ許可されてないのです 多分来期予算取れるからその時移行出来るようにはしたい 今後はわからんですが今のところユーザー少ない&社内のみなのでこれでいいかなぁ 気になるのは同時に接続来たらそれぞれスレッドが別になるのでしょうか
>>295 サーバーレスなら自分でサーバーやサービス作るよりよっぽど簡単だぞ
金も社内のみなら余裕で無料枠に収まる
答えられなくはないけどスレ違いと言われればそうだな
自分はPHPとJavaScriptしかやったことがないので、WindowsのGUIアプリ開発は初めてです。 WindowsフォームとWPFをちょっといじりましたが、 WindowsフォームはUIをマウスで配置して動作を与え、 WPFはHTMLのようにUIはMLで記述する感じであとはフォームとやることは同じかなって思ったのですが、 この両者の違いはフレームワークの違いだと思いますが、 自分的にはWebからきたのでWPFのほうがしっくりくるのですが、 調べると重いとかで流行ってないらしいので、情報量的にもフォームのほうがいいのでしょうか? UWPはインストールが面倒だったのでスルーしましたが、今からならUWPがいいですか? あとC#ではC++にあるらしいWin32プロジェクトは出来ないのでしょうか? どれ選べばいいのかわからなくて困っています。
Webの経験あるんならElectronでいいんじゃない? WinFormsもWPFもとっくの昔に開発終了してるから今更新しく入るのはお勧めできないな
Electron使うならC#で在る必要性がないような・・・・
レスありがとうございます。 >WinFormsもWPFもとっくの昔に開発終了してるから それは衝撃です。 ビルドしてテストした感じ前者はビルド速度もリソース消費も良く、UIも期待通りで、 後者はビルドが遅くて、UIも表示通りにならなかったり、テストするのは面倒だなという印象でしたが、 もう改善が見込めないんですね。 UWPはWPFよりっぽいので、心配ですが、UWPをインストールして触ってみます。 いずれXamarinやUnity使ってみたいのもあって、C#の勉強をしてるので、 しばらくはVSでWindows用のアプリケーション作りながら頑張ってみます。
割と最近になってWinformsにHiDPI対応強化やWPFもスタイラス対応強化が入ったりしてるから とっくの昔に開発終了は語弊があるけどね とはいえMS自身の都合による突発的な更新という意味合いが強く 積極的にフィードバックを受けての修正や強化というフェーズはUWP以外終えてる感はある .NETという基盤やIDEは優れているのに肝要のGUIフレームワーク選びでgdgdになるのマジうんこ
UWPとWPFは似たようなものだから、どっちから学習しても問題なし。 覚えたことは簡単にUWPからWPFまたはWPFからUWPに移行できる。 そりゃ、コントロールとか微妙に違ったりすりけど、大きな問題にならんだろう。 xamlの機能に違いがあったりと、高度な事をやろうとすると差がでてくるけど。 だから、学習フェーズの普通の事する分にはどっちから入っても問題なし。
>WinFormsもWPFもとっくの昔に開発終了してるから 後、WPFにもFluent Design対応ぐらいはくるんじゃないの?
>>310 そういうお仕着せ的なものを持ち込むのはWPFの思想にそぐわないからそれはないよ
WPF的には、開発者が望むならFluent Designを実装できるだけの機能を備えている、で十分
そういうDIYな思想こそがWPFが使い辛いと言われる最大の原因でもある
去年のBuild2017のセッションの資料に明言じゃないけど、それをにおわせる ような事が書いてあったんだけどね
>>311 備えているならせめてForm時代と同じことさせてくれよ
なんでListViewの罫線自分で描かなきゃいけないんだよ
WPFはおわったんだ それをまた何十人~何百人のチームを作ってわざわざ新しいものを実装するだろうか?
.Net Frameworkのバージョンアップの内容追うと、WPFも地味に改良されてるけどね。
開発が終わったとか時代が終わったとか言われても趣味でやる分にはWinFormが一番楽 仕事でやる人は逆に何でも対応しなきゃならないだろうし
winformしたできんのだけどどうしたらええねん
コマンドラインのオプションを解析・パースするエレガントなLinqを教えてください 例えば、 -i "hoge.txt" -i "fuga.txt" -o "hogefuga.txt" というコマンドを受け取った時、 { "i" : [ "hoge.txt", "fuga.txt" ], "o": [ "hogefuga.txt" ] } こんな結果に変換したいです GroupBy()を使えば出来そうな気がするのですが上手くいきませんでした
標準Linqだと辛いので拡張書くかな 少なくともコマンドラインオプションとオプションの引数をひとまとめにするやつは欲しい感ある
クラス使わないと非常に汚いことになるし オプションの設定を渡さないといけないのでlinqだけでは不可 たとえば-sがオプション必須かどうかがパーサーにはわからない a.exe -s a.txtが (a.exe)(-s a.txt)か (a.exe)(-s )(a.txt)か
c#ができたころからコマンドラインオプションの話はずっと言われてる 昔から独自実装したものはあちこちにある
.NET Coreのdotnetコマンドのビルドが遅い 速くする方法は無いの?
初歩的なことなのですが・・・ ドット(.)を使って他所のメソッドやクラスを引用?してくるのをよく見かけますが それがメソッドなのかクラスなのか見分けるにはどうすれば良いですか? (クラス).(メソッド) の場合もあれば (メソッド).(変数) の場合もあるのですよね・・・?
>>326 そこだけで確実に見分ける方法はない
VSの色分けやツールチップに頼るしかない
>>327 すみません ()の有無でどう判断が付くのでしょうか・・・?
>>328-330 そうだったのですね・・・
見分ける必要がないのですか 難しいです
プロパティなのですね 気を付けます
教えて頂きありがとうございます!
>>331 括弧がつくのがメソッドでつかないのがフィールドかプロパティ
>>331 下の例は判断できないけど、上のは後ろに()がつくからメソッドだとわかる
>>332 >>333 そういうことだったのですね
勉強になりました これで少し先に進めます・・・
ありがとうございます! 精進します
>>334 相談室じゃなくて初心者のほうに行った方がいいな。今回は優しい人がいて良かった。
>>335 そういったスレッドがあったのですね;
ありがとうございます 次からそちらで質問をします
>>324 .NET Core 2.1ではビルドのパフォーマンスが大幅に改善されてるらしい
OrchardCoreのビルドで70秒かかってたのが7秒弱に
>>337 .NET Core SDKをv2.1.4にして
早くなった…ような気もする
ソースを何も変更してなくても変更をスキャンするのは無くならないんだろうか?
本家.NET Framework+Visual Studioだと
何も変更が無い場合はほぼ一瞬だったのに
Restoreっての毎回してるけど これやらなかったら早い?
C#のアプリからエクセルのシートのような罫線や文字が書かれたものをプリンターで印刷したいのですが、プリントオブジェクトで一つ一つ座標を確認して描画しながら印刷するしかないでしょうか 何かいい方法などあればご教示下さい オフィスが入ってない環境でも実施出来るようにしたいのでエクセルは使えません
>>343 オフィスが入ってない環境っていう糞みたいな選択肢を捨てれば幸せになれる
>>343 WPFは知らないけどGDI+でちょっとした表を印刷するなんて
たぶん思ってるより簡単だから自分で書いた方が早いよきっと
>>343 どんな表を想定しているのかわからない。DataGridViewとかはだめなの?
フリーの表計算ソフトインストールしたほうが確実だと思うよ
どっちにしても画面出力ならともかくプリンタ出力はC#だと信用できない
ライセンス関係がどうだか知らんけど、まだクリレポもあるみたいだね でもまあ、余程こった印刷するんじゃなきゃ、自分でゴリゴリ書いた方が早いし応用も利く
今のHTMLって物理単位で座標やサイズ指定できるの? 俺はまったくいい案だと思わんね
HTMLで帳票出力するアプリなんか世の中いくらでもあるだろ 帳票にミリ単位の精度を要求される高度なお仕事お疲れ様です笑としか
倒錯してるね A4ならA4に綺麗に収まるようにレイアウトするなんて最低条件。 子供の遊びじゃないんだから
そんなくだらない仕事に誇りを持てるなら幸せなことだね
あるフォルダにexe配置して、複数人で同時起動する場合log吐き出し等、PC事に吐き出せますか?
>>343 です
レス頂いた方ありがとうございます
基本的には地道にやるしかないんですかね
GDI+はもう少し調べてみます
html+cssは確かにかなり使えそうなので今後の引き出し用兼ねて、じっくり試してみてみます
Excelをテンプレートにして値を埋め込んで印刷できるツールなら(金を出せば)あるよ
>>357 得体のしれないものに金を出すくらいならオフィス買えよ…
帳票のデータをDBにぶち込むアプリ作ってるんだけど動的なSQL文作成って普通はどういう作り方をするもの? 今は列が2個とか3個だから@"insert~"ってベタ書きしてsqlparameterで値入れてるけど 元データがファイルならSQLインジェクションは考えなくていいはずだからSQLparameter使う必要はないはずだし 列の数が増えたら改造が大変になるから改修作業が楽になるような作りにしたい 今はSQL文作成部分をDBごとに別々のメソッドで書いてるけどこれも共通化できるもん?
>>359 そんな程度のものだったらEntityFrameworkで十分
パラメーター渡すだけで普通はSQL文はいじらないと思う テストに困る SQL専門家がいるところではそんな感じ
HTML+CSS+wasm in C#みたいな文脈で開発がしたいにゃ~
C#て使われるスタンダードな帳票ツールってなんでしょうか?
>>365 私の会社は運送業界なので荷札とか直接紙で出しています。excelやaccessで帳票出せるのですが、荷札に綺麗に印刷するには各端末の設定に依存していて、変更する度にその設定作業で禿げそうなのです。
あとExcelとかはバージョン管理ソフトで差分見れないのもストレスです。
クリレポって言葉が出た直後のこの質問 分かってて聞いてるとしかw
http://techoh.net/wpf-control-storyboard-with-code/ このサイトを見て、アニメーションを学んでいたのですが
Rectangleは動くのですが、このRectangleの代わりに画像を動かしたいのですがどうすればいいのでしょうか?
単純にImageに代えただけでは上手く動きませんでした・・・
Null非許容型自体は悪くない 標準のclassをNull非許容型にする必要はない Null許容前提で設計されてるものをなぜ急にNull非許容にする? クラスをまともに設計してないのか?
意識高い系の人達が標準のclassをNull非許容型にしたいだけ null非許容にするとこれまでロジックミスでnullになってたものが意図しない初期値になってるだけで 不具合自体が見つかりにくくなる 今までは止まってたからわかったけどそれがわからなくなる 動いてるけど何かおかしい状態が増える
普通だったら今までのを標準にして新しい機能を拡張とする それが今度は逆でさらっと破壊的変更が入りましたで終わり
>Null非許容型を前提としたものかどうかAssembly単位でも設定できる アセンブリ単位だと言うことが問題だと思うけど 既存コードはそのまま通せないということ
>
>>401 > 大方どっかのチュートリアル通りの手順を踏んだだけで、現在のproposalなんか確認してないんだろうな
> そんなん猿でもできるわ
そちらの猿はやった?
それとも猿以下?
WPF使えないやつは馬鹿 MVVM使えないやつは馬鹿 Rx使えないやつは馬鹿 とか言ってるけど全然普及してない 使えないんじゃなくて使ってないだけ
ブーイモ MM6d = アウアウウー Saa5 荒らすなボケ
ソース単位で見てこれはどっちの仕様のソースなんだろうかと考えないといけない時点でおかしい
(ブーイモ MM6d == キチガイ) == (アウアウウー Saa5 == キチガイ) これでOK
defaultのclassを非Null許容型に変えるのは破壊的変更ではないのですか?
>>385 その方向性は間違っています
今までのレスで示した通り
>>387 そっちこそ俺のレスが回答になってることがわからないなら英語読めてない
>>373 >既存コードはそのまま通せない
はいキチガイ
>defaultのclassを非Null許容型に変えるのは破壊的変更ではないのですか? これにすら答えられないんだから言っても無駄か
俺は最先端(笑)追いかけるの興味ないんで実際にはどうだか知らないけど、 常識的に考えればMSが既存のコードに重大な影響がでるような破壊的変更を許容するはずがない。 杞憂を通り越して被害妄想にしか聞こえんなあ
>>399 今のMSはVSのマイナーアップデートに平気で破壊的変更ブチ込んでくるぞ
C#7.1も正式リリースでバグ出しまくって破壊的変更で修正入れてる
リリースに客のお伺い立てないといけないような連中はもう相手にしてないんだよ
>>401 nugetの仕様変更である日突然ビルドが失敗するようになったりはする
>>402 まさかlatestにしてたってオチじゃないよね?
>>400 プロジェクトのデフォルト設定では、言語バージョンは最新のメジャーバージョン(C#7.0)を使用するようになっているのだが。
ふらっとがバカの間違った知識自慢であふれていて見苦しい 常駐している奴らはまともに動くコード書けないんじゃね
初心者です。 C#でMainWindow.xamlのtextbox name=a,b,c を MainWindow.xaml.csにて配列に格納する場合、どう書けばいいですか?
C#とは直接関係ないかもしれませんが教えてください。
VS2010で開発したEXEですが、DropBox上で起動するとタスクバーにアイコンが表示されません。
本来表示されるはずのアイコンが「白」で表示されてしまうのです。
そこで、ローカルの C:\hoge\test.exe といった具合に配置して実行するとしっかりタスクバー上にアイコンが表示されます。
↓の手順も試してみましたがやはりだめです。
これは、Windows 10のアップデートによるバグなのでしょうか?
https://win10labo.info/win10-non-icon/ >>413 埋め込みリソース????
ちょっと調べてみます。
C#のコード規約って何かデファクトスタンダードなものありますか? 開発者がDelphiなこともあって一般的でない自負があるのか 自分流に統一できてれば問題がないという感じで緩いのはわかるのですが
>>415 命名ならこの辺
https://msdn.microsoft.com/ja-jp/library/ms229002.aspx あとはVisualStudioのコード分析とか
書籍ならEffective C#
来週新刊のMore Effective C# 6.0/7.0も出るぞい
業務系ではほぼオワコンなので今更コード規約を厳しくしても将来性はないだろう。
codePlex終了はC#終焉への序曲なのか?MSはいつも中途半端で投げ出すからな
CodePlexがサービスを終了し、GitHubへの移行が推奨される
https://www.infoq.com/jp/news/2017/04/codeplex-github >Microsoftは、CodePlexプロジェクトから知名度の高いgitホストへのインポートを効率的に進めるためにGitHubと協力してきた。
>移行手順がプロジェクトのソースコード、ライセンス、およびドキュメントをGitHubに移動する際のガイドラインと共に準備された。
>移行ツールは、イシューの移動をサポートするよう拡張される予定である
>>420 MS自身が移行を積極的にやっていてCodePlexでできた資産まで捨てるわけじゃない
C#がオワコンだろうが趣味でしか使っていないから使い続けるだけ
仕事でやっているけど他はできないって人間が万が一いたらそのままシネ
CodePlex閉鎖とかいつの話だよ石器時代から来たのか?
MSがPWAってのに手を出すことになったことで、将来的に需要が縮小する可能性は高くなったな 特にASPは直接的な競合となるから厳しい
>>428 何の需要が?PWAとASP.NETは競合(比較対象)にはならないけど
unityはc#一択 スマホのマルチプラットフォーム開発もザマリンでc#一択 じゃなかったんか
あのふざけたスライドが無ければそうなっていたかもしれないね
そういう気色の悪いことを平気で掛ける自分を気色悪いと思わなくなったら もう立派なストーカー予備軍。 どうせキモータなんだろうけど、執着するのはアイドルか2次元にしとけよほんと。 きもっ
C#がだめとして そしたら次はなにやったらいいの? JavaScriptとかしょぼいのやらなあかんの?
>>437 向いていないからプログラマやめればいいよ
ダメとしての意味が分からないけど、 他にもいろんな言語があるから好きなのを使えばいいよ TypeScript Python Go このあたりがいいんじゃないか さらにやる気があれば c++
元Pythonistaやで C++よりはRustがええなあ でもTypeScript含めてJavaScript系は好きになれんなあ
ふらっとスレもそうだけど「C#を使う人の雑談スレ」だと思っている人多いな こんな過疎っているところでなくマ板に行けばいいのに
初心者ですが質問させてください。 VisualStudio2017でDLLの作成をしようと思っています。 DLLプロジェクトのなかでSystem.ConsoleやSystem.IO.Pathクラスを使用したいのですができません。 「現在のコンテキストに 'Path' という名前は存在しません。」というエラーです。 コンソールアプリのプロジェクトなら問題なく使用できます。 どうすればDLLのプロジェクトでも使用できるようになりますか?
>>442 エラーが出るミニマムコードを作ってふらっとで質問してください
>>444 Console等はmscorlib.dllだと思うんですが参照の追加をすると「既に自動的に参照されています」と出ます・・・。
>>443 了解しました!
>>442 プロジェクト間違っているだろ
クラスライブラリ(.Net Framework)を選べ
プロジェクト選択画面の右側に(.dll)を作成するための~って表示されるはずだから
それでもできないのなら必要なものをインストールしていないか何か余計なことをしている
ヒマだったんで簡単なサンプル
クラスライブラリ
https://ideone.com/Sho1IP それを利用するコンソールアプリ
上で作ったdllを参照に加えてビルドすること
https://ideone.com/PSzA8t 実行ファイルにドロップされた"*.txt"ファイルをシフトJISとして読込みコンソールに表示するだけ
どっちもVS2017のデフォルトの設定で作られている
dllを作らずに別で作ったプロジェクトを追加して使うのって邪道ですか?
>>446 クラスライブラリのプロジェクトは全部試しましたができませんでしたね・・・。
「ユニバーサル Windows プラットフォーム開発」というのをインストールしていなかったのでそれを試してみます!
返信していただいてありがとうございます!初心者用のスレは荒れていて質問できる空気ではなかったので・・・
>>449 それUWPアプリで違うから。できるかもしれないけどインストールしていないんでわからないw
取りあえず書いたとおりにやってくれよw
>>450 色々やった結果やっぱろプロジェクトが間違ってたいで無事できました。
ごめんなさいお手数おかけしました;;
>>451 解決できたのならこっちもほっとしたよw
報告お疲れ様です
public class MyClass<T> where T : MyClass<T> { ・・・ } こんなコードを見たのですが、意味を教えて下さい。
「ジェネリックのwhere」はともかく、 「作れないクラスの作り方」は気になるなw
C#と.NET Frameworkの標準ライブラリだけでFAX処理ってできます?
外部ネットワークに繋がる環境で動かす前提とは限らないしなぁ
FAXどころかプリンタすらC#使ってやるのは不安になるなあ 趣味レベルでちょっとしたツール作る分には楽でいいんだけど
ソースコード読めば、C#ってこんなもんかって安心できるぞ
>>465 何のソースコードを読むんだよ
WinAPIやCOM使ってできることならなんでもOKって知っていればどうでもいい
>>466 何のソースってC#のライブラリのソースだよ
>WinAPIやCOM使ってできることならなんでもOKって知っていればどうでもいい
だったらなんで不安になるんだ?
芥川龍之介の念波、我が身に降臨せり 「何か僕の将来に対する唯ぼんやりとした不安である」
>>469 不安とか言ってないでさっさと邪宗門の続き書いて
この板には羅生門に登場するような地獄の住人・魑魅魍魎が跋扈してるな
仕事の多いプログラミング言語のリスト
C# 意外と頑張ってた
LINQのWhereで 匿名関数に渡されるエンティティを他のメソッドに渡したりするとOneToManyを使う条件が動かない これに気付かず小一時間無駄にした エンティティの代わりにIQueryableを渡すことにした こっちの方が書きやすいし条件を再利用出来る
LINQというか Entity Framework Coreのデータベースにクエリーする時のLINQ
C#だと、C++同じように書いてもずっと遅くなることがある。 それにメモリを多く食う傾向も。GCはどのタイミングではいるか分からないから、 スクロールの途中で入った場合は、まるでPC-8801のBASICで書いたプログラム のように素人っぽいアプリになる。C++が使える人が使うのは推奨しない。
C#はC++と違って速さではなく信頼性に重きを置いてるから仕方ないね インスタンスはともかくアンマネージリソースは明示的に破棄するとか ファイナライザ任せにしない等の言語に合わせた組み方をする他ない
C++経験者でC#のパフォーマンスが落ちたり不安定になる人は、そもそもC++自体のスキルが低いと思う 関数ポインタとか仮想関数とかちゃんと使えないんじゃないかな
>>478 unsafe突入コストはどうにもならん。そんなことも分からないのはC#を碌に使ってないから。
>>475 ちょっと工夫すれば避けられる場合も多いし、C++に戻りたくは無いなぁ。
どうにもならない場合はスピードが必要な部分だけC++にするけど。
>>479 unsafeはオーバーヘッド無いぞ
アンマネージコードとごっちゃになってるのかな?
C#を碌に使ってる人の言うことは違うね
C#のunsafeは使い勝手が悪いから使わないな デバイス制御とかでポインタが必要ならC++でDLL化して、C#側はDllImportするだけだし C++をちゃんと分かっている人なら大抵参照渡しで済ませるから、ポインタ使う必要ないよね あとはWindowsAPIのDLLをそのままC#側にImportする手もある C++の関数コールバックもC#側のdelegateで問題なく使える
unsafeは不当に忌避されすぎだと思う IntPtrとかいう実質void*を駆使したコードなんて、unsafeよりよっぽど危険だわ ちょうど479のように、unsafeコード=アンマネージコードという誤解も未だに根強いし
>>481 意味すら分からないレベルか。馬鹿は黙ってたほうがいい。
>>483 unsafe突入コスト → unsafeコード=アンマネージコード
おまえもか。脳みそに蛆でも沸いてるかと思うレベルの理解力。ほんと馬鹿は黙ってたほうがいい。
頭おかしい御仁、こっちにも湧いてござるなw 無益だから相手にしない方がいいよ
「unsafe突入」がオレオレ定義で具体的にどこかを示さず逃亡するに一票
> unsafeはオーバーヘッド無いぞ
> unsafeコード=アンマネージコードという誤解
こんな馬鹿レスしたあとにくだらない煽りか。低スキルにもほどがあるな。
>>486 必死にID変えて連投してるからいつもの知ったか馬鹿だな。 相手にした俺が馬鹿だったわ。
C++で内部のメモリ構造を考えていない人がC#を使うと パフォーマンス落ちて不安定なコードになりやすい、っていう話なのに なんでC#でunsafe使う前提になっているんだろう?
>>490 内部のメモリ構造てw
お前c++使えんやろ何の勘違いしとるんやw
>>478 自分はC++の仮想関数も関数ポインタも難なく使ってる。そして、C#は自分では使った
事が無い。でも、他人が作った.Net製のアプリを見て余りの遅さに.Netが普及しては
困ると思った。Vectorに登録されてるアマチュアのC/C++のプログラムでも見たことがない
ような遅さの.Netのプログラムをハードウェアメーカーが付属品として付けて来る。プロ
なのに。
そりゃ単に作った奴の所為じゃないか…プロなんて生業というだけで プログラマーと呼べない連中など腐るほど居るし、門戸が広ければ蔓延るであろう JITコンパイルとか境界チェックとかコードセキュリティとかオーバーヘッドは有るけどさ
XNAでゲーム作ってキャラクター10万個くらい出してもほとんど処理落ちしなかったのに まともにコード書いた普通のソフトでそうそう遅くなるとは思えん
.Netは間に色々入るのでCPUキャッシュの効きが悪くなり、キャッシュの多いCPUでは C++のNative Binaryの2.5倍程度の遅さで済んでもキャッシュの少ないCPUでは急激に 遅くなる可能性があるかも。キャッシュミスがあると、数千クロックのオーバーヘッドが 生じるので、C++の1000倍くらい遅くなる可能性がある。
ロクに使ったこともない人がドヤ顔で解説とかシビレル
エビデンスよろしく
[間違い(または嘘つき)記事発見]
以下のリンク先の速度比較で、C# では言語Nativeな配列を使っているのに、
C++では、std::unique_ptr<> を使ってしまっている。そもそも、C/C++は、
高級アセンブラみたいなものだから、書き方を間違わない限りは、C#より遅くなる
はずがない。
「C#がC++より高速になった?」:
https://qiita.com/Chironian/items/e8c9f0147669f941936a C#
static void setLargeArrayManaged1()
{
var aArray = new byte[kCountLai];
・・・
C++
void setLargeArray()
{
std::unique_ptr<byte[]> aArray(new byte[kCountLai]);
・・・
公平に比較したいなら、以下のようにすれば良いだけ。こっちの方がC#と
ソースレベルでも似ている。この著者は馬鹿としか言いようがない:
C++
void setLargeArray()
{
byte *aArray = new byte[kCountLai];
・・・
delete [] aArray;
LINQは便利だけど落とし穴も多い でも便利過ぎて手放せない
Linqは裏側の動作までイメージ出来ないと簡単ゴミ作れちゃうのよねん
LINQだけでググるとこれが出てきてしまう。 LinQ(リンク)は日本の福岡県福岡市を拠点に活動しているローカルアイドルグループ。 この項目では、女性アイドルのローカルグループ LinQについて説明しています。 統合言語クエリ LINQについては「統合言語クエリ」を、その他のLINQについては「リンク」をご覧ください。
C#が遅くないとか言ってる奴に限ってアセンブラ経験がない。C#信者はVB厨とJava厨と同じレベル。
設計思想が異なる対象まで遅いだの速いだの言語価値はそれだけかよ ソースが同じなら処理も同じなんて考えるのが居たら㌧でもない事だ C#やILのコンパイラに瑕疵があるのなら然るべき所へ報告すれば良い
>>505 AWS Lambda使ったことないと誤解を生みそうな記事だなこれ
Lambdaのランタイムのオーバーヘッドを測ってるだけで、実質的なコードの実行時間はほとんど関係ないよこれ
プログラムを書いていてちょっと迷ってると、VisualStudioがメソッド等について説明の吹き出しみたいなのを出してくれるけどさあ あそこに出てくる説明の文章部分ってどうやって作るの?
さすがにアセンブラ経験なしでここで相談に答える馬鹿はいないだろ。ILだってまともに読めないだろうし。
どうしたの?一昨日のことでまだ言いたいことあった?ガイジ
>>509 メソッドの1つ手前の行でスラッシュ三回打ってワンと言え
>>509 シフト押しながら7を三回押したらでてくるやつの話?
>>509 に対する回答が
>>510 と
>>515 以外全く意味が分からない
>>515 が正解だと思うけど、どっちにしてもスレ違いだし
1レスに3個以上安価入れるのは行儀が悪いってママに叱られなかった?
キチガイが安価多用するからキチガイっぼく見えるよというお話
タグが増えると容量が増えてgzip圧縮に対応してへんブラウザやとしんどいねん VBコンポーネント使ってるやつとかな
>>523 の説明を聞いて納得。
>>520 は頭と性格が悪そうだと思った。
規模が大きくなるとただでさえVS重くなるのにReSharper有効にしてると耐えられないレベルになる VSCodeのC#サポートがもうちょっと賢くなれば移行したい
>>526 2017で軽くなるかもと期待したが、うpデートする度に重くなっていくような。
Sharp
>>527 大きなソリューションの読み込みはUpdateごとに確実に速くなってるけどね
forループとEnumerable.Rangeでループするのどっちが速いの?
理屈的にはmovenextとget_Currentの呼び出しコスト分遅いんだっけか?
>>530 この理由で頑なにfor使っている人居るけど、100万回でms単位の差で選ぶとか阿呆としか思えない
業務系c#開発でgitって使えるもん? 開発規模が社内だけなら面倒なだけな気がするんだけど、シェア考えると今からsvnは無い気もして
GitHubなら賛否あるけど、Gitなら迷わず使えばよくね
ギョーミーは50万年くらい遅れてそうでいいよな まだ旧人類やってても優秀な方にランキングされるようだぜ
業務系は下請けに出さないとgitサーバーも立てられないからな 世界的に有名な大企業でもまじでそんな感じ
いまの若い子はSVNの使い方知らないからやめといたほうがいいよ Gitにしか出来ないと思い込んでるから何も努力しなくなってるしな Git一択だわ
若い人は○○系の話って大抵若い人がそれを必要とする時点で絶滅しかかってるんだから知らなくて当たり前なんだよね だからむしろ知ってた時に驚くのが普通なのになぜか知らないことに驚くというのが意味不明
中小業務系とか素人スタートが数年居ればベテラン扱い gitどころかバージョン管理?なにそれおいしいの?状態
ソルーションZIP固め 正直、個人プレーならこれが一番わかりやすくて安心
>>533 ゆとり馬鹿はほんと数学ができないんだな。
>>548 >、100万回でms単位の差で選ぶとか阿呆としか思えない
おまえも仕事したことない無職なんだろうけど、リアルな話、
こんな馬鹿が一人でも混じってたら糞コードを大量コミットしてデスマーチになってしまう。
年金システムにはこういう馬鹿が大量にいたんだよな。
>>550 算数を数学とか言っているからバカにしたのに恥の上塗り
>、100万回でms単位の差で選ぶとか阿呆としか思えない 日本のスマホゲームはポチポチゲームばかりらしい。 こういう馬鹿な考えのヤツばかりでリアルタイムの仕様を理解できるやつがほとんどいないんだろうな。 そんな馬鹿がasync/awaitで知った気になってテスト不能のアホコードを大量に書く。 昔から、馬鹿の尻拭い=同期のバグなんだよな。
ID:2N4AiZYB ←低脳煽りばかりで技術的なレスは一切しない馬鹿。技術的なレスすると馬鹿がバレるからな。 > 100万回でms単位の差で選ぶとか阿呆としか思えない
アホみたいなスマホゲーム作ってる会社こそ、優秀な人材が集まってるんだぞ アホみたいに儲かるからな
ループの中身よりガワ気にするプログラマいたらアホかと思うわ
ループの中身もガワも大事 ガワが簡素ということは保守のしやすさに繋がるんだから、それなりのスペックのマシンで動かせる前提なら高速化のための最適化をガチガチにするより オーバーヘッド大きいけど簡単に書ける方法を採るべき その判断をせずいかなる場合も高速なのが正義というのは技術に酔ってるだけ
速度だけならC#よりVB6のほうが早いわけで、C#には速度以外のものが求められていると思うんだわ 勿論早いに越したことはないが
何ふらっとみたいな話題やってんだよ スレ間違えたかと思ったわ
>>565 UWPはツールチェインに.NET Nativeが組み込まれているだけの話じゃね
>>562 >>563 VB6はネイティブコンパイラだよ
あんな質の悪いコードをネイティブなんて(蝶々蜻蛉も鳥の内)
Console.WrteLine("{0}です", number);と Console.WriteLine(number+"です");だとどっちがいい? 最初の方をよく使うんだけど
「どっちがいい」の基準が分からん string.Formatでも同じだが可変要素が多いときは上の方が分かりやすいとしか言えない
Console.WrteLine($"{number}です");
某プログラミング言語勉強サイトで後者で打ってる模範があって見にくくてつい質問をしてしまった
>>571 {0}派だったけど今はこれしか使わないな
>>573 同じ変数を何箇所も使いたい場合は{数字}の方が便利
国内のドカタワールドはC#2.0で早くも息切れしてきて3.0で脱落者が出始めて4.0以降はほとんど追従できてない酷い有様 string interpolationなんて抜群にドカタ向きだから、dobonあたりが取り上げて宣伝したら流行ると思うけどね
string.formatって1.0の頃から存在した気がする
EFの文脈で$@"select * from Foos where {p}"って書くとちゃんとプレースホルダーに置き換えてくれるってので感心した
ほんとコロコロと書き方が変わってほんと糞言語になったな。
C#7.0-7.1は6までちゃんとキャッチアップできてる現場なら自然に受け入れられるものだけど、C#7.2はヤバい C++厨こじらせた奴がチームにいたらカオスになりそう そして8.0ではついにnull非許容参照型が導入され、年内には現在ある全ての既存C#コードに対して膨大な数の警告が出るようになる
最高じゃねえか ついてこれないレガシー人材も放置されてるレガシーシステムも要らん
そもそもプログラミングは低脳がやっていい仕事じゃねーからな この期に日本式の文系マと専門学校マは全員処分したらいい
>>583 文系かどうか、専門学校出かどうかは、本質とは関係ないのではないか?
馬鹿なやつを特定して排除するならまだしも、経歴 **だけ** で判断するのはいかがなものか?
レッテル貼りして思考停止して片付けるのは楽だよな
>>581 現状でもVSで推奨されないことに「メッセージ」は出るけど「警告」は出ないぞ
下位互換無くすのなら別の問題になるけどな
>>581 ヌルポ許容しない理由はなんでしょうか?
そもそも納品物がヌルポでよく落ちるのは単体テストをしない、手抜きだからであって、 新機能を好んで使う馬鹿は、null非許容参照型を導入しようとテストをしないのは変わらないわけで、 むしろバグが隠蔽される。VBのOn Error Resume Nextのバグ隠蔽機能の再来。 varと同様、コード品質を落とすアホ機能である。
単体テスト それは企業によって意味が全く異なるワードである
単体テスト ・関数単位のテスト ・アプリケーションをビルドして作成・修正した箇所を開発者本人が動作確認するテスト 大きくわけてこの2種類の解釈 xUnit世代は単体テストってアレだよねっていう共通認識があるかもしれないが 老舗企業でそんな意味で単体テストっていう言葉を使うと恥をかくぞ
>>587 if (arg == null) throw new ArgumentNullException(nameof(arg));
とか
Assert.That(Hoge(), Is.Not.Null);
みたいな頭の悪いチェックやテストケースが不要になる
>>588 一般に、新しいものを使いたがるPGの方がスキルが高いので品質も生産性も高いよ
もちろん、メンバーの状況によっては縛りをかける判断が適切な場合もあるけど、
それはあくまでスキルの低いメンバーの生産性と品質の低下を避けるためだ
新しいものを使いたがる系の奴に古いものを強制しても、生産性と品質が大きく低下することはない
しかし、linqだって10年モノ・・・新しい古いってレベルじゃねーよな
新しいフレームワークに飛び付く層はモチベーションの影響で生産力はあるかも知れないが、スキルが高いかというと微妙
varって気を付けないと000abdだと整数読み込みでするからstringで扱う時はstringでやるわ
C#プログラマは全員、ライセンスで訴えられるリスクを負う。とても危険。
ユニットテストを意識するようになればメソッドやクラス構成マシになるのに、どうせ単体テストやるしと数百行のメソッド大量生産の俺社
メソッドは原理原則通り20行まで・・・ってのはやりすぎかもしれんけど 全ては関数にわけられるだけわける 1つの関数に2つ以上の機能があれば冗長だとは思う
関心事が1つであるべきだよ 機能数は複数あってもいい 例えば顧客オブジェクトを取得する/作成する/更新する/削除するための顧客リポジトリ こいつの機能は4つだが関心事は顧客オブジェクトの永続化という1つだけ
>>602 でもやたら関数に分けまくるのもやり過ぎの悪例だからなぁ
一行メソッドのたらい回しとか可読性低すぎて引き継いだとき殺意が湧くし
1行でも意図が明確化するならメソッドにする C++とかやってきた人なら当たり前の感覚なんだけどね
Expression Bodyのプロパティやメソッドがなぜ導入されたのか 1行のプロパティやメソッドはそれだけ使用頻度が高いってこと
バカが書くオブジェクト指向()を舐めるなよ? あいつら『かめはめ波()』の機能を か() め() は() め() 波() にするレベルでバカだからな
意味を理解しておらず側だけ真似するからそうなる 猿は木の実でも取ってろ
独立している機能なら一行でも良いが 一連の塊で動いてる機能を再利用性の欠片もないパーツに切り分ける奴は頭が悪い しかもその切り分けた関数で他の関数を実行してたらそれはもうただの難読化だ
>>606 これが答えだよ
Microsoftや達人プログラマ達は1行メソッドの価値を理解して言語仕様まで変えてしまった
それほどまでに重要なものってことだ
一方で雑魚プログラマのお前らは価値を理解できずにぐちぐちと文句を言う
程度の低さを伺えるね
コメント代わりに関数使う
>>611 みたいなのが害悪なんだよな
プログラム構造が見渡せる行数になれば、ソレ以上の細分化は無意味なんだけどね メソッドの分割は中身を理解しやすくするのが最大の目的で、それを阻害するほど分割したら意味がない
俺もコメント代わりに分けまくる派 純粋関数で責任が明確なら可読性は上がるよ
一目見たら分かる処理をオレオレ命名で飛び地化 お一人様開発なら良いがチームでやんなよ
void MoveAX(unsigned short val);
>>613 コードで表現できるものをコメントで書くバカが本物の害悪だよ
>>618 コードで表現出来てることをわざわざ関数名で伝えようとするバカが何だって?
>>614 中身を理解しやすくするのは実装の仕事
メソッド化する最大の目的は実装と意図を分離すること
僕が引用したリンク先でマーティン・ファウラーがわかりやすく説明してくれてるからぜひ読んで欲しい
三行で書かれてるコードならその場でその三行を修正するだけで済むが、 それを三つの関数に分けるとわざわざ別の行までスクロールして修正する作業が三回発生する どちらが効率的で生産性が高いのか普通なら考えるまでもなく分かることだが、自意識過剰なバカには分からないのかも知れない 何せ自分のことを『達人』とか思い込んでるレベルのバカだし
>>620 コードで表現していることを関数名で抽象化するんだよ
抽象化はプログラミングをする上で最上級に重要な概念だけどどうもIQが凡人以下だと理解できないらしい
物事を理解するにはその内容に応じた知能がどうしても必要になる
凡人が数学者や物理学者に成れない
難しい概念がわからないという感覚は人としてどうしようもないものなんだ
だからこのスレにも抽象化がわからない人が居てもおかしくはない
>>622 場合によるんじゃないかな?
その一行が何度も出てくるなら関数化したほうが修正が楽
何百回修正するか
一回修正するか
>>622 そのコードがなんのためにあるのかということを考える作業が3回も発生する
そのコードを変えて他に影響がないか確かめる作業が3回も発生する
同じことを他の場所でしていないか確かめる作業が3回も発生する
酷い無駄だ
関数化で抽象化はされる 抽象化された関数で何をやってるか詳しく関数名に入れると無意味なことになることもある むずかしいよね
bool IsEmpty() => this.Length == 0; このレベルの実装であれば何も文句はないが、大半はそうじゃないのが現実
適切な直行化ができてれば、一連の処理の流れに関わる多数の関数を一緒に修正するなんてことはそうあるものではない その程度のスキルレベルなら分け過ぎはよくないのは同意する
もともと一行関数だったものが徐々に成長していくこともある でも呼び出し元のコードは変わらない ロジックが変わってないからね これは大変素晴らしいことだと思う
十分に責任の明確化ができている関数は中身を見る必要が無くなる 不要になって消すことはあっても中身を弄ることはめったにない この名前でこの引数を受け取るならこの結果が返るのが当然、と思えるのが正しい関数だ
>>627 をバカが真似した例
void Increment(ref int a) => a++
(※現実にあったコードです)
>>631 そのレベルの現場ならCOBOLみたいにMOVE羅列してる方マシだね
世の中そういうところばかりではないから文句があるならさっさと転職しろ
コードを書いてる時点で将来をすべて予見できるような素晴らしい環境にいるならいいけど 大体はそんなことはない 仕様を考えたのが他人であろうと自分であろうと
>>631 範囲を扱うアルゴリズムに使わせる目的で使うイディオムだよ
こうしておけばプリミティブの数値も数値っぽい型(例えば巨大整数クラス)も同じように扱える
ようするにただのストラテジだな
まあ正直C#で
>>631 は無意味とは言わないまでも違和感あるけどな
>>631 もC#だけでなくc++とか経験してみるとこういう短い関数の真価を理解できるんじゃないかな
巨大整数とか仕様にカスリもしない未来を妄想して複雑化して「これがシンプルなんだよ!」と強弁するとかアホの典型だな グループ開発の経験もない無職かよ
最初から無駄に俺様カスタマイズしたがるのはこじらせたC++erによくあるYAGNIだね そして、Incrementの例のように基礎的な部分には異常に拘るくせに普通のアプリケーションコード部分は巨大なメソッドを生産する奴が多い その割にはポインタ演算は大好きで、配列操作になるとウッキウキしてクソ低レベルなアスタリスクと++だらけのコードを垂れ流す そういう連中だよ
ふらっとも伸びているようだし承認欲求に飢えているアホどもが暴れているのか
>>638 でもそれってお前の妄想じゃん
c++の仕事任されるほどスキルないっしょ?
>>641 「巨大整数にも対応してるオレ様のフレームワークを使えー!」
どんな面白い問題で盛り上がってるのかと思ったらしょうもな。 (1) 道具が多すぎる道具箱は使いづらい からと言って (2) 短すぎるメソッドは「無駄な道具」である などと言えるわけがない。 そうである場合もない場合もあるに決まってる。 こんなくだらない話でよく盛り上がれるな
>>643 だから無駄な道具を乱造して散らかす奴が悪いんだろ?
いくら「これが正しい!」と喚いてもゴミ屋敷をスマートとは言えんわ
なんかずれてんな
いやわざとか?
みんな「1行コードはクール」
みんな「いや害悪だ」
>>631 「1行コードにはこんな意味不明な頭悪いコードが実在するんだぜぇ」
>>634 「いやーそれはストラテジでしょ。普通のコードだよ」
あほ「巨大整数ガー!ゴミ屋敷ガー!」
途中から明後日の方向に向かってんだよ
一例に過剰反応バカが湧いてきたあたりからね
一つ言えるのは、一行コードをセンスが無いやつが書くとゴミクズになるってことだな まあ何行でもゴミと言えるかもしれんが、一行のゴミはメンテする時腹が立つ
1行メソッドの利点を理解できないアホが逆ギレしてるだけのパターンもあるということは忘れないで
一行のゴミにも何か利点はあるはずだと頑なに改めようとしない
>>647 なのであった
マジでゴミ屋敷の主だな
>>645 はstrategyも理解してないアホの子だから許してあげて
ただのラッパーを戦略と勘違いしてるなんて、きっと今年の春から働き始める新人だから
上司「なんでこのインクリメントを関数に分けてんの?」 新人「様々な型に対応する為のストラテジです!巨大整数などにも対応できます!」 何というか無能な働き者って言葉がしっくり来るな たぶんこいつは誰からも理解されずに五月病患って数ヶ月で退職するわ
インクリメントの(多相じゃなくて正しい意味での)ストラテジって何だろうね ++とInterlocked.Incrementを切り替えるとか? エイプリルフールネタにもならんな
ここには初心者スレに行ったほうがいいような連中しか居ないようだな
ゆとり世代はなんでも揃ってるところからスタートだから楽でいいよな iteratorの実装なんて考えたことすらないんだろう 羨ましいよ
>>650 何で巨大整数に対応する必要ない状況を前提としてるの?
対応すべきという状況を前提とした途端に真逆の結論になると思うけど
仕様上ありえない予測 それを人は 妄想 と呼ぶのだ
巨大整数対応を勝手に仕様上あり得ないことにしている点 「○○にも対応できるように」の○○に巨大整数を入れるのはあくまで一例であり他にも山ほどあり得る点 この辺りが問題かな 言われた通りの物を納品すればいい所謂IT土方系の環境なら問題にならないんだろうけど
>>656 対応すべきという状況を前提にしたとしても、
>>650 の新人がストラテジパターンを誤解している阿呆であるという結論は覆らない
>>631 を型ごとに用意するのは一般にはパラメータ多相、あるいは単にオーバーロードと呼ぶんだよ
すまん訂正 パラメータ多相じゃなくてアドホック多相だな
この手のっていつも「自分の前提」の元に議論初めてかみ合わないんだから止めとけよ ネタが下らないことだし、そんなことにこだわるしかやることないのかよ
int型をBigInt型に切り替える必要が生じたとして、 型宣言から書き直さないといけないのにインクリメントを分離しておいて何が効率化できたというのかと そもそもオブジェクト指向に則ればその型自体にインクリメントを備えるだろっていう 現実に設計したこともない新人が本の知識で言ってるだけだなこりゃ
正しい設計 INum num = new Num() // INum num = new BigNum() ←クラス名を変えるだけ num++ ←機能は型で規格化されてるので変更無用 間違った設計 Num num = new Num() // BigNum num = new BigNum() ←型から変える必要がある Increment(ref num) ←何これ? void Increment(ref Num n) 処理 void Increment(ref BigNum n) 処理 ↑型の数だけオーバーロードする必要がある
どーでもいいことかもしれんが、セミコロンがないのが凄く気になる
>>660 はぁ? どう見てもストラテジだろカス
void func<T>(T mi, T mx, FuncObj<T> increment) {
for(T i = mi; ! i.Equals(mx); increment.Exec(i)) {
//
}
}
class BigIntIncrent : FuncObj<BigInt> {
public Exec(ref BigInt x) {
x = x.Add(1);
}
}
>>663 なんでBigIntのソースが手元にある前提なんだよ
まあ素人は標準のパッケージ以外を持ってきて使うなんて経験はないのかもしれんから間違えても仕方がないか
君素人っぽいし
>>665 惜しい。一旦クールダウンしてよく考えよう。
同じ入力(コンテキスト)に対して複数のStrategyを定義し、状況によって使い分けるのがStrategyパターンだ。
一方incrementの場合、実装は入力の型に応じて一意に決まるだろ?「同じ入力」に対して複数の実装があるわけじゃない。
そういう、引数の型に応じて静的に実装を選択するのを一般に「多相」という。
特に、君のコードは関数型言語で型クラスと呼ばれるものに近い。ググってみると勉強になるよ。
>>667 1つ飛ばしでイテレートしたい場合とか同じ型でも幾らでもバリエーションは考えられるわけだがわかんねえだろうな用意されたもの使うだけのゆとりには
>>665 なにこの頭悪すぎるゴミ
意図が読めない典型じゃん
>>669 あらゆる物事に対してそれを理解するために必要な知能の下限が存在する
これって1つの真理だと思うのよ
>>670 funcって何?
funcObjって何?
miって何?
mxって何?
Execって何?どういう機能?
BigIntでAdd?コレクションなん?
パッと見ただけでこれだけ疑問が湧くんだが、
プログラマ百人に聞いたら百人が死ねって返すレベルのクソだぞこれ
命名だけでバレる実力なら無理して書くなよ
>>668 そうだね。確かに君の言う通りだ。
じゃあ君はなぜ
>>665 でわざわざジェネリックを使ったのかな?
>>665 を見た殆どの人は、型に応じて++の実装を切り替えたいのだろうと思うだろうね。それを君はストラテジだと言っている。
このままでは誤解してしまう人もいるだろうから指摘したんだよ。
君自身はもしかしたら本当は正しく理解してたのかもしれないけど、衆目に晒すにはあまりにも不適切なレスだ。
文脈読めない、中心になってる話題を理解して枝葉末節を気にしない、っての実践するにもある程度の知能が必要なんだろうなー そういうの苦手な人ってミーティングの時とか相当鬱陶しがられてると思うから注意したほうがいいよ
>>665 これforでローカルに代入してるが値型のつもりなのか?
>>673 悪いけど、文脈を読んだら
>>665 のコードは100人中100人が型++を切り替えようとしてるのだろうと解釈すると思うぞw
>>672 ジェネリックかどうかは関係ない話だろ
この例も仮にスクリプト言語だったら型引数は無くても動作する
たまたま型の指定が必要な言語を例に使ったからジェネリックになっているだけ
しかしそのエッセンス自体は何も変わってない
まずはそこを理解しよう
>>665 を読むとこいつうちにいた新人より頭悪い気がする
ストラテジとか言いながらやってることが関数型だし
これでデザパタのつもりなら学校通い直すのを勧める
ここでいうエッセンスというのは
* 処理の一部を外部から与えることによってアルゴリズムを交換可能にするテクニックをストラテジーパターンと言う
* ストラテジーはしばしばインクリメント処理のように非常に小さな処理になることがある
* その一例が
>>631 であり
>>631 馬鹿げたコードでもなんでもなく実用的なコードの断片である
という3点のことな
>>678 λや関数オブジェクトがサポートされる言語では暗黙的にストラテジーの考え方が利用されている
そうと意識してないだけだ
ちょうどいい時期だ上司に頼んでお前も新人研修受けてこい
何も見せてなければ何とでも言えたろうが、
>>665 を見せてしまったらもう無理だな
レベルの低さが露呈してるから言い訳にもならない
正直
>>665 を見たあとだと
>>631 が優秀に見えるくらいだし
>>680 世間一般的にstrategyというのは
>>663 の例を指す
お前のは違う
そもそも関数の細分化は可読性を損ねるって話なのに、 抽象的で省略しまくりの名前付けてる時点でな 設計に口出すのは十年早いと思うわ
どうでも良いが
>>665 をよく見るとこいつrefの使い方すら知らないど素人くさいな
値次第でループバグ起こす構造だしこんなコード実務で仕込まれたら俺ならテロ認定する
本気で書いたコード貶されたら 「あれは手抜きだからw」と言い出す まあリアルにいるよな
ミーティングとか言い出して露骨に話題を避けようとしてるの笑える
stringが参照型ってことはさ string str; void Reset() => str = ""; とするより string str; string None = ""; void Reset() => str = None; と生成済みのテキストを使い回した方が効率良いの?
>>692 null代入するのはC#8.0で警告対象
>>690 変わらないと思われ
string Func0(){return "test";}
string Func1(){return "test";}
string Func2(){return "te"+"st";}
string Func3(){return "TEST".ToLower();}
string a=Func1(), b=Func2();
Console.WriteLine(Object.ReferenceEquals(a,b));
>>693 非推奨になるのか!
って、C#5.0から変える気が無いけどもw
>>690 これILはどっちも一緒の結果にならないのかね
>>698 Formしか使わないからね
まぁ最近はスマホが多いのもあるけど
C#ってどんどん惨くなってねーか。業務じゃもう使えないだろ。
アメリカではソフトウェアの内製化やクラウド化により、 ソフトウェアは自己責任でどんどんリリースできるようになってるの 自己責任ならデグレ出したらこっそり直してすぐにリリースしちゃえばいいの SI型ビジネスとは違い、過剰にリスクを避ける必要がない VSやC#もそういう変化に適応して開発やリリースのポリシーが変わってしまった もうジャップランドのSIでは使えないよ
リッチテキストボックスでDetectUrlsをTrueにしてハイパーリンクを開けるようにしたんだけど、 ハイパーリンクをクリックして既定のブラウザで開くと、勝手に最終行までジャンプしてしまう。 仕方がないのでEnabledをいったんfalseにして、その後開き、もう一度trueに戻すとジャンプはしなくなったんだけど、 リッチテキストボックスの任意の場所をクリックすると、やっぱり変な場所に表示が移ってしまう。 なんか対策ないでしょうか?
>Enabledをいったんfalseにして、その後開き、もう一度trueに戻す ごめん何言ってるのか全然わからない
>>706 すいません、こうです
private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)
{
richTextBox1.Enabled = false;
System.Diagnostics.Process.Start(e.LinkText);
richTextBox1.Enabled = true;
}
treeViewのちらつき防止ってどうやるんだろう? 5chブラウザとか、mousemoveでテキストにアンダーラインが出るようにしても全然ちらつかないよね ダブルバッファでいけるのかと思ったら、treeViewはそれでは解決しないようで・・・
>>705 ミニマムコード書いて確認しろよ
クリックした位置にカーソル出ないのなら分かるが勝手に最終行までジャンプとか意味不明
あと初心者スレ池
>>700 もうここ10年新規案件やってないな。全部Javaに持ってかれたまま。
当然といえば当然だな。老害ヘジの暴走を誰も止めることができなかった。
ID:d442a5v8 ←みたいな低スキル信者の取り巻きばっかなんだろうな。
CAD系だから低身の見物 流石にJAVAでやれと言われた事は無いな
会社で生産管理ソフト導入したらそれ.netだった 描画はネイティブのDLLに丸投げだったけど
業務で言えばjava : c# = 1000 : 1 ぐらいなイメージ
業務だと冗長でもいいからバカでも使える単純な機能だけで組まなきゃいけない 三項演算子程度のものも使用禁止 C#とは無縁の世界
それだけじゃ足りない どんな初心者、いろんな人が保守しても長期間にわたって大きく崩さないような土台を建てる必要がある 超絶技法で難解なプログラムを作るよりよほど難しい
そして冗長でコピペだらけの巨大なシステムが出来上がって別の意味で保守できなくなるんだろ 業務系ってそんなシステムばっかりじゃん 誰でも読めるようにひらがなだけで六法全書を書く並みにバカ 余計わかりにくくなるだけ
それは分かりやすさというより開発のスケーラビリティの問題 日本のSEってトップダウンのコード設計が全くできないから、 開発規模をスケールさせようとすると重複上等でなるべく個別の機能ごとに独立した形にするしかないの
重複した分だけ開発・保守工数が増えてくから重複上等じゃスケールしないよ あっちでバグがあった、仕様が変わった、横展開しろ、って炎上の王道パターンだよね つかわかりやすさの問題だ 言語機能は便利でわかりやすいから追加された それを使わないということはそれだけわかりにくくなるということ ベタなループ書くよりLinqの方がわかりやすいからLinqが発明された そういうこと
20年以上前から言語機能では勝負してないと思う そういうのよりミドルウェアの有無などのほうが業務でjavaが選ばれる理由だと思う 一から新しいものを作らないといけないか既存のものを使えるかが分かれ目 業務で必須のDIとかそういうのをしっかり土台ができているのか c#はそういう所でjavaに負ける
Javaなんて、Android向けのクライアント開発なければどうなのよ?? 今業務でもサーバーサイドJavaなの?? んなわけないよね?
業務系のロジックは大体javaだよ 一般的に開発求人といえばjava 大規模になればなるほどjava以外の選択肢はなくなる
今時ミドルウェアやサービスに大した差はないってのが現実
そもそもプラットフォームや言語を選ぶ時点でそのミドルウェアは候補から外していい
>>720 Javaで書かれたサーバーサイド資産は大部分がメンテナンスモード
新規開発はかなり減ってる
webプログラマーと業務プログラマーは別 業務はほぼjava一択
>>716 ちゃっかり業務系を六法全書に例えるなよw
あれは絵本だぞひらがなが最適なんだよ
EXCEL(xls形式)のデータを読み取って何らかの処理を施して別ファイルに書き込みたくてNPOIについて調べてるんだけど セル内文字列の一部に文字飾り(取り消し線、上付き、下付き)がある場合にどの文字飾りか判定できる方法ってない?(文字飾りを反映させて別ファイルに移すために) HSSFRichTextStringとして読み取ればnumFormattingRunsが文字飾り有無で文字列を分割した際の部分文字列数となることは分かった getFontAtIndex、getFontOfFormattingRunで指定箇所の文字飾り情報が分かると思ったんだけどこれで得られる数値が同じ文字飾り種類でもコロコロ変わってよく分からない状態
Javaエンジニア「インスタンスメソッドは難しい。インスタンスを禁止して初心者でも理解できるstaticメソッドを使おう。」 Javaエンジニア「ファイルが沢山あると初心者が混乱する。クラスを禁止してファイルをまとめよう」 Javaエンジニア「関数は初心者には難しい。すべてMainに書こう」
C#はVBがカスPGカス案件の受け皿になってるお陰で、Javaに比べると平均レベルは高い気がする というかJavaのスキル幅が広すぎる
VB.netは何のメリットもないのになんでつかってんだろ?
C#は上級者向けって散々プロパガンダしてきたから自覚のある雑魚がVB.NETに吸収されてくれた Javaは誰でもウェルカム初心者に最適の言語みたいな空気を出し続けた結果底辺が爆発的に増えて悲惨な事になった
多分VB.netのほうが難しい 少なくとも見づらい
>>10 Javaで言うNashornみたいなのあります?
それでjQuery使いたい。
C#勉強してもJavaと違ってほとんど仕事ないんだぞ。 最新機能のコード張ってドヤ顔してる奴は日頃何のコード書いてんだ? もしかしてアプリは何も作ってない生産性ゼロの無職じゃないのか。
>>733 最新機能のコードってどのレスだよ…
仕事でやっているような奴らがこんなところにこんな内容で書き込んでいたら心底軽蔑するわ
>>734 落ち着けよ。何言ってるか分からん。
日頃から人と話してないからそういう変な日本語になるんだぞ。
仕事がないなら自分で仕事を作ればいいだけ 仕事が流れてやってくるのを待つだけならプログラマーやらない方がいい
>>733 仕事はあるんだよjavaドカには縁がないだけでさ
仕事というのはやれば利益が出るものだ 利益が出ないものは仕事ではない 安い労働力じゃないと利益が出ないのであればそれはすでに仕事じゃないんだ
マ板でやれよ 趣味グラマには関係ないしローカルルール違反
>>708 ヒマだったから試したけど5chブラウザがどうなっているか知らんけどダブルバッファ設定なしでチラつくように見えないが
https://msdn.microsoft.com/ja-jp/library/system.windows.forms.treeview.hottracking (v=vs.110).aspx
背景付けたらチラつくかもしれないが、それはダブルバッファ設定で解決するはず
C#のnAudioを使用してボイスチェンジャーを自作しようと考えております。 音声データのリアルタイム入出力及び音声データ数の増減によるピッチ変更までは出来ている状況です。 私が今困っているのは音声データ数の増減なしのピッチ変更についてなのですが、どなたかご教示願えませんでしょうか? また、使用言語がC#のため、こちらの板に書きませていただきましたが、質問内容が不適切であれば、適切な相談する板をご紹介願えませんでしょうか。 以上です。よろしくお願いいたします。
直接の回答じゃないけどこんな本でも買ってみるとか
http://amzn.asia/0Wp3Q48 なんでMSの期待の星だったC#がたった10年でこれほどマイナー言語になったんだろうな。 やっぱりヘジはマイナーの星の元に生まれたんだな。
delphiからc#に移った口だけどずっとc#の地位はひくかったよ 最近は逆に地位が高くてビビる
delphiのころは趣味でdelphiやってるって言ったら 何それクスクスみたいな扱いだった c#に移ったら移ったで同じような感じでMSが作ったやつでしょ? MS大すきなんだねクスクスみたいな扱いだった いつも悔しい思い出いっぱいだった
昔はマジでC#はVBを消し去ると思ってたが、まさかポンコツJavaにC#が消し去られようとしてるとは。 当時のオレは信者的な変な妄想に駆られてたんだな。
c#はMSが作ったのに最新技術からは常に距離があって悲しい win32呼ぶのもDirectX呼ぶのもめんどくさい slimDXとかNAudioとか使わないといけなかったり意外と何かやりたくてもwindowsとか親和性が低い
ほんと、MicrosoftはC#からWin32API呼ぶライブラリぐらい全部用意しろよなと思う。
大衆の大半はものを知らんバカって構図はシステム開発業界も政治もおなじだな 初心者向けという宣伝文句に騙されて初心者がJavaに食いつく 初心者で水増しされたシェアを根拠に考えないバカがJavaを採用する だから初心者とバカしか居ないんだよJava案件って 発注する方も人数ばかり多くてろくな人材がいないってわかってる だから優秀な人材がやりたがらない、やる価値の低い、とりあえず頭数揃えてデスマゴリ押しすればなんとかなるタイプの土方案件を押し付けるために大量に発注する だからJavaの案件は多い その辺の事情が統計に表れてるんだろうな こういう考察ができずに数字取ってるってだけではしゃいじゃうのがまたJava土方らしくて微笑ましい
>>754 妄想はいいからw
javaはc#が出てくる前から地位を確保しててc#はそれに食い込めなかっただけだ
似てたからあえてc#は選ばれなかった
javaとc#が似てなくてc#に大きな強みがあれば事態は変わってた
javaはOS選ばなかったので柔軟に環境を構築できた
c#にはそれが無理だった
勝負にならない
ちょっと前までc#を選ぶ場合別途windowsが必要だった サーバー群にそこだけwindows入れたら技術者が二系統いるんだからコストアップでしかない
文系でも未経験でも誰でもプログラマーになれます!系の企業でとりあえず教えるのがJavaだからなあ
>>759 当たり前だろ
ずっとjavaで仕事するんだから
楽で価値ある仕事につけないかわいそうなJava土方さん
何を勘違いしてるのか知らないが、そもそも仕事でC#やってる奴でC#しかできない奴なんかまずいないぞ? 今C#の仕事があるからC#使ってるだけだ
javaとc#は対立軸にあるとは思わない javaはソフトウェア開発の実用実践的な方面で発達しててその恩恵をc#もこうむってる javaのOSSをc#に移植したものがたくさんある c#が弱い分野もそうやってなんとか保ってる 宗教的な理由で多言語を叩くのはみっともないし自分の首を絞めてる どの言語よりjavaはc#に似てるんだから
よく分からん奴だなあ プラットフォームから自分で選べる場合は俺もLinux使うし、すぐに引き継ぐ必要があるなら言語はJavaを選ぶよ 言語も好きに選べるならNodeやPython使ったこともある C#はWin縛りがある場合だけだね 言語なんか何でもできて当たり前だろ
言語なんか何でもできて当たり前系初心者w この時期よくいるなw
C#が最強すぎて雑魚が沸いてるようだね。大人しくC#勉強すればいいのに(笑)
最近のC#プログラマはUnityでゲーム作りながら覚えた人も多いんじゃないかな 自分も元々はC++で、趣味でUnity覚えた後にVC#に移行したタイプだし
ふらっとにワッチョイ付いたからゴミがこっちに流れてきたか
ワッチョイあるとNGが一週間持ってしまうからな NGされることに耐えられない奴にはツラい
>>742 うおおおおおおおおおおおおおお
ありがとう!
イベントのmousemoveでポインタが上に来たときにいちいち描画するというめんどくさいことをやっていたのが一瞬で解決されました。
>>744 この間質問させていただいた者です。
音声波形について知識を深めまして、解決に至ることができました。
ありがとうございます。
String.formatでどんなint32値でも4桁固定で出力する事はできますか? C++のprintsfでは出来たはずでしたが...
4桁固定って10000ならなんて表示されればいいの?
例えば"123456"なら"1234"、"3456"と何らかの指定で出来ないかなと。 printfで試したら出来ませんでした。"%2.2s"と勘違いしていたようです。 ありがとうございました。
ググれない、意図を正確に説明できない、思い込みで質問 この程度の初心者ならふらっとに行けばいいのに
答えられない でも マウントしたい って奴はどこにでもいる
マウントしたい
でも
マウントとれない
>>783 に同情する
csc.exeってさ フレームワークバージョン選択するスイッチねえの??
>>785 最近は「答えてやらない」とかいう安上がりなマウンティングも見かけるな。
質問ばかりして答えられないと勝った気になる馬鹿左翼の手法がム板で横行してるようだ。 ゆとりだろうな。
質問スレなのにわざわざ答えない宣言する方がどうかしてる
>>788 MSBuildでターゲット指定するぐらいかね
>>791 教えたがりが答えられない質問に対して自尊心を維持するにはそうせざるをえないだなこれが
てか大人なら察してやれよw
✕とか○印を表示させて移動させたいんだけどfillellipseとかで描いて消してを繰り返せばいいの?
MSXのスプライト機能みたいなものはないんでしょうか?
>>800 Unity使え
Spriteも当然ある
スプライトは言語の機能にはない 標準のフレームワークにもない Unityみたいなゲーム用のライブラリ探してみるしかないかな
コントロール(例えばPictureBox)をスプライトみたいに使えないこともないよw 透過色も使えるし優先順位付きに重ね合わせも出来る
やっぱりunityですか... drawで描いたり消したりでもいいんですよね。でもゲームっぽくいろいろ動かしたいならunity勉強するべきなのかな?
初心者にこそUnity 情報の量質共に圧倒的だ C#は言語の中ではかなり複雑で習得の難しい部類で、初心者が言語から入ると絶対に挫折する 初心者向けのUnityのチュートリアル的な本で動かしながら学んだほうが続く
unityかぁ。 面白そうだけど、いまようやっとc#使い始めたところなので、 あまり手を広げたくない。 でもunityで研究してる人もいるみたいだし、 ゲーム系の機能が豊富だとそれをいじっていて出てくる研究のアイデアってのもあるんだろうなぁ。
WinformsやWPFと絡めてやるならSharpDXでやるのがよろし まあDirectX方面に慣れてないとキツイかもしらんが
春休みは終わったはずなのにunity、unityって無職かよ。
描画系めんどくさいから、Unity使うと楽だよ ドットインストールのUnity入門動画見れば1日で使える様になるけど、Javascript使ってる所をC#に書き換える必要があるね
C#で作ったアプリのリソースファイルを外部に委託して英語に翻訳してもらいたいのですが、 リソースファイルそのものはXMLで、そのまま委託先にファイルを渡しても編集ができません(XMLを理解していないので) 更に.Designer.csの<summary>の書き換えもどうすればいいのか分かりません このような場合、どのようにして翻訳をしてもらえばいいでしょうか?
表形式に変換して渡す 対訳埋めて返してもらう 逆変換する 終わり
表形式ってExcelのことですか? どうすれば変換できるのですか?
プログラミング以前の問題だけど、正確な、少なくともユーザーが見て意味が理解できる 翻訳をしてもらうためには、どっちにしろ日本語の原文だけじゃなく、 それが使われている文脈も合わせて示さないと難しいよ UIの場合表示スペースの問題もあるし
難しいと勝手に決めつけないでください そのような事は聞いてませんので質問だけに答えてください
>>800 このレベルなら実際にやってみればいいのに
やる前にここで聞いてどうしたいんだろう
このレベルでUnity使えって言うアホは死んだ方がいいよ
VC#プログラマで過剰にUnityを嫌ってる人って、一体何と戦っているんだろう? Unityのお陰でC#人口が増えたんだから、みんなで仲良くすればいいのに
どこにそんなレスがあるのよw どんな被害妄想だw チミこそ誰と戦ってるんだよw
Unity環境固有の質問は、ゲ製作技術板の方がいいかと
>>827 スレチにも関わらずUnityの普及活動してるおまえとだよ。おまえのレスはただの荒らし行為に過ぎない。
あんまり調べられないままの相談で申し訳ないのだけど 証明書の秘密キーつきのエクスポートをやりたいんだけど、秘密キーで暗号化するあたりのサンプルが見当たらない X509certificate.Exportメソッドに暗号化のオプションが無いのは、アルゴリズムを知られない為に実装していなかったりすんのかな? それとも探し方がぬるいだけかな 実際ぬるいから、もっと探さなくてはいけないんだけどちょい暇が足りていない…
と思ったら、オーバーロードで別メソッドあったわ うんこしてきます。
C#でLinqを使うよりPythonの方が2倍速かったのでベンチマークをしてみた - Qiita
https://qiita.com/yniji/items/6585011633289a257888 C# の Linq が python の2倍遅い、は嘘 - Qiita
https://qiita.com/Akira_Kido_N/items/d9519b05ccee6a67158f LINQ を使う時に一般的に気を付けること via C#でLinqを使うよりPythonの方が2倍速かったのでベンチマークをしてみた - かずきのBlog@hatena
http://blog.okazuki.jp/entry/2018/04/20/105738 そもそもPythonからCのライブラリ呼んでいる時点で反則w
>>836 正しくはCのが早かったというべきだよな。
C#でC作成ライブラリ使えばもっと速いだろう。
別に内部的にCのライブラリ呼んでだって良くないか? そのライブラリが全く普及していなかったりするならともかくそれなりに普及していて誰でも普通に使えるわけだからpythonのライブラリと見なして構わない 手段を目的にしてしまった的外れなツッコミだと思う
比較方法は誤ってないよ 特殊なことしなければ呼び出せないならともかく、内部的にCで書かれているだけで表面的にはpythonで書かれて提供されている つまりpythonユーザーなら誰でも普通にその速度で計算できるわけで、それをわざわざ縛る意味など皆無 C#だって、というなら内部的にCで書かれたC#用の同等ライブラリを探せばいいだけのこと もしそんなものが存在しないならC#ユーザーはその速度が出せないんだから負けていると言うしかない
>
https://qiita.com/yniji/items/6585011633289a257888 の事なら謝りが多すぎてもやはベンチマークになってないレベルだけど
まさにweb用ゴミ箱ならではw
ここでいくら吠えたところでまったくの無意味 Qiitaの著者に直接言えやコメントも出来ないゴミ共
稀に興味深い記事もある(性別のISO規格の話とか)が、 最近は初心者とワナビのメモと知ったかが増えすぎて、 聳え立つクソ山と呼ぶに相応しい
そういう状態防ぐにはどうすればよかったんかな?本名制?
最近の若者はベクトル計算用ライブラリと汎用コレクション操作のパフォーマンスを比較してイチャモンつけてしまうのか しかも汎用コレクション操作の使い方を間違えてさらの遅くする徹底ぶり ここまでくるとアンチC#がわざとやってるのかと疑ってしまう
ゴミ袋に名前書く時代なんやから本名制にしたってなんぼでもゴミ製造するやろw 大体自分がゴミ製造機やっちゅー自覚がないんやからあいつらはw
あとあれやなアウトプットアウトプット言い過ぎやねん ほとんどの無能は黙ってインプットだけしといた方がええねんマジに
無能な働き者はどこでも迷惑だよ 役に立つとしたら燃料になる位だな
多分こんなところで吠えてるだけの奴よりはかなりマシだと思う
そんなバカなw お前の田舎ではゼロがマイナス1より小さいのか? とんだ地方だな
ここは便所だから 便所で脱糞して悪いことなど何一つない
タイトルからしてバカ丸出し ゴミクズ以下の記事だな
>>852 意味不明な擁護してるヒマがあったら編集リクエスト(笑)でも出してろ生ゴミ
try{}catchってmainで使っちゃダメなんだな、mainで使うと先になんかエラーチェックされてるみたいで動いてくれない
コンソールアプリでasync/awaitを初めて導入しようとサンプル書いて 「どおじてブレークポイント貼っでもがっでにアプリ終了じぢゃうのおおお」と 一時間くらい泣きそうになってた頃の自分を思い出した
>>861 Main.cs(11,9): error CS0155: The type caught or thrown must be derived from System.Exception
catch(Hello e)ってなに?
>>861 throw new Exception();
ルール無視の書き方して動かないって文句言うって幼稚園児か
try使った時にエラーの受け取り方がわからないんだよ mainで使った時にどうエラーを受け取ればいいのか、0の除算したcatchで処理終了しないでランタイムエラーの方で止まってるから
>>868 確認したいだけならint x = 10 / 0;を消して
>>863 のthrow new Exception();を入れてcatchの(Hello e)を消せ
何見ていたらこんなあほな書き方になるんだ
Main云々以前にそもそもtry句での引数無しthrowも定数ゼロ除算もコンパイルエラーだし ぶっちゃけ開発環境上でC#書いたことがあるのかも怪しいレベルだなコレ…
>>861 ,868
こういうことやりたいんだろう
using System;
namespace Hello
{
class Hello
{
static void Main()
{
int a = 10, d = 10;
try
{
a = a / d;
}
catch (Exception ex)
{
Console.WriteLine("Hello.Main()で例外が発生");
Console.WriteLine("エラーメッセージは「{0}」です", ex.Message);
Console.WriteLine("エラーが起きたのでプログラムを終了します"); return;
}
Console.WriteLine("終了しました"); Console.ReadKey();
}
}
}
usingの下なのにnamespaceもないしVisualStudio使ってちゃんと基本からやれ。ふらっとの初心者よりもひどい
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/keywords/try-catch https://ideone.com/gjRXk6 こうゆう意図的にエラーを起こしたかったんだよ、エラーの起こし方がよく分かったわ
StreamReaderやStreamWriter使ってusingで括るの忘れてファイルが握られっぱなしなんですけど、なんでClose呼ばないの? 習慣にしようよ。って、こいつらOpenが無いからClose忘れるんだよね。 非対称な関数作るんじゃ無いよもう。Open要らないならCloseも要らない様にしろよな。ぷんぷん。
もはや一貫性のない欠陥言語。当初のルールを無視しまくり機能追加した結果がこれ。
無能老害がついていけなくなった結果が
>>877 w
>>878 C#のような古くさい設計の言語使ってるおまえは十分老害。
C#はまさに増築しまくりの不便で欠陥だらけの温泉旅館。
未だにそれをナウい温泉だと思ってるおまえのようなボケ老人にはお似合いwww
はいはい わざわざそんな言語のスレに来てなにをしたいんだよ w
いや、ドア開けたら閉めるだろ?、猫じゃ無いんだからさ。 でも開けた覚えの無い自動ドアが実は半自動で、 閉める時だけは手動なんて、合理的に考えて不便じゃね?
>>883 お前のケツには「人生を開始する」なんてメソッドは生えてないだろ?
でもお前の人生はそのうち終わるし、刺されたら即座に終わる
生まれた瞬間に始まっていて、終わらせるのはいつでもできる
ごく自然な摂理
>>884 親クラスが産むメソッド呼んだんだから、終わらすメソッドも親クラスが呼ぶだろ?
自殺メソッドはそりゃ普通は呼ばないわな。
>>885 あー、お母さんと代わってくれるか?
もしくは学校に行きなさい
C#はニート専用だしな。プロはJavaを使ってる。
馬鹿がガベコレで夢を見たんだよ。そしてJavaをパクった。 だが現実はusingにdisposeだらけ。 ほんと馬鹿だよな。もはやC言語以下の不便さ、汚さ。ボケ老人には革新に見えるらしいwww
一貫性はあるけどさ、仕事で2.0のソースメンテするとストレス半端ないよ
わかる C# 2.0ってまるでJavaみたいでスゲー使いにくい
カベコレのせいでデストラクタがいつ動くか不定でC++のようなスコープ終了で自動クローズができなくなった。 結果、using、disposeの導入。 馬鹿がほんと何も考えないで設計するとこうなるという見本。ほんと醜い言語だよ。 一貫性? ないない。C#2.0とは既に別言語だよ。名前買えるべき。Neet-C#とかに
C#が開発現場からほぼ淘汰されたから良い時代になった。保守で残ってるのは2.0案件ばかり。 こういうゴミ案件は、自称おれは理解している ID:bL+b5Osr に投げるのが一番。
ホントにゴミの巣窟スレになったな 初心者どころかひきこもりがずっと吠えていてそれにいちいち相手するクズまでいる
>>900 IDに変えるのにどんなに時間かけてんだよ。馬鹿め。
せっかくのGWだからな。 みんなで死滅寸前のC#にトドメを刺そうではないか。 ヘジがMSを退社すれば黒歴史としてC#は完全に消される運命。
なんかC#に親でも殺されたのかと思うような奴らがいっぱいおるのなんなの 今さらJavaドカタが出張してくるはずもなく謎だわ
GWなのに人がいない。C#は完全にオワコンだったわ。今日はニュー速で過ごすわ。
Javaは今末期だから必死なんだろう JavaしかできないJavaドカはおまんま食えなくなる
狂っているのはID:OvoGcsme=ID:o29GXtCOだけ GWが昨日から始まっている方
ヒープ管理から解放されたけど、むしろリソース管理が意味不明になってるよな。
どうせそいつはふらっとに居たおじいちゃんだろ 相手にするだけ損
ワッチョイなんかいらない 規制を強化すればスレが良くなる、という単純なパターンを鵜呑みにする思考こそ批判されるべきだ
ワッチョイ有りはもう立っているんだから付けて立てたら重複だ ふらっとに頭のおかしいやつ行かないようにここで囲っててくれ
勝海舟は「憂国の士を自称する連中が国を亡ぼす」と言ったそうだけど、スレも同じだね。 荒らしてる奴に限って自分が荒らしだと思ってないどころか、 逆に俺はスレを憂いてるんだとか盛大に勘違いしてるのな お前がいなくなるのが一番スレのためだってw
>>910 1週間NGに入れられるから便利ってだけだよ
規制ってなんのことさ
まあしかしこのスレには要らない気がするぜ ゴミ棄て場は必要だからな
マウスカーソルの位置を0.1sec置きぐらいに全部取得したいんだけど、 終了時刻は決まってないので配列で宣言し難い。 これってDictionaryとかに入れていけばいいのかな? x,y座標と時間の3変数になるんだけど、 時間をkey noにしてx,yを紐づけるみたいな感じでOK? time,xとtime,yの二つのDictionaryを作る。 なんかすごく冗長な気がする。 time, x, y みたいなDictionaryってできないのだろうか・・・。
時間をキーにする意味がないだろ 普通にList<(DateTime time, int x, int y)>でいい
>>920 を見てC#って匿名型のList<T>を簡単に作れる新しい構文ができたのかと
思ったが、そんなものはなかったw
あと、調べてないがDateTime.Nowの精度は恐らく秒単位だと思う。
だから時間は記録開始かまたは先頭のデータからのオフセットをms単位で
記録するとかの方がいいだろうねたぶん。
>>922 DateTimeプロパティにMillisecondあるから。DateTime.Nowでも取り出せる
https://msdn.microsoft.com/ja-jp/library/system.datetime (v=vs.110).aspx
>>917 Dictionary<DateTime,Point>じゃ嫌なのか?
そういう場合は構造体に包んで扱うと良いよ public struct Cursor{ public float x; public float y; public int frame; public Cursor(float x, float y, int frame){ this.x = x; this.y = y; this.frame = frame; } } // コレクションを生成 var list = new List<Cursor>(); // 追加する list.Add(new Cursor(x, y, frame)); あとマイクロ秒を後で使う予定がなければフレーム番号で保持するのが妥当だと思う
>>922 いや今のC#は
>>920 は通るぞ
タプルだ
>>924 データ型にms単位になってるからってHWがその精度を持ってるかどうかは別問題w
RTCは歴史的にそんな精度を持ってないw
>>926 ああ、そうなのか
名前知ってるだけで全然使ったことないから知らんかった
>>927 知ったかさん乙
現在時刻をRTCから取得するOSなんてほぼないぞ
>>930 マジで言ってるの? w
RTCから読み出すのはブート時だけやぞ
動画や音声再生するのにより正確なタイムチックが必要なアプリは山ほどあるし、実現してんぞ。
ほら、彼ら少し頭おかしいからさ 許してやってくれないか
RTCは頻繁にアクセスするには遅すぎるデバイスだからOS起動後の時計はタイマー割り込み駆動だよ
いろいろありがとうございます。 終了時刻が決まってないからlistとかかなとおもったんですけど、 構造体の方がよさそうですね。 試してみます。
それとは別にc#で List<(DateTime time, int x, int y)> みたいな複数の変数を扱うことってできるのでしょうか? var list = new List<int>(); みたいに一つの変数だけなのかと思ってました。 これができるといろいろ便利そうなのですが・・・。「 List<(DateTime time, int x, int y)> って入力してもエラーが返ってくるんすよね。。。
>>940 VSのバージョンが古いんだろ
VS2017でないとダメ
VS2017かつ、NuGetでSystem.ValueTupleを参照する必要がある
タプルの利用には、ValueTuple構造体という型が必要になります。 この型が標準ライブラリに取り込まれるのは .NET Framework 4.7、.NET Standard 1.7を予定しています。 それ以前のバージョンでタプルを使いたい場合には、以下のパッケージを参照する必要があります。 System.ValueTuple
なるほど System.ValueTuple ですね。 試してみます。 ありがとうございます。
また初歩的な質問で申し訳ないのですが、 C#のクラスと構造体で、これまで軽量のオブジェクトでもすべてクラスで作成していたんですが、 あまりお作法的には宜しくないんでしょうか?
なんとなく構造体はクラスの下位互換みたいなイメージで使用していませんでした。
応用アプリケーションなら全部クラスでいいよ 構造体は構造体のメリット・デメリットを全て把握した上で、構造体のほうが良い選択であり、将来に渡って絶対にクラスに変更したくならない、と確信できる場合に使うもの そんなケースは滅多にない あ、PInvokeは例外な
C#上の構造体はクラスと等価だ。 つか、構造体で使う共通処理をまとめてそこに突っ込め。 ほら、使い易くなっただろ? 構造体なんか使わずクラス使え。
structは値型として扱われるので
参照型であるclassと同じようにコピーするとメモリの内容が丸ごとコピーされる
structを使った方が良い時の条件見たけど
普通はクラスで良いんじゃね?
https://dobon.net/vb/dotnet/beginner/whenusestruct.html ありがとうございます。 ちょっと急ぎでコーディングしてるので、 不慣れな構造体でなくクラスでやってしまおうと思います。 こうやって新しい知識をいれないとあとではまって痛い目あうのかなぁ。
>>954 構造体には構造体のメリットもある(だからBCLでも使われてる)んで、
2chネラ的な1bit脳の極端な意見は真に受けない方がいいよw
一つだけ挙げれば、プロパティとして公開するような値は構造体の方が楽。
クラスでもイミュータブルにすれば構造体と同じような感覚で使えるが、
イミュータブルなクラスは使い勝手がよくない
>>956 わかってないなら無理してレスしないほうがいいぞ
IoTでまだまだJAVAは安泰? C#もIoTがいける様にならないんですかね・・・
>>955 C#では構造体絡みのパフォーマンス改善が最近ホットなのに何言ってんの?
素人がテキトーに構造体を扱うと却って遅くなるなどの弊害がある 使うならプロファイリングして本当に速くなっているか見極めるべき
>>962 わかってないなら無理してレスしないほうがいいぞ
最近の参照関連の拡張は失敗だった なんもわかってない奴がドヤ顔でクソコード量産する未来しか見えねぇ
>>964 Framework自体のパフォーマンス向上に大きく貢献してるんですが…
>>965 そこが悪いとは一言も言ってないだろう直近の少しのレスも読めねえのか
なんだかわいそうな子か 相手するだけ時間の無駄だなこりゃ
かわいそうな子たちのレスバトル かわいそうに幕を閉じる
ここで真っ赤になっている時点で恥ずかしいのに中身が低能の罵り合い 次スレ立てる人がいたらワッチョイは付けるなよ もうワッチョイ付きの相談室のスレは2つあるから
ValueTuple構造体 あるといいなあとは思ってたけど、遂に実装される日が来るのか
カーソル記録のものですが、 class Point { public int X; public int Y; 他必要メンバ変数 } でwhileループを組んでゲーム終了条件でBreakするまでは 上記クラスのインスタンスを無限生成してカーソルの位置を記録するみたいな感じでおかしくないですよね?
それだと際限なくメモリを圧迫するから、保持できる上限を決めておいてそれを超えたら追加時に古いのを消したほうがいい
>>981 確かにゲームの終了時刻を決めておかないと、どこかでメモリ破たんするですよね。
>>982 もう一回
>>981 を読め
終端を決めろって書いてあるわけじゃない
あと全体のコンセプトや仕様が見えないんだから、それ抜きでここで聞いても正しい答えが返ってくるとは限らない
結局こいつは自分のやりたいことが最初から有って、賛成意見が欲しいだけなんだろう やり方を変えるようなアドバイスはするだけ無駄だぞ
>>980 100msごとぐらいの記録でよかったんじゃなかったの?
どっちにしろ、ビジーループが回るごとにマウスポインタ位置の記録を取る(そう言ってるように聞こえる)
なんて無駄過ぎる。
限りなく忠実にマウスポインタの移動を再現したいとしても、常識的に考えて
ポーリング間隔は30ms程度で十分なはずだし、座標だけでなく時刻も記録するのであれば
前回から移動してなければ記録する必要もない
まあ、何にしろ何が聞きたいのかはっきりした方がいいね
そこがさっぱり分からん。
何が聞きたいのかはっきりしないのになぜかオレオレ方式を語り出すとか w
>>985 0.1sec = 100msだがお前は何を言ってるの?
画面更新の度にマウスの位置が移動してるんだから、120fpsで回してりゃ将来的にも需要に足るんじゃね? それ以上細かくしても再生出来ないしな。
ところで、ビジーループってどのくらいで回ってて、マウスの分解能ってどのくらいなんだ マウスって所詮対人間なんでそんなに反応速いデバイスじゃなかったはずだが
どれぐらいって… 環境よるとしか言えないんじゃない?
前回と位置が変わってなかったら その位置が何回連続しているかというカウンタを+1すればいい 馬鹿正直に記録する必要はない
もうこのスレ馬鹿しかいないからこれからはStackOverflowで相談した方がいい
応用アプリケーションって書いちゃう人がドヤ顔するスレだから多めに見ろよw
このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 198日 8時間 25分 32秒
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/ ▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
read.cgi ver 07.7.23 2024/12/25 Walang Kapalit ★ | Donguri System Team 5ちゃんねる
mmp lud20250310040015caこのスレへの固定リンク: http://5chb.net/r/tech/1508180530/ ヒント: 5chスレのurlに http ://xxxx.5chb .net/xxxx のようにb を入れるだけでここでスレ保存、閲覧できます。 TOPへ TOPへ
全掲示板一覧 この掲示板へ 人気スレ |
Youtube 動画
>50
>100
>200
>300
>500
>1000枚
新着画像 ↓「C#, C♯, C#相談室 Part95 ->画像>3枚 」 を見た人も見ています:・C#, C♯, C#相談室 Part95 ・C++相談室 part135 ・C++相談室 part137 ・【太気拳】なんでも相談室 part3【意拳】 ・【太気拳】なんでも相談室 part5【意拳】 ・C++相談室 part164 ・C++相談室 part131 [無断転載禁止] ・ネットワークプログラミング相談室 Port27 ・必ず誰かが相談に乗ってくれる恋愛相談室Part603 ・必ず誰かが相談に乗ってくれる恋愛相談室Part595 ・【スキー】中級者以上・アイテム相談室【何でも】 Part.3 ・必ず誰かが相談に乗ってくれる恋愛相談室Part599 ・必ず誰かが相談に乗ってくれる恋愛相談室Part620 ・荒らし相談室 ・全国男電話相談室 ・無職・だめの為の悩み相談室 ・[特設]サマータイム対応相談室 ・穴子取締役東京支店長のお悩み相談室 ・【スノーボード】初級者なんでも相談室 ☆2 ・初心者優先デジタル一眼質問・購入相談室 135 ・初心者優先デジタル一眼質問・購入相談室 128 ・初心者優先デジタル一眼質問・購入相談室 123 ・初心者優先デジタル一眼質問・購入相談室 129 ・初心者優先デジタル一眼質問・購入相談室 126 ・シーバスなんでも相談室 17©3ch.net ・初心者優先 フジフイルム カメラ・一眼購入相談室 ・山口龍之介の借金相談室 Part8 ・☆☆☆水瓶座の恋愛相談室☆☆☆part5 ・必ず誰かが相談に乗ってくれる恋愛相談室Part634 ・必ず誰かが相談に乗ってくれる恋愛相談室Part642 ・必ず誰かが相談に乗ってくれる恋愛相談室Part640 ・第一商品[おばさんの人生・先物・健康相談室]part2 ・必ず誰かが相談に乗ってくれる恋愛相談室Part635 ・必ず誰かが相談に乗ってくれる恋愛相談室Part622 ・必ず誰かが相談に乗ってくれる恋愛相談室Part594 ・テレ東☆ 紺野あさ美 ☆Part8 コンコン相談室♪ ・NIPお悩み相談室 ・ハゲミン相談室 ・八百長お悩み相談室 ・自営業 悩みごと相談室 40 ・デリバリー 確定申告相談室 ・アプローチの悩み相談室 15 ・アプローチの悩み相談室 13 ・ミニミニ(minimini)相談室 3 ・船乗りなんでも相談室 第8次航 【外航用】 ・【本家】船乗り何でも相談室 19【本元】 ・【ノーワッチョイ】船乗りなんでも相談室 29【内航船】 ・■一級建築士試験設計製図相談室 124室 ・初心者優先デジタル一眼質問・購入相談室 143 ・初心者優先デジタル一眼質問・購入相談室 109 ・初心者優先デジタル一眼質問・購入相談室 130 ・初心者優先デジタル一眼質問・購入相談室 145 ・初心者優先デジタル一眼質問・購入相談室 131 ・初心者優先デジタル一眼質問・購入相談室 101 ・指名No.1ホストのまったり恋愛相談室 ©bbspink.com ・【初心者優先】デジタル一眼質問・購入相談室 162 ・【初心者歓迎】デジタル一眼質問・購入相談室 162 ・【初心者歓迎】デジタル一眼質問・購入相談室 170+ ・除草剤の選び方、使い方 初心者なんでも相談室 4 [無断転載禁止] ・【ハァテレビも無エ】ageteoff茸 埋め立て荒らし はんなり相談室 MANGO板分室[無断転載禁止] ・船乗りなんでも相談室・13 ・シーバスなんでも相談室25 ・シーバスなんでも相談室33 ・シーバスなんでも相談室40 ・シーバスなんでも相談室32 ・シーバス何でも相談室20
11:58:58 up 63 days, 12:57, 0 users, load average: 8.45, 8.42, 8.76
in 1.9540240764618 sec
@1.9540240764618@0b7 on 062000